@deck.gl/extensions 9.4.0-beta.4 → 9.4.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/dist.dev.js +98 -109
- package/dist/index.cjs +103 -94
- package/dist/index.cjs.map +1 -1
- package/dist/path-style/path-style-extension.d.ts.map +1 -1
- package/dist/path-style/path-style-extension.js +5 -2
- package/dist/path-style/path-style-extension.js.map +1 -1
- package/dist/path-style/shaders.glsl.d.ts +20 -9
- package/dist/path-style/shaders.glsl.d.ts.map +1 -1
- package/dist/path-style/shaders.glsl.js +76 -69
- package/dist/path-style/shaders.glsl.js.map +1 -1
- package/dist/utils/projection-utils.d.ts +28 -1
- package/dist/utils/projection-utils.d.ts.map +1 -1
- package/dist/utils/projection-utils.js +97 -1
- package/dist/utils/projection-utils.js.map +1 -1
- package/dist.min.js +108 -112
- package/package.json +7 -7
- package/src/path-style/path-style-extension.ts +5 -1
- package/src/path-style/shaders.glsl.ts +102 -115
- package/src/utils/projection-utils.ts +136 -2
|
@@ -1,10 +1,37 @@
|
|
|
1
|
-
import type { Layer, Viewport } from '@deck.gl/core';
|
|
1
|
+
import type { CoordinateSystem, Layer, ProjectUniforms, Viewport } from '@deck.gl/core';
|
|
2
|
+
import type { NumericArray } from '@math.gl/core';
|
|
2
3
|
/** Bounds in CARTESIAN coordinates */
|
|
3
4
|
export type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
4
5
|
/** Project lng/lat to absolute Mercator common space. */
|
|
5
6
|
export declare function lngLatToMercatorCommon(lngLat: number[]): [number, number];
|
|
6
7
|
/** Returns a Mercator viewport for bounds computation, bypassing GlobeView. */
|
|
7
8
|
export declare function getMercatorReferenceViewport(viewport: Viewport): Viewport;
|
|
9
|
+
/** False only for GlobeViewport, whose common space is a sphere. The single globe check in this module. */
|
|
10
|
+
export declare function isFlatViewport(viewport: Viewport): boolean;
|
|
11
|
+
/** Per-call overrides of the layer's coordinateSystem, coordinateOrigin and modelMatrix */
|
|
12
|
+
export type FlatProjectOptions = {
|
|
13
|
+
fromCoordinateSystem?: CoordinateSystem;
|
|
14
|
+
fromCoordinateOrigin?: [number, number, number];
|
|
15
|
+
modelMatrix?: NumericArray | null;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* CPU counterpart of `project_common_position_to_flat(project_position(position))`, relative to
|
|
19
|
+
* `getFlatCommonOrigin()`. Always pair with the GPU function: a raw `layer.projectPosition()`
|
|
20
|
+
* disagrees with it under globe or auto-offset.
|
|
21
|
+
*/
|
|
22
|
+
export declare function projectToFlatCommon(layer: Layer, position: number[], opts?: FlatProjectOptions): [number, number, number];
|
|
23
|
+
/**
|
|
24
|
+
* Projects `[minX, minY, maxX, maxY]` into flat common bounds. Lng/lat bounds with
|
|
25
|
+
* `minX - maxX > 180` take the shorter arc across the antimeridian, so `maxX` may exceed TILE_SIZE;
|
|
26
|
+
* test against them with `project_common_position_to_flat_wrapped()` about the bounds centre.
|
|
27
|
+
* Otherwise edges are re-ordered, so `[right, top, left, bottom]` input still works.
|
|
28
|
+
*/
|
|
29
|
+
export declare function projectBoundsToFlatCommon(layer: Layer, bounds: Readonly<[number, number, number, number]>, opts?: FlatProjectOptions): Bounds;
|
|
30
|
+
/**
|
|
31
|
+
* Origin of `project_common_position_to_flat()` results: `project.commonOrigin` on flat viewports,
|
|
32
|
+
* `[0, 0]` under globe, where commonOrigin is a sphere position and must never be re-added.
|
|
33
|
+
*/
|
|
34
|
+
export declare function getFlatCommonOrigin(projectUniforms: ProjectUniforms, viewport: Viewport): [number, number];
|
|
8
35
|
export declare function joinLayerBounds(
|
|
9
36
|
/** The layers to combine */
|
|
10
37
|
layers: Layer[],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-utils.d.ts","sourceRoot":"","sources":["../../src/utils/projection-utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,KAAK,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"projection-utils.d.ts","sourceRoot":"","sources":["../../src/utils/projection-utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEtF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAOhD,sCAAsC;AACtC,MAAM,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAW9E,yDAAyD;AACzD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGzE;AAED,+EAA+E;AAC/E,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAEzE;AAMD,2GAA2G;AAC3G,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE1D;AAED,2FAA2F;AAC3F,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oBAAoB,CAAC,EAAE,gBAAgB,CAAC;IACxC,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAAE,EAClB,IAAI,GAAE,kBAAuB,GAC5B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAc1B;AAiCD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAClD,IAAI,CAAC,EAAE,kBAAkB,GACxB,MAAM,CAWR;AAeD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,GACjB,CAAC,MAAM,EAAE,MAAM,CAAC,CAIlB;AAMD,wBAAgB,eAAe;AAC7B,4BAA4B;AAC5B,MAAM,EAAE,KAAK,EAAE;AACf,yEAAyE;AACzE,QAAQ,EAAE,QAAQ,GACjB,MAAM,GAAG,IAAI,CAoBf;AAID,mHAAmH;AACnH,wBAAgB,YAAY,CAAC,IAAI,EAAE;IACjC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,QAAQ,EAAE,QAAQ,CAAC;CACpB,GAAG,QAAQ,GAAG,IAAI,CA8DlB;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CA0BvF;AAMD,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACxB,MAAM,CAqCR"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
// deck.gl
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
|
-
import { WebMercatorViewport, OrthographicViewport } from '@deck.gl/core';
|
|
4
|
+
import { WebMercatorViewport, OrthographicViewport, _GlobeViewport } from '@deck.gl/core';
|
|
5
|
+
import { vec3, vec4 } from '@math.gl/core';
|
|
6
|
+
/** TILE_SIZE in the project shader module */
|
|
7
|
+
const TILE_SIZE = 512;
|
|
8
|
+
/** GLOBE_RADIUS / EARTH_RADIUS in the project shader module */
|
|
9
|
+
const GLOBE_METERS_TO_COMMON = 256 / 6370972;
|
|
5
10
|
/** Fixed Mercator viewport for projection-independent coordinate conversion */
|
|
6
11
|
const MERCATOR_REFERENCE_VIEWPORT = new WebMercatorViewport({
|
|
7
12
|
width: 1,
|
|
@@ -19,6 +24,92 @@ export function lngLatToMercatorCommon(lngLat) {
|
|
|
19
24
|
export function getMercatorReferenceViewport(viewport) {
|
|
20
25
|
return viewport.isGeospatial ? MERCATOR_REFERENCE_VIEWPORT : viewport;
|
|
21
26
|
}
|
|
27
|
+
// Flat common space: Mercator (geospatial) or cartesian (OrthographicView). CPU counterparts of
|
|
28
|
+
// project_common_position_to_flat(). Adding a non-flat projection: update the flatten branch in
|
|
29
|
+
// core project.glsl.ts / project.wgsl.ts, isFlatViewport(), and test/render/view-presets.ts.
|
|
30
|
+
/** False only for GlobeViewport, whose common space is a sphere. The single globe check in this module. */
|
|
31
|
+
export function isFlatViewport(viewport) {
|
|
32
|
+
return !(viewport instanceof _GlobeViewport);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* CPU counterpart of `project_common_position_to_flat(project_position(position))`, relative to
|
|
36
|
+
* `getFlatCommonOrigin()`. Always pair with the GPU function: a raw `layer.projectPosition()`
|
|
37
|
+
* disagrees with it under globe or auto-offset.
|
|
38
|
+
*/
|
|
39
|
+
export function projectToFlatCommon(layer, position, opts = {}) {
|
|
40
|
+
// Same resolution as Layer.projectPosition so multi-view setups stay consistent
|
|
41
|
+
const viewport = getLayerViewport(layer);
|
|
42
|
+
if (isFlatViewport(viewport)) {
|
|
43
|
+
return layer.projectPosition(position, opts);
|
|
44
|
+
}
|
|
45
|
+
if (getSourceCoordinateSystem(layer, opts) === 'meter-offsets') {
|
|
46
|
+
return projectGlobeMeterOffsetsToFlatCommon(layer, viewport, position, opts);
|
|
47
|
+
}
|
|
48
|
+
return layer.projectPosition(position, {
|
|
49
|
+
...opts,
|
|
50
|
+
viewport: getMercatorReferenceViewport(viewport),
|
|
51
|
+
autoOffset: false
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Mirrors the shader's GLOBE + METER_OFFSETS path: a linear offset in the tangent plane at the
|
|
56
|
+
* origin. Do not go through lng/lat; the error grows with the square of the offset (~200 m at 300 km).
|
|
57
|
+
*/
|
|
58
|
+
function projectGlobeMeterOffsetsToFlatCommon(layer, viewport, position, opts) {
|
|
59
|
+
const origin = opts.fromCoordinateOrigin ?? layer.props.coordinateOrigin;
|
|
60
|
+
const modelMatrix = opts.modelMatrix === undefined ? layer.props.modelMatrix : opts.modelMatrix;
|
|
61
|
+
let [x, y, z = 0] = position;
|
|
62
|
+
if (modelMatrix) {
|
|
63
|
+
[x, y, z] = vec4.transformMat4([], [x, y, z, 1], modelMatrix);
|
|
64
|
+
}
|
|
65
|
+
// project.commonOrigin: sphere position of the coordinate origin
|
|
66
|
+
const originCommon = viewport.projectPosition(origin);
|
|
67
|
+
// project_get_orientation_matrix(commonOrigin)
|
|
68
|
+
const uz = vec3.normalize([], originCommon);
|
|
69
|
+
const ux = Math.abs(uz[2]) === 1 ? [1, 0, 0] : vec3.normalize([], [uz[1], -uz[0], 0]);
|
|
70
|
+
const uy = vec3.cross([], uz, ux);
|
|
71
|
+
// enuMatrix * vec3(-x, -y, z) * metersToCommon
|
|
72
|
+
const displaced = [0, 1, 2].map(i => originCommon[i] + (ux[i] * -x + uy[i] * -y + uz[i] * z) * GLOBE_METERS_TO_COMMON);
|
|
73
|
+
// project_globe_to_mercator_
|
|
74
|
+
const lngLatZ = viewport.unprojectPosition(displaced);
|
|
75
|
+
return MERCATOR_REFERENCE_VIEWPORT.projectPosition(lngLatZ);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Projects `[minX, minY, maxX, maxY]` into flat common bounds. Lng/lat bounds with
|
|
79
|
+
* `minX - maxX > 180` take the shorter arc across the antimeridian, so `maxX` may exceed TILE_SIZE;
|
|
80
|
+
* test against them with `project_common_position_to_flat_wrapped()` about the bounds centre.
|
|
81
|
+
* Otherwise edges are re-ordered, so `[right, top, left, bottom]` input still works.
|
|
82
|
+
*/
|
|
83
|
+
export function projectBoundsToFlatCommon(layer, bounds, opts) {
|
|
84
|
+
const a = projectToFlatCommon(layer, [bounds[0], bounds[1], 0], opts);
|
|
85
|
+
const b = projectToFlatCommon(layer, [bounds[2], bounds[3], 0], opts);
|
|
86
|
+
if (bounds[0] - bounds[2] > 180 &&
|
|
87
|
+
getLayerViewport(layer).isGeospatial &&
|
|
88
|
+
getSourceCoordinateSystem(layer, opts) === 'lnglat') {
|
|
89
|
+
b[0] += TILE_SIZE;
|
|
90
|
+
}
|
|
91
|
+
return [Math.min(a[0], b[0]), Math.min(a[1], b[1]), Math.max(a[0], b[0]), Math.max(a[1], b[1])];
|
|
92
|
+
}
|
|
93
|
+
function getLayerViewport(layer) {
|
|
94
|
+
return layer.internalState?.viewport || layer.context.viewport;
|
|
95
|
+
}
|
|
96
|
+
/** The coordinate system `position` is expressed in, with `default` resolved */
|
|
97
|
+
function getSourceCoordinateSystem(layer, opts = {}) {
|
|
98
|
+
const coordinateSystem = opts.fromCoordinateSystem ?? layer.props.coordinateSystem;
|
|
99
|
+
if (coordinateSystem === 'default') {
|
|
100
|
+
return getLayerViewport(layer).isGeospatial ? 'lnglat' : 'cartesian';
|
|
101
|
+
}
|
|
102
|
+
return coordinateSystem;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Origin of `project_common_position_to_flat()` results: `project.commonOrigin` on flat viewports,
|
|
106
|
+
* `[0, 0]` under globe, where commonOrigin is a sphere position and must never be re-added.
|
|
107
|
+
*/
|
|
108
|
+
export function getFlatCommonOrigin(projectUniforms, viewport) {
|
|
109
|
+
return isFlatViewport(viewport)
|
|
110
|
+
? [projectUniforms.commonOrigin[0], projectUniforms.commonOrigin[1]]
|
|
111
|
+
: [0, 0];
|
|
112
|
+
}
|
|
22
113
|
/*
|
|
23
114
|
* Compute the union of bounds from multiple layers
|
|
24
115
|
* Returns bounds in CARTESIAN coordinates
|
|
@@ -144,6 +235,11 @@ export function getRenderBounds(layerBounds, viewport, zRange) {
|
|
|
144
235
|
if (!layerBounds) {
|
|
145
236
|
return [0, 0, 1, 1];
|
|
146
237
|
}
|
|
238
|
+
// layerBounds are flat (Mercator) but getViewportBounds() would return sphere coordinates for a
|
|
239
|
+
// non-flat viewport; the two cannot be intersected. Render the full layer extent instead.
|
|
240
|
+
if (!isFlatViewport(viewport)) {
|
|
241
|
+
return layerBounds;
|
|
242
|
+
}
|
|
147
243
|
const viewportBounds = getViewportBounds(viewport, zRange);
|
|
148
244
|
// Expand viewport bounds by 2X. Heurestically chosen to avoid masking
|
|
149
245
|
// errors when mask is partially out of view
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-utils.js","sourceRoot":"","sources":["../../src/utils/projection-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"projection-utils.js","sourceRoot":"","sources":["../../src/utils/projection-utils.ts"],"names":[],"mappings":"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"}
|