@developmentseed/deck.gl-raster 0.5.0 → 0.6.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 (74) hide show
  1. package/dist/gpu-modules/color/index.d.ts +5 -5
  2. package/dist/gpu-modules/color/index.d.ts.map +1 -1
  3. package/dist/gpu-modules/color/index.js +5 -5
  4. package/dist/gpu-modules/color/index.js.map +1 -1
  5. package/dist/gpu-modules/colormap-names.d.ts +128 -0
  6. package/dist/gpu-modules/colormap-names.d.ts.map +1 -0
  7. package/dist/gpu-modules/colormap-names.js +127 -0
  8. package/dist/gpu-modules/colormap-names.js.map +1 -0
  9. package/dist/gpu-modules/colormap.d.ts +30 -4
  10. package/dist/gpu-modules/colormap.d.ts.map +1 -1
  11. package/dist/gpu-modules/colormap.js +25 -5
  12. package/dist/gpu-modules/colormap.js.map +1 -1
  13. package/dist/gpu-modules/colormaps.png +0 -0
  14. package/dist/gpu-modules/create-colormap-texture.d.ts +16 -0
  15. package/dist/gpu-modules/create-colormap-texture.d.ts.map +1 -0
  16. package/dist/gpu-modules/create-colormap-texture.js +41 -0
  17. package/dist/gpu-modules/create-colormap-texture.js.map +1 -0
  18. package/dist/gpu-modules/decode-colormap-sprite.d.ts +25 -0
  19. package/dist/gpu-modules/decode-colormap-sprite.d.ts.map +1 -0
  20. package/dist/gpu-modules/decode-colormap-sprite.js +51 -0
  21. package/dist/gpu-modules/decode-colormap-sprite.js.map +1 -0
  22. package/dist/gpu-modules/index.d.ts +11 -6
  23. package/dist/gpu-modules/index.d.ts.map +1 -1
  24. package/dist/gpu-modules/index.js +8 -5
  25. package/dist/gpu-modules/index.js.map +1 -1
  26. package/dist/index.d.ts +4 -2
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +2 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/layer-utils.d.ts +1 -1
  31. package/dist/layer-utils.d.ts.map +1 -1
  32. package/dist/raster-layer.d.ts +1 -1
  33. package/dist/raster-layer.d.ts.map +1 -1
  34. package/dist/raster-layer.js +1 -1
  35. package/dist/raster-layer.js.map +1 -1
  36. package/dist/raster-tile-layer/constants.d.ts +11 -0
  37. package/dist/raster-tile-layer/constants.d.ts.map +1 -0
  38. package/dist/raster-tile-layer/constants.js +11 -0
  39. package/dist/raster-tile-layer/constants.js.map +1 -0
  40. package/dist/raster-tile-layer/index.d.ts +2 -0
  41. package/dist/raster-tile-layer/index.d.ts.map +1 -0
  42. package/dist/raster-tile-layer/index.js +2 -0
  43. package/dist/raster-tile-layer/index.js.map +1 -0
  44. package/dist/raster-tile-layer/raster-tile-layer.d.ts +154 -0
  45. package/dist/raster-tile-layer/raster-tile-layer.d.ts.map +1 -0
  46. package/dist/raster-tile-layer/raster-tile-layer.js +175 -0
  47. package/dist/raster-tile-layer/raster-tile-layer.js.map +1 -0
  48. package/dist/raster-tileset/affine-tileset-level.d.ts +56 -0
  49. package/dist/raster-tileset/affine-tileset-level.d.ts.map +1 -0
  50. package/dist/raster-tileset/affine-tileset-level.js +101 -0
  51. package/dist/raster-tileset/affine-tileset-level.js.map +1 -0
  52. package/dist/raster-tileset/affine-tileset.d.ts +34 -0
  53. package/dist/raster-tileset/affine-tileset.d.ts.map +1 -0
  54. package/dist/raster-tileset/affine-tileset.js +26 -0
  55. package/dist/raster-tileset/affine-tileset.js.map +1 -0
  56. package/dist/raster-tileset/index.d.ts +4 -0
  57. package/dist/raster-tileset/index.d.ts.map +1 -1
  58. package/dist/raster-tileset/index.js +2 -0
  59. package/dist/raster-tileset/index.js.map +1 -1
  60. package/dist/raster-tileset/raster-tile-traversal.d.ts +22 -0
  61. package/dist/raster-tileset/raster-tile-traversal.d.ts.map +1 -1
  62. package/dist/raster-tileset/raster-tile-traversal.js +76 -15
  63. package/dist/raster-tileset/raster-tile-traversal.js.map +1 -1
  64. package/dist/raster-tileset/raster-tileset-2d.d.ts +14 -6
  65. package/dist/raster-tileset/raster-tileset-2d.d.ts.map +1 -1
  66. package/dist/raster-tileset/raster-tileset-2d.js +32 -7
  67. package/dist/raster-tileset/raster-tileset-2d.js.map +1 -1
  68. package/dist/raster-tileset/tile-matrix-set.d.ts +7 -3
  69. package/dist/raster-tileset/tile-matrix-set.d.ts.map +1 -1
  70. package/dist/raster-tileset/tile-matrix-set.js +20 -2
  71. package/dist/raster-tileset/tile-matrix-set.js.map +1 -1
  72. package/dist/raster-tileset/tileset-interface.d.ts +28 -0
  73. package/dist/raster-tileset/tileset-interface.d.ts.map +1 -1
  74. package/package.json +14 -13
