@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
@@ -1,4 +1,5 @@
1
- import { xy_bounds } from "@developmentseed/morecantile";
1
+ import * as affine from "@developmentseed/affine";
2
+ import { tileTransform, xy_bounds } from "@developmentseed/morecantile";
2
3
  // 0.28 mm per pixel — OGC TMS 2.0 standard screen pixel size
3
4
  // https://docs.ogc.org/is/17-083r4/17-083r4.html#toc15
4
5
  const SCREEN_PIXEL_SIZE = 0.00028;
@@ -90,6 +91,19 @@ class TileMatrixAdaptor {
90
91
  maxRow = Math.max(0, Math.min(matrixHeight - 1, maxRow));
91
92
  return { minCol, maxCol, minRow, maxRow };
92
93
  }
94
+ /**
95
+ * Compute forward and inverse per-tile pixel↔CRS transforms for the tile
96
+ * at `(col, row)`. Uses morecantile's `tileTransform` for the forward affine
97
+ * and inverts it via `@developmentseed/affine`.
98
+ */
99
+ tileTransform(col, row) {
100
+ const fwd = tileTransform(this.inner, { col, row });
101
+ const inv = affine.invert(fwd);
102
+ return {
103
+ forwardTransform: (x, y) => affine.apply(fwd, x, y),
104
+ inverseTransform: (x, y) => affine.apply(inv, x, y),
105
+ };
106
+ }
93
107
  }
94
108
  /**
95
109
  * An adapter interface to use a TileMatrixSet as a TilesetDescriptor for raster
@@ -99,12 +113,16 @@ export class TileMatrixSetAdaptor {
99
113
  tms;
100
114
  _levels;
101
115
  projectTo3857;
116
+ projectFrom3857;
102
117
  projectTo4326;
103
- constructor(tms, { projectTo3857, projectTo4326, }) {
118
+ projectFrom4326;
119
+ constructor(tms, { projectTo3857, projectFrom3857, projectTo4326, projectFrom4326, }) {
104
120
  this.tms = tms;
105
121
  this._levels = tms.tileMatrices.map((tm) => new TileMatrixAdaptor(tm));
106
122
  this.projectTo3857 = projectTo3857;
123
+ this.projectFrom3857 = projectFrom3857;
107
124
  this.projectTo4326 = projectTo4326;
125
+ this.projectFrom4326 = projectFrom4326;
108
126
  }
109
127
  get levels() {
110
128
  return this._levels;
@@ -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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"}
@@ -48,6 +48,22 @@ export interface TilesetLevel {
48
48
  minRow: number;
49
49
  maxRow: number;
50
50
  };
51
+ /**
52
+ * Get per-tile forward/inverse coordinate transforms for the tile at
53
+ * `(col, row)`.
54
+ *
55
+ * - `forwardTransform(px, py)` maps a pixel coordinate within the tile
56
+ * (origin at the top-left of the tile, (0,0) at the top-left pixel)
57
+ * to a coordinate in the source CRS.
58
+ * - `inverseTransform(cx, cy)` is its inverse.
59
+ *
60
+ * For axis-aligned tilesets these are affine; the interface allows
61
+ * non-affine transforms (e.g. GCPs) in the future.
62
+ */
63
+ tileTransform: (col: number, row: number) => {
64
+ forwardTransform: (x: number, y: number) => [number, number];
65
+ inverseTransform: (x: number, y: number) => [number, number];
66
+ };
51
67
  }
52
68
  /**
53
69
  * A full multi-resolution raster tileset descriptor.
@@ -72,6 +88,18 @@ export interface TilesetDescriptor {
72
88
  * proj4 dependency.
73
89
  */
74
90
  projectTo4326: ProjectionFunction;
91
+ /**
92
+ * Inverse projection function from EPSG:4326 → source CRS.
93
+ *
94
+ * Provided by the caller alongside `projectTo4326`.
95
+ */
96
+ projectFrom4326: ProjectionFunction;
97
+ /**
98
+ * Inverse projection function from EPSG:3857 → source CRS.
99
+ *
100
+ * Provided by the caller alongside `projectTo3857`.
101
+ */
102
+ projectFrom3857: ProjectionFunction;
75
103
  /** Bounding box of the dataset in the source CRS. */
76
104
  projectedBounds: Bounds;
77
105
  }
@@ -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;CACzE;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,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,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,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,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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@developmentseed/deck.gl-raster",
3
- "version": "0.5.0",
3
+ "version": "0.6.0-beta.1",
4
4
  "description": "Georeferenced image data visualization in deck.gl",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,7 +13,8 @@
13
13
  "./gpu-modules": {
14
14
  "types": "./dist/gpu-modules/index.d.ts",
15
15
  "default": "./dist/gpu-modules/index.js"
16
- }
16
+ },
17
+ "./gpu-modules/colormaps.png": "./dist/gpu-modules/colormaps.png"
17
18
  },
18
19
  "sideEffects": false,
19
20
  "files": [
@@ -37,12 +38,12 @@
37
38
  "url": "git+https://github.com/developmentseed/deck.gl-raster.git"
38
39
  },
39
40
  "devDependencies": {
40
- "@luma.gl/core": "9.3.2",
41
- "@luma.gl/shadertools": "9.3.2",
42
- "@types/node": "^25.3.3",
43
- "jsdom": "^28.1.0",
44
- "typescript": "^6.0.2",
45
- "vitest": "^4.0.18"
41
+ "@luma.gl/core": "^9.3.2",
42
+ "@luma.gl/shadertools": "^9.3.2",
43
+ "@types/node": "^25.6.0",
44
+ "jsdom": "^29.0.2",
45
+ "typescript": "^6.0.3",
46
+ "vitest": "^4.1.5"
46
47
  },
47
48
  "peerDependencies": {
48
49
  "@deck.gl/core": "^9.3.0",
@@ -51,21 +52,21 @@
51
52
  "@deck.gl/mesh-layers": "^9.3.0",
52
53
  "@luma.gl/core": "^9.3.2",
53
54
  "@luma.gl/shadertools": "^9.3.2",
54
- "@developmentseed/morecantile": "^0.5.0"
55
+ "@developmentseed/morecantile": "^0.6.0-beta.1"
55
56
  },
56
57
  "dependencies": {
57
58
  "@math.gl/core": "^4.1.0",
58
59
  "@math.gl/culling": "^4.1.0",
59
60
  "@math.gl/web-mercator": "^4.1.0",
60
- "@developmentseed/affine": "^0.5.0",
61
- "@developmentseed/proj": "^0.5.0",
62
- "@developmentseed/raster-reproject": "^0.5.0"
61
+ "@developmentseed/affine": "^0.6.0-beta.1",
62
+ "@developmentseed/proj": "^0.6.0-beta.1",
63
+ "@developmentseed/raster-reproject": "^0.6.0-beta.1"
63
64
  },
64
65
  "volta": {
65
66
  "extends": "../../package.json"
66
67
  },
67
68
  "scripts": {
68
- "build": "tsc --build tsconfig.build.json",
69
+ "build": "tsc --build tsconfig.build.json && cp src/gpu-modules/colormaps.png dist/gpu-modules/colormaps.png",
69
70
  "test": "vitest run",
70
71
  "test:watch": "vitest",
71
72
  "typecheck": "tsc --noEmit"