@developmentseed/deck.gl-raster 0.3.0-beta.3 → 0.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/README.md +13 -0
- package/dist/gpu-modules/color/index.d.ts +2 -0
- package/dist/gpu-modules/color/index.d.ts.map +1 -1
- package/dist/gpu-modules/color/index.js +2 -0
- package/dist/gpu-modules/color/index.js.map +1 -1
- package/dist/gpu-modules/index.d.ts +2 -1
- package/dist/gpu-modules/index.d.ts.map +1 -1
- package/dist/gpu-modules/index.js +2 -1
- package/dist/gpu-modules/index.js.map +1 -1
- package/dist/gpu-modules/mask-texture.d.ts +19 -0
- package/dist/gpu-modules/mask-texture.d.ts.map +1 -0
- package/dist/gpu-modules/mask-texture.js +25 -0
- package/dist/gpu-modules/mask-texture.js.map +1 -0
- package/dist/raster-layer.d.ts +13 -5
- package/dist/raster-layer.d.ts.map +1 -1
- package/dist/raster-layer.js +6 -3
- package/dist/raster-layer.js.map +1 -1
- package/dist/raster-tileset/raster-tileset-2d.d.ts +2 -0
- package/dist/raster-tileset/raster-tileset-2d.d.ts.map +1 -1
- package/dist/raster-tileset/raster-tileset-2d.js +8 -10
- package/dist/raster-tileset/raster-tileset-2d.js.map +1 -1
- package/package.json +8 -8
- package/dist/gpu-modules/rescale-snorm-to-unorm.d.ts +0 -12
- package/dist/gpu-modules/rescale-snorm-to-unorm.d.ts.map +0 -1
- package/dist/gpu-modules/rescale-snorm-to-unorm.js +0 -19
- package/dist/gpu-modules/rescale-snorm-to-unorm.js.map +0 -1
- package/dist/gpu-modules/rgb-color.d.ts +0 -1
- package/dist/gpu-modules/rgb-color.d.ts.map +0 -1
- package/dist/gpu-modules/rgb-color.js +0 -2
- package/dist/gpu-modules/rgb-color.js.map +0 -1
- package/dist/gpu-modules/ycbcr.d.ts +0 -13
- package/dist/gpu-modules/ycbcr.d.ts.map +0 -1
- package/dist/gpu-modules/ycbcr.js +0 -31
- package/dist/gpu-modules/ycbcr.js.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# @developmentseed/deck.gl-raster
|
|
2
|
+
|
|
3
|
+
Core primitives for rendering georeferenced image data.
|
|
4
|
+
|
|
5
|
+
This image data can come from _any_ source. You only need to provide functions for associating pixel positions with spatial positions.
|
|
6
|
+
|
|
7
|
+
Users with Cloud-Optimized GeoTIFF data should use the higher-level {@link COGLayer} from the `@developmentseed/deck.gl-geotiff` package instead.
|
|
8
|
+
|
|
9
|
+
## Install
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install @developmentseed/deck.gl-raster
|
|
13
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/gpu-modules/color/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/gpu-modules/color/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/gpu-modules/color/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/gpu-modules/color/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export { CMYKToRGB, cieLabToRGB, YCbCrToRGB } from "./color";
|
|
1
|
+
export { BlackIsZero, CMYKToRGB, cieLabToRGB, WhiteIsZero, YCbCrToRGB, } from "./color";
|
|
2
2
|
export { Colormap } from "./colormap";
|
|
3
3
|
export { CreateTexture } from "./create-texture";
|
|
4
4
|
export { FilterNoDataVal } from "./filter-nodata";
|
|
5
|
+
export { MaskTexture } from "./mask-texture";
|
|
5
6
|
export type { RasterModule } from "./types";
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { CMYKToRGB, cieLabToRGB, YCbCrToRGB } from "./color";
|
|
1
|
+
export { BlackIsZero, CMYKToRGB, cieLabToRGB, WhiteIsZero, YCbCrToRGB, } from "./color";
|
|
2
2
|
export { Colormap } from "./colormap";
|
|
3
3
|
export { CreateTexture } from "./create-texture";
|
|
4
4
|
export { FilterNoDataVal } from "./filter-nodata";
|
|
5
|
+
export { MaskTexture } from "./mask-texture";
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gpu-modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gpu-modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Texture } from "@luma.gl/core";
|
|
2
|
+
export type MaskTextureProps = {
|
|
3
|
+
maskTexture: Texture;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
7
|
+
* to a color.
|
|
8
|
+
*/
|
|
9
|
+
export declare const MaskTexture: {
|
|
10
|
+
readonly name: "mask-texture";
|
|
11
|
+
readonly inject: {
|
|
12
|
+
readonly "fs:#decl": "uniform sampler2D maskTexture;";
|
|
13
|
+
readonly "fs:DECKGL_FILTER_COLOR": "\n float maskValue = texture(maskTexture, geometry.uv).r;\n if (maskValue == 0.0) {\n discard;\n }\n ";
|
|
14
|
+
};
|
|
15
|
+
readonly getUniforms: (props: Partial<MaskTextureProps>) => {
|
|
16
|
+
maskTexture: Texture | undefined;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=mask-texture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mask-texture.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/mask-texture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AAIH,eAAO,MAAM,WAAW;;;;;;kCAWD,OAAO,CAAC,gBAAgB,CAAC;;;CAKG,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
3
|
+
* to a color.
|
|
4
|
+
*/
|
|
5
|
+
// Note, we compare directly against 0.0 because we use nearest neighbor
|
|
6
|
+
// sampling for the mask texture. So there will never be any interpolated values
|
|
7
|
+
// between 0 and 1.
|
|
8
|
+
export const MaskTexture = {
|
|
9
|
+
name: "mask-texture",
|
|
10
|
+
inject: {
|
|
11
|
+
"fs:#decl": `uniform sampler2D maskTexture;`,
|
|
12
|
+
"fs:DECKGL_FILTER_COLOR": /* glsl */ `
|
|
13
|
+
float maskValue = texture(maskTexture, geometry.uv).r;
|
|
14
|
+
if (maskValue == 0.0) {
|
|
15
|
+
discard;
|
|
16
|
+
}
|
|
17
|
+
`,
|
|
18
|
+
},
|
|
19
|
+
getUniforms: (props) => {
|
|
20
|
+
return {
|
|
21
|
+
maskTexture: props.maskTexture,
|
|
22
|
+
};
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=mask-texture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mask-texture.js","sourceRoot":"","sources":["../../src/gpu-modules/mask-texture.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,wEAAwE;AACxE,gFAAgF;AAChF,mBAAmB;AACnB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE;QACN,UAAU,EAAE,gCAAgC;QAC5C,wBAAwB,EAAE,UAAU,CAAC;;;;;KAKpC;KACF;IACD,WAAW,EAAE,CAAC,KAAgC,EAAE,EAAE;QAChD,OAAO;YACL,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC;IACJ,CAAC;CACgD,CAAC"}
|
package/dist/raster-layer.d.ts
CHANGED
|
@@ -3,6 +3,9 @@ import { CompositeLayer } from "@deck.gl/core";
|
|
|
3
3
|
import type { ReprojectionFns } from "@developmentseed/raster-reproject";
|
|
4
4
|
import { RasterReprojector } from "@developmentseed/raster-reproject";
|
|
5
5
|
import type { RasterModule } from "./gpu-modules/types";
|
|
6
|
+
/**
|
|
7
|
+
* Props for {@link RasterLayer}.
|
|
8
|
+
*/
|
|
6
9
|
export interface RasterLayerProps extends CompositeLayerProps {
|
|
7
10
|
/**
|
|
8
11
|
* Width of the input raster image in pixels
|
|
@@ -31,14 +34,19 @@ export interface RasterLayerProps extends CompositeLayerProps {
|
|
|
31
34
|
* @default 0.125
|
|
32
35
|
*/
|
|
33
36
|
maxError?: number;
|
|
37
|
+
/** If set, enables debug mode for visualizing the mesh and reprojection process. */
|
|
34
38
|
debug?: boolean;
|
|
39
|
+
/** Opacity of the debug overlay. */
|
|
35
40
|
debugOpacity?: number;
|
|
36
41
|
}
|
|
37
42
|
/**
|
|
38
|
-
*
|
|
43
|
+
* Generic deck.gl layer for rendering geospatial raster data with client-side,
|
|
44
|
+
* GPU-based reprojection and custom processing pipelines.
|
|
39
45
|
*
|
|
40
|
-
* This is a composite layer that uses
|
|
41
|
-
* that accurately represents the reprojected raster, then renders it using
|
|
46
|
+
* This is a composite layer that uses {@link RasterReprojector} to generate an adaptive mesh
|
|
47
|
+
* that accurately represents the reprojected raster, then renders it using
|
|
48
|
+
* {@link MeshTextureLayer} (a small wrapper around a deck.gl
|
|
49
|
+
* {@link SimpleMeshLayer}).
|
|
42
50
|
*/
|
|
43
51
|
export declare class RasterLayer extends CompositeLayer<RasterLayerProps> {
|
|
44
52
|
static layerName: string;
|
|
@@ -56,10 +64,10 @@ export declare class RasterLayer extends CompositeLayer<RasterLayerProps> {
|
|
|
56
64
|
};
|
|
57
65
|
initializeState(): void;
|
|
58
66
|
updateState(params: UpdateParameters<this>): void;
|
|
59
|
-
_generateMesh(): void;
|
|
67
|
+
protected _generateMesh(): void;
|
|
60
68
|
renderDebugLayer(): Layer | null;
|
|
61
69
|
/** Create assembled render pipeline from the renderPipeline prop input. */
|
|
62
|
-
_createRenderPipeline(): RasterModule[];
|
|
70
|
+
protected _createRenderPipeline(): RasterModule[];
|
|
63
71
|
renderLayers(): Layer<{}>[] | null;
|
|
64
72
|
}
|
|
65
73
|
//# sourceMappingURL=raster-layer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raster-layer.d.ts","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,KAAK,EACL,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;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmCxD,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;;;;;;;OAOG;IACH,cAAc,EAAE,SAAS,GAAG,YAAY,EAAE,CAAC;IAE3C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAOD
|
|
1
|
+
{"version":3,"file":"raster-layer.d.ts","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,KAAK,EACL,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;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmCxD;;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;;;;;;;OAOG;IACH,cAAc,EAAE,SAAS,GAAG,YAAY,EAAE,CAAC;IAE3C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oFAAoF;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAOD;;;;;;;;GAQG;AACH,qBAAa,WAAY,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC/D,OAAgB,SAAS,SAAiB;IAC1C,OAAgB,YAAY;;;MAAgB;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;IAkBnD,SAAS,CAAC,aAAa,IAAI,IAAI;IAiC/B,gBAAgB,IAAI,KAAK,GAAG,IAAI;IA6DhC,2EAA2E;IAC3E,SAAS,CAAC,qBAAqB,IAAI,YAAY,EAAE;IAqBjD,YAAY;CAmDb"}
|
package/dist/raster-layer.js
CHANGED
|
@@ -33,10 +33,13 @@ const defaultProps = {
|
|
|
33
33
|
debugOpacity: 0.5,
|
|
34
34
|
};
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* Generic deck.gl layer for rendering geospatial raster data with client-side,
|
|
37
|
+
* GPU-based reprojection and custom processing pipelines.
|
|
37
38
|
*
|
|
38
|
-
* This is a composite layer that uses
|
|
39
|
-
* that accurately represents the reprojected raster, then renders it using
|
|
39
|
+
* This is a composite layer that uses {@link RasterReprojector} to generate an adaptive mesh
|
|
40
|
+
* that accurately represents the reprojected raster, then renders it using
|
|
41
|
+
* {@link MeshTextureLayer} (a small wrapper around a deck.gl
|
|
42
|
+
* {@link SimpleMeshLayer}).
|
|
40
43
|
*/
|
|
41
44
|
export class RasterLayer extends CompositeLayer {
|
|
42
45
|
static layerName = "RasterLayer";
|
package/dist/raster-layer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raster-layer.js","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAM,YAAY,GAA+B;IAC/C,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO;IACvB,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,eAAe;IAC/B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,aAAa;IAC9B,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,cAAc;IAC9B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,WAAW;IAC5B,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,aAAa;IAC7B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO;IACxB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY;IAC5B,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,aAAa;IAC1B,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,iBAAiB;IAChC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe;IAChC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,gBAAgB;IAChC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS;IAC1B,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,aAAa;IAC5B,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM;IACnB,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU;IACvB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS;IACxB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,gBAAgB;IAChC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS;IAC1B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ;IACxB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY;IAC3B,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO;CACvB,CAAC;
|
|
1
|
+
{"version":3,"file":"raster-layer.js","sourceRoot":"","sources":["../src/raster-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@ import type { ProjectionFunction, TileIndex, ZRange } from "./types";
|
|
|
14
14
|
* A generic tileset implementation organized according to the OGC
|
|
15
15
|
* [TileMatrixSet](https://docs.ogc.org/is/17-083r4/17-083r4.html)
|
|
16
16
|
* specification.
|
|
17
|
+
*
|
|
18
|
+
* Handles tile lifecycle, caching, and viewport-based loading.
|
|
17
19
|
*/
|
|
18
20
|
export declare class TileMatrixSetTileset extends Tileset2D {
|
|
19
21
|
private tms;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raster-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAIV,kBAAkB,EAClB,SAAS,EACT,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB
|
|
1
|
+
{"version":3,"file":"raster-tileset-2d.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAIV,kBAAkB,EAClB,SAAS,EACT,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB;;;;;;GAMG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;IACjD,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,aAAa,CAAqB;gBAGxC,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,aAAa,EAClB,EACE,aAAa,EACb,aAAa,GACd,EAAE;QACD,aAAa,EAAE,kBAAkB,CAAC;QAClC,aAAa,EAAE,kBAAkB,CAAC;KACnC;IAiBH;;;;;OAKG;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;IAmBN,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAInC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAkB3C,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAIrC,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAuCpE"}
|
|
@@ -12,6 +12,8 @@ import { getTileIndices } from "./raster-tile-traversal";
|
|
|
12
12
|
* A generic tileset implementation organized according to the OGC
|
|
13
13
|
* [TileMatrixSet](https://docs.ogc.org/is/17-083r4/17-083r4.html)
|
|
14
14
|
* specification.
|
|
15
|
+
*
|
|
16
|
+
* Handles tile lifecycle, caching, and viewport-based loading.
|
|
15
17
|
*/
|
|
16
18
|
export class TileMatrixSetTileset extends Tileset2D {
|
|
17
19
|
tms;
|
|
@@ -74,16 +76,12 @@ export class TileMatrixSetTileset extends Tileset2D {
|
|
|
74
76
|
const tileMatrix = tileMatrices[z];
|
|
75
77
|
const { tileHeight, tileWidth } = tileMatrix;
|
|
76
78
|
const tileAffine = tileTransform(tileMatrix, { col: x, row: y });
|
|
77
|
-
//
|
|
78
|
-
|
|
79
|
-
const
|
|
80
|
-
const
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
const topLeft = affine.apply(tileAffine, pixelMinCol, pixelMinRow);
|
|
84
|
-
const topRight = affine.apply(tileAffine, pixelMaxCol, pixelMinRow);
|
|
85
|
-
const bottomLeft = affine.apply(tileAffine, pixelMinCol, pixelMaxRow);
|
|
86
|
-
const bottomRight = affine.apply(tileAffine, pixelMaxCol, pixelMaxRow);
|
|
79
|
+
// tileAffine maps pixel (0,0) → top-left corner of this tile, so use
|
|
80
|
+
// local pixel coordinates (0..tileWidth, 0..tileHeight).
|
|
81
|
+
const topLeft = affine.apply(tileAffine, 0, 0);
|
|
82
|
+
const topRight = affine.apply(tileAffine, tileWidth, 0);
|
|
83
|
+
const bottomLeft = affine.apply(tileAffine, 0, tileHeight);
|
|
84
|
+
const bottomRight = affine.apply(tileAffine, tileWidth, tileHeight);
|
|
87
85
|
// Return the projected bounds as four corners
|
|
88
86
|
// This preserves rotation/skew information
|
|
89
87
|
const projectedBounds = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raster-tileset-2d.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,UAAU,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAUzD
|
|
1
|
+
{"version":3,"file":"raster-tileset-2d.js","sourceRoot":"","sources":["../../src/raster-tileset/raster-tileset-2d.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@developmentseed/deck.gl-raster",
|
|
3
|
-
"version": "0.3.0
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Georeferenced image data visualization in deck.gl",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@luma.gl/core": "9.2.6",
|
|
41
41
|
"@luma.gl/shadertools": "9.2.6",
|
|
42
|
-
"@types/node": "^25.
|
|
43
|
-
"jsdom": "^
|
|
42
|
+
"@types/node": "^25.3.3",
|
|
43
|
+
"jsdom": "^28.1.0",
|
|
44
44
|
"typescript": "^5.9.3",
|
|
45
45
|
"vitest": "^4.0.18"
|
|
46
46
|
},
|
|
@@ -49,16 +49,16 @@
|
|
|
49
49
|
"@deck.gl/geo-layers": "^9.2.7",
|
|
50
50
|
"@deck.gl/layers": "^9.2.7",
|
|
51
51
|
"@deck.gl/mesh-layers": "^9.2.7",
|
|
52
|
-
"@luma.gl/core": "^9.2.
|
|
53
|
-
"@luma.gl/shadertools": "^9.2.
|
|
52
|
+
"@luma.gl/core": "^9.2.6",
|
|
53
|
+
"@luma.gl/shadertools": "^9.2.6"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"@math.gl/core": "^4.1.0",
|
|
57
57
|
"@math.gl/culling": "^4.1.0",
|
|
58
58
|
"@math.gl/web-mercator": "^4.1.0",
|
|
59
|
-
"@developmentseed/affine": "^0.3.0
|
|
60
|
-
"@developmentseed/
|
|
61
|
-
"@developmentseed/
|
|
59
|
+
"@developmentseed/affine": "^0.3.0",
|
|
60
|
+
"@developmentseed/morecantile": "^0.3.0",
|
|
61
|
+
"@developmentseed/raster-reproject": "^0.3.0"
|
|
62
62
|
},
|
|
63
63
|
"volta": {
|
|
64
64
|
"extends": "../../package.json"
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
3
|
-
* to a color.
|
|
4
|
-
*/
|
|
5
|
-
export declare const RescaleSnormToUnorm: {
|
|
6
|
-
readonly name: "rescale-snorm-to-unorm";
|
|
7
|
-
readonly inject: {
|
|
8
|
-
readonly "fs:#decl": "\n vec4 rescaleSnormToUnorm(vec4 value) {\n return (value + 1.0) / 2.0;\n }\n";
|
|
9
|
-
readonly "fs:DECKGL_FILTER_COLOR": "\n color = rescaleSnormToUnorm(color);\n ";
|
|
10
|
-
};
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=rescale-snorm-to-unorm.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rescale-snorm-to-unorm.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/rescale-snorm-to-unorm.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;CAQC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
const shader = /* glsl */ `
|
|
2
|
-
vec4 rescaleSnormToUnorm(vec4 value) {
|
|
3
|
-
return (value + 1.0) / 2.0;
|
|
4
|
-
}
|
|
5
|
-
`;
|
|
6
|
-
/**
|
|
7
|
-
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
8
|
-
* to a color.
|
|
9
|
-
*/
|
|
10
|
-
export const RescaleSnormToUnorm = {
|
|
11
|
-
name: "rescale-snorm-to-unorm",
|
|
12
|
-
inject: {
|
|
13
|
-
"fs:#decl": shader,
|
|
14
|
-
"fs:DECKGL_FILTER_COLOR": /* glsl */ `
|
|
15
|
-
color = rescaleSnormToUnorm(color);
|
|
16
|
-
`,
|
|
17
|
-
},
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=rescale-snorm-to-unorm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rescale-snorm-to-unorm.js","sourceRoot":"","sources":["../../src/gpu-modules/rescale-snorm-to-unorm.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,UAAU,CAAC;;;;CAIzB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE;QACN,UAAU,EAAE,MAAM;QAClB,wBAAwB,EAAE,UAAU,CAAC;;KAEpC;KACF;CAC8B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=rgb-color.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rgb-color.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/rgb-color.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rgb-color.js","sourceRoot":"","sources":["../../src/gpu-modules/rgb-color.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
3
|
-
* to a color.
|
|
4
|
-
*/
|
|
5
|
-
export declare const YCbCrToRGB: {
|
|
6
|
-
readonly name: "ycbcr-to-rgb";
|
|
7
|
-
readonly inject: {
|
|
8
|
-
readonly "fs:#decl": "\n vec3 ycbcrToRgb(vec3 ycbcr) {\n // ycbcr in [0.0, 1.0]\n float y = ycbcr.r;\n float cb = ycbcr.g - 0.5;\n float cr = ycbcr.b - 0.5;\n\n return vec3(\n y + 1.40200 * cr,\n y - 0.34414 * cb - 0.71414 * cr,\n y + 1.77200 * cb\n );\n }\n";
|
|
9
|
-
readonly "fs:DECKGL_FILTER_COLOR": "\n color.rgb = ycbcrToRgb(color.rgb);\n ";
|
|
10
|
-
};
|
|
11
|
-
readonly getUniforms: () => {};
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=ycbcr.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ycbcr.d.ts","sourceRoot":"","sources":["../../src/gpu-modules/ycbcr.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;;;;CAWc,CAAC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
const shader = /* glsl */ `
|
|
2
|
-
vec3 ycbcrToRgb(vec3 ycbcr) {
|
|
3
|
-
// ycbcr in [0.0, 1.0]
|
|
4
|
-
float y = ycbcr.r;
|
|
5
|
-
float cb = ycbcr.g - 0.5;
|
|
6
|
-
float cr = ycbcr.b - 0.5;
|
|
7
|
-
|
|
8
|
-
return vec3(
|
|
9
|
-
y + 1.40200 * cr,
|
|
10
|
-
y - 0.34414 * cb - 0.71414 * cr,
|
|
11
|
-
y + 1.77200 * cb
|
|
12
|
-
);
|
|
13
|
-
}
|
|
14
|
-
`;
|
|
15
|
-
/**
|
|
16
|
-
* A shader module that injects a unorm texture and uses a sampler2D to assign
|
|
17
|
-
* to a color.
|
|
18
|
-
*/
|
|
19
|
-
export const YCbCrToRGB = {
|
|
20
|
-
name: "ycbcr-to-rgb",
|
|
21
|
-
inject: {
|
|
22
|
-
"fs:#decl": shader,
|
|
23
|
-
"fs:DECKGL_FILTER_COLOR": /* glsl */ `
|
|
24
|
-
color.rgb = ycbcrToRgb(color.rgb);
|
|
25
|
-
`,
|
|
26
|
-
},
|
|
27
|
-
getUniforms: () => {
|
|
28
|
-
return {};
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=ycbcr.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ycbcr.js","sourceRoot":"","sources":["../../src/gpu-modules/ycbcr.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,UAAU,CAAC;;;;;;;;;;;;;CAazB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM;QAClB,wBAAwB,EAAE,UAAU,CAAC;;KAEpC;KACF;IACD,WAAW,EAAE,GAAG,EAAE;QAChB,OAAO,EAAE,CAAC;IACZ,CAAC;CACkC,CAAC"}
|