@basemaps/lambda-tiler 7.2.0 → 7.3.0

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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [7.3.0](https://github.com/linz/basemaps/compare/v7.2.0...v7.3.0) (2024-05-02)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **lambda-tiler:** ensure wmts limits extent to the bounding box of the tile matrix extent BM-1012 ([#3235](https://github.com/linz/basemaps/issues/3235)) ([b8d56cd](https://github.com/linz/basemaps/commit/b8d56cdbbf2cb08f1ef96bc6de82ce94563da945))
12
+
13
+
14
+
15
+
16
+
6
17
  # [7.2.0](https://github.com/linz/basemaps/compare/v7.1.1...v7.2.0) (2024-04-08)
7
18
 
8
19
 
@@ -172,6 +172,63 @@ describe('WmtsCapabilities', () => {
172
172
  assert.equal(layer?.find('ows:Abstract')?.textContent, 'aerial__description');
173
173
  assert.equal(layer?.find('Style')?.toString(), V('Style', { isDefault: 'true' }, [V('ows:Title', 'Default Style'), V('ows:Identifier', 'default')]).toString());
174
174
  });
175
+ it('should limit a bounding box to the tileMatrix extent WebMercatorQuad', () => {
176
+ const wmts = new WmtsCapabilities({ httpBase: 'https://basemaps.test', apiKey });
177
+ const bigImagery = new Map();
178
+ bigImagery.set(Imagery3857.id, {
179
+ ...Imagery3857,
180
+ bounds: {
181
+ // These bounds are slightly outside the extent bounds of 3857 (approx 0.3m offset)
182
+ // expected bounds: {x: -20037508.34 y:-20037508.34, width: 40075016.6855784 , height: 40075016.6855784 }
183
+ x: -20037508.6276,
184
+ y: -20037508.6276,
185
+ width: 40075016.9626,
186
+ height: 40075014.197799996,
187
+ },
188
+ });
189
+ wmts.fromParams({
190
+ provider: Provider,
191
+ tileMatrix: [GoogleTms],
192
+ tileSet: TileSetAerial,
193
+ imagery: bigImagery,
194
+ formats: ['png'],
195
+ });
196
+ const raw = wmts.toVNode();
197
+ const wgs84 = raw.find('Contents', 'Layer', 'ows:WGS84BoundingBox');
198
+ const epsg3857 = raw.find('Contents', 'Layer', 'ows:BoundingBox');
199
+ assert.equal(epsg3857?.find('ows:LowerCorner')?.toString(), `<ows:LowerCorner>-20037508.3428 -20037508.3428</ows:LowerCorner>`);
200
+ assert.equal(epsg3857?.find('ows:UpperCorner')?.toString(), `<ows:UpperCorner>20037508.3428 20037508.3428</ows:UpperCorner>`);
201
+ assert.equal(wgs84?.find('ows:LowerCorner')?.toString(), '<ows:LowerCorner>-180 -85.051129</ows:LowerCorner>');
202
+ assert.equal(wgs84?.find('ows:UpperCorner')?.toString(), '<ows:UpperCorner>180 85.051129</ows:UpperCorner>');
203
+ });
204
+ it('should limit a bounding box to the tileMatrix extent NZTM2000Quad', () => {
205
+ const wmts = new WmtsCapabilities({ httpBase: 'https://basemaps.test', apiKey });
206
+ const bigImagery = new Map();
207
+ bigImagery.set(Imagery2193.id, {
208
+ ...Imagery2193,
209
+ bounds: {
210
+ // These bounds are slightly outside the extent bounds of NZTM2000Quad (approx 0.3m offset)
211
+ x: -3260586.9214,
212
+ y: 419435.7552,
213
+ width: 10018754.086099999,
214
+ height: 10018754.086099999,
215
+ },
216
+ });
217
+ wmts.fromParams({
218
+ provider: Provider,
219
+ tileMatrix: [Nztm2000QuadTms],
220
+ tileSet: TileSetAerial,
221
+ imagery: bigImagery,
222
+ formats: ['png'],
223
+ });
224
+ const raw = wmts.toVNode();
225
+ const wgs84 = raw.find('Contents', 'Layer', 'ows:WGS84BoundingBox');
226
+ const crsBounds = raw.find('Contents', 'Layer', 'ows:BoundingBox');
227
+ assert.equal(crsBounds?.find('ows:LowerCorner')?.toString(), `<ows:LowerCorner>419435.9938 -3260586.7284</ows:LowerCorner>`);
228
+ assert.equal(crsBounds?.find('ows:UpperCorner')?.toString(), `<ows:UpperCorner>10438190.1652 6758167.443</ows:UpperCorner>`);
229
+ assert.equal(wgs84?.find('ows:LowerCorner')?.toString(), '<ows:LowerCorner>-180 -49.929855</ows:LowerCorner>');
230
+ assert.equal(wgs84?.find('ows:UpperCorner')?.toString(), '<ows:UpperCorner>180 2.938603</ows:UpperCorner>');
231
+ });
175
232
  it('should include output the correct TileMatrix', () => {
176
233
  const wmts = new WmtsCapabilities({
177
234
  httpBase: 'https://basemaps.test',
@@ -383,9 +440,9 @@ describe('WmtsCapabilities', () => {
383
440
  .split('\n')
384
441
  .map((c) => c.trim()));
385
442
  assert.deepEqual(boundingBox[0][1], '<ows:LowerCorner>-180 -85.0511</ows:LowerCorner>');
386
- assert.equal(boundingBox[0][2], '<ows:UpperCorner>180 0</ows:UpperCorner>');
443
+ assert.equal(boundingBox[0][2], '<ows:UpperCorner>180 85.0511</ows:UpperCorner>');
387
444
  assert.deepEqual(boundingBox[1][1], '<ows:LowerCorner>-180 -85.0511</ows:LowerCorner>');
388
- assert.equal(boundingBox[1][2], '<ows:UpperCorner>180 0</ows:UpperCorner>');
445
+ assert.equal(boundingBox[1][2], '<ows:UpperCorner>180 85.0511</ows:UpperCorner>');
389
446
  });
390
447
  it('should work with NZTM2000Quad', () => {
391
448
  const wmts = new WmtsCapabilities({ tileMatrix: [] });
@@ -1 +1 @@
1
- {"version":3,"file":"wmts.capability.test.js","sourceRoot":"","sources":["../../src/__tests__/wmts.capability.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wmts.capability.test.js","sourceRoot":"","sources":["../../src/__tests__/wmts.capability.test.ts"],"names":[],"mappings":"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"}
@@ -106,18 +106,23 @@ export class WmtsBuilder {
106
106
  return V('ows:Keywords', [V('ows:Keyword', tileSet.category)]);
107
107
  }
108
108
  buildWgs84BoundingBox(tms, layers) {
109
- let bbox;
109
+ let bbox = null;
110
110
  if (layers.length > 0) {
111
111
  let bounds = layers[0];
112
112
  for (let i = 1; i < layers.length; i++) {
113
113
  bounds = bounds.union(layers[i]);
114
114
  }
115
- bbox = wgs84Extent(tms, bounds.toJson());
115
+ // If imagery is outside of the bounds of the tileMatrix, fall back to the tileMatrix extent for the bounds
116
+ if (!tms.extent.containsBounds(bounds)) {
117
+ bbox = wgs84Extent(tms, tms.extent);
118
+ }
119
+ else {
120
+ bbox = wgs84Extent(tms, bounds);
121
+ }
116
122
  }
117
- else {
118
- // No layers provided assume extent is the size of the tile matrix set :shrug: ?
123
+ // No layers provided assume extent is the size of the tile matrix set :shrug: ?
124
+ if (bbox == null)
119
125
  bbox = wgs84Extent(tms, tms.extent);
120
- }
121
126
  // If east is less than west, then this has crossed the anti meridian, so cover the entire globe
122
127
  if (bbox[2] < bbox[0]) {
123
128
  bbox[0] = -180;
@@ -130,7 +135,7 @@ export class WmtsBuilder {
130
135
  }
131
136
  /** Combine all the bounds of the imagery inside the layers into a extent for the imagery set */
132
137
  buildBoundingBoxFromImagery(tms, layers) {
133
- let bounds;
138
+ let bounds = null;
134
139
  for (const layer of layers) {
135
140
  const imgId = layer[tms.projection.code];
136
141
  if (imgId == null)
@@ -145,6 +150,9 @@ export class WmtsBuilder {
145
150
  }
146
151
  if (bounds == null)
147
152
  return null;
153
+ // If imagery is outside of the bounds of the tileMatrix, fall back to the tileMatrix extent for the bounds
154
+ if (!tms.extent.containsBounds(bounds))
155
+ bounds = tms.extent;
148
156
  const bbox = bounds.toBbox();
149
157
  return V('ows:BoundingBox', { crs: tms.projection.toUrn() }, [
150
158
  V('ows:LowerCorner', formatBbox(bbox[tms.indexX], bbox[tms.indexY], MeterPrecision)),
@@ -1 +1 @@
1
- {"version":3,"file":"wmts.capability.js","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wmts.capability.js","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basemaps/lambda-tiler",
3
- "version": "7.2.0",
3
+ "version": "7.3.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/linz/basemaps.git",
@@ -23,9 +23,9 @@
23
23
  "license": "MIT",
24
24
  "dependencies": {
25
25
  "@basemaps/config": "^7.1.0",
26
- "@basemaps/config-loader": "^7.1.0",
26
+ "@basemaps/config-loader": "^7.3.0",
27
27
  "@basemaps/geo": "^7.1.0",
28
- "@basemaps/shared": "^7.1.0",
28
+ "@basemaps/shared": "^7.3.0",
29
29
  "@basemaps/tiler": "^7.1.0",
30
30
  "@basemaps/tiler-sharp": "^7.1.0",
31
31
  "@linzjs/geojson": "^7.1.0",
@@ -55,5 +55,5 @@
55
55
  "@types/pixelmatch": "^5.0.0",
56
56
  "pretty-json-log": "^1.0.0"
57
57
  },
58
- "gitHead": "09567b623d61e434d44366777513d4099b1aec70"
58
+ "gitHead": "7f99974dde2ad41c1179ef2ce49b29b30be0090d"
59
59
  }
@@ -229,6 +229,86 @@ describe('WmtsCapabilities', () => {
229
229
  );
230
230
  });
231
231
 
232
+ it('should limit a bounding box to the tileMatrix extent WebMercatorQuad', () => {
233
+ const wmts = new WmtsCapabilities({ httpBase: 'https://basemaps.test', apiKey });
234
+
235
+ const bigImagery = new Map();
236
+ bigImagery.set(Imagery3857.id, {
237
+ ...Imagery3857,
238
+ bounds: {
239
+ // These bounds are slightly outside the extent bounds of 3857 (approx 0.3m offset)
240
+ // expected bounds: {x: -20037508.34 y:-20037508.34, width: 40075016.6855784 , height: 40075016.6855784 }
241
+ x: -20037508.6276,
242
+ y: -20037508.6276,
243
+ width: 40075016.9626,
244
+ height: 40075014.197799996,
245
+ },
246
+ });
247
+
248
+ wmts.fromParams({
249
+ provider: Provider,
250
+ tileMatrix: [GoogleTms],
251
+ tileSet: TileSetAerial,
252
+ imagery: bigImagery,
253
+ formats: ['png'],
254
+ });
255
+ const raw = wmts.toVNode();
256
+
257
+ const wgs84 = raw.find('Contents', 'Layer', 'ows:WGS84BoundingBox');
258
+ const epsg3857 = raw.find('Contents', 'Layer', 'ows:BoundingBox');
259
+
260
+ assert.equal(
261
+ epsg3857?.find('ows:LowerCorner')?.toString(),
262
+ `<ows:LowerCorner>-20037508.3428 -20037508.3428</ows:LowerCorner>`,
263
+ );
264
+ assert.equal(
265
+ epsg3857?.find('ows:UpperCorner')?.toString(),
266
+ `<ows:UpperCorner>20037508.3428 20037508.3428</ows:UpperCorner>`,
267
+ );
268
+
269
+ assert.equal(wgs84?.find('ows:LowerCorner')?.toString(), '<ows:LowerCorner>-180 -85.051129</ows:LowerCorner>');
270
+ assert.equal(wgs84?.find('ows:UpperCorner')?.toString(), '<ows:UpperCorner>180 85.051129</ows:UpperCorner>');
271
+ });
272
+
273
+ it('should limit a bounding box to the tileMatrix extent NZTM2000Quad', () => {
274
+ const wmts = new WmtsCapabilities({ httpBase: 'https://basemaps.test', apiKey });
275
+ const bigImagery = new Map();
276
+
277
+ bigImagery.set(Imagery2193.id, {
278
+ ...Imagery2193,
279
+ bounds: {
280
+ // These bounds are slightly outside the extent bounds of NZTM2000Quad (approx 0.3m offset)
281
+ x: -3260586.9214,
282
+ y: 419435.7552,
283
+ width: 10018754.086099999,
284
+ height: 10018754.086099999,
285
+ },
286
+ });
287
+
288
+ wmts.fromParams({
289
+ provider: Provider,
290
+ tileMatrix: [Nztm2000QuadTms],
291
+ tileSet: TileSetAerial,
292
+ imagery: bigImagery,
293
+ formats: ['png'],
294
+ });
295
+ const raw = wmts.toVNode();
296
+
297
+ const wgs84 = raw.find('Contents', 'Layer', 'ows:WGS84BoundingBox');
298
+ const crsBounds = raw.find('Contents', 'Layer', 'ows:BoundingBox');
299
+ assert.equal(
300
+ crsBounds?.find('ows:LowerCorner')?.toString(),
301
+ `<ows:LowerCorner>419435.9938 -3260586.7284</ows:LowerCorner>`,
302
+ );
303
+ assert.equal(
304
+ crsBounds?.find('ows:UpperCorner')?.toString(),
305
+ `<ows:UpperCorner>10438190.1652 6758167.443</ows:UpperCorner>`,
306
+ );
307
+
308
+ assert.equal(wgs84?.find('ows:LowerCorner')?.toString(), '<ows:LowerCorner>-180 -49.929855</ows:LowerCorner>');
309
+ assert.equal(wgs84?.find('ows:UpperCorner')?.toString(), '<ows:UpperCorner>180 2.938603</ows:UpperCorner>');
310
+ });
311
+
232
312
  it('should include output the correct TileMatrix', () => {
233
313
  const wmts = new WmtsCapabilities({
234
314
  httpBase: 'https://basemaps.test',
@@ -512,11 +592,12 @@ describe('WmtsCapabilities', () => {
512
592
  .split('\n')
513
593
  .map((c) => c.trim()),
514
594
  );
595
+
515
596
  assert.deepEqual(boundingBox[0][1], '<ows:LowerCorner>-180 -85.0511</ows:LowerCorner>');
516
- assert.equal(boundingBox[0][2], '<ows:UpperCorner>180 0</ows:UpperCorner>');
597
+ assert.equal(boundingBox[0][2], '<ows:UpperCorner>180 85.0511</ows:UpperCorner>');
517
598
 
518
599
  assert.deepEqual(boundingBox[1][1], '<ows:LowerCorner>-180 -85.0511</ows:LowerCorner>');
519
- assert.equal(boundingBox[1][2], '<ows:UpperCorner>180 0</ows:UpperCorner>');
600
+ assert.equal(boundingBox[1][2], '<ows:UpperCorner>180 85.0511</ows:UpperCorner>');
520
601
  });
521
602
 
522
603
  it('should work with NZTM2000Quad', () => {
@@ -94,18 +94,25 @@ export class WmtsBuilder {
94
94
  }
95
95
 
96
96
  buildWgs84BoundingBox(tms: TileMatrixSet, layers: Bounds[]): VNodeElement {
97
- let bbox: BBox;
97
+ let bbox: BBox | null = null;
98
+
98
99
  if (layers.length > 0) {
99
100
  let bounds = layers[0];
100
101
  for (let i = 1; i < layers.length; i++) {
101
102
  bounds = bounds.union(layers[i]);
102
103
  }
103
- bbox = wgs84Extent(tms, bounds.toJson());
104
- } else {
105
- // No layers provided assume extent is the size of the tile matrix set :shrug: ?
106
- bbox = wgs84Extent(tms, tms.extent);
104
+
105
+ // If imagery is outside of the bounds of the tileMatrix, fall back to the tileMatrix extent for the bounds
106
+ if (!tms.extent.containsBounds(bounds)) {
107
+ bbox = wgs84Extent(tms, tms.extent);
108
+ } else {
109
+ bbox = wgs84Extent(tms, bounds);
110
+ }
107
111
  }
108
112
 
113
+ // No layers provided assume extent is the size of the tile matrix set :shrug: ?
114
+ if (bbox == null) bbox = wgs84Extent(tms, tms.extent);
115
+
109
116
  // If east is less than west, then this has crossed the anti meridian, so cover the entire globe
110
117
  if (bbox[2] < bbox[0]) {
111
118
  bbox[0] = -180;
@@ -120,7 +127,7 @@ export class WmtsBuilder {
120
127
 
121
128
  /** Combine all the bounds of the imagery inside the layers into a extent for the imagery set */
122
129
  buildBoundingBoxFromImagery(tms: TileMatrixSet, layers: ConfigLayer[]): VNodeElement | null {
123
- let bounds;
130
+ let bounds: Bounds | null = null;
124
131
  for (const layer of layers) {
125
132
  const imgId = layer[tms.projection.code];
126
133
  if (imgId == null) continue;
@@ -131,7 +138,11 @@ export class WmtsBuilder {
131
138
  }
132
139
  if (bounds == null) return null;
133
140
 
141
+ // If imagery is outside of the bounds of the tileMatrix, fall back to the tileMatrix extent for the bounds
142
+ if (!tms.extent.containsBounds(bounds)) bounds = tms.extent;
143
+
134
144
  const bbox = bounds.toBbox();
145
+
135
146
  return V('ows:BoundingBox', { crs: tms.projection.toUrn() }, [
136
147
  V('ows:LowerCorner', formatBbox(bbox[tms.indexX], bbox[tms.indexY], MeterPrecision)),
137
148
  V('ows:UpperCorner', formatBbox(bbox[tms.indexX + 2], bbox[tms.indexY + 2], MeterPrecision)),