ol 7.1.1-dev.1667846236548 → 7.1.1-dev.1668076229616

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ol",
3
- "version": "7.1.1-dev.1667846236548",
3
+ "version": "7.1.1-dev.1668076229616",
4
4
  "description": "OpenLayers mapping library",
5
5
  "keywords": [
6
6
  "map",
package/source/Image.d.ts CHANGED
@@ -120,6 +120,14 @@ declare class ImageSource extends Source {
120
120
  * @type {number}
121
121
  */
122
122
  private reprojectedRevision_;
123
+ /**
124
+ * @return {Array<number>|null} Resolutions.
125
+ */
126
+ getResolutions(): Array<number> | null;
127
+ /**
128
+ * @param {Array<number>|null} resolutions Resolutions.
129
+ */
130
+ setResolutions(resolutions: Array<number> | null): void;
123
131
  /**
124
132
  * @protected
125
133
  * @param {number} resolution Resolution.
@@ -1 +1 @@
1
- {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["Image.js"],"names":[],"mappings":"AA0PA;;;;;GAKG;AACH,gDAHW,OAAO,aAAa,EAAE,OAAO,OAC7B,MAAM,QAIhB;mCArPS,MAAM;;;;;;AAyBhB;;GAEG;AAEH;;;;GAIG;AACH;IACE;;;OAGG;IACH,kBAHW,MAAM,SACN,OAAO,aAAa,EAAE,OAAO,EAWvC;IANC;;;;OAIG;IACH,OAHU,OAAO,aAAa,EAAE,OAAO,CAGrB;CAErB;;oCAvBY,cAAc,GAAC,gBAAgB,GAAC,gBAAgB;;;;6CA2BhD,OAAO,eAAe,EAAE,WAAW,CAAC,OAAO,eAAe,EAAE,UAAU,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,MAAM,CAAC,GACjI,OAAW,eAAe,EAAE,WAAW,CAAC,OAAO,oBAAoB,EAAE,KAAK,EAAE,OAAO,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,GACpH,OAAW,eAAe,EAAE,WAAW,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,CAAC,GACxF,OAAW,eAAe,EAAE,mBAAmB,CAAC,OAAO,eAAe,EAAE,UAAU,GAAC,OAAO,oBAAoB,EAAE,KAAK,GAC9G,qBAAqB,EAAE,MAAM,CAAC;;;;;;;;;;;;;;iBAQxB,OAAO,YAAY,EAAE,cAAc;;;;;;;;;;;AAdjD;;;;;;;GAOG;AAEH;;;;;;;;GAQG;AAEH;;;;;;;;GAQG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EA4CjB;IAjCC;;OAEG;IACH,IAFU,uBAAuB,OAAO,WAAW,EAAE,SAAS,CAAC,CAExD;IAEP;;OAEG;IACH,MAFU,uBAAuB,OAAO,WAAW,EAAE,SAAS,CAAC,CAEtD;IAET;;OAEG;IACH,IAFU,uBAAuB,IAAI,CAAC,CAE/B;IAEP;;;OAGG;IACH,qBACgE;IAEhE;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,6BAA6B;IAU/B;;;;OAIG;IACH,4CAHW,MAAM,GACL,MAAM,CAQjB;IAED;;;;;;OAMG;IACH,iBANW,OAAO,cAAc,EAAE,MAAM,cAC7B,MAAM,cACN,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,iBAAiB,EAAE,OAAO,CAwC5C;IAED;;;;;;;;OAQG;IACH,mCAPW,OAAO,cAAc,EAAE,MAAM,cAC7B,MAAM,cACN,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,iBAAiB,EAAE,OAAO,CAK5C;IAED;;;;OAIG;IACH,mCAHW,OAAO,oBAAoB,EAAE,OAAO,QAyB9C;CACF"}
1
+ {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["Image.js"],"names":[],"mappings":"AAkQA;;;;;GAKG;AACH,gDAHW,OAAO,aAAa,EAAE,OAAO,OAC7B,MAAM,QAIhB;mCA7PS,MAAM;;;;;;AAyBhB;;GAEG;AAEH;;;;GAIG;AACH;IACE;;;OAGG;IACH,kBAHW,MAAM,SACN,OAAO,aAAa,EAAE,OAAO,EAWvC;IANC;;;;OAIG;IACH,OAHU,OAAO,aAAa,EAAE,OAAO,CAGrB;CAErB;;oCAvBY,cAAc,GAAC,gBAAgB,GAAC,gBAAgB;;;;6CA2BhD,OAAO,eAAe,EAAE,WAAW,CAAC,OAAO,eAAe,EAAE,UAAU,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,MAAM,CAAC,GACjI,OAAW,eAAe,EAAE,WAAW,CAAC,OAAO,oBAAoB,EAAE,KAAK,EAAE,OAAO,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,GACpH,OAAW,eAAe,EAAE,WAAW,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,CAAC,GACxF,OAAW,eAAe,EAAE,mBAAmB,CAAC,OAAO,eAAe,EAAE,UAAU,GAAC,OAAO,oBAAoB,EAAE,KAAK,GAC9G,qBAAqB,EAAE,MAAM,CAAC;;;;;;;;;;;;;;iBAQxB,OAAO,YAAY,EAAE,cAAc;;;;;;;;;;;AAdjD;;;;;;;GAOG;AAEH;;;;;;;;GAQG;AAEH;;;;;;;;GAQG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EA4CjB;IAjCC;;OAEG;IACH,IAFU,uBAAuB,OAAO,WAAW,EAAE,SAAS,CAAC,CAExD;IAEP;;OAEG;IACH,MAFU,uBAAuB,OAAO,WAAW,EAAE,SAAS,CAAC,CAEtD;IAET;;OAEG;IACH,IAFU,uBAAuB,IAAI,CAAC,CAE/B;IAEP;;;OAGG;IACH,qBACgE;IAEhE;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,6BAA6B;IAG/B;;OAEG;IACH,kBAFY,MAAM,MAAM,CAAC,GAAC,IAAI,CAI7B;IAED;;OAEG;IACH,4BAFW,MAAM,MAAM,CAAC,GAAC,IAAI,QAI5B;IAED;;;;OAIG;IACH,4CAHW,MAAM,GACL,MAAM,CASjB;IAED;;;;;;OAMG;IACH,iBANW,OAAO,cAAc,EAAE,MAAM,cAC7B,MAAM,cACN,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,iBAAiB,EAAE,OAAO,CAwC5C;IAED;;;;;;;;OAQG;IACH,mCAPW,OAAO,cAAc,EAAE,MAAM,cAC7B,MAAM,cACN,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,iBAAiB,EAAE,OAAO,CAK5C;IAED;;;;OAIG;IACH,mCAHW,OAAO,oBAAoB,EAAE,OAAO,QAyB9C;CACF"}
package/source/Image.js CHANGED
@@ -145,15 +145,23 @@ class ImageSource extends Source {
145
145
  return this.resolutions_;
146
146
  }
147
147
 
148
+ /**
149
+ * @param {Array<number>|null} resolutions Resolutions.
150
+ */
151
+ setResolutions(resolutions) {
152
+ this.resolutions_ = resolutions;
153
+ }
154
+
148
155
  /**
149
156
  * @protected
150
157
  * @param {number} resolution Resolution.
151
158
  * @return {number} Resolution.
152
159
  */
153
160
  findNearestResolution(resolution) {
154
- if (this.resolutions_) {
155
- const idx = linearFindNearest(this.resolutions_, resolution, 0);
156
- resolution = this.resolutions_[idx];
161
+ const resolutions = this.getResolutions();
162
+ if (resolutions) {
163
+ const idx = linearFindNearest(resolutions, resolution, 0);
164
+ resolution = resolutions[idx];
157
165
  }
158
166
  return resolution;
159
167
  }
@@ -242,6 +242,12 @@ export type Options = {
242
242
  * be called with an array of ImageData objects from input sources.
243
243
  */
244
244
  operationType?: RasterOperationType | undefined;
245
+ /**
246
+ * Resolutions. If specified, raster operations will only
247
+ * be run at the given resolutions. By default, the resolutions of the first source with resolutions
248
+ * specified will be used, if any. Set to `null` to use any view resolution instead.
249
+ */
250
+ resolutions?: number[] | null | undefined;
245
251
  };
246
252
  /**
247
253
  * *
@@ -267,6 +273,9 @@ import Event from "../events/Event.js";
267
273
  * `'pixel'` operations are assumed, and operations will be called with an
268
274
  * array of pixels from input sources. If set to `'image'`, operations will
269
275
  * be called with an array of ImageData objects from input sources.
276
+ * @property {Array<number>|null} [resolutions] Resolutions. If specified, raster operations will only
277
+ * be run at the given resolutions. By default, the resolutions of the first source with resolutions
278
+ * specified will be used, if any. Set to `null` to use any view resolution instead.
270
279
  */
271
280
  /***
272
281
  * @template Return
@@ -323,6 +332,8 @@ declare class RasterSource extends ImageSource {
323
332
  * @type {Array<import("../layer/Layer.js").default>}
324
333
  */
325
334
  private layers_;
335
+ /** @type {boolean} */
336
+ useResolutions_: boolean;
326
337
  /**
327
338
  * @private
328
339
  * @type {import("../TileQueue.js").default}
@@ -395,6 +406,11 @@ declare class RasterSource extends ImageSource {
395
406
  * @private
396
407
  */
397
408
  private onWorkerComplete_;
409
+ /**
410
+ * @param {import("../proj/Projection").default} [projection] Projection.
411
+ * @return {Array<number>|null} Resolutions.
412
+ */
413
+ getResolutions(projection?: import("../proj/Projection.js").default | undefined): Array<number> | null;
398
414
  }
399
415
  import ImageSource from "./Image.js";
400
416
  //# sourceMappingURL=Raster.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Raster.d.ts","sourceRoot":"","sources":["Raster.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Raster.d.ts","sourceRoot":"","sources":["Raster.js"],"names":[],"mappings":"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"}
package/source/Raster.js CHANGED
@@ -514,6 +514,9 @@ export class RasterSourceEvent extends Event {
514
514
  * `'pixel'` operations are assumed, and operations will be called with an
515
515
  * array of pixels from input sources. If set to `'image'`, operations will
516
516
  * be called with an array of ImageData objects from input sources.
517
+ * @property {Array<number>|null} [resolutions] Resolutions. If specified, raster operations will only
518
+ * be run at the given resolutions. By default, the resolutions of the first source with resolutions
519
+ * specified will be used, if any. Set to `null` to use any view resolution instead.
517
520
  */
518
521
 
519
522
  /***
@@ -589,6 +592,9 @@ class RasterSource extends ImageSource {
589
592
  this.layers_[i].addEventListener(EventType.CHANGE, changed);
590
593
  }
591
594
 
595
+ /** @type {boolean} */
596
+ this.useResolutions_ = options.resolutions !== null;
597
+
592
598
  /**
593
599
  * @private
594
600
  * @type {import("../TileQueue.js").default}
@@ -657,6 +663,9 @@ class RasterSource extends ImageSource {
657
663
  sourceOrLayer instanceof Source
658
664
  ? sourceOrLayer
659
665
  : sourceOrLayer.getSource();
666
+ if (!source) {
667
+ continue;
668
+ }
660
669
  const attributionGetter = source.getAttributions();
661
670
  if (typeof attributionGetter === 'function') {
662
671
  const sourceAttribution = attributionGetter(frameState);
@@ -712,9 +721,14 @@ class RasterSource extends ImageSource {
712
721
 
713
722
  const center = getCenter(extent);
714
723
 
715
- frameState.extent = extent.slice();
716
- frameState.size[0] = Math.round(getWidth(extent) / resolution);
717
- frameState.size[1] = Math.round(getHeight(extent) / resolution);
724
+ frameState.size[0] = Math.ceil(getWidth(extent) / resolution);
725
+ frameState.size[1] = Math.ceil(getHeight(extent) / resolution);
726
+ frameState.extent = [
727
+ center[0] - (frameState.size[0] * resolution) / 2,
728
+ center[1] - (frameState.size[1] * resolution) / 2,
729
+ center[0] + (frameState.size[0] * resolution) / 2,
730
+ center[1] + (frameState.size[1] * resolution) / 2,
731
+ ];
718
732
  frameState.time = Date.now();
719
733
 
720
734
  const viewState = frameState.viewState;
@@ -734,7 +748,7 @@ class RasterSource extends ImageSource {
734
748
  let source;
735
749
  for (let i = 0, ii = this.layers_.length; i < ii; ++i) {
736
750
  source = this.layers_[i].getSource();
737
- if (source.getState() !== 'ready') {
751
+ if (!source || source.getState() !== 'ready') {
738
752
  ready = false;
739
753
  break;
740
754
  }
@@ -754,6 +768,7 @@ class RasterSource extends ImageSource {
754
768
  return null;
755
769
  }
756
770
 
771
+ resolution = this.findNearestResolution(resolution);
757
772
  const frameState = this.updateFrameState_(extent, resolution, projection);
758
773
  this.requestedFrameState_ = frameState;
759
774
 
@@ -763,7 +778,7 @@ class RasterSource extends ImageSource {
763
778
  const renderedExtent = this.renderedImageCanvas_.getExtent();
764
779
  if (
765
780
  resolution !== renderedResolution ||
766
- !equals(extent, renderedExtent)
781
+ !equals(frameState.extent, renderedExtent)
767
782
  ) {
768
783
  this.renderedImageCanvas_ = null;
769
784
  }
@@ -864,6 +879,27 @@ class RasterSource extends ImageSource {
864
879
  }
865
880
  }
866
881
 
882
+ /**
883
+ * @param {import("../proj/Projection").default} [projection] Projection.
884
+ * @return {Array<number>|null} Resolutions.
885
+ */
886
+ getResolutions(projection) {
887
+ if (!this.useResolutions_) {
888
+ return null;
889
+ }
890
+ let resolutions = super.getResolutions();
891
+ if (!resolutions) {
892
+ for (let i = 0, ii = this.layers_.length; i < ii; ++i) {
893
+ const source = this.layers_[i].getSource();
894
+ resolutions = source.getResolutions(projection);
895
+ if (resolutions) {
896
+ break;
897
+ }
898
+ }
899
+ }
900
+ return resolutions;
901
+ }
902
+
867
903
  disposeInternal() {
868
904
  if (this.processor_) {
869
905
  this.processor_.dispose();
@@ -158,10 +158,10 @@ declare class Source extends BaseObject {
158
158
  */
159
159
  getProjection(): import("../proj/Projection.js").default | null;
160
160
  /**
161
- * @abstract
161
+ * @param {import("../proj/Projection").default} [projection] Projection.
162
162
  * @return {Array<number>|null} Resolutions.
163
163
  */
164
- getResolutions(): Array<number> | null;
164
+ getResolutions(projection?: import("../proj/Projection.js").default | undefined): Array<number> | null;
165
165
  /**
166
166
  * @return {Promise<import("../View.js").ViewOptions>} A promise for view-related properties.
167
167
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Source.d.ts","sourceRoot":"","sources":["Source.js"],"names":[],"mappings":";;;;oBAQa,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO;;;;;iCAQlC,OAAO,WAAW,EAAE,UAAU,KAAG,CAAC,MAAM,GAAC,MAAM,MAAM,CAAC,CAAC;;;;;;;;;8BAWhE,MAAM,GAAC,MAAM,MAAM,CAAC,GAAC,WAAW;;;;;;;;;;;;;iBAO/B,OAAO,YAAY,EAAE,cAAc;;;;;;;;;;;;;;;AA3BjD;;;GAGG;AAEH;;;;;GAKG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;GASG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EAwEjB;IAnEC;;;OAGG;IACH,sBAFU,OAAO,uBAAuB,EAAE,OAAO,GAAC,IAAI,CAEH;IAEnD;;;OAGG;IACH,sBAA4D;IAE5D;;;OAGG;IACH,iCAGU;IAEV;;;;OAIG;IACH,SAFU,OAAO,CAEG;IAEpB;;;OAGG;IACH,eAAmE;IAEnE;;;OAGG;IACH,eAAiE;IAEjE;;;OAGG;IACH,qBAAyC;IAEzC;;;OAGG;IACH,+BAFmB,OAAO,YAAY,EAAE,WAAW,KAAE,IAAI,CAEjC;IAExB;;;OAGG;IACH,+BAFmB,KAAK,KAAE,IAAI,CAEN;IAGxB;;;OAGG;IACH,qBAGE;IAGJ;;;;OAIG;IACH,mBAHa,WAAW,QAKvB;IAED;;;OAGG;IACH,8BAHY,OAAO,CAKlB;IAED;;;;OAIG;IACH,iBAHY,OAAO,uBAAuB,EAAE,OAAO,GAAC,IAAI,CAKvD;IAED;;;OAGG;IACH,kBAFY,MAAM,MAAM,CAAC,GAAC,IAAI,CAI7B;IAED;;OAEG;IACH,WAFY,QAAQ,OAAO,YAAY,EAAE,WAAW,CAAC,CAIpD;IAED;;;;OAIG;IACH,YAHY,OAAO,aAAa,EAAE,KAAK,CAKtC;IAED;;OAEG;IACH,YAFY,OAAO,GAAC,SAAS,CAI5B;IAED;;OAEG;IACH,kBAFY,OAAO,CAIlB;IAED;;;OAGG;IACH,gBAEC;IAED;;;;;;OAMG;IACH,8BALW,eAAe,GAAC,SAAS,QAQnC;IAED;;;OAGG;IACH,gBAFW,OAAO,aAAa,EAAE,KAAK,QAKrC;CACF"}
1
+ {"version":3,"file":"Source.d.ts","sourceRoot":"","sources":["Source.js"],"names":[],"mappings":";;;;oBAOa,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO;;;;;iCAQlC,OAAO,WAAW,EAAE,UAAU,KAAG,CAAC,MAAM,GAAC,MAAM,MAAM,CAAC,CAAC;;;;;;;;;8BAWhE,MAAM,GAAC,MAAM,MAAM,CAAC,GAAC,WAAW;;;;;;;;;;;;;iBAO/B,OAAO,YAAY,EAAE,cAAc;;;;;;;;;;;;;;;AA3BjD;;;GAGG;AAEH;;;;;GAKG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;GASG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EAwEjB;IAnEC;;;OAGG;IACH,sBAFU,OAAO,uBAAuB,EAAE,OAAO,GAAC,IAAI,CAEH;IAEnD;;;OAGG;IACH,sBAA4D;IAE5D;;;OAGG;IACH,iCAGU;IAEV;;;;OAIG;IACH,SAFU,OAAO,CAEG;IAEpB;;;OAGG;IACH,eAAmE;IAEnE;;;OAGG;IACH,eAAiE;IAEjE;;;OAGG;IACH,qBAAyC;IAEzC;;;OAGG;IACH,+BAFmB,OAAO,YAAY,EAAE,WAAW,KAAE,IAAI,CAEjC;IAExB;;;OAGG;IACH,+BAFmB,KAAK,KAAE,IAAI,CAEN;IAGxB;;;OAGG;IACH,qBAGE;IAGJ;;;;OAIG;IACH,mBAHa,WAAW,QAKvB;IAED;;;OAGG;IACH,8BAHY,OAAO,CAKlB;IAED;;;;OAIG;IACH,iBAHY,OAAO,uBAAuB,EAAE,OAAO,GAAC,IAAI,CAKvD;IAED;;;OAGG;IACH,kFAFY,MAAM,MAAM,CAAC,GAAC,IAAI,CAI7B;IAED;;OAEG;IACH,WAFY,QAAQ,OAAO,YAAY,EAAE,WAAW,CAAC,CAIpD;IAED;;;;OAIG;IACH,YAHY,OAAO,aAAa,EAAE,KAAK,CAKtC;IAED;;OAEG;IACH,YAFY,OAAO,GAAC,SAAS,CAI5B;IAED;;OAEG;IACH,kBAFY,OAAO,CAIlB;IAED;;;OAGG;IACH,gBAEC;IAED;;;;;;OAMG;IACH,8BALW,eAAe,GAAC,SAAS,QAQnC;IAED;;;OAGG;IACH,gBAFW,OAAO,aAAa,EAAE,KAAK,QAKrC;CACF"}
package/source/Source.js CHANGED
@@ -2,7 +2,6 @@
2
2
  * @module ol/source/Source
3
3
  */
4
4
  import BaseObject from '../Object.js';
5
- import {abstract} from '../util.js';
6
5
  import {get as getProjection} from '../proj.js';
7
6
 
8
7
  /**
@@ -152,11 +151,11 @@ class Source extends BaseObject {
152
151
  }
153
152
 
154
153
  /**
155
- * @abstract
154
+ * @param {import("../proj/Projection").default} [projection] Projection.
156
155
  * @return {Array<number>|null} Resolutions.
157
156
  */
158
- getResolutions() {
159
- return abstract();
157
+ getResolutions(projection) {
158
+ return null;
160
159
  }
161
160
 
162
161
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Tile.d.ts","sourceRoot":"","sources":["Tile.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tile.d.ts","sourceRoot":"","sources":["Tile.js"],"names":[],"mappings":"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"}
package/source/Tile.js CHANGED
@@ -232,13 +232,17 @@ class TileSource extends Source {
232
232
  }
233
233
 
234
234
  /**
235
+ * @param {import("../proj/Projection").default} [projection] Projection.
235
236
  * @return {Array<number>|null} Resolutions.
236
237
  */
237
- getResolutions() {
238
- if (!this.tileGrid) {
238
+ getResolutions(projection) {
239
+ const tileGrid = projection
240
+ ? this.getTileGridForProjection(projection)
241
+ : this.tileGrid;
242
+ if (!tileGrid) {
239
243
  return null;
240
244
  }
241
- return this.tileGrid.getResolutions();
245
+ return tileGrid.getResolutions();
242
246
  }
243
247
 
244
248
  /**
package/util.js CHANGED
@@ -33,4 +33,4 @@ export function getUid(obj) {
33
33
  * OpenLayers version.
34
34
  * @type {string}
35
35
  */
36
- export const VERSION = '7.1.1-dev.1667846236548';
36
+ export const VERSION = '7.1.1-dev.1668076229616';