package/dist/index.js CHANGED
@@ -2,5 +2,6 @@
2
2
  export { renderDebugTileOutline as _renderDebugTileOutline } from "./layer-utils.js";
3
3
  export { createMultiTilesetDescriptor, resolveSecondaryTiles, selectSecondaryLevel, tilesetLevelsEqual, } from "./multi-raster-tileset/index.js";
4
4
  export { RasterLayer } from "./raster-layer.js";
5
- export { RasterTileset2D, TileMatrixSetAdaptor, } from "./raster-tileset/index.js";
5
+ export { RasterTileLayer } from "./raster-tile-layer/index.js";
6
+ export { AffineTileset, AffineTilesetLevel, RasterTileset2D, TileMatrixSetAdaptor, } from "./raster-tileset/index.js";
6
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,+DAA+D;AAC/D,OAAO,EAAE,sBAAsB,IAAI,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAOrF,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUhD,OAAO,EACL,eAAe,EACf,oBAAoB,GACrB,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,+DAA+D;AAC/D,OAAO,EAAE,sBAAsB,IAAI,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAOrF,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAY/D,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,oBAAoB,GACrB,MAAM,2BAA2B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { _Tile2DHeader as Tile2DHeader } from "@deck.gl/geo-layers";
2
2
  import { PathLayer, TextLayer } from "@deck.gl/layers";
3
3
  import type { ReprojectionFns } from "@developmentseed/raster-reproject";
