@developmentseed/deck.gl-geotiff 0.6.0-alpha.1 → 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.
- package/dist/cog-layer.d.ts +18 -68
- package/dist/cog-layer.d.ts.map +1 -1
- package/dist/cog-layer.js +73 -220
- package/dist/cog-layer.js.map +1 -1
- package/dist/geotiff/render-pipeline.d.ts +1 -1
- package/dist/geotiff/render-pipeline.d.ts.map +1 -1
- package/dist/geotiff/render-pipeline.js +6 -2
- package/dist/geotiff/render-pipeline.js.map +1 -1
- package/dist/geotiff-tileset.d.ts +25 -0
- package/dist/geotiff-tileset.d.ts.map +1 -0
- package/dist/geotiff-tileset.js +39 -0
- package/dist/geotiff-tileset.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mosaic-layer/mosaic-layer.d.ts +1 -1
- package/dist/mosaic-layer/mosaic-layer.d.ts.map +1 -1
- package/dist/mosaic-layer/mosaic-layer.js +1 -1
- package/dist/mosaic-layer/mosaic-layer.js.map +1 -1
- package/dist/multi-cog-layer.d.ts +1 -3
- package/dist/multi-cog-layer.d.ts.map +1 -1
- package/dist/multi-cog-layer.js +29 -27
- package/dist/multi-cog-layer.js.map +1 -1
- package/package.json +12 -12
package/dist/cog-layer.d.ts
CHANGED
|
@@ -1,48 +1,25 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import { TileLayer } from "@deck.gl/geo-layers";
|
|
5
|
-
import type { RenderTileResult } from "@developmentseed/deck.gl-raster";
|
|
1
|
+
import type { UpdateParameters } from "@deck.gl/core";
|
|
2
|
+
import type { MinimalTileData, GetTileDataOptions as RasterTileGetTileDataOptions, RasterTileLayerProps, RenderTileResult, TilesetDescriptor } from "@developmentseed/deck.gl-raster";
|
|
3
|
+
import { RasterTileLayer } from "@developmentseed/deck.gl-raster";
|
|
6
4
|
import type { DecoderPool, GeoTIFF, Overview } from "@developmentseed/geotiff";
|
|
7
|
-
import type { TileMatrixSet } from "@developmentseed/morecantile";
|
|
8
5
|
import type { EpsgResolver, ProjectionDefinition } from "@developmentseed/proj";
|
|
9
|
-
import type {
|
|
10
|
-
import type { Device, Texture } from "@luma.gl/core";
|
|
6
|
+
import type { Texture } from "@luma.gl/core";
|
|
11
7
|
import type { TextureDataT } from "./geotiff/render-pipeline.js";
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
*/
|
|
15
|
-
export type MinimalDataT = {
|
|
16
|
-
/** The height of the tile in pixels. */
|
|
17
|
-
height: number;
|
|
18
|
-
/** The width of the tile in pixels. */
|
|
19
|
-
width: number;
|
|
20
|
-
/** Byte length of the data, required for cache management when `maxCacheByteSize` is set. */
|
|
21
|
-
byteLength?: number;
|
|
22
|
-
};
|
|
23
|
-
type DefaultDataT = MinimalDataT & {
|
|
8
|
+
export type { MinimalTileData } from "@developmentseed/deck.gl-raster";
|
|
9
|
+
type DefaultDataT = MinimalTileData & {
|
|
24
10
|
texture: Texture;
|
|
25
11
|
byteLength: number;
|
|
26
12
|
};
|
|
27
13
|
/** Options passed to `getTileData`. */
|
|
28
|
-
export type GetTileDataOptions = {
|
|
29
|
-
/** The luma.gl Device */
|
|
30
|
-
device: Device;
|
|
14
|
+
export type GetTileDataOptions = RasterTileGetTileDataOptions & {
|
|
31
15
|
/** The x coordinate of the tile within the IFD. */
|
|
32
16
|
x: number;
|
|
33
17
|
/** The y coordinate of the tile within the IFD. */
|
|
34
18
|
y: number;
|
|
35
|
-
/** An AbortSignal that may be signalled if the request is to be aborted */
|
|
36
|
-
signal?: AbortSignal;
|
|
37
19
|
/** The decoder pool to use. */
|
|
38
20
|
pool: DecoderPool;
|
|
39
21
|
};
|
|
40
|
-
type
|
|
41
|
-
data: DataT;
|
|
42
|
-
forwardTransform: ReprojectionFns["forwardTransform"];
|
|
43
|
-
inverseTransform: ReprojectionFns["inverseTransform"];
|
|
44
|
-
};
|
|
45
|
-
type COGLayerDataProps<DataT extends MinimalDataT> = {
|
|
22
|
+
type COGLayerDataProps<DataT extends MinimalTileData> = {
|
|
46
23
|
/**
|
|
47
24
|
* User-defined method to load data for a tile.
|
|
48
25
|
*
|
|
@@ -65,7 +42,7 @@ type COGLayerDataProps<DataT extends MinimalDataT> = {
|
|
|
65
42
|
/**
|
|
66
43
|
* Props that can be passed into the {@link COGLayer}.
|
|
67
44
|
*/
|
|
68
|
-
export type COGLayerProps<DataT extends
|
|
45
|
+
export type COGLayerProps<DataT extends MinimalTileData = DefaultDataT> = Omit<RasterTileLayerProps<DataT>, "tilesetDescriptor" | "getTileData" | "renderTile"> & COGLayerDataProps<DataT> & {
|
|
69
46
|
/**
|
|
70
47
|
* Cloud-optimized GeoTIFF input.
|
|
71
48
|
*
|
|
@@ -91,22 +68,6 @@ export type COGLayerProps<DataT extends MinimalDataT = DefaultDataT> = Composite
|
|
|
91
68
|
* COGLayer and GeoTIFFLayer instances.
|
|
92
69
|
*/
|
|
93
70
|
pool?: DecoderPool;
|
|
94
|
-
/**
|
|
95
|
-
* Maximum reprojection error in pixels for mesh refinement.
|
|
96
|
-
* Lower values create denser meshes with higher accuracy.
|
|
97
|
-
* @default 0.125
|
|
98
|
-
*/
|
|
99
|
-
maxError?: number;
|
|
100
|
-
/**
|
|
101
|
-
* Enable debug visualization showing the triangulation mesh
|
|
102
|
-
* @default false
|
|
103
|
-
*/
|
|
104
|
-
debug?: boolean;
|
|
105
|
-
/**
|
|
106
|
-
* Opacity of the debug mesh overlay (0-1)
|
|
107
|
-
* @default 0.5
|
|
108
|
-
*/
|
|
109
|
-
debugOpacity?: number;
|
|
110
71
|
/**
|
|
111
72
|
* Called when the GeoTIFF metadata has been loaded and parsed.
|
|
112
73
|
*/
|
|
@@ -134,16 +95,12 @@ export type COGLayerProps<DataT extends MinimalDataT = DefaultDataT> = Composite
|
|
|
134
95
|
/**
|
|
135
96
|
* COGLayer renders a COG using a tiled approach with reprojection.
|
|
136
97
|
*/
|
|
137
|
-
export declare class COGLayer<DataT extends
|
|
98
|
+
export declare class COGLayer<DataT extends MinimalTileData = DefaultDataT> extends RasterTileLayer<DataT, COGLayerProps<DataT>> {
|
|
138
99
|
static layerName: string;
|
|
139
|
-
static defaultProps:
|
|
100
|
+
static defaultProps: typeof RasterTileLayer.defaultProps;
|
|
140
101
|
state: {
|
|
141
|
-
geotiff
|
|
142
|
-
|
|
143
|
-
inverseFrom4326?: ReprojectionFns["inverseReproject"];
|
|
144
|
-
forwardTo3857?: ReprojectionFns["forwardReproject"];
|
|
145
|
-
inverseFrom3857?: ReprojectionFns["inverseReproject"];
|
|
146
|
-
tms?: TileMatrixSet;
|
|
102
|
+
geotiff?: GeoTIFF;
|
|
103
|
+
tilesetDescriptor?: TilesetDescriptor;
|
|
147
104
|
defaultGetTileData?: COGLayerProps<TextureDataT>["getTileData"];
|
|
148
105
|
defaultRenderTile?: COGLayerProps<TextureDataT>["renderTile"];
|
|
149
106
|
};
|
|
@@ -151,19 +108,12 @@ export declare class COGLayer<DataT extends MinimalDataT = DefaultDataT> extends
|
|
|
151
108
|
updateState(params: UpdateParameters<this>): void;
|
|
152
109
|
clearState(): void;
|
|
153
110
|
_parseGeoTIFF(): Promise<void>;
|
|
111
|
+
protected _tilesetDescriptor(): TilesetDescriptor | undefined;
|
|
154
112
|
/**
|
|
155
|
-
*
|
|
113
|
+
* Adapts the user-facing `(image, { x, y, ... }) => Promise<DataT>` signature
|
|
114
|
+
* into RasterTileLayer's `(tile, { signal, device }) => Promise<DataT>`.
|
|
156
115
|
*/
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
id: string;
|
|
160
|
-
data?: GetTileDataResult<DataT>;
|
|
161
|
-
_offset: number;
|
|
162
|
-
tile: Tile2DHeader<GetTileDataResult<DataT>>;
|
|
163
|
-
}, forwardTo4326: ReprojectionFns["forwardReproject"], inverseFrom4326: ReprojectionFns["inverseReproject"], forwardTo3857: ReprojectionFns["forwardReproject"], inverseFrom3857: ReprojectionFns["inverseReproject"]): Layer | LayersList | null;
|
|
164
|
-
/** Define the underlying deck.gl TileLayer. */
|
|
165
|
-
renderTileLayer(tms: TileMatrixSet, forwardTo4326: ReprojectionFns["forwardReproject"], inverseFrom4326: ReprojectionFns["inverseReproject"], forwardTo3857: ReprojectionFns["forwardReproject"], inverseFrom3857: ReprojectionFns["inverseReproject"], geotiff: GeoTIFF): TileLayer;
|
|
166
|
-
renderLayers(): TileLayer<any, {}> | null;
|
|
116
|
+
protected _getTileDataCallback(): ((tile: import("@deck.gl/geo-layers")._TileLoadProps, options: RasterTileGetTileDataOptions) => Promise<DataT>) | undefined;
|
|
117
|
+
protected _renderTileCallback(): ((data: DataT) => RenderTileResult) | undefined;
|
|
167
118
|
}
|
|
168
|
-
export {};
|
|
169
119
|
//# sourceMappingURL=cog-layer.d.ts.map
|
package/dist/cog-layer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cog-layer.d.ts","sourceRoot":"","sources":["../src/cog-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"cog-layer.d.ts","sourceRoot":"","sources":["../src/cog-layer.ts"],"names":[],"mappings":"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"}
|
package/dist/cog-layer.js
CHANGED
|
@@ -1,40 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { defaultDecoderPool, generateTileMatrixSet, } from "@developmentseed/geotiff";
|
|
5
|
-
import { tileTransform } from "@developmentseed/morecantile";
|
|
6
|
-
import { epsgResolver, makeClampedForwardTo3857, parseWkt, } from "@developmentseed/proj";
|
|
1
|
+
import { RasterTileLayer } from "@developmentseed/deck.gl-raster";
|
|
2
|
+
import { defaultDecoderPool } from "@developmentseed/geotiff";
|
|
3
|
+
import { epsgResolver, makeClampedForwardTo3857, metersPerUnit, parseWkt, } from "@developmentseed/proj";
|
|
7
4
|
import proj4 from "proj4";
|
|
8
5
|
import { fetchGeoTIFF, getGeographicBounds } from "./geotiff/geotiff.js";
|
|
9
6
|
import { inferRenderPipeline } from "./geotiff/render-pipeline.js";
|
|
10
|
-
import {
|
|
11
|
-
/** Size of deck.gl's common coordinate space in world units.
|
|
12
|
-
*
|
|
13
|
-
* At zoom 0, one tile covers the whole world (512×512 units); at zoom z, each
|
|
14
|
-
* tile is 512/2^z units.
|
|
15
|
-
*/
|
|
16
|
-
const TILE_SIZE = 512;
|
|
17
|
-
/**
|
|
18
|
-
* The size of the globe in web mercator meters.
|
|
19
|
-
*/
|
|
20
|
-
const WEB_MERCATOR_METER_CIRCUMFERENCE = 40075016.686;
|
|
21
|
-
/**
|
|
22
|
-
* Scale factor for converting EPSG:3857 meters into deck.gl world units
|
|
23
|
-
* (512×512).
|
|
24
|
-
*/
|
|
25
|
-
const WEB_MERCATOR_TO_WORLD_SCALE = TILE_SIZE / WEB_MERCATOR_METER_CIRCUMFERENCE;
|
|
26
|
-
const defaultProps = {
|
|
27
|
-
...TileLayer.defaultProps,
|
|
28
|
-
epsgResolver,
|
|
29
|
-
debug: false,
|
|
30
|
-
debugOpacity: 0.5,
|
|
31
|
-
};
|
|
7
|
+
import { geoTiffToDescriptor } from "./geotiff-tileset.js";
|
|
32
8
|
/**
|
|
33
9
|
* COGLayer renders a COG using a tiled approach with reprojection.
|
|
34
10
|
*/
|
|
35
|
-
export class COGLayer extends
|
|
11
|
+
export class COGLayer extends RasterTileLayer {
|
|
36
12
|
static layerName = "COGLayer";
|
|
37
|
-
|
|
13
|
+
// COGLayer's getTileData signature differs from the base class's, so
|
|
14
|
+
// `DefaultProps<COGLayerProps>` is not assignable to
|
|
15
|
+
// `DefaultProps<RasterTileLayerProps>`. Cast to the base static-side type
|
|
16
|
+
// to keep inheritance happy. The only COG-specific default is
|
|
17
|
+
// `epsgResolver`; all behavior still flows from the base class.
|
|
18
|
+
static defaultProps = {
|
|
19
|
+
...RasterTileLayer.defaultProps,
|
|
20
|
+
epsgResolver,
|
|
21
|
+
};
|
|
38
22
|
initializeState() {
|
|
39
23
|
this.setState({});
|
|
40
24
|
}
|
|
@@ -52,11 +36,7 @@ export class COGLayer extends CompositeLayer {
|
|
|
52
36
|
clearState() {
|
|
53
37
|
this.setState({
|
|
54
38
|
geotiff: undefined,
|
|
55
|
-
|
|
56
|
-
forwardTo4326: undefined,
|
|
57
|
-
inverseFrom4326: undefined,
|
|
58
|
-
forwardTo3857: undefined,
|
|
59
|
-
inverseFrom3857: undefined,
|
|
39
|
+
tilesetDescriptor: undefined,
|
|
60
40
|
defaultGetTileData: undefined,
|
|
61
41
|
defaultRenderTile: undefined,
|
|
62
42
|
});
|
|
@@ -67,17 +47,30 @@ export class COGLayer extends CompositeLayer {
|
|
|
67
47
|
const sourceProjection = typeof crs === "number"
|
|
68
48
|
? await this.props.epsgResolver(crs)
|
|
69
49
|
: parseWkt(crs);
|
|
70
|
-
const tms = generateTileMatrixSet(geotiff, sourceProjection);
|
|
71
50
|
// @ts-expect-error - proj4 typings are incomplete and don't support
|
|
72
51
|
// wkt-parser input
|
|
73
52
|
const converter4326 = proj4(sourceProjection, "EPSG:4326");
|
|
74
|
-
const
|
|
75
|
-
const
|
|
53
|
+
const projectTo4326 = (x, y) => converter4326.forward([x, y], false);
|
|
54
|
+
const projectFrom4326 = (x, y) => converter4326.inverse([x, y], false);
|
|
76
55
|
// @ts-expect-error - proj4 typings are incomplete and don't support
|
|
77
56
|
// wkt-parser input
|
|
78
57
|
const converter3857 = proj4(sourceProjection, "EPSG:3857");
|
|
79
|
-
const
|
|
80
|
-
const
|
|
58
|
+
const projectTo3857 = makeClampedForwardTo3857((x, y) => converter3857.forward([x, y], false), projectTo4326);
|
|
59
|
+
const projectFrom3857 = (x, y) => converter3857.inverse([x, y], false);
|
|
60
|
+
const units = sourceProjection.units;
|
|
61
|
+
if (!units) {
|
|
62
|
+
throw new Error("Source projection is missing 'units' property, cannot compute meters per unit");
|
|
63
|
+
}
|
|
64
|
+
const mpu = metersPerUnit(units, {
|
|
65
|
+
semiMajorAxis: sourceProjection.datum?.a ?? sourceProjection.a,
|
|
66
|
+
});
|
|
67
|
+
const tilesetDescriptor = geoTiffToDescriptor(geotiff, {
|
|
68
|
+
projectTo4326,
|
|
69
|
+
projectFrom4326,
|
|
70
|
+
projectTo3857,
|
|
71
|
+
projectFrom3857,
|
|
72
|
+
mpu,
|
|
73
|
+
});
|
|
81
74
|
if (this.props.onGeoTIFFLoad) {
|
|
82
75
|
const geographicBounds = getGeographicBounds(geotiff, converter4326);
|
|
83
76
|
this.props.onGeoTIFFLoad(geotiff, {
|
|
@@ -85,199 +78,59 @@ export class COGLayer extends CompositeLayer {
|
|
|
85
78
|
geographicBounds,
|
|
86
79
|
});
|
|
87
80
|
}
|
|
88
|
-
|
|
89
|
-
|
|
81
|
+
let defaultGetTileData;
|
|
82
|
+
let defaultRenderTile;
|
|
90
83
|
if (!this.props.getTileData || !this.props.renderTile) {
|
|
91
|
-
|
|
92
|
-
|
|
84
|
+
({ getTileData: defaultGetTileData, renderTile: defaultRenderTile } =
|
|
85
|
+
inferRenderPipeline(geotiff, this.context.device));
|
|
93
86
|
}
|
|
94
87
|
this.setState({
|
|
95
88
|
geotiff,
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
forwardTo3857,
|
|
100
|
-
inverseFrom3857,
|
|
89
|
+
tilesetDescriptor,
|
|
90
|
+
defaultGetTileData,
|
|
91
|
+
defaultRenderTile,
|
|
101
92
|
});
|
|
102
93
|
}
|
|
94
|
+
_tilesetDescriptor() {
|
|
95
|
+
return this.state.tilesetDescriptor;
|
|
96
|
+
}
|
|
103
97
|
/**
|
|
104
|
-
*
|
|
98
|
+
* Adapts the user-facing `(image, { x, y, ... }) => Promise<DataT>` signature
|
|
99
|
+
* into RasterTileLayer's `(tile, { signal, device }) => Promise<DataT>`.
|
|
105
100
|
*/
|
|
106
|
-
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
// If z=0, use the coarsest overview (which is the last in the array)
|
|
111
|
-
// If z=max, use the full-resolution image (which is the first in the array)
|
|
112
|
-
// TODO: should be able to (micro) optimize this to not create the array
|
|
113
|
-
// Something like:
|
|
114
|
-
// const image = z === geotiff.overviews.length - 1 ? geotiff :
|
|
115
|
-
// geotiff.overviews[geotiff.overviews.length - 1 - z]!;
|
|
116
|
-
const images = [geotiff, ...geotiff.overviews];
|
|
117
|
-
const image = images[images.length - 1 - z];
|
|
118
|
-
const tileMatrix = tms.tileMatrices[z];
|
|
119
|
-
const tileAffine = tileTransform(tileMatrix, { col: x, row: y });
|
|
120
|
-
const { forwardTransform, inverseTransform } = fromAffine(tileAffine);
|
|
121
|
-
// Combine abort signals if both are defined
|
|
122
|
-
const combinedSignal = signal && this.props.signal
|
|
123
|
-
? AbortSignal.any([signal, this.props.signal])
|
|
124
|
-
: signal || this.props.signal;
|
|
125
|
-
const getTileDataProps = {
|
|
126
|
-
device: this.context.device,
|
|
127
|
-
x,
|
|
128
|
-
y,
|
|
129
|
-
signal: combinedSignal,
|
|
130
|
-
pool: this.props.pool ?? defaultDecoderPool(),
|
|
131
|
-
};
|
|
132
|
-
let data;
|
|
133
|
-
if (this.props.getTileData) {
|
|
134
|
-
// In the case that the user passed in a custom `getTileData`, TS knows
|
|
135
|
-
// that `DataT` is the return type of that function
|
|
136
|
-
data = await this.props.getTileData(image, getTileDataProps);
|
|
101
|
+
_getTileDataCallback() {
|
|
102
|
+
const geotiff = this.state.geotiff;
|
|
103
|
+
if (!geotiff) {
|
|
104
|
+
return undefined;
|
|
137
105
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
data = (await this.state.defaultGetTileData(image, getTileDataProps));
|
|
106
|
+
const userFn = this.props.getTileData ?? this.state.defaultGetTileData;
|
|
107
|
+
if (!userFn) {
|
|
108
|
+
return undefined;
|
|
142
109
|
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
110
|
+
const wrapped = async (tile, options) => {
|
|
111
|
+
const { x, y, z } = tile.index;
|
|
112
|
+
// Levels are emitted coarsest-first with the full-res geotiff appended
|
|
113
|
+
// last, so z === overviews.length picks the full-res image and lower z
|
|
114
|
+
// picks the corresponding overview from the finest-first list.
|
|
115
|
+
const image = z === geotiff.overviews.length
|
|
116
|
+
? geotiff
|
|
117
|
+
: geotiff.overviews[geotiff.overviews.length - 1 - z];
|
|
118
|
+
return userFn(image, {
|
|
119
|
+
device: options.device,
|
|
120
|
+
x,
|
|
121
|
+
y,
|
|
122
|
+
signal: options.signal,
|
|
123
|
+
pool: this.props.pool ?? defaultDecoderPool(),
|
|
124
|
+
});
|
|
147
125
|
};
|
|
126
|
+
return wrapped;
|
|
148
127
|
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
const { maxError, debug, debugOpacity } = this.props;
|
|
154
|
-
// Cast to include TileMetadata from raster-tileset's `getTileMetadata`
|
|
155
|
-
// method.
|
|
156
|
-
// TODO: implement generic handling of tile metadata upstream in TileLayer
|
|
157
|
-
const tile = props.tile;
|
|
158
|
-
const layers = [];
|
|
159
|
-
if (debug) {
|
|
160
|
-
layers.push(...renderDebugTileOutline(`${this.id}-${tile.id}-bounds`, tile, forwardTo4326));
|
|
161
|
-
}
|
|
162
|
-
if (!props.data) {
|
|
163
|
-
return layers;
|
|
164
|
-
}
|
|
165
|
-
const { data, forwardTransform, inverseTransform } = props.data;
|
|
166
|
-
const { height, width } = data;
|
|
167
|
-
let tileResult;
|
|
168
|
-
if (this.props.getTileData) {
|
|
169
|
-
// In the case that the user passed in a custom `getTileData`, TS knows
|
|
170
|
-
// that `data` can be passed in to `renderTile`.
|
|
171
|
-
tileResult = this.props.renderTile(data);
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
// In the default case, `data` is `DefaultDataT` — cast required because
|
|
175
|
-
// TS can't prove that `DataT` (which defaults to `DefaultDataT`) is
|
|
176
|
-
// `DefaultDataT` at this point.
|
|
177
|
-
tileResult = this.state.defaultRenderTile(data);
|
|
178
|
-
}
|
|
179
|
-
const { image, renderPipeline } = tileResult;
|
|
180
|
-
// viewport.resolution is defined for GlobeView, undefined for WebMercatorViewport.
|
|
181
|
-
// For WebMercator we project the mesh to EPSG:3857 and use a model matrix
|
|
182
|
-
// to map from 3857 meters to deck.gl world space, matching the approach
|
|
183
|
-
// used by the MVTLayer. This avoids per-vertex WGS84→WebMercator linear
|
|
184
|
-
// interpolation errors that become visible at high latitudes.
|
|
185
|
-
const isGlobe = this.context.viewport.resolution !== undefined;
|
|
186
|
-
let reprojectionFns;
|
|
187
|
-
let deckProjectionProps;
|
|
188
|
-
if (isGlobe) {
|
|
189
|
-
reprojectionFns = {
|
|
190
|
-
forwardTransform,
|
|
191
|
-
inverseTransform,
|
|
192
|
-
forwardReproject: forwardTo4326,
|
|
193
|
-
inverseReproject: inverseFrom4326,
|
|
194
|
-
};
|
|
195
|
-
deckProjectionProps = {};
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
reprojectionFns = {
|
|
199
|
-
forwardTransform,
|
|
200
|
-
inverseTransform,
|
|
201
|
-
forwardReproject: forwardTo3857,
|
|
202
|
-
inverseReproject: inverseFrom3857,
|
|
203
|
-
};
|
|
204
|
-
// Scale 3857 meters → deck.gl world units (512×512).
|
|
205
|
-
//
|
|
206
|
-
// coordinateOrigin shifts the world-space origin to (256, 256) so that
|
|
207
|
-
// easting=0 / northing=0 maps to world center. Then the modelMatrix
|
|
208
|
-
//
|
|
209
|
-
// No Y-flip needed: CARTESIAN Y increases upward = northing.
|
|
210
|
-
deckProjectionProps = {
|
|
211
|
-
coordinateSystem: COORDINATE_SYSTEM.CARTESIAN,
|
|
212
|
-
coordinateOrigin: [TILE_SIZE / 2, TILE_SIZE / 2, 0],
|
|
213
|
-
// biome-ignore format: array
|
|
214
|
-
modelMatrix: [
|
|
215
|
-
WEB_MERCATOR_TO_WORLD_SCALE, 0, 0, 0,
|
|
216
|
-
0, WEB_MERCATOR_TO_WORLD_SCALE, 0, 0,
|
|
217
|
-
0, 0, 1, 0,
|
|
218
|
-
0, 0, 0, 1
|
|
219
|
-
],
|
|
220
|
-
};
|
|
221
|
-
}
|
|
222
|
-
const rasterLayer = new RasterLayer(this.getSubLayerProps({
|
|
223
|
-
id: `${props.id}-raster`,
|
|
224
|
-
width,
|
|
225
|
-
height,
|
|
226
|
-
// Only pass image if defined — passing `undefined` explicitly overrides
|
|
227
|
-
// the default null and causes isAsyncPropLoading to return true briefly,
|
|
228
|
-
// which hides the parent tile placeholder and causes a black flash.
|
|
229
|
-
// https://github.com/developmentseed/deck.gl-raster/issues/376
|
|
230
|
-
...(image !== undefined && { image }),
|
|
231
|
-
renderPipeline,
|
|
232
|
-
maxError,
|
|
233
|
-
reprojectionFns,
|
|
234
|
-
debug,
|
|
235
|
-
debugOpacity,
|
|
236
|
-
...deckProjectionProps,
|
|
237
|
-
}));
|
|
238
|
-
return [rasterLayer, ...layers];
|
|
239
|
-
}
|
|
240
|
-
/** Define the underlying deck.gl TileLayer. */
|
|
241
|
-
renderTileLayer(tms, forwardTo4326, inverseFrom4326, forwardTo3857, inverseFrom3857, geotiff) {
|
|
242
|
-
// Create a factory class that wraps COGTileset2D with the metadata
|
|
243
|
-
class TileMatrixSetTilesetFactory extends RasterTileset2D {
|
|
244
|
-
constructor(opts) {
|
|
245
|
-
const descriptor = new TileMatrixSetAdaptor(tms, {
|
|
246
|
-
projectTo4326: forwardTo4326,
|
|
247
|
-
projectTo3857: forwardTo3857,
|
|
248
|
-
});
|
|
249
|
-
super(opts, descriptor, {
|
|
250
|
-
projectTo4326: forwardTo4326,
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
const { maxRequests, maxCacheSize, maxCacheByteSize, debounceTime, refinementStrategy, } = this.props;
|
|
255
|
-
return new TileLayer({
|
|
256
|
-
id: `cog-tile-layer-${this.id}`,
|
|
257
|
-
TilesetClass: TileMatrixSetTilesetFactory,
|
|
258
|
-
getTileData: async (tile) => this._getTileData(tile, geotiff, tms),
|
|
259
|
-
renderSubLayers: (props) => this._renderSubLayers(props, forwardTo4326, inverseFrom4326, forwardTo3857, inverseFrom3857),
|
|
260
|
-
debounceTime,
|
|
261
|
-
maxCacheByteSize,
|
|
262
|
-
maxCacheSize,
|
|
263
|
-
maxRequests,
|
|
264
|
-
refinementStrategy,
|
|
265
|
-
});
|
|
266
|
-
}
|
|
267
|
-
renderLayers() {
|
|
268
|
-
const { forwardTo4326, inverseFrom4326, forwardTo3857, inverseFrom3857, tms, geotiff, } = this.state;
|
|
269
|
-
if (!forwardTo4326 ||
|
|
270
|
-
!inverseFrom4326 ||
|
|
271
|
-
!forwardTo3857 ||
|
|
272
|
-
!inverseFrom3857 ||
|
|
273
|
-
!tms ||
|
|
274
|
-
!geotiff) {
|
|
275
|
-
return null;
|
|
128
|
+
_renderTileCallback() {
|
|
129
|
+
const userFn = this.props.renderTile ?? this.state.defaultRenderTile;
|
|
130
|
+
if (!userFn) {
|
|
131
|
+
return undefined;
|
|
276
132
|
}
|
|
277
|
-
|
|
278
|
-
// nullable in any part of function scope, the tileset factory wrapper gives
|
|
279
|
-
// a type error
|
|
280
|
-
return this.renderTileLayer(tms, forwardTo4326, inverseFrom4326, forwardTo3857, inverseFrom3857, geotiff);
|
|
133
|
+
return userFn;
|
|
281
134
|
}
|
|
282
135
|
}
|
|
283
136
|
//# sourceMappingURL=cog-layer.js.map
|
package/dist/cog-layer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cog-layer.js","sourceRoot":"","sources":["../src/cog-layer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cog-layer.js","sourceRoot":"","sources":["../src/cog-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { RenderTileResult } from "@developmentseed/deck.gl-raster";
|
|
2
2
|
import type { GeoTIFF, Overview } from "@developmentseed/geotiff";
|
|
3
3
|
import type { Device, Texture } from "@luma.gl/core";
|
|
4
|
-
import type { GetTileDataOptions } from "../cog-layer";
|
|
4
|
+
import type { GetTileDataOptions } from "../cog-layer.js";
|
|
5
5
|
export type TextureDataT = {
|
|
6
6
|
height: number;
|
|
7
7
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-pipeline.d.ts","sourceRoot":"","sources":["../../src/geotiff/render-pipeline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAYxE,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAgB,OAAO,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"render-pipeline.d.ts","sourceRoot":"","sources":["../../src/geotiff/render-pipeline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAYxE,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAgB,OAAO,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAI1D,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAqBF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GACb;IACD,WAAW,EAAE,CACX,KAAK,EAAE,OAAO,GAAG,QAAQ,EACzB,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3B,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,gBAAgB,CAAC;CACtD,CAeA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Photometric, SampleFormat } from "@cogeotiff/core";
|
|
2
2
|
import { BlackIsZero, CMYKToRGB, Colormap, CreateTexture, cieLabToRGB, FilterNoDataVal, MaskTexture, WhiteIsZero, } from "@developmentseed/deck.gl-raster/gpu-modules";
|
|
3
3
|
import { parseColormap } from "@developmentseed/geotiff";
|
|
4
|
-
import { addAlphaChannel } from "./geotiff";
|
|
5
|
-
import { inferTextureFormat } from "./texture";
|
|
4
|
+
import { addAlphaChannel } from "./geotiff.js";
|
|
5
|
+
import { inferTextureFormat } from "./texture.js";
|
|
6
6
|
export function inferRenderPipeline(geotiff, device) {
|
|
7
7
|
const { sampleFormat } = geotiff.cachedTags;
|
|
8
8
|
if (sampleFormat === null) {
|
|
@@ -149,15 +149,19 @@ function photometricInterpretationToRGB({ count, colorMap, device, photometric,
|
|
|
149
149
|
}
|
|
150
150
|
const { data, width, height } = parseColormap(colorMap);
|
|
151
151
|
const cmapTexture = device.createTexture({
|
|
152
|
+
dimension: "2d-array",
|
|
152
153
|
data,
|
|
153
154
|
format: "rgba8unorm",
|
|
154
155
|
width,
|
|
155
156
|
height,
|
|
157
|
+
depth: 1,
|
|
158
|
+
mipLevels: 1,
|
|
156
159
|
sampler: {
|
|
157
160
|
minFilter: "nearest",
|
|
158
161
|
magFilter: "nearest",
|
|
159
162
|
addressModeU: "clamp-to-edge",
|
|
160
163
|
addressModeV: "clamp-to-edge",
|
|
164
|
+
addressModeW: "clamp-to-edge",
|
|
161
165
|
},
|
|
162
166
|
});
|
|
163
167
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-pipeline.js","sourceRoot":"","sources":["../../src/geotiff/render-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG5D,OAAO,EACL,WAAW,EACX,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"render-pipeline.js","sourceRoot":"","sources":["../../src/geotiff/render-pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ProjectionFunction } from "@developmentseed/deck.gl-raster";
|
|
2
|
+
import { AffineTileset } from "@developmentseed/deck.gl-raster";
|
|
3
|
+
import type { GeoTIFF } from "@developmentseed/geotiff";
|
|
4
|
+
/**
|
|
5
|
+
* Build an {@link AffineTileset} {@link TilesetDescriptor} from a {@link GeoTIFF}.
|
|
6
|
+
*
|
|
7
|
+
* Produces one {@link AffineTilesetLevel} per overview plus a final entry for
|
|
8
|
+
* the full-resolution image. Levels are emitted coarsest first.
|
|
9
|
+
*
|
|
10
|
+
* Replaces the previous `generateTileMatrixSet` + `TileMatrixSetAdaptor`
|
|
11
|
+
* pipeline. Because {@link AffineTilesetLevel} is parameterized by an
|
|
12
|
+
* arbitrary affine, this works correctly for COGs with rotated, skewed, or
|
|
13
|
+
* non-square-pixel geotransforms.
|
|
14
|
+
*
|
|
15
|
+
* @param geotiff The opened GeoTIFF.
|
|
16
|
+
* @param opts Projection functions and meters-per-CRS-unit.
|
|
17
|
+
*/
|
|
18
|
+
export declare function geoTiffToDescriptor(geotiff: GeoTIFF, opts: {
|
|
19
|
+
projectTo3857: ProjectionFunction;
|
|
20
|
+
projectFrom3857: ProjectionFunction;
|
|
21
|
+
projectTo4326: ProjectionFunction;
|
|
22
|
+
projectFrom4326: ProjectionFunction;
|
|
23
|
+
mpu: number;
|
|
24
|
+
}): AffineTileset;
|
|
25
|
+
//# sourceMappingURL=geotiff-tileset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geotiff-tileset.d.ts","sourceRoot":"","sources":["../src/geotiff-tileset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EACL,aAAa,EAEd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE;IACJ,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;CACb,GACA,aAAa,CA2Bf"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { AffineTileset, AffineTilesetLevel, } from "@developmentseed/deck.gl-raster";
|
|
2
|
+
/**
|
|
3
|
+
* Build an {@link AffineTileset} {@link TilesetDescriptor} from a {@link GeoTIFF}.
|
|
4
|
+
*
|
|
5
|
+
* Produces one {@link AffineTilesetLevel} per overview plus a final entry for
|
|
6
|
+
* the full-resolution image. Levels are emitted coarsest first.
|
|
7
|
+
*
|
|
8
|
+
* Replaces the previous `generateTileMatrixSet` + `TileMatrixSetAdaptor`
|
|
9
|
+
* pipeline. Because {@link AffineTilesetLevel} is parameterized by an
|
|
10
|
+
* arbitrary affine, this works correctly for COGs with rotated, skewed, or
|
|
11
|
+
* non-square-pixel geotransforms.
|
|
12
|
+
*
|
|
13
|
+
* @param geotiff The opened GeoTIFF.
|
|
14
|
+
* @param opts Projection functions and meters-per-CRS-unit.
|
|
15
|
+
*/
|
|
16
|
+
export function geoTiffToDescriptor(geotiff, opts) {
|
|
17
|
+
// GeoTIFF.overviews is sorted finest-to-coarsest. Reverse for coarsest-first
|
|
18
|
+
// and append the full-resolution image as the finest level.
|
|
19
|
+
const images = [
|
|
20
|
+
...[...geotiff.overviews].reverse(),
|
|
21
|
+
geotiff,
|
|
22
|
+
];
|
|
23
|
+
const levels = images.map((img) => new AffineTilesetLevel({
|
|
24
|
+
affine: img.transform,
|
|
25
|
+
arrayWidth: img.width,
|
|
26
|
+
arrayHeight: img.height,
|
|
27
|
+
tileWidth: img.tileWidth,
|
|
28
|
+
tileHeight: img.tileHeight,
|
|
29
|
+
mpu: opts.mpu,
|
|
30
|
+
}));
|
|
31
|
+
return new AffineTileset({
|
|
32
|
+
levels,
|
|
33
|
+
projectTo3857: opts.projectTo3857,
|
|
34
|
+
projectFrom3857: opts.projectFrom3857,
|
|
35
|
+
projectTo4326: opts.projectTo4326,
|
|
36
|
+
projectFrom4326: opts.projectFrom4326,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=geotiff-tileset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geotiff-tileset.js","sourceRoot":"","sources":["../src/geotiff-tileset.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAGzC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAgB,EAChB,IAMC;IAED,6EAA6E;IAC7E,4DAA4D;IAC5D,MAAM,MAAM,GAA8B;QACxC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE;QACnC,OAAO;KACR,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CACvB,CAAC,GAAG,EAAE,EAAE,CACN,IAAI,kBAAkB,CAAC;QACrB,MAAM,EAAE,GAAG,CAAC,SAAS;QACrB,UAAU,EAAE,GAAG,CAAC,KAAK;QACrB,WAAW,EAAE,GAAG,CAAC,MAAM;QACvB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,GAAG,EAAE,IAAI,CAAC,GAAG;KACd,CAAC,CACL,CAAC;IAEF,OAAO,IAAI,aAAa,CAAC;QACvB,MAAM;QACN,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,eAAe,EAAE,IAAI,CAAC,eAAe;KACtC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export type { COGLayerProps, GetTileDataOptions,
|
|
1
|
+
export type { COGLayerProps, GetTileDataOptions, MinimalTileData, } from "./cog-layer.js";
|
|
2
2
|
export { COGLayer } from "./cog-layer.js";
|
|
3
3
|
export * as texture from "./geotiff/texture.js";
|
|
4
4
|
export type { MosaicLayerProps } from "./mosaic-layer/mosaic-layer.js";
|
|
5
5
|
export { MosaicLayer } from "./mosaic-layer/mosaic-layer.js";
|
|
6
|
-
export { type MosaicSource, MosaicTileset2D, } from "./mosaic-layer/mosaic-tileset-2d";
|
|
6
|
+
export { type MosaicSource, MosaicTileset2D, } from "./mosaic-layer/mosaic-tileset-2d.js";
|
|
7
7
|
export type { MultiCOGLayerProps, MultiCOGSourceConfig, } from "./multi-cog-layer.js";
|
|
8
8
|
export { MultiCOGLayer } from "./multi-cog-layer.js";
|
|
9
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EACL,KAAK,YAAY,EACjB,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAI7C,YAAY,EACV,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { COGLayer } from "./cog-layer.js";
|
|
2
2
|
export * as texture from "./geotiff/texture.js";
|
|
3
3
|
export { MosaicLayer } from "./mosaic-layer/mosaic-layer.js";
|
|
4
|
-
export { MosaicTileset2D, } from "./mosaic-layer/mosaic-tileset-2d";
|
|
4
|
+
export { MosaicTileset2D, } from "./mosaic-layer/mosaic-tileset-2d.js";
|
|
5
5
|
export { MultiCOGLayer } from "./multi-cog-layer.js";
|
|
6
6
|
//# 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":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAEL,eAAe,GAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAQ7C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -2,7 +2,7 @@ import type { CompositeLayerProps, Layer, LayersList } from "@deck.gl/core";
|
|
|
2
2
|
import { CompositeLayer } from "@deck.gl/core";
|
|
3
3
|
import type { TileLayerProps } from "@deck.gl/geo-layers";
|
|
4
4
|
import { TileLayer } from "@deck.gl/geo-layers";
|
|
5
|
-
import type { MosaicSource } from "./mosaic-tileset-2d";
|
|
5
|
+
import type { MosaicSource } from "./mosaic-tileset-2d.js";
|
|
6
6
|
export type MosaicLayerProps<MosaicT extends MosaicSource = MosaicSource, DataT = any> = CompositeLayerProps & Pick<TileLayerProps, "extent" | "minZoom" | "maxZoom" | "maxCacheByteSize" | "maxCacheSize" | "maxRequests"> & {
|
|
7
7
|
/** List of mosaic sources to render */
|
|
8
8
|
sources: MosaicT[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mosaic-layer.d.ts","sourceRoot":"","sources":["../../src/mosaic-layer/mosaic-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mosaic-layer.d.ts","sourceRoot":"","sources":["../../src/mosaic-layer/mosaic-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAG3D,MAAM,MAAM,gBAAgB,CAC1B,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,KAAK,GAAG,GAAG,IACT,mBAAmB,GACrB,IAAI,CACF,cAAc,EACZ,QAAQ,GACR,SAAS,GACT,SAAS,GACT,kBAAkB,GAClB,cAAc,GACd,aAAa,CAChB,GAAG;IACF,uCAAuC;IACvC,OAAO,EAAE,OAAO,EAAE,CAAC;IAEnB,kCAAkC;IAClC,SAAS,CAAC,EAAE,CACV,MAAM,EAAE,OAAO,EACf,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC3B,OAAO,CAAC,KAAK,CAAC,CAAC;IAEpB,sBAAsB;IACtB,YAAY,EAAE,CACZ,MAAM,EAAE,OAAO,EACf,IAAI,EAAE;QACJ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,KACE,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC;CAChC,CAAC;AAIJ;;;;;GAKG;AACH,qBAAa,WAAW,CACtB,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,KAAK,GAAG,GAAG,CACX,SAAQ,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxD,OAAgB,SAAS,SAAiB;IAC1C,OAAgB,YAAY,+CAAgB;IAE5C,eAAe,CACb,aAAa,EAAE,OAAO,EAAE,EACxB,YAAY,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,cAAc,CAAC,GAC7D,SAAS;IAsDH,YAAY,IAAI,KAAK,GAAG,IAAI,GAAG,UAAU;CASnD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CompositeLayer } from "@deck.gl/core";
|
|
2
2
|
import { TileLayer } from "@deck.gl/geo-layers";
|
|
3
|
-
import { MosaicTileset2D } from "./mosaic-tileset-2d";
|
|
3
|
+
import { MosaicTileset2D } from "./mosaic-tileset-2d.js";
|
|
4
4
|
const defaultProps = {};
|
|
5
5
|
/**
|
|
6
6
|
* A deck.gl layer for rendering a mosaic of raster sources.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mosaic-layer.js","sourceRoot":"","sources":["../../src/mosaic-layer/mosaic-layer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mosaic-layer.js","sourceRoot":"","sources":["../../src/mosaic-layer/mosaic-layer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAkCzD,MAAM,YAAY,GAA8B,EAAE,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,OAAO,WAGX,SAAQ,cAAgD;IACxD,MAAM,CAAU,SAAS,GAAG,aAAa,CAAC;IAC1C,MAAM,CAAU,YAAY,GAAG,YAAY,CAAC;IAE5C,eAAe,CACb,aAAwB,EACxB,YAA8D;QAE9D,MAAM,EACJ,EAAE,EACF,OAAO,EACP,OAAO,EACP,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,WAAW,GACZ,GAAG,IAAI,CAAC,KAAK,CAAC;QAEf,MAAM,sBAAuB,SAAQ,eAAwB;YAC3D,YAAY,IAAS;gBACnB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC7B,CAAC;SACF;QAED,OAAO,IAAI,SAAS,CAIjB;YACD,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACxB,YAAY,EAAE,sBAAsB;YACpC,OAAO;YACP,OAAO;YACP,MAAM;YACN,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,EAAE,gBAAgB,EAAE,CAAC;YAC3D,YAAY;YACZ,WAAW;YACX,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC1B,yDAAyD;gBACzD,sEAAsE;gBACtE,wCAAwC;gBACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgB,CAAC;gBACpC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;gBACxB,MAAM,QAAQ,GACZ,IAAI,CAAC,KAAK,CAAC,SAAS;oBACpB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAElD,OAAO;oBACL,MAAM,EAAE,KAAK;oBACb,IAAI,EAAE,QAAQ;oBACd,MAAM;iBACP,CAAC;YACJ,CAAC;YACD,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACvB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;gBAChD,OAAO,YAAY,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEQ,YAAY;QACnB,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE7C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC"}
|
|
@@ -4,7 +4,6 @@ import type { _Tile2DHeader as Tile2DHeader, TileLayerProps, _TileLoadProps as T
|
|
|
4
4
|
import { TileLayer } from "@deck.gl/geo-layers";
|
|
5
5
|
import type { Corners, MultiTilesetDescriptor, RasterModule, UvTransform } from "@developmentseed/deck.gl-raster";
|
|
6
6
|
import type { DecoderPool, GeoTIFF } from "@developmentseed/geotiff";
|
|
7
|
-
import type { TileMatrixSet } from "@developmentseed/morecantile";
|
|
8
7
|
import type { EpsgResolver } from "@developmentseed/proj";
|
|
9
8
|
import { epsgResolver as defaultEpsgResolver } from "@developmentseed/proj";
|
|
10
9
|
import type { ReprojectionFns } from "@developmentseed/raster-reproject";
|
|
@@ -75,7 +74,6 @@ export interface MultiCOGSourceConfig {
|
|
|
75
74
|
/** Internal state for a single opened COG source. */
|
|
76
75
|
interface SourceState {
|
|
77
76
|
geotiff: GeoTIFF;
|
|
78
|
-
tms: TileMatrixSet;
|
|
79
77
|
}
|
|
80
78
|
/**
|
|
81
79
|
* Props accepted by {@link MultiCOGLayer}.
|
|
@@ -190,7 +188,7 @@ export type MultiCOGLayerProps = CompositeLayerProps & Pick<TileLayerProps, "deb
|
|
|
190
188
|
*
|
|
191
189
|
* @see {@link MultiCOGLayerProps} for accepted props.
|
|
192
190
|
* @see {@link createMultiTilesetDescriptor} for the grouping logic.
|
|
193
|
-
* @see {@link
|
|
191
|
+
* @see {@link geoTiffToDescriptor} for the per-source tileset descriptor.
|
|
194
192
|
*/
|
|
195
193
|
export declare class MultiCOGLayer extends CompositeLayer<MultiCOGLayerProps> {
|
|
196
194
|
static layerName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-cog-layer.d.ts","sourceRoot":"","sources":["../src/multi-cog-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,KAAK,EAEL,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,
|
|
1
|
+
{"version":3,"file":"multi-cog-layer.d.ts","sourceRoot":"","sources":["../src/multi-cog-layer.ts"],"names":[],"mappings":"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"}
|
package/dist/multi-cog-layer.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CompositeLayer } from "@deck.gl/core";
|
|
2
2
|
import { TileLayer } from "@deck.gl/geo-layers";
|
|
3
3
|
import { PathLayer, TextLayer } from "@deck.gl/layers";
|
|
4
|
-
import { createMultiTilesetDescriptor, RasterLayer, RasterTileset2D, resolveSecondaryTiles, selectSecondaryLevel,
|
|
4
|
+
import { createMultiTilesetDescriptor, RasterLayer, RasterTileset2D, resolveSecondaryTiles, selectSecondaryLevel, tilesetLevelsEqual, } from "@developmentseed/deck.gl-raster";
|
|
5
5
|
import { buildCompositeBandsProps, CompositeBands, } from "@developmentseed/deck.gl-raster/gpu-modules";
|
|
6
|
-
import { assembleTiles, defaultDecoderPool
|
|
7
|
-
import {
|
|
8
|
-
import { epsgResolver as defaultEpsgResolver, makeClampedForwardTo3857, parseWkt, } from "@developmentseed/proj";
|
|
6
|
+
import { assembleTiles, defaultDecoderPool } from "@developmentseed/geotiff";
|
|
7
|
+
import { epsgResolver as defaultEpsgResolver, makeClampedForwardTo3857, metersPerUnit, parseWkt, } from "@developmentseed/proj";
|
|
9
8
|
import proj4 from "proj4";
|
|
10
9
|
import { fetchGeoTIFF, getGeographicBounds } from "./geotiff/geotiff.js";
|
|
11
|
-
import {
|
|
10
|
+
import { geoTiffToDescriptor } from "./geotiff-tileset.js";
|
|
12
11
|
/** Size of deck.gl's common coordinate space in world units. */
|
|
13
12
|
const TILE_SIZE = 512;
|
|
14
13
|
/** The size of the globe in web mercator meters. */
|
|
@@ -49,7 +48,7 @@ const defaultProps = {
|
|
|
49
48
|
*
|
|
50
49
|
* @see {@link MultiCOGLayerProps} for accepted props.
|
|
51
50
|
* @see {@link createMultiTilesetDescriptor} for the grouping logic.
|
|
52
|
-
* @see {@link
|
|
51
|
+
* @see {@link geoTiffToDescriptor} for the per-source tileset descriptor.
|
|
53
52
|
*/
|
|
54
53
|
export class MultiCOGLayer extends CompositeLayer {
|
|
55
54
|
static layerName = "MultiCOGLayer";
|
|
@@ -95,8 +94,7 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
95
94
|
const sourceProjection = typeof crs === "number"
|
|
96
95
|
? await this.props.epsgResolver(crs)
|
|
97
96
|
: parseWkt(crs);
|
|
98
|
-
|
|
99
|
-
return { name, geotiff, tms, sourceProjection };
|
|
97
|
+
return { name, geotiff, sourceProjection };
|
|
100
98
|
}));
|
|
101
99
|
// Use the first source's projection for shared projection functions
|
|
102
100
|
// (all sources must share the same CRS)
|
|
@@ -112,19 +110,26 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
112
110
|
const converter3857 = proj4(sourceProjection, "EPSG:3857");
|
|
113
111
|
const forwardTo3857 = makeClampedForwardTo3857((x, y) => converter3857.forward([x, y], false), forwardTo4326);
|
|
114
112
|
const inverseFrom3857 = (x, y) => converter3857.inverse([x, y], false);
|
|
113
|
+
const units = sourceProjection.units;
|
|
114
|
+
if (!units) {
|
|
115
|
+
throw new Error("Source projection is missing 'units' property, cannot compute meters per unit");
|
|
116
|
+
}
|
|
117
|
+
const mpu = metersPerUnit(units, {
|
|
118
|
+
semiMajorAxis: sourceProjection.datum?.a ?? sourceProjection.a,
|
|
119
|
+
});
|
|
115
120
|
// Build TilesetDescriptors
|
|
116
121
|
const tilesetMap = new Map();
|
|
117
122
|
const sourceMap = new Map();
|
|
118
123
|
for (const cogSource of cogSources) {
|
|
119
|
-
const descriptor =
|
|
124
|
+
const descriptor = geoTiffToDescriptor(cogSource.geotiff, {
|
|
120
125
|
projectTo4326: forwardTo4326,
|
|
126
|
+
projectFrom4326: inverseFrom4326,
|
|
121
127
|
projectTo3857: forwardTo3857,
|
|
128
|
+
projectFrom3857: inverseFrom3857,
|
|
129
|
+
mpu,
|
|
122
130
|
});
|
|
123
131
|
tilesetMap.set(cogSource.name, descriptor);
|
|
124
|
-
sourceMap.set(cogSource.name, {
|
|
125
|
-
geotiff: cogSource.geotiff,
|
|
126
|
-
tms: cogSource.tms,
|
|
127
|
-
});
|
|
132
|
+
sourceMap.set(cogSource.name, { geotiff: cogSource.geotiff });
|
|
128
133
|
}
|
|
129
134
|
const multiDescriptor = createMultiTilesetDescriptor(tilesetMap);
|
|
130
135
|
this.setState({
|
|
@@ -167,14 +172,10 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
167
172
|
const combinedSignal = signal && this.props.signal
|
|
168
173
|
? AbortSignal.any([signal, this.props.signal])
|
|
169
174
|
: signal || this.props.signal;
|
|
170
|
-
// Compute reprojection transforms from the primary
|
|
175
|
+
// Compute per-tile reprojection transforms from the primary descriptor
|
|
171
176
|
const primaryKey = multiDescriptor.primaryKey;
|
|
172
|
-
const primarySource = sources.get(primaryKey);
|
|
173
|
-
const primaryTms = primarySource.tms;
|
|
174
|
-
const tileMatrix = primaryTms.tileMatrices[z];
|
|
175
|
-
const tileAffine = tileTransform(tileMatrix, { col: x, row: y });
|
|
176
|
-
const { forwardTransform, inverseTransform } = fromAffine(tileAffine);
|
|
177
177
|
const primaryLevel = multiDescriptor.primary.levels[z];
|
|
178
|
+
const { forwardTransform, inverseTransform } = primaryLevel.tileTransform(x, y);
|
|
178
179
|
// Collect fetch promises for all bands
|
|
179
180
|
const bandPromises = [];
|
|
180
181
|
for (const [name, sourceState] of sources) {
|
|
@@ -389,7 +390,7 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
389
390
|
inverseReproject: inverseFrom3857,
|
|
390
391
|
};
|
|
391
392
|
deckProjectionProps = {
|
|
392
|
-
coordinateSystem:
|
|
393
|
+
coordinateSystem: "cartesian",
|
|
393
394
|
coordinateOrigin: [TILE_SIZE / 2, TILE_SIZE / 2, 0],
|
|
394
395
|
// biome-ignore format: array
|
|
395
396
|
modelMatrix: [
|
|
@@ -431,12 +432,14 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
431
432
|
const layers = [];
|
|
432
433
|
const debugLevel = this.props.debugLevel ?? 1;
|
|
433
434
|
const { multiDescriptor } = this.state;
|
|
434
|
-
if (!multiDescriptor)
|
|
435
|
+
if (!multiDescriptor) {
|
|
435
436
|
return layers;
|
|
437
|
+
}
|
|
436
438
|
const { x, y, z } = tile.index;
|
|
437
439
|
const primaryLevel = multiDescriptor.primary.levels[z];
|
|
438
|
-
if (!primaryLevel)
|
|
440
|
+
if (!primaryLevel) {
|
|
439
441
|
return layers;
|
|
442
|
+
}
|
|
440
443
|
// --- Primary tile outline and label ---
|
|
441
444
|
const primaryCrsCorners = primaryLevel.projectedTileCorners(x, y);
|
|
442
445
|
const { path: primaryPath, center: primaryCenter } = cornersToWgs84Path(primaryCrsCorners, forwardTo4326);
|
|
@@ -482,8 +485,9 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
482
485
|
fontSettings: { sdf: true },
|
|
483
486
|
}));
|
|
484
487
|
// --- Secondary tile outlines and labels ---
|
|
485
|
-
if (!data.debugInfo)
|
|
488
|
+
if (!data.debugInfo) {
|
|
486
489
|
return layers;
|
|
490
|
+
}
|
|
487
491
|
let secondaryIdx = 0;
|
|
488
492
|
for (const [name, info] of data.debugInfo.bands) {
|
|
489
493
|
const colorEntry = DEBUG_COLORS[1 + (secondaryIdx % (DEBUG_COLORS.length - 1))];
|
|
@@ -543,9 +547,7 @@ export class MultiCOGLayer extends CompositeLayer {
|
|
|
543
547
|
// Create a factory class that wraps RasterTileset2D with the primary descriptor
|
|
544
548
|
class PrimaryTilesetFactory extends RasterTileset2D {
|
|
545
549
|
constructor(opts) {
|
|
546
|
-
super(opts, primary
|
|
547
|
-
projectTo4326: forwardTo4326,
|
|
548
|
-
});
|
|
550
|
+
super(opts, primary);
|
|
549
551
|
}
|
|
550
552
|
}
|
|
551
553
|
const { maxRequests, maxCacheSize, maxCacheByteSize, debounceTime, refinementStrategy, } = this.props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-cog-layer.js","sourceRoot":"","sources":["../src/multi-cog-layer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"multi-cog-layer.js","sourceRoot":"","sources":["../src/multi-cog-layer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@developmentseed/deck.gl-geotiff",
|
|
3
|
-
"version": "0.6.0-
|
|
3
|
+
"version": "0.6.0-beta.1",
|
|
4
4
|
"description": "GeoTIFF and Cloud-Optimized GeoTIFF visualization in deck.gl",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -33,22 +33,22 @@
|
|
|
33
33
|
"url": "git+https://github.com/developmentseed/deck.gl-raster.git"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@chunkd/source-file": "^11.0
|
|
37
|
-
"@types/node": "^25.
|
|
38
|
-
"jsdom": "^
|
|
39
|
-
"typescript": "^6.0.
|
|
40
|
-
"vitest": "^4.
|
|
36
|
+
"@chunkd/source-file": "^11.2.0",
|
|
37
|
+
"@types/node": "^25.6.0",
|
|
38
|
+
"jsdom": "^29.0.2",
|
|
39
|
+
"typescript": "^6.0.3",
|
|
40
|
+
"vitest": "^4.1.5"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@cogeotiff/core": "^9.5.0",
|
|
44
44
|
"flatbush": "^4.5.0",
|
|
45
45
|
"proj4": "^2.20.4",
|
|
46
|
-
"@developmentseed/affine": "^0.6.0-
|
|
47
|
-
"@developmentseed/
|
|
48
|
-
"@developmentseed/morecantile": "^0.6.0-
|
|
49
|
-
"@developmentseed/
|
|
50
|
-
"@developmentseed/
|
|
51
|
-
"@developmentseed/
|
|
46
|
+
"@developmentseed/affine": "^0.6.0-beta.1",
|
|
47
|
+
"@developmentseed/deck.gl-raster": "^0.6.0-beta.1",
|
|
48
|
+
"@developmentseed/morecantile": "^0.6.0-beta.1",
|
|
49
|
+
"@developmentseed/proj": "^0.6.0-beta.1",
|
|
50
|
+
"@developmentseed/raster-reproject": "^0.6.0-beta.1",
|
|
51
|
+
"@developmentseed/geotiff": "^0.6.0-beta.1"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"@deck.gl/core": "^9.3.0",
|