@developmentseed/deck.gl-raster 0.7.0-beta.1 → 0.7.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/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/layer-utils.d.ts +2 -2
- package/dist/layer-utils.d.ts.map +1 -1
- package/dist/layer-utils.js.map +1 -1
- package/dist/mesh-layer/mesh-layer.d.ts +4 -1
- package/dist/mesh-layer/mesh-layer.d.ts.map +1 -1
- package/dist/mesh-layer/mesh-layer.js +28 -0
- package/dist/mesh-layer/mesh-layer.js.map +1 -1
- package/dist/multi-raster-tileset/index.d.ts +2 -2
- package/dist/multi-raster-tileset/index.d.ts.map +1 -1
- package/dist/multi-raster-tileset/index.js +1 -1
- package/dist/multi-raster-tileset/index.js.map +1 -1
- package/dist/multi-raster-tileset/multi-tileset-descriptor.d.ts +21 -21
- package/dist/multi-raster-tileset/multi-tileset-descriptor.d.ts.map +1 -1
- package/dist/multi-raster-tileset/multi-tileset-descriptor.js +11 -11
- package/dist/multi-raster-tileset/multi-tileset-descriptor.js.map +1 -1
- package/dist/multi-raster-tileset/secondary-tile-resolver.d.ts +4 -4
- package/dist/multi-raster-tileset/secondary-tile-resolver.d.ts.map +1 -1
- package/dist/multi-raster-tileset/secondary-tile-resolver.js +2 -2
- package/dist/multi-raster-tileset/secondary-tile-resolver.js.map +1 -1
- package/dist/raster-layer.d.ts +21 -3
- package/dist/raster-layer.d.ts.map +1 -1
- package/dist/raster-layer.js +6 -17
- package/dist/raster-layer.js.map +1 -1
- package/dist/raster-tile-layer/raster-tile-layer.d.ts +6 -6
- package/dist/raster-tile-layer/raster-tile-layer.d.ts.map +1 -1
- package/dist/raster-tile-layer/raster-tile-layer.js +11 -10
- package/dist/raster-tile-layer/raster-tile-layer.js.map +1 -1
- package/dist/raster-tileset/affine-tileset-level.d.ts +4 -4
- package/dist/raster-tileset/affine-tileset-level.d.ts.map +1 -1
- package/dist/raster-tileset/affine-tileset-level.js +2 -2
- package/dist/raster-tileset/affine-tileset.d.ts +3 -3
- package/dist/raster-tileset/affine-tileset.d.ts.map +1 -1
- package/dist/raster-tileset/affine-tileset.js +1 -1
- package/dist/raster-tileset/index.d.ts +3 -2
- package/dist/raster-tileset/index.d.ts.map +1 -1
- package/dist/raster-tileset/index.js +1 -0
- package/dist/raster-tileset/index.js.map +1 -1
- package/dist/raster-tileset/raster-tile-traversal.d.ts +10 -10
- package/dist/raster-tileset/raster-tile-traversal.d.ts.map +1 -1
- package/dist/raster-tileset/raster-tile-traversal.js +5 -5
- package/dist/raster-tileset/raster-tile-traversal.js.map +1 -1
- package/dist/raster-tileset/raster-tileset-2d.d.ts +31 -6
- package/dist/raster-tileset/raster-tileset-2d.d.ts.map +1 -1
- package/dist/raster-tileset/raster-tileset-2d.js +29 -1
- package/dist/raster-tileset/raster-tileset-2d.js.map +1 -1
- package/dist/raster-tileset/sort-by-distance.d.ts +41 -0
- package/dist/raster-tileset/sort-by-distance.d.ts.map +1 -0
- package/dist/raster-tileset/sort-by-distance.js +72 -0
- package/dist/raster-tileset/sort-by-distance.js.map +1 -0
- package/dist/raster-tileset/tile-matrix-set.d.ts +4 -4
- package/dist/raster-tileset/tile-matrix-set.d.ts.map +1 -1
- package/dist/raster-tileset/tile-matrix-set.js +1 -1
- package/dist/raster-tileset/tile-matrix-set.js.map +1 -1
- package/dist/raster-tileset/tileset-interface.d.ts +3 -3
- package/dist/raster-tileset/tileset-interface.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { Viewport } from "@deck.gl/core";
|
|
2
|
+
/**
|
|
3
|
+
* Sort `items` in place by ascending squared Euclidean distance of each
|
|
4
|
+
* item's center from `reference`. Returns the same array reference.
|
|
5
|
+
*
|
|
6
|
+
* `getCenter` is called exactly once per item (O(n) pre-pass) — never from
|
|
7
|
+
* inside the sort comparator. This keeps the per-viewport cost bounded:
|
|
8
|
+
* one center computation per tile plus one sort of precomputed numbers.
|
|
9
|
+
*
|
|
10
|
+
* Equal-distance items retain their original relative order (stable sort
|
|
11
|
+
* per ES2019 `Array.prototype.sort` spec).
|
|
12
|
+
*
|
|
13
|
+
* For `items.length < 2` this is a no-op and `getCenter` is not called.
|
|
14
|
+
*
|
|
15
|
+
* Caller-side short-circuits (e.g. `n <= maxRequests`) should be applied
|
|
16
|
+
* before invoking this helper when they would skip useful work entirely.
|
|
17
|
+
*/
|
|
18
|
+
export declare function sortByDistanceFromPoint<T>(items: T[], opts: {
|
|
19
|
+
getCenter: (item: T) => readonly [number, number];
|
|
20
|
+
reference: readonly [number, number];
|
|
21
|
+
}): T[];
|
|
22
|
+
/**
|
|
23
|
+
* Sort `items` in place by ascending distance of each item's center from
|
|
24
|
+
* the viewport's bounds-midpoint, so loads initiate center-out. Returns the
|
|
25
|
+
* same array reference.
|
|
26
|
+
*
|
|
27
|
+
* The reference point is the midpoint of `viewport.getBounds()`, which is
|
|
28
|
+
* always WGS84 `[minLon, minLat, maxLon, maxLat]` regardless of viewport
|
|
29
|
+
* type (Mercator, Globe, etc.). `getCenter` must return each item's center
|
|
30
|
+
* in the same WGS84 space so the comparison is meaningful — callers
|
|
31
|
+
* working in a projected CRS should run their tile/source centers through
|
|
32
|
+
* the descriptor's `projectTo4326` before returning.
|
|
33
|
+
*
|
|
34
|
+
* `getCenter` is called exactly once per item; see
|
|
35
|
+
* {@link sortByDistanceFromPoint} for the underlying perf contract and the
|
|
36
|
+
* `items.length < 2` short-circuit. Caller-side short-circuits such as
|
|
37
|
+
* `length <= maxRequests` should still be applied before invoking this
|
|
38
|
+
* helper when they would skip useful work entirely.
|
|
39
|
+
*/
|
|
40
|
+
export declare function sortItemsByDistanceFromViewportCenter<T>(items: T[], viewport: Viewport, getCenter: (item: T) => readonly [number, number]): T[];
|
|
41
|
+
//# sourceMappingURL=sort-by-distance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-by-distance.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/sort-by-distance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EACvC,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE;IACJ,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC,GACA,CAAC,EAAE,CA8BL;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qCAAqC,CAAC,CAAC,EACrD,KAAK,EAAE,CAAC,EAAE,EACV,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAChD,CAAC,EAAE,CAUL"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sort `items` in place by ascending squared Euclidean distance of each
|
|
3
|
+
* item's center from `reference`. Returns the same array reference.
|
|
4
|
+
*
|
|
5
|
+
* `getCenter` is called exactly once per item (O(n) pre-pass) — never from
|
|
6
|
+
* inside the sort comparator. This keeps the per-viewport cost bounded:
|
|
7
|
+
* one center computation per tile plus one sort of precomputed numbers.
|
|
8
|
+
*
|
|
9
|
+
* Equal-distance items retain their original relative order (stable sort
|
|
10
|
+
* per ES2019 `Array.prototype.sort` spec).
|
|
11
|
+
*
|
|
12
|
+
* For `items.length < 2` this is a no-op and `getCenter` is not called.
|
|
13
|
+
*
|
|
14
|
+
* Caller-side short-circuits (e.g. `n <= maxRequests`) should be applied
|
|
15
|
+
* before invoking this helper when they would skip useful work entirely.
|
|
16
|
+
*/
|
|
17
|
+
export function sortByDistanceFromPoint(items, opts) {
|
|
18
|
+
const n = items.length;
|
|
19
|
+
if (n < 2) {
|
|
20
|
+
return items;
|
|
21
|
+
}
|
|
22
|
+
const { getCenter, reference } = opts;
|
|
23
|
+
const rx = reference[0];
|
|
24
|
+
const ry = reference[1];
|
|
25
|
+
const distances = new Float64Array(n);
|
|
26
|
+
for (let i = 0; i < n; i++) {
|
|
27
|
+
const center = getCenter(items[i]);
|
|
28
|
+
const dx = center[0] - rx;
|
|
29
|
+
const dy = center[1] - ry;
|
|
30
|
+
distances[i] = dx * dx + dy * dy;
|
|
31
|
+
}
|
|
32
|
+
const permutation = new Uint32Array(n);
|
|
33
|
+
for (let i = 0; i < n; i++) {
|
|
34
|
+
permutation[i] = i;
|
|
35
|
+
}
|
|
36
|
+
permutation.sort((a, b) => distances[a] - distances[b]);
|
|
37
|
+
const scratch = items.slice();
|
|
38
|
+
for (let i = 0; i < n; i++) {
|
|
39
|
+
items[i] = scratch[permutation[i]];
|
|
40
|
+
}
|
|
41
|
+
return items;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Sort `items` in place by ascending distance of each item's center from
|
|
45
|
+
* the viewport's bounds-midpoint, so loads initiate center-out. Returns the
|
|
46
|
+
* same array reference.
|
|
47
|
+
*
|
|
48
|
+
* The reference point is the midpoint of `viewport.getBounds()`, which is
|
|
49
|
+
* always WGS84 `[minLon, minLat, maxLon, maxLat]` regardless of viewport
|
|
50
|
+
* type (Mercator, Globe, etc.). `getCenter` must return each item's center
|
|
51
|
+
* in the same WGS84 space so the comparison is meaningful — callers
|
|
52
|
+
* working in a projected CRS should run their tile/source centers through
|
|
53
|
+
* the descriptor's `projectTo4326` before returning.
|
|
54
|
+
*
|
|
55
|
+
* `getCenter` is called exactly once per item; see
|
|
56
|
+
* {@link sortByDistanceFromPoint} for the underlying perf contract and the
|
|
57
|
+
* `items.length < 2` short-circuit. Caller-side short-circuits such as
|
|
58
|
+
* `length <= maxRequests` should still be applied before invoking this
|
|
59
|
+
* helper when they would skip useful work entirely.
|
|
60
|
+
*/
|
|
61
|
+
export function sortItemsByDistanceFromViewportCenter(items, viewport, getCenter) {
|
|
62
|
+
const [minLon, minLat, maxLon, maxLat] = viewport.getBounds();
|
|
63
|
+
const viewportCenter = [
|
|
64
|
+
(minLon + maxLon) / 2,
|
|
65
|
+
(minLat + maxLat) / 2,
|
|
66
|
+
];
|
|
67
|
+
return sortByDistanceFromPoint(items, {
|
|
68
|
+
reference: viewportCenter,
|
|
69
|
+
getCenter,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=sort-by-distance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-by-distance.js","sourceRoot":"","sources":["../../src/raster-tileset/sort-by-distance.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAU,EACV,IAGC;IAED,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACtC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExB,MAAM,SAAS,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1B,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAE,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAE,CAAE,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qCAAqC,CACnD,KAAU,EACV,QAAkB,EAClB,SAAiD;IAEjD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC9D,MAAM,cAAc,GAAG;QACrB,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;KACb,CAAC;IACX,OAAO,uBAAuB,CAAC,KAAK,EAAE;QACpC,SAAS,EAAE,cAAc;QACzB,SAAS;KACV,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { TileMatrixSet } from "@developmentseed/morecantile";
|
|
2
|
-
import type {
|
|
2
|
+
import type { RasterTilesetDescriptor, RasterTilesetLevel } from "./tileset-interface.js";
|
|
3
3
|
import type { Bounds, ProjectionFunction } from "./types.js";
|
|
4
4
|
/**
|
|
5
|
-
* An adapter interface to use a TileMatrixSet as a
|
|
5
|
+
* An adapter interface to use a TileMatrixSet as a RasterTilesetDescriptor for raster
|
|
6
6
|
* tile traversal.
|
|
7
7
|
*/
|
|
8
|
-
export declare class TileMatrixSetAdaptor implements
|
|
8
|
+
export declare class TileMatrixSetAdaptor implements RasterTilesetDescriptor {
|
|
9
9
|
tms: TileMatrixSet;
|
|
10
10
|
private _levels;
|
|
11
11
|
projectTo3857: ProjectionFunction;
|
|
@@ -18,7 +18,7 @@ export declare class TileMatrixSetAdaptor implements TilesetDescriptor {
|
|
|
18
18
|
projectTo4326: ProjectionFunction;
|
|
19
19
|
projectFrom4326: ProjectionFunction;
|
|
20
20
|
});
|
|
21
|
-
get levels():
|
|
21
|
+
get levels(): RasterTilesetLevel[];
|
|
22
22
|
get projectedBounds(): Bounds;
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=tile-matrix-set.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-matrix-set.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tile-matrix-set.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAW,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA8ItE;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,uBAAuB;IAClE,GAAG,EAAE,aAAa,CAAC;IACnB,OAAO,CAAC,OAAO,CAAsB;IACrC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;gBAGlC,GAAG,EAAE,aAAa,EAClB,EACE,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,GAChB,EAAE;QACD,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;QACpC,aAAa,EAAE,kBAAkB,CAAC;QAClC,eAAe,EAAE,kBAAkB,CAAC;KACrC;IAUH,IAAI,MAAM,IAAI,kBAAkB,EAAE,CAEjC;IAED,IAAI,eAAe,IAAI,MAAM,CAU5B;CACF"}
|
|
@@ -106,7 +106,7 @@ class TileMatrixAdaptor {
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
109
|
-
* An adapter interface to use a TileMatrixSet as a
|
|
109
|
+
* An adapter interface to use a TileMatrixSet as a RasterTilesetDescriptor for raster
|
|
110
110
|
* tile traversal.
|
|
111
111
|
*/
|
|
112
112
|
export class TileMatrixSetAdaptor {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-matrix-set.js","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"tile-matrix-set.js","sourceRoot":"","sources":["../../src/raster-tileset/tile-matrix-set.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import type { Bounds, Corners, ProjectionFunction } from "./types.js";
|
|
|
5
5
|
* This interface abstracts over both TileMatrixSet levels and Zarr multiscale
|
|
6
6
|
* levels, enabling a single traversal algorithm to work with both.
|
|
7
7
|
*/
|
|
8
|
-
export interface
|
|
8
|
+
export interface RasterTilesetLevel {
|
|
9
9
|
/** Number of tiles across this level (columns). */
|
|
10
10
|
matrixWidth: number;
|
|
11
11
|
/** Number of tiles down this level (rows). */
|
|
@@ -71,9 +71,9 @@ export interface TilesetLevel {
|
|
|
71
71
|
* Index 0 = coarsest level, higher index = finer detail (same ordering as
|
|
72
72
|
* TileMatrixSet).
|
|
73
73
|
*/
|
|
74
|
-
export interface
|
|
74
|
+
export interface RasterTilesetDescriptor {
|
|
75
75
|
/** Ordered levels from coarsest (0) to finest. */
|
|
76
|
-
levels:
|
|
76
|
+
levels: RasterTilesetLevel[];
|
|
77
77
|
/**
|
|
78
78
|
* Projection function from the source CRS → EPSG:3857.
|
|
79
79
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileset-interface.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tileset-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"tileset-interface.d.ts","sourceRoot":"","sources":["../../src/raster-tileset/tileset-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IAEpB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IAErB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAElB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;OAUG;IACH,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAE5D;;;;;;;;OAQG;IACH,oBAAoB,EAAE,CACpB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,KAClB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAExE;;;;;;;;;;;OAWG;IACH,aAAa,EAAE,CACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,KACR;QACH,gBAAgB,EAAE,kBAAkB,CAAC;QACrC,gBAAgB,EAAE,kBAAkB,CAAC;KACtC,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,kDAAkD;IAClD,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;;OAKG;IACH,aAAa,EAAE,kBAAkB,CAAC;IAElC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC;;;;OAIG;IACH,eAAe,EAAE,kBAAkB,CAAC;IAEpC,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;CACzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@developmentseed/deck.gl-raster",
|
|
3
|
-
"version": "0.7.0
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Georeferenced image data visualization in deck.gl",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -52,15 +52,15 @@
|
|
|
52
52
|
"@deck.gl/mesh-layers": "^9.3.0",
|
|
53
53
|
"@luma.gl/core": "^9.3.2",
|
|
54
54
|
"@luma.gl/shadertools": "^9.3.2",
|
|
55
|
-
"@developmentseed/morecantile": "^0.7.0
|
|
55
|
+
"@developmentseed/morecantile": "^0.7.0"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
58
|
"@math.gl/core": "^4.1.0",
|
|
59
59
|
"@math.gl/culling": "^4.1.0",
|
|
60
60
|
"@math.gl/web-mercator": "^4.1.0",
|
|
61
|
-
"@developmentseed/affine": "^0.7.0
|
|
62
|
-
"@developmentseed/proj": "^0.7.0
|
|
63
|
-
"@developmentseed/raster-reproject": "^0.7.0
|
|
61
|
+
"@developmentseed/affine": "^0.7.0",
|
|
62
|
+
"@developmentseed/proj": "^0.7.0",
|
|
63
|
+
"@developmentseed/raster-reproject": "^0.7.0"
|
|
64
64
|
},
|
|
65
65
|
"volta": {
|
|
66
66
|
"extends": "../../package.json"
|