@developmentseed/deck.gl-raster 0.7.0-beta.1 → 0.8.0-beta.1

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.
Files changed (94) hide show
  1. package/dist/fp64.d.ts +18 -0
  2. package/dist/fp64.d.ts.map +1 -0
  3. package/dist/fp64.js +28 -0
  4. package/dist/fp64.js.map +1 -0
  5. package/dist/globe-grid-mesh.d.ts +30 -0
  6. package/dist/globe-grid-mesh.d.ts.map +1 -0
  7. package/dist/globe-grid-mesh.js +67 -0
  8. package/dist/globe-grid-mesh.js.map +1 -0
  9. package/dist/gpu-modules/cutline-bbox.d.ts +26 -40
  10. package/dist/gpu-modules/cutline-bbox.d.ts.map +1 -1
  11. package/dist/gpu-modules/cutline-bbox.js +24 -53
  12. package/dist/gpu-modules/cutline-bbox.js.map +1 -1
  13. package/dist/gpu-modules/index.d.ts +1 -1
  14. package/dist/gpu-modules/index.d.ts.map +1 -1
  15. package/dist/gpu-modules/index.js +1 -1
  16. package/dist/gpu-modules/index.js.map +1 -1
  17. package/dist/index.d.ts +4 -4
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +4 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/layer-utils.d.ts +2 -2
  22. package/dist/layer-utils.d.ts.map +1 -1
  23. package/dist/layer-utils.js.map +1 -1
  24. package/dist/mesh-layer/mesh-layer-fragment.glsl.d.ts +1 -1
  25. package/dist/mesh-layer/mesh-layer-fragment.glsl.js +1 -1
  26. package/dist/mesh-layer/mesh-layer-vertex.glsl.d.ts +3 -0
  27. package/dist/mesh-layer/mesh-layer-vertex.glsl.d.ts.map +1 -0
  28. package/dist/mesh-layer/mesh-layer-vertex.glsl.js +90 -0
  29. package/dist/mesh-layer/mesh-layer-vertex.glsl.js.map +1 -0
  30. package/dist/mesh-layer/mesh-layer.d.ts +31 -5
  31. package/dist/mesh-layer/mesh-layer.d.ts.map +1 -1
  32. package/dist/mesh-layer/mesh-layer.js +67 -3
  33. package/dist/mesh-layer/mesh-layer.js.map +1 -1
  34. package/dist/multi-raster-tileset/index.d.ts +2 -2
  35. package/dist/multi-raster-tileset/index.d.ts.map +1 -1
  36. package/dist/multi-raster-tileset/index.js +1 -1
  37. package/dist/multi-raster-tileset/index.js.map +1 -1
  38. package/dist/multi-raster-tileset/multi-tileset-descriptor.d.ts +21 -21
  39. package/dist/multi-raster-tileset/multi-tileset-descriptor.d.ts.map +1 -1
  40. package/dist/multi-raster-tileset/multi-tileset-descriptor.js +11 -11
  41. package/dist/multi-raster-tileset/multi-tileset-descriptor.js.map +1 -1
  42. package/dist/multi-raster-tileset/secondary-tile-resolver.d.ts +4 -4
  43. package/dist/multi-raster-tileset/secondary-tile-resolver.d.ts.map +1 -1
  44. package/dist/multi-raster-tileset/secondary-tile-resolver.js +2 -2
  45. package/dist/multi-raster-tileset/secondary-tile-resolver.js.map +1 -1
  46. package/dist/raster-layer.d.ts +39 -4
  47. package/dist/raster-layer.d.ts.map +1 -1
  48. package/dist/raster-layer.js +51 -35
  49. package/dist/raster-layer.js.map +1 -1
  50. package/dist/raster-tile-layer/raster-tile-layer.d.ts +6 -6
  51. package/dist/raster-tile-layer/raster-tile-layer.d.ts.map +1 -1
  52. package/dist/raster-tile-layer/raster-tile-layer.js +40 -31
  53. package/dist/raster-tile-layer/raster-tile-layer.js.map +1 -1
  54. package/dist/raster-tileset/affine-tileset-level.d.ts +4 -4
  55. package/dist/raster-tileset/affine-tileset-level.d.ts.map +1 -1
  56. package/dist/raster-tileset/affine-tileset-level.js +2 -2
  57. package/dist/raster-tileset/affine-tileset.d.ts +3 -3
  58. package/dist/raster-tileset/affine-tileset.d.ts.map +1 -1
  59. package/dist/raster-tileset/affine-tileset.js +1 -1
  60. package/dist/raster-tileset/bounding-volume-cache.d.ts +11 -4
  61. package/dist/raster-tileset/bounding-volume-cache.d.ts.map +1 -1
  62. package/dist/raster-tileset/bounding-volume-cache.js +13 -4
  63. package/dist/raster-tileset/bounding-volume-cache.js.map +1 -1
  64. package/dist/raster-tileset/index.d.ts +3 -2
  65. package/dist/raster-tileset/index.d.ts.map +1 -1
  66. package/dist/raster-tileset/index.js +1 -0
  67. package/dist/raster-tileset/index.js.map +1 -1
  68. package/dist/raster-tileset/raster-tile-traversal.d.ts +68 -13
  69. package/dist/raster-tileset/raster-tile-traversal.d.ts.map +1 -1
  70. package/dist/raster-tileset/raster-tile-traversal.js +240 -35
  71. package/dist/raster-tileset/raster-tile-traversal.js.map +1 -1
  72. package/dist/raster-tileset/raster-tileset-2d.d.ts +64 -6
  73. package/dist/raster-tileset/raster-tileset-2d.d.ts.map +1 -1
  74. package/dist/raster-tileset/raster-tileset-2d.js +75 -2
  75. package/dist/raster-tileset/raster-tileset-2d.js.map +1 -1
  76. package/dist/raster-tileset/sort-by-distance.d.ts +41 -0
  77. package/dist/raster-tileset/sort-by-distance.d.ts.map +1 -0
  78. package/dist/raster-tileset/sort-by-distance.js +72 -0
  79. package/dist/raster-tileset/sort-by-distance.js.map +1 -0
  80. package/dist/raster-tileset/tile-matrix-set.d.ts +4 -4
  81. package/dist/raster-tileset/tile-matrix-set.d.ts.map +1 -1
  82. package/dist/raster-tileset/tile-matrix-set.js +1 -1
  83. package/dist/raster-tileset/tile-matrix-set.js.map +1 -1
  84. package/dist/raster-tileset/tileset-interface.d.ts +3 -3
  85. package/dist/raster-tileset/tileset-interface.d.ts.map +1 -1
  86. package/dist/raster-tileset/web-mercator-clamp.d.ts +29 -0
  87. package/dist/raster-tileset/web-mercator-clamp.d.ts.map +1 -0
  88. package/dist/raster-tileset/web-mercator-clamp.js +54 -0
  89. package/dist/raster-tileset/web-mercator-clamp.js.map +1 -0
  90. package/package.json +7 -7
  91. package/dist/raster-tile-layer/constants.d.ts +0 -11
  92. package/dist/raster-tile-layer/constants.d.ts.map +0 -1
  93. package/dist/raster-tile-layer/constants.js +0 -11
  94. package/dist/raster-tile-layer/constants.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"raster-tile-traversal.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tile-traversal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raster-tile-traversal.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tile-traversal.ts"],"names":[],"mappings":"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"}