4
- import type { TileMetadata } from "./raster-tileset";
4
+ import type { TileMetadata } from "./raster-tileset/index.js";
5
5
  export declare function renderDebugTileOutline(id: string, tile: Tile2DHeader & TileMetadata, forwardTo4326: ReprojectionFns["forwardReproject"]): (TextLayer<any, {
6
6
  id: `${string}-label`;
7
7
  data: {
@@ -1 +1 @@
1
- {"version":3,"file":"layer-utils.d.ts","sourceRoot":"","sources":["../src/layer-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,aAAa,EAAE,eAAe,CAAC,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;MA2DnD"}
1
+ {"version":3,"file":"layer-utils.d.ts","sourceRoot":"","sources":["../src/layer-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,aAAa,EAAE,eAAe,CAAC,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;MA2DnD"}
@@ -2,7 +2,7 @@ import type { CompositeLayerProps, DefaultProps, Layer, TextureSource, UpdatePar
2
2
  import { CompositeLayer } from "@deck.gl/core";
3
3
  import type { ReprojectionFns } from "@developmentseed/raster-reproject";
4
4
  import { RasterReprojector } from "@developmentseed/raster-reproject";
5
- import type { RasterModule } from "./gpu-modules/types";
5
+ import type { RasterModule } from "./gpu-modules/types.js";
6
6
  /**
7
7
  * The result returned by a `renderTile` function.
8
8
  *
@@ -1 +1 @@
1
- {"version":3,"file":"raster-layer.d.ts","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,KAAK,EACL,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmCxD;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,cAAc,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,GACzD;IAAE,cAAc,EAAE,YAAY,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC3D;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,eAAe,EAAE,eAAe,CAAC;IAEjC;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAE7B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAEvC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oFAAoF;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD;;;;;;;;GAQG;AACH,qBAAa,WAAY,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC/D,OAAgB,SAAS,SAAiB;IAC1C,OAAgB,YAAY,iCAAgB;IAEpC,KAAK,EAAE;QACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;QAChC,IAAI,CAAC,EAAE;YACL,SAAS,EAAE,YAAY,CAAC;YACxB,OAAO,EAAE,WAAW,CAAC;YACrB,SAAS,EAAE,YAAY,CAAC;SACzB,CAAC;KACH,CAAC;IAEO,eAAe,IAAI,IAAI;IAIvB,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;IA8BnD,SAAS,CAAC,aAAa,IAAI,IAAI;IAiC/B,gBAAgB,IAAI,KAAK,GAAG,IAAI;IA6DhC,YAAY;CAoDb"}
1
+ {"version":3,"file":"raster-layer.d.ts","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,KAAK,EACL,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAmC3D;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,cAAc,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,GACzD;IAAE,cAAc,EAAE,YAAY,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC3D;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,eAAe,EAAE,eAAe,CAAC;IAEjC;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAE7B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAEvC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oFAAoF;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD;;;;;;;;GAQG;AACH,qBAAa,WAAY,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC/D,OAAgB,SAAS,SAAiB;IAC1C,OAAgB,YAAY,iCAAgB;IAEpC,KAAK,EAAE;QACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;QAChC,IAAI,CAAC,EAAE;YACL,SAAS,EAAE,YAAY,CAAC;YACxB,OAAO,EAAE,WAAW,CAAC;YACrB,SAAS,EAAE,YAAY,CAAC;SACzB,CAAC;KACH,CAAC;IAEO,eAAe,IAAI,IAAI;IAIvB,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;IA8BnD,SAAS,CAAC,aAAa,IAAI,IAAI;IAiC/B,gBAAgB,IAAI,KAAK,GAAG,IAAI;IA6DhC,YAAY;CAoDb"}
@@ -1,7 +1,7 @@
1
1
  import { CompositeLayer } from "@deck.gl/core";
2
2
  import { PolygonLayer } from "@deck.gl/layers";
3
3
  import { RasterReprojector } from "@developmentseed/raster-reproject";
4
- import { MeshTextureLayer } from "./mesh-layer/mesh-layer";
4
+ import { MeshTextureLayer } from "./mesh-layer/mesh-layer.js";
5
5
  const DEFAULT_MAX_ERROR = 0.125;
6
6
  const DEBUG_COLORS = [
7
7
  [252, 73, 163], // pink
@@ -1 +1 @@
1
- {"version":3,"file":"raster-layer.js","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raster-layer.js","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /** Size of deck.gl's common coordinate space in world units.
2
+ *
3
+ * At zoom 0, one tile covers the whole world (512×512 units); at zoom z, each
4
+ * tile is 512/2^z units.
5
+ */
6
+ export declare const TILE_SIZE = 512;
7
+ /** Size of the globe in web mercator meters. */
8
+ export declare const WEB_MERCATOR_METER_CIRCUMFERENCE = 40075016.686;
9
+ /** Scale factor for converting EPSG:3857 meters into deck.gl world units (512×512). */
10
+ export declare const WEB_MERCATOR_TO_WORLD_SCALE: number;
11
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/raster-tile-layer/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,gDAAgD;AAChD,eAAO,MAAM,gCAAgC,eAAe,CAAC;AAE7D,uFAAuF;AACvF,eAAO,MAAM,2BAA2B,QACM,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** Size of deck.gl's common coordinate space in world units.
2
+ *
3
+ * At zoom 0, one tile covers the whole world (512×512 units); at zoom z, each
4
+ * tile is 512/2^z units.
5
+ */
6
+ export const TILE_SIZE = 512;
7
+ /** Size of the globe in web mercator meters. */
8
+ export const WEB_MERCATOR_METER_CIRCUMFERENCE = 40075016.686;
9
+ /** Scale factor for converting EPSG:3857 meters into deck.gl world units (512×512). */
10
+ export const WEB_MERCATOR_TO_WORLD_SCALE = TILE_SIZE / WEB_MERCATOR_METER_CIRCUMFERENCE;
11
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/raster-tile-layer/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAE7B,gDAAgD;AAChD,MAAM,CAAC,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAE7D,uFAAuF;AACvF,MAAM,CAAC,MAAM,2BAA2B,GACtC,SAAS,GAAG,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { type GetTileDataOptions, type MinimalTileData, RasterTileLayer, type RasterTileLayerProps, } from "./raster-tile-layer.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/raster-tile-layer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,eAAe,EACf,KAAK,oBAAoB,GAC1B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { RasterTileLayer, } from "./raster-tile-layer.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/raster-tile-layer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,GAEhB,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,154 @@
1
+ import type { CompositeLayerProps, DefaultProps, Layer } from "@deck.gl/core";
2
+ import { CompositeLayer } from "@deck.gl/core";
3
+ import type { TileLayerProps, _TileLoadProps as TileLoadProps } from "@deck.gl/geo-layers";
4
+ import type { Device } from "@luma.gl/core";
5
+ import type { RenderTileResult } from "../raster-layer.js";
6
+ import type { TilesetDescriptor } from "../raster-tileset/index.js";
7
+ /**
8
+ * Minimum interface returned by `getTileData`.
9
+ */
10
+ export type MinimalTileData = {
11
+ /** Tile height in pixels. */
12
+ height: number;
13
+ /** Tile width in pixels. */
14
+ width: number;
15
+ /**
16
+ * Byte length of the tile data, used by deck.gl's TileLayer for
17
+ * byte-based cache eviction when `maxCacheByteSize` is set. Optional.
18
+ */
19
+ byteLength?: number;
20
+ };
21
+ /**
22
+ * Options passed to a user-supplied `getTileData` callback.
23
+ */
24
+ export type GetTileDataOptions = {
25
+ /**
26
+ * The luma.gl Device. Always populated by the base layer from
27
+ * `this.context.device`.
28
+ */
29
+ device: Device;
30
+ /**
31
+ * Combined AbortSignal: the layer's `signal` prop composed with the
32
+ * TileLayer's per-tile lifecycle signal. Fires when either aborts.
33
+ */
34
+ signal?: AbortSignal;
35
+ };
36
+ /**
37
+ * Props for {@link RasterTileLayer}.
38
+ */
39
+ export type RasterTileLayerProps<DataT extends MinimalTileData = MinimalTileData> = CompositeLayerProps & Pick<TileLayerProps, "tileSize" | "zoomOffset" | "maxZoom" | "minZoom" | "extent" | "debounceTime" | "maxCacheSize" | "maxCacheByteSize" | "maxRequests" | "refinementStrategy"> & {
40
+ /**
41
+ * Tile pyramid + CRS projection descriptor.
42
+ *
43
+ * Subclasses may supply this via state by overriding the protected
44
+ * `_tilesetDescriptor()` method.
45
+ */
46
+ tilesetDescriptor?: TilesetDescriptor;
47
+ /**
48
+ * Load data for one tile. Runs once per (x, y, z); the resulting `DataT`
49
+ * is cached by the underlying TileLayer.
50
+ *
51
+ * Subclasses may supply this via state by overriding
52
+ * `_getTileDataCallback()`.
53
+ */
54
+ getTileData?: (tile: TileLoadProps, options: GetTileDataOptions) => Promise<DataT>;
55
+ /**
56
+ * Turn cached tile data into a render result (image and/or shader
57
+ * pipeline). Called on every render; does not re-fetch.
58
+ *
59
+ * To invalidate the inner TileLayer's rendered sub-layers when a
60
+ * dependency changes (e.g. a colormap choice), pass
61
+ * `updateTriggers: { renderTile: [dep1, dep2] }` on the layer props.
62
+ *
63
+ * Subclasses may supply this via state by overriding `_renderTileCallback()`.
64
+ */
65
+ renderTile?: (data: DataT) => RenderTileResult;
66
+ /**
67
+ * Maximum reprojection error in pixels for mesh refinement.
68
+ * Lower values create denser meshes.
69
+ * @default 0.125
70
+ */
71
+ maxError?: number;
72
+ /**
73
+ * Show triangulation mesh + tile outlines.
74
+ * @default false
75
+ */
76
+ debug?: boolean;
77
+ /**
78
+ * Opacity of the debug mesh overlay (0–1).
79
+ * @default 0.5
80
+ */
81
+ debugOpacity?: number;
82
+ /**
83
+ * AbortSignal applied to every tile fetch, composed with TileLayer's
84
+ * per-tile signal.
85
+ */
86
+ signal?: AbortSignal;
87
+ };
88
+ /**
89
+ * Base-class prop shape that excludes the overridable fields.
90
+ *
91
+ * The three overridable fields (`tilesetDescriptor`, `getTileData`,
92
+ * `renderTile`) are declared by `ExtraProps` instead — either via the generic
93
+ * default (for direct use) or by a subclass that provides its own signatures
94
+ * (e.g. `COGLayer`'s `getTileData(image, options)`).
95
+ */
96
+ type RasterTileLayerBaseProps<DataT extends MinimalTileData> = Omit<RasterTileLayerProps<DataT>, "tilesetDescriptor" | "getTileData" | "renderTile">;
97
+ /**
98
+ * Default `ExtraProps` for direct use of `RasterTileLayer`: brings the three
99
+ * overridable fields back in with the generic signatures. Subclasses supply
100
+ * their own `ExtraProps` to override these.
101
+ */
102
+ type RasterTileLayerDefaultExtraProps<DataT extends MinimalTileData> = Pick<RasterTileLayerProps<DataT>, "tilesetDescriptor" | "getTileData" | "renderTile">;
103
+ /**
104
+ * Base layer that renders a tiled raster source driven by a generic
105
+ * {@link TilesetDescriptor}.
106
+ *
107
+ * Usable directly (provide `tilesetDescriptor`, `getTileData`, and `renderTile`
108
+ * as props) or as a base class (override the protected `_tilesetDescriptor`,
109
+ * `_getTileDataCallback`, `_renderTileCallback` accessors to source them from
110
+ * state).
111
+ *
112
+ * The generic `ExtraProps` parameter lets a subclass redeclare any of the
113
+ * overridable fields with a domain-specific signature (e.g. `COGLayer`'s
114
+ * `getTileData(image, options)`).
115
+ */
116
+ export declare class RasterTileLayer<DataT extends MinimalTileData = MinimalTileData, ExtraProps extends object = RasterTileLayerDefaultExtraProps<DataT>> extends CompositeLayer<RasterTileLayerBaseProps<DataT> & ExtraProps> {
117
+ static layerName: string;
118
+ static defaultProps: DefaultProps<RasterTileLayerProps<MinimalTileData>>;
119
+ /**
120
+ * The currently effective {@link TilesetDescriptor}.
121
+ *
122
+ * Subclasses override this to return a descriptor built from their own
123
+ * async-parsed state. Returns `undefined` while the source is still
124
+ * loading; `renderLayers()` returns `null` in that case.
125
+ *
126
+ * The inline cast to `RasterTileLayerProps<DataT>` is required because
127
+ * `tilesetDescriptor` is declared on `ExtraProps`, not on the base's
128
+ * `RasterTileLayerBaseProps`. For direct use the default `ExtraProps`
129
+ * brings it in; for subclass use this method is overridden and the cast
130
+ * is never reached.
131
+ */
132
+ protected _tilesetDescriptor(): TilesetDescriptor | undefined;
133
+ /**
134
+ * The currently effective tile-fetch callback.
135
+ *
136
+ * Subclasses override this to adapt their user-facing `getTileData`
137
+ * signature into the base's `(tile, options) => Promise<DataT>` shape.
138
+ * Returns `undefined` when the callback is not yet available.
139
+ */
140
+ protected _getTileDataCallback(): RasterTileLayerProps<DataT>["getTileData"];
141
+ /**
142
+ * The currently effective per-tile render callback.
143
+ *
144
+ * Subclasses override this to thread their user-facing `renderTile` and
145
+ * any inferred default. Returns `undefined` when no callback is available.
146
+ */
147
+ protected _renderTileCallback(): RasterTileLayerProps<DataT>["renderTile"];
148
+ renderLayers(): Layer | null;
149
+ private _renderTileLayer;
150
+ private _wrapGetTileData;
151
+ private _renderSubLayers;
152
+ }
153
+ export {};
154
+ //# sourceMappingURL=raster-tile-layer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raster-tile-layer.d.ts","sourceRoot":"","sources":["../../src/raster-tile-layer/raster-tile-layer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ import { CompositeLayer } from "@deck.gl/core";
2
+ import { TileLayer } from "@deck.gl/geo-layers";
3
+ import { renderDebugTileOutline } from "../layer-utils.js";
4
+ import { RasterLayer } from "../raster-layer.js";
5
+ import { RasterTileset2D } from "../raster-tileset/index.js";
6
+ import { TILE_SIZE, WEB_MERCATOR_TO_WORLD_SCALE } from "./constants.js";
7
+ const defaultProps = {
8
+ ...TileLayer.defaultProps,
9
+ maxError: 0.125,
10
+ debug: false,
11
+ debugOpacity: 0.5,
12
+ };
13
+ /**
14
+ * Base layer that renders a tiled raster source driven by a generic
15
+ * {@link TilesetDescriptor}.
16
+ *
17
+ * Usable directly (provide `tilesetDescriptor`, `getTileData`, and `renderTile`
18
+ * as props) or as a base class (override the protected `_tilesetDescriptor`,
19
+ * `_getTileDataCallback`, `_renderTileCallback` accessors to source them from
20
+ * state).
21
+ *
22
+ * The generic `ExtraProps` parameter lets a subclass redeclare any of the
23
+ * overridable fields with a domain-specific signature (e.g. `COGLayer`'s
24
+ * `getTileData(image, options)`).
25
+ */
26
+ export class RasterTileLayer extends CompositeLayer {
27
+ static layerName = "RasterTileLayer";
28
+ static defaultProps = defaultProps;
29
+ /**
30
+ * The currently effective {@link TilesetDescriptor}.
31
+ *
32
+ * Subclasses override this to return a descriptor built from their own
33
+ * async-parsed state. Returns `undefined` while the source is still
34
+ * loading; `renderLayers()` returns `null` in that case.
35
+ *
36
+ * The inline cast to `RasterTileLayerProps<DataT>` is required because
37
+ * `tilesetDescriptor` is declared on `ExtraProps`, not on the base's
38
+ * `RasterTileLayerBaseProps`. For direct use the default `ExtraProps`
39
+ * brings it in; for subclass use this method is overridden and the cast
40
+ * is never reached.
41
+ */
42
+ _tilesetDescriptor() {
43
+ return this.props
44
+ .tilesetDescriptor;
45
+ }
46
+ /**
47
+ * The currently effective tile-fetch callback.
48
+ *
49
+ * Subclasses override this to adapt their user-facing `getTileData`
50
+ * signature into the base's `(tile, options) => Promise<DataT>` shape.
51
+ * Returns `undefined` when the callback is not yet available.
52
+ */
53
+ _getTileDataCallback() {
54
+ return this.props.getTileData;
55
+ }
56
+ /**
57
+ * The currently effective per-tile render callback.
58
+ *
59
+ * Subclasses override this to thread their user-facing `renderTile` and
60
+ * any inferred default. Returns `undefined` when no callback is available.
61
+ */
62
+ _renderTileCallback() {
63
+ return this.props.renderTile;
64
+ }
65
+ renderLayers() {
66
+ const descriptor = this._tilesetDescriptor();
67
+ const getTileData = this._getTileDataCallback();
68
+ const renderTile = this._renderTileCallback();
69
+ if (!descriptor || !getTileData || !renderTile) {
70
+ return null;
71
+ }
72
+ return this._renderTileLayer(descriptor, getTileData, renderTile);
73
+ }
74
+ _renderTileLayer(descriptor, getTileData, renderTile) {
75
+ class TilesetFactory extends RasterTileset2D {
76
+ constructor(opts) {
77
+ super(opts, descriptor);
78
+ }
79
+ }
80
+ const { tileSize, zoomOffset, maxZoom, minZoom, extent, debounceTime, maxCacheSize, maxCacheByteSize, maxRequests, refinementStrategy, updateTriggers, } = this.props;
81
+ return new TileLayer({
82
+ id: `raster-tile-layer-${this.id}`,
83
+ TilesetClass: TilesetFactory,
84
+ getTileData: (tile) => this._wrapGetTileData(tile, getTileData),
85
+ renderSubLayers: (props) => this._renderSubLayers(props, descriptor, renderTile),
86
+ updateTriggers: {
87
+ renderSubLayers: updateTriggers?.renderTile,
88
+ },
89
+ tileSize,
90
+ zoomOffset,
91
+ maxZoom,
92
+ minZoom,
93
+ extent,
94
+ debounceTime,
95
+ maxCacheSize,
96
+ maxCacheByteSize,
97
+ maxRequests,
98
+ refinementStrategy,
99
+ });
100
+ }
101
+ async _wrapGetTileData(tile, getTileData) {
102
+ const { signal: tileSignal } = tile;
103
+ const userSignal = this.props.signal;
104
+ const signal = userSignal && tileSignal
105
+ ? AbortSignal.any([userSignal, tileSignal])
106
+ : (userSignal ?? tileSignal);
107
+ const options = {
108
+ device: this.context.device,
109
+ signal,
110
+ };
111
+ return getTileData(tile, options);
112
+ }
113
+ _renderSubLayers(props, descriptor, renderTile) {
114
+ const { maxError, debug, debugOpacity } = this.props;
115
+ const tile = props.tile;
116
+ const layers = [];
117
+ if (debug) {
118
+ layers.push(...renderDebugTileOutline(`${this.id}-${tile.id}-bounds`, tile, descriptor.projectTo4326));
119
+ }
120
+ if (!props.data) {
121
+ return layers;
122
+ }
123
+ const { x, y, z } = tile.index;
124
+ const level = descriptor.levels[z];
125
+ if (!level) {
126
+ return layers;
127
+ }
128
+ const { forwardTransform, inverseTransform } = level.tileTransform(x, y);
129
+ const { image, renderPipeline } = renderTile(props.data);
130
+ const { width, height } = props.data;
131
+ const isGlobe = this.context.viewport.resolution !== undefined;
132
+ const reprojectionFns = isGlobe
133
+ ? {
134
+ forwardTransform,
135
+ inverseTransform,
136
+ forwardReproject: descriptor.projectTo4326,
137
+ inverseReproject: descriptor.projectFrom4326,
138
+ }
139
+ : {
140
+ forwardTransform,
141
+ inverseTransform,
142
+ forwardReproject: descriptor.projectTo3857,
143
+ inverseReproject: descriptor.projectFrom3857,
144
+ };
145
+ const deckProjectionProps = isGlobe
146
+ ? {}
147
+ : {
148
+ coordinateSystem: "cartesian",
149
+ coordinateOrigin: [TILE_SIZE / 2, TILE_SIZE / 2, 0],
150
+ // biome-ignore format: array
151
+ modelMatrix: [
152
+ WEB_MERCATOR_TO_WORLD_SCALE, 0, 0, 0,
153
+ 0, WEB_MERCATOR_TO_WORLD_SCALE, 0, 0,
154
+ 0, 0, 1, 0,
155
+ 0, 0, 0, 1,
156
+ ],
157
+ };
158
+ const rasterLayer = new RasterLayer(this.getSubLayerProps({
159
+ id: `${props.id}-raster`,
160
+ width,
161
+ height,
162
+ // Passing `image: undefined` explicitly would trip isAsyncPropLoading
163
+ // and cause a transient black flash (see issue #376).
164
+ ...(image !== undefined && { image }),
165
+ renderPipeline,
166
+ maxError,
167
+ reprojectionFns,
168
+ debug,
169
+ debugOpacity,
170
+ ...deckProjectionProps,
171
+ }));
172
+ return [rasterLayer, ...layers];
173
+ }
174
+ }
175
+ //# sourceMappingURL=raster-tile-layer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raster-tile-layer.js","sourceRoot":"","sources":["../../src/raster-tile-layer/raster-tile-layer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { Affine } from "@developmentseed/affine";
2
+ import type { TilesetLevel } from "./tileset-interface.js";
3
+ import type { Bounds, Corners } from "./types.js";
4
+ /**
5
+ * Constructor options for {@link AffineTilesetLevel}.
6
+ */
7
+ export interface AffineTilesetLevelOptions {
8
+ /** Pixel → CRS affine transform for this resolution level. */
9
+ affine: Affine;
10
+ /** Full level width, in pixels. */
11
+ arrayWidth: number;
12
+ /** Full level height, in pixels. */
13
+ arrayHeight: number;
14
+ /** Tile width, in pixels. */
15
+ tileWidth: number;
16
+ /** Tile height, in pixels. */
17
+ tileHeight: number;
18
+ /** Meters per CRS unit (1 for metric CRSes, ≈111000 for WGS84). */
19
+ mpu: number;
20
+ }
21
+ /**
22
+ * A {@link TilesetLevel} described by a single affine transform plus tile and
23
+ * array sizes.
24
+ *
25
+ * This handles axis-aligned, rotated, skewed, and non-square-pixel grids
26
+ * uniformly. Sources that fit this shape (tiled GeoTIFF overviews, GeoZarr
27
+ * multiscales) can construct one of these per resolution level instead of
28
+ * implementing {@link TilesetLevel} manually.
29
+ */
30
+ export declare class AffineTilesetLevel implements TilesetLevel {
31
+ readonly tileWidth: number;
32
+ readonly tileHeight: number;
33
+ readonly matrixWidth: number;
34
+ readonly matrixHeight: number;
35
+ readonly metersPerPixel: number;
36
+ /**
37
+ * Source-CRS bounding box of the level's array `[minX, minY, maxX, maxY]`.
38
+ * Computed from the affine applied to the four array corners.
39
+ */
40
+ readonly projectedBounds: Bounds;
41
+ private readonly _affine;
42
+ private readonly _invAffine;
43
+ constructor(options: AffineTilesetLevelOptions);
44
+ projectedTileCorners(col: number, row: number): Corners;
45
+ tileTransform(col: number, row: number): {
46
+ forwardTransform: (x: number, y: number) => [number, number];
47
+ inverseTransform: (x: number, y: number) => [number, number];
48
+ };
49
+ crsBoundsToTileRange(projectedMinX: number, projectedMinY: number, projectedMaxX: number, projectedMaxY: number): {
50
+ minCol: number;
51
+ maxCol: number;
52
+ minRow: number;
53
+ maxRow: number;
54
+ };
55
+ }
56
+ //# sourceMappingURL=affine-tileset-level.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"affine-tileset-level.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/affine-tileset-level.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IACrD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,OAAO,EAAE,yBAAyB;IA6B9C,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAavD,aAAa,CACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV;QACD,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7D,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC9D;IAaD,oBAAoB,CAClB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,GACpB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;CAmCtE"}