@@ -8,11 +8,12 @@
8
8
  import type { Viewport } from "@deck.gl/core";
9
9
  import type { GeoBoundingBox, _Tileset2DProps as Tileset2DProps } from "@deck.gl/geo-layers";
10
10
  import { _Tileset2D as Tileset2D } from "@deck.gl/geo-layers";
11
+ import type { InitialTriangulation } from "@developmentseed/raster-reproject";
11
12
  import type { Matrix4 } from "@math.gl/core";
12
- import type { TilesetDescriptor } from "./tileset-interface.js";
13
- import type { Corners, ProjectedBoundingBox, TileIndex, ZRange } from "./types.js";
14
- /** Type returned by `getTileMetadata` */
15
- export type TileMetadata = {
13
+ import type { RasterTilesetDescriptor } from "./tileset-interface.js";
14
+ import type { Corners, ProjectedBoundingBox, ProjectionFunction, TileIndex, ZRange } from "./types.js";
15
+ /** Type returned by {@link RasterTileset2D.getTileMetadata} */
16
+ export type RasterTileMetadata = {
16
17
  /**
17
18
  * **Axis-aligned** bounding box of the tile in **WGS84 coordinates**.
18
19
  */
@@ -37,6 +38,46 @@ export type TileMetadata = {
37
38
  * Tile height in pixels.
38
39
  */
39
40
  tileHeight: number;
41
+ /**
42
+ * Forward (tile-local pixel → CRS) transform for this tile.
43
+ *
44
+ * Stable across the tile's lifetime; computed once at tile creation. Stored
45
+ * on the tile so downstream layers (e.g. `RasterTileLayer._renderSubLayers`)
46
+ * receive a reference-stable function across renders, which is what
47
+ * `RasterLayer`'s `reprojectionFnsChanged` check needs to avoid spurious mesh
48
+ * regeneration.
49
+ */
50
+ forwardTransform: ProjectionFunction;
51
+ /**
52
+ * Inverse (CRS → tile-local pixel) transform.
53
+ *
54
+ * Same stability guarantees as {@link TileMetadata.forwardTransform}.
55
+ */
56
+ inverseTransform: ProjectionFunction;
57
+ /**
58
+ * Forward (source CRS → deck.gl common space) projection.
59
+ *
60
+ * Mirrors deck.gl's `Viewport.projectPosition` but for this descriptor's
61
+ * source CRS rather than lng/lat. Descriptor-global (identical for every
62
+ * tile) and built once on the tileset, so the reference is stable for the
63
+ * tileset's lifetime — which is what `RasterLayer`'s `reprojectionFnsChanged`
64
+ * check relies on to avoid regenerating the mesh every render.
65
+ */
66
+ _projectPosition: ProjectionFunction;
67
+ /**
68
+ * Inverse (deck.gl common space → source CRS) projection.
69
+ *
70
+ * Mirrors deck.gl's `Viewport.unprojectPosition`. Same stability guarantees
71
+ * as {@link RasterTileMetadata._projectPosition}.
72
+ */
73
+ _unprojectPosition: ProjectionFunction;
74
+ /**
75
+ * Seed triangulation that clamps this tile's reprojection mesh to the valid
76
+ * Web Mercator latitude band (±85.051°), or `undefined` if no clamp is needed.
77
+ * Consumed only by the Web Mercator render path; the globe path renders the
78
+ * full mesh. See {@link createInitialWebMercatorTriangulation}.
79
+ */
80
+ _webMercatorInitialTriangulation?: InitialTriangulation;
40
81
  };
41
82
  /**
42
83
  * Configuration for a {@link RasterTileset2D}.
@@ -78,7 +119,15 @@ export declare class RasterTileset2D extends Tileset2D {
78
119
  private wgs84Bounds;
79
120
  private getPixelRatio;
80
121
  private boundingVolumeCache;
81
- constructor(opts: Tileset2DProps, descriptor: TilesetDescriptor, { getPixelRatio, maxBoundingVolumeCacheSize }?: RasterTileset2DOptions);
122
+ private projectPosition;
123
+ private unprojectPosition;
124
+ /**
125
+ * Projection mode of the viewport on the previous `getTileIndices` call.
126
+ * `undefined` until the first call. Used to clear {@link boundingVolumeCache}
127
+ * on a globe↔mercator switch (volumes are not valid across projection modes).
128
+ */
129
+ private lastViewportIsGlobe?;
130
+ constructor(opts: Tileset2DProps, descriptor: RasterTilesetDescriptor, { getPixelRatio, maxBoundingVolumeCacheSize }?: RasterTileset2DOptions);
82
131
  /**
83
132
  * Get tile indices visible in viewport
84
133
  * Uses frustum culling similar to OSM implementation
@@ -104,9 +153,18 @@ export declare class RasterTileset2D extends Tileset2D {
104
153
  modelMatrix?: Matrix4;
105
154
  modelMatrixInverse?: Matrix4;
106
155
  }): TileIndex[];
156
+ /**
157
+ * Sort tile indices by ascending distance from the viewport center in
158
+ * projected (common/world) space so loads initiate center-out.
159
+ *
160
+ * Short-circuits when `tileIndices.length <= maxRequests` — all fetches
161
+ * would start concurrently regardless of order in that case. Mutates and
162
+ * returns `tileIndices`.
163
+ */
164
+ private sortTileIndicesByDistance;
107
165
  getTileId(index: TileIndex): string;
108
166
  getParentIndex(index: TileIndex): TileIndex;
109
167
  getTileZoom(index: TileIndex): number;
110
- getTileMetadata(index: TileIndex): TileMetadata;
168
+ getTileMetadata(index: TileIndex): RasterTileMetadata;
111
169
  }
112
170
  //# sourceMappingURL=raster-tileset-2d.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"raster-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EACV,cAAc,EACd,eAAe,IAAI,cAAc,EAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAEV,OAAO,EACP,oBAAoB,EACpB,SAAS,EACT,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,yCAAyC;AACzC,MAAM,MAAM,YAAY,GAAG;IACzB;;OAEG;IACH,IAAI,EAAE,cAAc,CAAC;IAErB;;OAEG;IACH,aAAa,EAAE,oBAAoB,CAAC;IAEpC;;;;;;OAMG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAE7B;;;;;;;;OAQG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,mBAAmB,CAAsB;gBAG/C,IAAI,EAAE,cAAc,EACpB,UAAU,EAAE,iBAAiB,EAC7B,EAAE,aAAa,EAAE,0BAA0B,EAAE,GAAE,sBAA2B;IA2B5E;;;;;;;;;;;;;;;;OAgBG;IACM,cAAc,CAAC,IAAI,EAAE;QAC5B,QAAQ,EAAE,QAAQ,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,GAAG,SAAS,EAAE;IAyBN,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAInC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAiC3C,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAIrC,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY;CAmDzD"}
1
+ {"version":3,"file":"raster-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,KAAK,EACV,cAAc,EACd,eAAe,IAAI,cAAc,EAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAQ7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAEV,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,MAAM,EACP,MAAM,YAAY,CAAC;AAGpB,+DAA+D;AAC/D,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,cAAc,CAAC;IAErB;;OAEG;IACH,aAAa,EAAE,oBAAoB,CAAC;IAEpC;;;;;;OAMG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;;;;OAQG;IACH,gBAAgB,EAAE,kBAAkB,CAAC;IAErC;;;;OAIG;IACH,gBAAgB,EAAE,kBAAkB,CAAC;IAErC;;;;;;;;OAQG;IACH,gBAAgB,EAAE,kBAAkB,CAAC;IAErC;;;;;OAKG;IACH,kBAAkB,EAAE,kBAAkB,CAAC;IAEvC;;;;;OAKG;IACH,gCAAgC,CAAC,EAAE,oBAAoB,CAAC;CACzD,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAE7B;;;;;;;;OAQG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,iBAAiB,CAAqB;IAC9C;;;;OAIG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAU;gBAGpC,IAAI,EAAE,cAAc,EACpB,UAAU,EAAE,uBAAuB,EACnC,EAAE,aAAa,EAAE,0BAA0B,EAAE,GAAE,sBAA2B;IAwC5E;;;;;;;;;;;;;;;;OAgBG;IACM,cAAc,CAAC,IAAI,EAAE;QAC5B,QAAQ,EAAE,QAAQ,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,GAAG,SAAS,EAAE;IAyCf;;;;;;;OAOG;IACH,OAAO,CAAC,yBAAyB;IA4BxB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAInC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAiC3C,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAIrC,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,kBAAkB;CAwE/D"}
@@ -5,10 +5,13 @@
5
5
  * This version properly implements frustum culling and bounding volume calculations
6
6
  * following the pattern from deck.gl's OSM tile indexing.
7
7
  */
8
+ import { _GlobeViewport as GlobeViewport } from "@deck.gl/core";
8
9
  import { _Tileset2D as Tileset2D } from "@deck.gl/geo-layers";
9
10
  import { transformBounds } from "@developmentseed/proj";
10
11
  import { BoundingVolumeCache } from "./bounding-volume-cache.js";
11
- import { getTileIndices } from "./raster-tile-traversal.js";
12
+ import { getTileIndices, rescaleCommonSpaceToEPSG3857, rescaleEPSG3857ToCommonSpace, } from "./raster-tile-traversal.js";
13
+ import { sortItemsByDistanceFromViewportCenter } from "./sort-by-distance.js";
14
+ import { createInitialWebMercatorTriangulation } from "./web-mercator-clamp.js";
12
15
  /**
13
16
  * A generic tileset implementation organized according to the OGC
14
17
  * [TileMatrixSet](https://docs.ogc.org/is/17-083r4/17-083r4.html)
@@ -21,6 +24,14 @@ export class RasterTileset2D extends Tileset2D {
21
24
  wgs84Bounds;
22
25
  getPixelRatio;
23
26
  boundingVolumeCache;
27
+ projectPosition;
28
+ unprojectPosition;
29
+ /**
30
+ * Projection mode of the viewport on the previous `getTileIndices` call.
31
+ * `undefined` until the first call. Used to clear {@link boundingVolumeCache}
32
+ * on a globe↔mercator switch (volumes are not valid across projection modes).
33
+ */
34
+ lastViewportIsGlobe;
24
35
  constructor(opts, descriptor, { getPixelRatio, maxBoundingVolumeCacheSize } = {}) {
25
36
  super(opts);
26
37
  this.descriptor = descriptor;
@@ -28,6 +39,17 @@ export class RasterTileset2D extends Tileset2D {
28
39
  this.boundingVolumeCache = new BoundingVolumeCache({
29
40
  maxEntries: maxBoundingVolumeCacheSize,
30
41
  });
42
+ // Source-CRS ↔ deck.gl common-space projection, built once here so the
43
+ // closures are reference-stable for the tileset's lifetime. Exposed on
44
+ // each tile's metadata; `RasterTileLayer._renderSubLayers` reads them off
45
+ // the tile to keep `RasterLayer`'s reprojection-equality check stable
46
+ // across renders (deck.gl recreates the layer instance every render, so
47
+ // per-render-derived closures would regenerate the mesh every frame).
48
+ this.projectPosition = (x, y) => rescaleEPSG3857ToCommonSpace(descriptor.projectTo3857(x, y));
49
+ this.unprojectPosition = (cx, cy) => {
50
+ const [mx, my] = rescaleCommonSpaceToEPSG3857([cx, cy]);
51
+ return descriptor.projectFrom3857(mx, my);
52
+ };
31
53
  const rawBounds = transformBounds(this.descriptor.projectTo4326, ...this.descriptor.projectedBounds);
32
54
  // Web Mercator cannot represent latitudes outside ~±85.051°, and the
33
55
  // downstream tile traversal calls `lngLatToWorld` on these bounds which
@@ -61,6 +83,17 @@ export class RasterTileset2D extends Tileset2D {
61
83
  */
62
84
  getTileIndices(opts) {
63
85
  const { viewport, minZoom } = opts;
86
+ // A tile's bounding volume is computed in a different common space under a
87
+ // GlobeView than under Web Mercator, but the cache key is only (z, x, y).
88
+ // When the viewport's projection mode flips, drop the stale volumes. This
89
+ // mirrors the `project` gate in the tile traversal. (See
90
+ // BoundingVolumeCache.)
91
+ const isGlobe = Boolean(viewport instanceof GlobeViewport && viewport.resolution);
92
+ if (this.lastViewportIsGlobe !== undefined &&
93
+ this.lastViewportIsGlobe !== isGlobe) {
94
+ this.boundingVolumeCache.clear();
95
+ }
96
+ this.lastViewportIsGlobe = isGlobe;
64
97
  if (typeof minZoom === "number" && viewport.zoom < minZoom) {
65
98
  return [];
66
99
  }
@@ -76,7 +109,31 @@ export class RasterTileset2D extends Tileset2D {
76
109
  pixelRatio: this.getPixelRatio(),
77
110
  boundingVolumeCache: this.boundingVolumeCache,
78
111
  });
79
- return tileIndices;
112
+ return this.sortTileIndicesByDistance(tileIndices, viewport);
113
+ }
114
+ /**
115
+ * Sort tile indices by ascending distance from the viewport center in
116
+ * projected (common/world) space so loads initiate center-out.
117
+ *
118
+ * Short-circuits when `tileIndices.length <= maxRequests` — all fetches
119
+ * would start concurrently regardless of order in that case. Mutates and
120
+ * returns `tileIndices`.
121
+ */
122
+ sortTileIndicesByDistance(tileIndices, viewport) {
123
+ const { maxRequests } = this.opts;
124
+ if (tileIndices.length <= maxRequests) {
125
+ return tileIndices;
126
+ }
127
+ const descriptor = this.descriptor;
128
+ return sortItemsByDistanceFromViewportCenter(tileIndices, viewport, (tileIndex) => {
129
+ const { x, y, z } = tileIndex;
130
+ const { topLeft, bottomRight } = descriptor.levels[z].projectedTileCorners(x, y);
131
+ const projectedCenter = [
132
+ (topLeft[0] + bottomRight[0]) / 2,
133
+ (topLeft[1] + bottomRight[1]) / 2,
134
+ ];
135
+ return descriptor.projectTo4326(projectedCenter[0], projectedCenter[1]);
136
+ });
80
137
  }
81
138
  getTileId(index) {
82
139
  return `${index.x}-${index.y}-${index.z}`;
@@ -133,6 +190,17 @@ export class RasterTileset2D extends Tileset2D {
133
190
  // would pass (or fail) the cull-rect test and the refinementStrategy
134
191
  // (best-available) would not show parent tiles correctly.
135
192
  const [west, south, east, north] = transformBounds(this.descriptor.projectTo4326, ...projectedBounds);
193
+ const { forwardTransform, inverseTransform } = levelDescriptor.tileTransform(x, y);
194
+ // Clamp the reprojection mesh to the valid Web Mercator latitude band for
195
+ // tiles that extend past ±85.051° (e.g. a global EPSG:4326 image reaching
196
+ // ±90°). Computed once here so the reference is stable across renders.
197
+ const cornerLat = (corner) => this.descriptor.projectTo4326(corner[0], corner[1])[1];
198
+ const _webMercatorInitialTriangulation = createInitialWebMercatorTriangulation({
199
+ topLeft: cornerLat(topLeft),
200
+ topRight: cornerLat(topRight),
201
+ bottomLeft: cornerLat(bottomLeft),
202
+ bottomRight: cornerLat(bottomRight),
203
+ });
136
204
  return {
137
205
  bbox: {
138
206
  west,
@@ -149,6 +217,11 @@ export class RasterTileset2D extends Tileset2D {
149
217
  projectedCorners,
150
218
  tileWidth,
151
219
  tileHeight,
220
+ forwardTransform,
221
+ inverseTransform,
222
+ _projectPosition: this.projectPosition,
223
+ _unprojectPosition: this.unprojectPosition,
224
+ _webMercatorInitialTriangulation,
152
225
  };
153
226
  }
154
227
  }
@@ -1 +1 @@
1
- {"version":3,"file":"raster-tileset-2d.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raster-tileset-2d.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { Viewport } from "@deck.gl/core";
2
+ /**
3
+ * Sort `items` in place by ascending squared Euclidean distance of each
4
+ * item's center from `reference`. Returns the same array reference.
5
+ *
6
+ * `getCenter` is called exactly once per item (O(n) pre-pass) — never from
7
+ * inside the sort comparator. This keeps the per-viewport cost bounded:
8
+ * one center computation per tile plus one sort of precomputed numbers.
9
+ *
10
+ * Equal-distance items retain their original relative order (stable sort
11
+ * per ES2019 `Array.prototype.sort` spec).
12
+ *
13
+ * For `items.length < 2` this is a no-op and `getCenter` is not called.
14
+ *
15
+ * Caller-side short-circuits (e.g. `n <= maxRequests`) should be applied
16
+ * before invoking this helper when they would skip useful work entirely.
17
+ */
18
+ export declare function sortByDistanceFromPoint<T>(items: T[], opts: {
19
+ getCenter: (item: T) => readonly [number, number];
20
+ reference: readonly [number, number];
21
+ }): T[];
22
+ /**
23
+ * Sort `items` in place by ascending distance of each item's center from
24
+ * the viewport's bounds-midpoint, so loads initiate center-out. Returns the
25
+ * same array reference.
26
+ *
27
+ * The reference point is the midpoint of `viewport.getBounds()`, which is
28
+ * always WGS84 `[minLon, minLat, maxLon, maxLat]` regardless of viewport
29
+ * type (Mercator, Globe, etc.). `getCenter` must return each item's center
30
+ * in the same WGS84 space so the comparison is meaningful — callers
31
+ * working in a projected CRS should run their tile/source centers through
32
+ * the descriptor's `projectTo4326` before returning.
33
+ *
34
+ * `getCenter` is called exactly once per item; see
35
+ * {@link sortByDistanceFromPoint} for the underlying perf contract and the
36
+ * `items.length < 2` short-circuit. Caller-side short-circuits such as
37
+ * `length <= maxRequests` should still be applied before invoking this
38
+ * helper when they would skip useful work entirely.
39
+ */
40
+ export declare function sortItemsByDistanceFromViewportCenter<T>(items: T[], viewport: Viewport, getCenter: (item: T) => readonly [number, number]): T[];
41
+ //# sourceMappingURL=sort-by-distance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-by-distance.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/sort-by-distance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EACvC,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE;IACJ,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC,GACA,CAAC,EAAE,CA8BL;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qCAAqC,CAAC,CAAC,EACrD,KAAK,EAAE,CAAC,EAAE,EACV,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAChD,CAAC,EAAE,CAUL"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Sort `items` in place by ascending squared Euclidean distance of each
3
+ * item's center from `reference`. Returns the same array reference.
4
+ *
5
+ * `getCenter` is called exactly once per item (O(n) pre-pass) — never from
6
+ * inside the sort comparator. This keeps the per-viewport cost bounded:
7
+ * one center computation per tile plus one sort of precomputed numbers.
8
+ *
9
+ * Equal-distance items retain their original relative order (stable sort
10
+ * per ES2019 `Array.prototype.sort` spec).
11
+ *
12
+ * For `items.length < 2` this is a no-op and `getCenter` is not called.
13
+ *
14
+ * Caller-side short-circuits (e.g. `n <= maxRequests`) should be applied
15
+ * before invoking this helper when they would skip useful work entirely.
16
+ */
17
+ export function sortByDistanceFromPoint(items, opts) {
18
+ const n = items.length;
19
+ if (n < 2) {
20
+ return items;
21
+ }
22
+ const { getCenter, reference } = opts;
23
+ const rx = reference[0];
24
+ const ry = reference[1];
25
+ const distances = new Float64Array(n);
26
+ for (let i = 0; i < n; i++) {
27
+ const center = getCenter(items[i]);
28
+ const dx = center[0] - rx;
29
+ const dy = center[1] - ry;
30
+ distances[i] = dx * dx + dy * dy;
31
+ }
32
+ const permutation = new Uint32Array(n);
33
+ for (let i = 0; i < n; i++) {
34
+ permutation[i] = i;
35
+ }
36
+ permutation.sort((a, b) => distances[a] - distances[b]);
37
+ const scratch = items.slice();
38
+ for (let i = 0; i < n; i++) {
39
+ items[i] = scratch[permutation[i]];
40
+ }
41
+ return items;
42
+ }
43
+ /**
44
+ * Sort `items` in place by ascending distance of each item's center from
45
+ * the viewport's bounds-midpoint, so loads initiate center-out. Returns the
46
+ * same array reference.
47
+ *
48
+ * The reference point is the midpoint of `viewport.getBounds()`, which is
49
+ * always WGS84 `[minLon, minLat, maxLon, maxLat]` regardless of viewport
50
+ * type (Mercator, Globe, etc.). `getCenter` must return each item's center
51
+ * in the same WGS84 space so the comparison is meaningful — callers
52
+ * working in a projected CRS should run their tile/source centers through
53
+ * the descriptor's `projectTo4326` before returning.
54
+ *
55
+ * `getCenter` is called exactly once per item; see
56
+ * {@link sortByDistanceFromPoint} for the underlying perf contract and the
57
+ * `items.length < 2` short-circuit. Caller-side short-circuits such as
58
+ * `length <= maxRequests` should still be applied before invoking this
59
+ * helper when they would skip useful work entirely.
60
+ */
61
+ export function sortItemsByDistanceFromViewportCenter(items, viewport, getCenter) {
62
+ const [minLon, minLat, maxLon, maxLat] = viewport.getBounds();
63
+ const viewportCenter = [
64
+ (minLon + maxLon) / 2,
65
+ (minLat + maxLat) / 2,
66
+ ];
67
+ return sortByDistanceFromPoint(items, {
68
+ reference: viewportCenter,
69
+ getCenter,
70
+ });
71
+ }
72
+ //# sourceMappingURL=sort-by-distance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-by-distance.js","sourceRoot":"","sources":["../../src/raster-tileset/sort-by-distance.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAU,EACV,IAGC;IAED,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACtC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExB,MAAM,SAAS,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1B,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAE,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAE,CAAE,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qCAAqC,CACnD,KAAU,EACV,QAAkB,EAClB,SAAiD;IAEjD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC9D,MAAM,cAAc,GAAG;QACrB,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;KACb,CAAC;IACX,OAAO,uBAAuB,CAAC,KAAK,EAAE;QACpC,SAAS,EAAE,cAAc;QACzB,SAAS;KACV,CAAC,CAAC;AACL,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import type { TileMatrixSet } from "@developmentseed/morecantile";
2
- import type { TilesetDescriptor, TilesetLevel } from "./tileset-interface.js";
2
+ import type { RasterTilesetDescriptor, RasterTilesetLevel } from "./tileset-interface.js";
3
3
  import type { Bounds, ProjectionFunction } from "./types.js";
4
4
  /**
5
- * An adapter interface to use a TileMatrixSet as a TilesetDescriptor for raster
5
+ * An adapter interface to use a TileMatrixSet as a RasterTilesetDescriptor for raster
6
6
  * tile traversal.
7
7
  */
8
- export declare class TileMatrixSetAdaptor implements TilesetDescriptor {
8
+ export declare class TileMatrixSetAdaptor implements RasterTilesetDescriptor {
9
9
  tms: TileMatrixSet;
10
10
  private _levels;
11
11
  projectTo3857: ProjectionFunction;
@@ -18,7 +18,7 @@ export declare class TileMatrixSetAdaptor implements TilesetDescriptor {
18
18
  projectTo4326: ProjectionFunction;
19
19
  projectFrom4326: ProjectionFunction;
20
20
  });
21
- get levels(): TilesetLevel[];
21
+ get levels(): RasterTilesetLevel[];
22
22
  get projectedBounds(): Bounds;
23
23
  }
24
24
  //# sourceMappingURL=tile-matrix-set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tile-matrix-set.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAW,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA8ItE;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;IAC5D,GAAG,EAAE,aAAa,CAAC;IACnB,OAAO,CAAC,OAAO,CAAsB;IACrC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;gBAGlC,GAAG,EAAE,aAAa,EAClB,EACE,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,GAChB,EAAE;QACD,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;QACpC,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;KACrC;IAUH,IAAI,MAAM,IAAI,YAAY,EAAE,CAE3B;IAED,IAAI,eAAe,IAAI,MAAM,CAU5B;CACF"}
1
+ {"version":3,"file":"tile-matrix-set.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAW,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA8ItE;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,uBAAuB;IAClE,GAAG,EAAE,aAAa,CAAC;IACnB,OAAO,CAAC,OAAO,CAAsB;IACrC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;gBAGlC,GAAG,EAAE,aAAa,EAClB,EACE,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,GAChB,EAAE;QACD,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;QACpC,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;KACrC;IAUH,IAAI,MAAM,IAAI,kBAAkB,EAAE,CAEjC;IAED,IAAI,eAAe,IAAI,MAAM,CAU5B;CACF"}
@@ -106,7 +106,7 @@ class TileMatrixAdaptor {
106
106
  }
107
107
  }
108
108
  /**
109
- * An adapter interface to use a TileMatrixSet as a TilesetDescriptor for raster
109
+ * An adapter interface to use a TileMatrixSet as a RasterTilesetDescriptor for raster
110
110
  * tile traversal.
111
111
  */
112
112
  export class TileMatrixSetAdaptor {
@@ -1 +1 @@
1
- {"version":3,"file":"tile-matrix-set.js","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tile-matrix-set.js","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import type { Bounds, Corners, ProjectionFunction } from "./types.js";
5
5
  * This interface abstracts over both TileMatrixSet levels and Zarr multiscale
6
6
  * levels, enabling a single traversal algorithm to work with both.
7
7
  */
8
- export interface TilesetLevel {
8
+ export interface RasterTilesetLevel {
9
9
  /** Number of tiles across this level (columns). */
10
10
  matrixWidth: number;
11
11
  /** Number of tiles down this level (rows). */
@@ -71,9 +71,9 @@ export interface TilesetLevel {
71
71
  * Index 0 = coarsest level, higher index = finer detail (same ordering as
72
72
  * TileMatrixSet).
73
73
  */
74
- export interface TilesetDescriptor {
74
+ export interface RasterTilesetDescriptor {
75
75
  /** Ordered levels from coarsest (0) to finest. */
76
- levels: TilesetLevel[];
76
+ levels: RasterTilesetLevel[];
77
77
  /**
78
78
  * Projection function from the source CRS → EPSG:3857.
79
79
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-interface.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tileset-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IAEpB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IAErB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAElB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;OAUG;IACH,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAE5D;;;;;;;;OAQG;IACH,oBAAoB,EAAE,CACpB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,KAClB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAExE;;;;;;;;;;;OAWG;IACH,aAAa,EAAE,CACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,KACR;QACH,gBAAgB,EAAE,kBAAkB,CAAC;QACrC,gBAAgB,EAAE,kBAAkB,CAAC;KACtC,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"tileset-interface.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tileset-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IAEpB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IAErB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAElB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;OAUG;IACH,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAE5D;;;;;;;;OAQG;IACH,oBAAoB,EAAE,CACpB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,KAClB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAExE;;;;;;;;;;;OAWG;IACH,aAAa,EAAE,CACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,KACR;QACH,gBAAgB,EAAE,kBAAkB,CAAC;QACrC,gBAAgB,EAAE,kBAAkB,CAAC;KACtC,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,kDAAkD;IAClD,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;CACzB"}
@@ -0,0 +1,29 @@
1
+ import type { InitialTriangulation } from "@developmentseed/raster-reproject";
2
+ /**
3
+ * The WGS84 latitudes of a tile's four corners.
4
+ */
5
+ export interface CornerLatitudes {
6
+ topLeft: number;
7
+ topRight: number;
8
+ bottomLeft: number;
9
+ bottomRight: number;
10
+ }
11
+ /**
12
+ * Compute a {@link InitialTriangulation} that clamps a tile's reprojection mesh
13
+ * to the latitude band representable in Web Mercator (±85.051°), or `undefined`
14
+ * if no clamp is needed or possible.
15
+ *
16
+ * Beyond ±85.051°, `makeClampedForwardTo3857` collapses every polar vertex onto
17
+ * the same clamped Y, so the reprojector emits degenerate near-pole triangles
18
+ * that never converge (see #182 / #351). Seeding the reprojector with the
19
+ * clamped band avoids meshing those rows entirely.
20
+ *
21
+ * Only **north-up geographic** tiles are handled — where latitude is constant
22
+ * across each row, so the valid band is an axis-aligned rectangle. Rotated or
23
+ * projected tiles return `undefined` (the caller falls back to the full mesh).
24
+ *
25
+ * @param cornerLats WGS84 latitudes of the tile's four corners.
26
+ * @param maxLat Web Mercator latitude limit. Defaults to ±85.051°.
27
+ */
28
+ export declare function createInitialWebMercatorTriangulation(cornerLats: CornerLatitudes, maxLat?: number): InitialTriangulation | undefined;
29
+ //# sourceMappingURL=web-mercator-clamp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-mercator-clamp.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/web-mercator-clamp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAS9E;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qCAAqC,CACnD,UAAU,EAAE,eAAe,EAC3B,MAAM,GAAE,MAA6B,GACpC,oBAAoB,GAAG,SAAS,CAqClC"}