@deck.gl/geo-layers 9.3.6 → 9.4.0-alpha.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 +159 -26
- package/dist/index.cjs +151 -27
- package/dist/index.cjs.map +3 -3
- package/dist/mesh-layer/mesh-layer-vertex.glsl.d.ts +1 -1
- package/dist/mesh-layer/mesh-layer-vertex.glsl.d.ts.map +1 -1
- package/dist/mesh-layer/mesh-layer-vertex.glsl.js +3 -4
- package/dist/mesh-layer/mesh-layer-vertex.glsl.js.map +1 -1
- package/dist/mesh-layer/mesh-layer.d.ts +1 -1
- package/dist/mesh-layer/mesh-layer.d.ts.map +1 -1
- package/dist/mesh-layer/mesh-layer.js +7 -14
- package/dist/mesh-layer/mesh-layer.js.map +1 -1
- package/dist/terrain-layer/terrain-layer.d.ts.map +1 -1
- package/dist/terrain-layer/terrain-layer.js +45 -5
- package/dist/terrain-layer/terrain-layer.js.map +1 -1
- package/dist/tileset-2d/tile-2d-header.d.ts +1 -0
- package/dist/tileset-2d/tile-2d-header.d.ts.map +1 -1
- package/dist/tileset-2d/tile-2d-header.js +3 -5
- package/dist/tileset-2d/tile-2d-header.js.map +1 -1
- package/dist/tileset-2d/tile-2d-traversal.d.ts.map +1 -1
- package/dist/tileset-2d/tile-2d-traversal.js +23 -1
- package/dist/tileset-2d/tile-2d-traversal.js.map +1 -1
- package/dist/tileset-2d/tileset-2d.d.ts +5 -0
- package/dist/tileset-2d/tileset-2d.d.ts.map +1 -1
- package/dist/tileset-2d/tileset-2d.js +85 -0
- package/dist/tileset-2d/tileset-2d.js.map +1 -1
- package/dist.min.js +21 -22
- package/package.json +6 -6
- package/src/mesh-layer/mesh-layer-vertex.glsl.ts +3 -4
- package/src/mesh-layer/mesh-layer.ts +7 -17
- package/src/terrain-layer/terrain-layer.ts +64 -4
- package/src/tileset-2d/tile-2d-header.ts +4 -4
- package/src/tileset-2d/tile-2d-traversal.ts +33 -1
- package/src/tileset-2d/tileset-2d.ts +101 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const _default: "#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\n\n// Primitive attributes\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec4 uvRegions;\nin
|
|
1
|
+
declare const _default: "#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\n\n// Primitive attributes\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec4 uvRegions;\nin float rowIndexes;\n\n// Instance attributes\nin vec4 instanceColors;\nin vec3 instanceModelMatrixCol0;\nin vec3 instanceModelMatrixCol1;\nin vec3 instanceModelMatrixCol2;\n\n// Outputs to fragment shader\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvec2 applyUVRegion(vec2 uv) {\n #ifdef HAS_UV_REGIONS\n // https://github.com/Esri/i3s-spec/blob/master/docs/1.7/geometryUVRegion.cmn.md\n return fract(uv) * (uvRegions.zw - uvRegions.xy) + uvRegions.xy;\n #else\n return uv;\n #endif\n}\n\nvoid main(void) {\n vec2 uv = applyUVRegion(texCoords);\n geometry.uv = uv;\n\n if (mesh.pickFeatureIds) {\n geometry.pickingColor = picking_getPickingColorFromIndex(rowIndexes);\n } else {\n geometry.pickingColor = picking_getPickingColorFromInstanceID();\n }\n\n mat3 instanceModelMatrix = mat3(instanceModelMatrixCol0, instanceModelMatrixCol1, instanceModelMatrixCol2);\n\n vTexCoord = uv;\n cameraPosition = project.cameraPosition;\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n\n vec3 pos = (instanceModelMatrix * positions) * simpleMesh.sizeScale;\n vec3 projectedPosition = project_position(positions);\n position_commonspace = vec4(projectedPosition, 1.0);\n gl_Position = project_common_position_to_clipspace(position_commonspace);\n\n geometry.position = position_commonspace;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n geometry.normal = normals_commonspace;\n\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBRMATERIAL\n // set PBR data\n pbr_vPosition = geometry.position.xyz;\n #ifdef HAS_NORMALS\n pbr_vNormal = geometry.normal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV0 = uv;\n #else\n pbr_vUV0 = vec2(0., 0.);\n #endif\n pbr_vUV1 = vec2(0., 0.);\n geometry.uv = pbr_vUV0;\n #endif\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
|
|
2
2
|
export default _default;
|
|
3
3
|
//# sourceMappingURL=mesh-layer-vertex.glsl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-layer-vertex.glsl.d.ts","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer-vertex.glsl.ts"],"names":[],"mappings":";AAIA,
|
|
1
|
+
{"version":3,"file":"mesh-layer-vertex.glsl.d.ts","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer-vertex.glsl.ts"],"names":[],"mappings":";AAIA,wBA8EE"}
|
|
@@ -8,9 +8,8 @@ in vec3 normals;
|
|
|
8
8
|
in vec3 colors;
|
|
9
9
|
in vec2 texCoords;
|
|
10
10
|
in vec4 uvRegions;
|
|
11
|
-
in
|
|
11
|
+
in float rowIndexes;
|
|
12
12
|
in vec4 instanceColors;
|
|
13
|
-
in vec3 instancePickingColors;
|
|
14
13
|
in vec3 instanceModelMatrixCol0;
|
|
15
14
|
in vec3 instanceModelMatrixCol1;
|
|
16
15
|
in vec3 instanceModelMatrixCol2;
|
|
@@ -30,9 +29,9 @@ void main(void) {
|
|
|
30
29
|
vec2 uv = applyUVRegion(texCoords);
|
|
31
30
|
geometry.uv = uv;
|
|
32
31
|
if (mesh.pickFeatureIds) {
|
|
33
|
-
geometry.pickingColor =
|
|
32
|
+
geometry.pickingColor = picking_getPickingColorFromIndex(rowIndexes);
|
|
34
33
|
} else {
|
|
35
|
-
geometry.pickingColor =
|
|
34
|
+
geometry.pickingColor = picking_getPickingColorFromInstanceID();
|
|
36
35
|
}
|
|
37
36
|
mat3 instanceModelMatrix = mat3(instanceModelMatrixCol0, instanceModelMatrixCol1, instanceModelMatrixCol2);
|
|
38
37
|
vTexCoord = uv;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-layer-vertex.glsl.js","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer-vertex.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC
|
|
1
|
+
{"version":3,"file":"mesh-layer-vertex.glsl.js","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer-vertex.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EE"}
|
|
@@ -31,7 +31,7 @@ export default class MeshLayer<DataT = any, ExtraProps extends {} = {}> extends
|
|
|
31
31
|
protected getModel(mesh: Mesh): Model;
|
|
32
32
|
updatePbrMaterialUniforms(material: any): void;
|
|
33
33
|
parseMaterial(material: any, mesh: Mesh): ParsedPBRMaterial;
|
|
34
|
-
|
|
34
|
+
calculateFeatureIdsPickingIndexes(attribute: any): void;
|
|
35
35
|
finalizeState(context: LayerContext): void;
|
|
36
36
|
}
|
|
37
37
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-layer.d.ts","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EAAmB,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAElE,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,KAAK,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAChF,OAAO,EAAC,eAAe,EAAE,oBAAoB,EAAC,MAAM,sBAAsB,CAAC;AAM3E,MAAM,MAAM,IAAI,GAAG;IACjB,UAAU,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAoBF,6CAA6C;AAC7C,MAAM,MAAM,cAAc,CAAC,KAAK,GAAG,OAAO,IAAI,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAE5F,qCAAqC;AACrC,KAAK,eAAe,GAAG;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,SAAS,CAAC,KAAK,GAAG,GAAG,EAAE,UAAU,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,eAAe,CAC7F,KAAK,EACL,QAAQ,CAAC,eAAe,CAAC,GAAG,UAAU,CACvC;IACC,MAAM,CAAC,SAAS,SAAe;IAC/B,MAAM,CAAC,YAAY,wCAAgB;IAEnC,UAAU;IAOV,eAAe;
|
|
1
|
+
{"version":3,"file":"mesh-layer.d.ts","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EAAmB,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAElE,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,KAAK,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAChF,OAAO,EAAC,eAAe,EAAE,oBAAoB,EAAC,MAAM,sBAAsB,CAAC;AAM3E,MAAM,MAAM,IAAI,GAAG;IACjB,UAAU,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAoBF,6CAA6C;AAC7C,MAAM,MAAM,cAAc,CAAC,KAAK,GAAG,OAAO,IAAI,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAE5F,qCAAqC;AACrC,KAAK,eAAe,GAAG;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,SAAS,CAAC,KAAK,GAAG,GAAG,EAAE,UAAU,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,eAAe,CAC7F,KAAK,EACL,QAAQ,CAAC,eAAe,CAAC,GAAG,UAAU,CACvC;IACC,MAAM,CAAC,SAAS,SAAe;IAC/B,MAAM,CAAC,YAAY,wCAAgB;IAEnC,UAAU;IAOV,eAAe;IAoBf,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAS1C,IAAI,CAAC,IAAI,KAAA;IAoBT,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK;IAwBrC,yBAAyB,CAAC,QAAQ,KAAA;IAuBlC,aAAa,CAAC,QAAQ,KAAA,EAAE,IAAI,EAAE,IAAI,GAAG,iBAAiB;IAiBtD,iCAAiC,CAAC,SAAS,KAAA;IAM3C,aAAa,CAAC,OAAO,EAAE,YAAY;CAKpC"}
|
|
@@ -38,12 +38,13 @@ class MeshLayer extends SimpleMeshLayer {
|
|
|
38
38
|
if (featureIds) {
|
|
39
39
|
// attributeManager is always defined in a primitive layer
|
|
40
40
|
attributeManager.add({
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
/** Feature id for each mesh vertex. */
|
|
42
|
+
rowIndexes: {
|
|
43
|
+
type: 'uint32',
|
|
44
|
+
size: 1,
|
|
44
45
|
noAlloc: true,
|
|
45
46
|
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
46
|
-
update: this.
|
|
47
|
+
update: this.calculateFeatureIdsPickingIndexes
|
|
47
48
|
}
|
|
48
49
|
});
|
|
49
50
|
}
|
|
@@ -124,18 +125,10 @@ class MeshLayer extends SimpleMeshLayer {
|
|
|
124
125
|
useTangents: false
|
|
125
126
|
});
|
|
126
127
|
}
|
|
127
|
-
|
|
128
|
+
calculateFeatureIdsPickingIndexes(attribute) {
|
|
128
129
|
// This updater is only called if featureIds is not null
|
|
129
130
|
const featureIds = this.props.featureIds;
|
|
130
|
-
|
|
131
|
-
const pickingColor = [];
|
|
132
|
-
for (let index = 0; index < featureIds.length; index++) {
|
|
133
|
-
this.encodePickingColor(featureIds[index], pickingColor);
|
|
134
|
-
value[index * 3] = pickingColor[0];
|
|
135
|
-
value[index * 3 + 1] = pickingColor[1];
|
|
136
|
-
value[index * 3 + 2] = pickingColor[2];
|
|
137
|
-
}
|
|
138
|
-
attribute.value = value;
|
|
131
|
+
attribute.value = new Uint32Array(featureIds);
|
|
139
132
|
}
|
|
140
133
|
finalizeState(context) {
|
|
141
134
|
super.finalizeState(context);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-layer.js","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,gBAAgB,EAAoB,MAAM,eAAe,CAAC;AAClE,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAGtC,OAAO,EAAC,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAE3E,OAAO,EAAY,YAAY,EAAC,iCAA8B;AAC9D,OAAO,EAAE,oCAAiC;AAC1C,OAAO,EAAE,sCAAmC;AAO5C,SAAS,0BAA0B,CAAC,UAA0B;IAC5D,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,QAAQ,CAAC;IACtE,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC5E,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC;IAClE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,UAAU,CAAC,MAAM,GAAG;YAClB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,IAAI,UAAU,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAChD,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAiC;IACjD,WAAW,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAC;IAC1C,UAAU,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC;CACzD,CAAC;AAkBF,MAAqB,SAAmD,SAAQ,eAG/E;IAIC,UAAU;QACR,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACxC,OAAO,EAAC,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,EAAC,CAAC;IAC9B,CAAC;IAED,eAAe;QACb,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YACf,0DAA0D;YAC1D,gBAAiB,CAAC,GAAG,CAAC;gBACpB,
|
|
1
|
+
{"version":3,"file":"mesh-layer.js","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-layer.d.ts","sourceRoot":"","sources":["../../src/terrain-layer/terrain-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,EACL,cAAc,EACd,mBAAmB,EAEnB,YAAY,EAEZ,KAAK,EACL,UAAU,EAEV,QAAQ,EACR,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAEvD,OAAkB,EAAC,cAAc,EAAC,oCAAiC;AACnE,OAAO,KAAK,EACV,MAAM,EAGN,aAAa,EACb,MAAM,EACP,+BAA4B;AAC7B,OAAO,EAAqB,YAAY,EAAE,WAAW,EAAU,+BAA4B;
|
|
1
|
+
{"version":3,"file":"terrain-layer.d.ts","sourceRoot":"","sources":["../../src/terrain-layer/terrain-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
// deck.gl
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
|
-
import { CompositeLayer, COORDINATE_SYSTEM, log } from '@deck.gl/core';
|
|
4
|
+
import { CompositeLayer, COORDINATE_SYSTEM, _GlobeViewport as GlobeViewport, log } from '@deck.gl/core';
|
|
5
5
|
import { SimpleMeshLayer } from '@deck.gl/mesh-layers';
|
|
6
6
|
import { TerrainWorkerLoader } from '@loaders.gl/terrain';
|
|
7
7
|
import TileLayer from "../tile-layer/tile-layer.js";
|
|
8
8
|
import { getURLFromTemplate, urlType } from "../tileset-2d/index.js";
|
|
9
9
|
const DUMMY_DATA = [1];
|
|
10
|
+
const TILE_OVERLAP_PIXELS = 1;
|
|
11
|
+
const MIN_TERRAIN_MESH_MAX_ERROR = 1;
|
|
12
|
+
const MAX_LATITUDE = 90;
|
|
13
|
+
const MAX_LONGITUDE = 180;
|
|
10
14
|
const defaultProps = {
|
|
11
15
|
...TileLayer.defaultProps,
|
|
12
16
|
// Image url that encodes height data
|
|
@@ -43,6 +47,31 @@ function urlTemplateToUpdateTrigger(template) {
|
|
|
43
47
|
}
|
|
44
48
|
return template || '';
|
|
45
49
|
}
|
|
50
|
+
function getOverlappedBounds(bounds, tileSize, clampLngLat) {
|
|
51
|
+
const xPad = ((bounds[2] - bounds[0]) / tileSize) * TILE_OVERLAP_PIXELS;
|
|
52
|
+
const yPad = ((bounds[3] - bounds[1]) / tileSize) * TILE_OVERLAP_PIXELS;
|
|
53
|
+
const overlappedBounds = [
|
|
54
|
+
bounds[0] - xPad,
|
|
55
|
+
bounds[1] - yPad,
|
|
56
|
+
bounds[2] + xPad,
|
|
57
|
+
bounds[3] + yPad
|
|
58
|
+
];
|
|
59
|
+
if (!clampLngLat) {
|
|
60
|
+
return overlappedBounds;
|
|
61
|
+
}
|
|
62
|
+
return [
|
|
63
|
+
Math.max(overlappedBounds[0], -MAX_LONGITUDE),
|
|
64
|
+
Math.max(overlappedBounds[1], -MAX_LATITUDE),
|
|
65
|
+
Math.min(overlappedBounds[2], MAX_LONGITUDE),
|
|
66
|
+
Math.min(overlappedBounds[3], MAX_LATITUDE)
|
|
67
|
+
];
|
|
68
|
+
}
|
|
69
|
+
function getEffectiveMeshMaxError(meshMaxError) {
|
|
70
|
+
if (!Number.isFinite(meshMaxError) || meshMaxError <= 0) {
|
|
71
|
+
return MIN_TERRAIN_MESH_MAX_ERROR;
|
|
72
|
+
}
|
|
73
|
+
return Math.max(meshMaxError, MIN_TERRAIN_MESH_MAX_ERROR);
|
|
74
|
+
}
|
|
46
75
|
/** Render mesh surfaces from height map images. */
|
|
47
76
|
class TerrainLayer extends CompositeLayer {
|
|
48
77
|
updateState({ props, oldProps }) {
|
|
@@ -72,14 +101,15 @@ class TerrainLayer extends CompositeLayer {
|
|
|
72
101
|
if (!elevationData) {
|
|
73
102
|
return null;
|
|
74
103
|
}
|
|
104
|
+
const effectiveMeshMaxError = getEffectiveMeshMaxError(meshMaxError);
|
|
75
105
|
let loadOptions = this.getLoadOptions();
|
|
76
106
|
loadOptions = {
|
|
77
107
|
...loadOptions,
|
|
78
108
|
terrain: {
|
|
79
|
-
skirtHeight: this.state.isTiled ?
|
|
109
|
+
skirtHeight: this.state.isTiled ? effectiveMeshMaxError * 2 : 0,
|
|
80
110
|
...loadOptions?.terrain,
|
|
81
111
|
bounds,
|
|
82
|
-
meshMaxError,
|
|
112
|
+
meshMaxError: effectiveMeshMaxError,
|
|
83
113
|
elevationDecoder
|
|
84
114
|
}
|
|
85
115
|
};
|
|
@@ -105,9 +135,10 @@ class TerrainLayer extends CompositeLayer {
|
|
|
105
135
|
topRight = [bbox.right, bbox.top];
|
|
106
136
|
}
|
|
107
137
|
const bounds = [bottomLeft[0], bottomLeft[1], topRight[0], topRight[1]];
|
|
138
|
+
const overlappedBounds = getOverlappedBounds(bounds, this.props.tileSize, viewport instanceof GlobeViewport);
|
|
108
139
|
const terrain = this.loadTerrain({
|
|
109
140
|
elevationData: dataUrl,
|
|
110
|
-
bounds,
|
|
141
|
+
bounds: overlappedBounds,
|
|
111
142
|
elevationDecoder,
|
|
112
143
|
meshMaxError,
|
|
113
144
|
signal
|
|
@@ -126,12 +157,21 @@ class TerrainLayer extends CompositeLayer {
|
|
|
126
157
|
return null;
|
|
127
158
|
}
|
|
128
159
|
const [mesh, texture] = data;
|
|
160
|
+
const { viewport } = this.context;
|
|
161
|
+
// Bounds are baked with projectFlat. In GlobeView projectFlat is identity,
|
|
162
|
+
// so tiled terrain meshes are in lng/lat degrees instead of common-space
|
|
163
|
+
// web-mercator units.
|
|
164
|
+
const isGlobe = viewport instanceof GlobeViewport;
|
|
165
|
+
const boundingBox = mesh?.header?.boundingBox;
|
|
166
|
+
const hasLngLatBounds = boundingBox &&
|
|
167
|
+
boundingBox.every(([x, y]) => x >= -MAX_LONGITUDE && x <= MAX_LONGITUDE && y >= -MAX_LATITUDE && y <= MAX_LATITUDE);
|
|
168
|
+
const coordinateSystem = isGlobe && hasLngLatBounds ? COORDINATE_SYSTEM.LNGLAT : COORDINATE_SYSTEM.CARTESIAN;
|
|
129
169
|
return new SubLayerClass(props, {
|
|
130
170
|
data: DUMMY_DATA,
|
|
131
171
|
mesh,
|
|
132
172
|
texture,
|
|
133
173
|
_instanced: false,
|
|
134
|
-
coordinateSystem
|
|
174
|
+
coordinateSystem,
|
|
135
175
|
getPosition: d => [0, 0, 0],
|
|
136
176
|
getColor: color,
|
|
137
177
|
wireframe,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-layer.js","sourceRoot":"","sources":["../../src/terrain-layer/terrain-layer.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAEL,cAAc,EAEd,iBAAiB,
|
|
1
|
+
{"version":3,"file":"terrain-layer.js","sourceRoot":"","sources":["../../src/terrain-layer/terrain-layer.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAEL,cAAc,EAEd,iBAAiB,EAEjB,cAAc,IAAI,aAAa,EAG/B,GAAG,EAIJ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAC,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AACxD,OAAO,SAA2B,oCAAiC;AAQnE,OAAO,EAAC,kBAAkB,EAA6B,OAAO,EAAC,+BAA4B;AAE3F,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;AACvB,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,0BAA0B,GAAG,CAAC,CAAC;AACrC,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,MAAM,YAAY,GAAoC;IACpD,GAAG,SAAS,CAAC,YAAY;IACzB,qCAAqC;IACrC,aAAa,EAAE,OAAO;IACtB,8BAA8B;IAC9B,OAAO,EAAE,EAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAC;IACrC,0EAA0E;IAC1E,YAAY,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAC;IAC1C,mFAAmF;IACnF,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC;IACnE,yCAAyC;IACzC,KAAK,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAC;IAC9C,mEAAmE;IACnE,gBAAgB,EAAE;QAChB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE;YACL,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,CAAC;SACV;KACF;IACD,qGAAqG;IACrG,SAAS,EAAE,EAAE;IACb,oCAAoC;IACpC,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,IAAI;IAEd,OAAO,EAAE,CAAC,mBAAmB,CAAC;CAC/B,CAAC;AAEF,8EAA8E;AAC9E,SAAS,0BAA0B,CAAC,QAAqB;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,QAAQ,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc,EAAE,QAAgB,EAAE,WAAoB;IACjF,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,mBAAmB,CAAC;IACxE,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,mBAAmB,CAAC;IACxE,MAAM,gBAAgB,GAAW;QAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;QAChB,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;QAChB,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;QAChB,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;KACjB,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,OAAO;QACL,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,YAAoB;IACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACxD,OAAO,0BAA0B,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC5D,CAAC;AAwDD,mDAAmD;AACnD,MAAqB,YAA0C,SAAQ,cAEtE;IAUC,WAAW,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAyB;QACnD,MAAM,oBAAoB,GAAG,KAAK,CAAC,aAAa,KAAK,QAAQ,CAAC,aAAa,CAAC;QAC5E,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC;YAC9B,MAAM,OAAO,GACX,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,QAAQ,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;QAC3B,CAAC;QAED,oCAAoC;QACpC,MAAM,YAAY,GAChB,oBAAoB;YACpB,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY;YAC5C,KAAK,CAAC,gBAAgB,KAAK,QAAQ,CAAC,gBAAgB;YACpD,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,YAAY,EAAE,CAAC;YACxC,uDAAuD;YACvD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAyB,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;QAC3B,CAAC;QAED,sBAAsB;QACtB,aAAa;QACb,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,+BAA+B,CAAC,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,WAAW,CAAC,EACV,aAAa,EACb,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,MAAM,EACW;QACjB,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;QACrE,IAAI,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACxC,WAAW,GAAG;YACZ,GAAG,WAAW;YACd,OAAO,EAAE;gBACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,GAAG,WAAW,EAAE,OAAO;gBACvB,MAAM;gBACN,YAAY,EAAE,qBAAqB;gBACnC,gBAAgB;aACjB;SACF,CAAC;QACF,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,OAAO,KAAK,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAC,CAAC,CAAC;IAC7F,CAAC;IAED,mBAAmB,CAAC,IAAmB;QACrC,MAAM,EAAC,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACnF,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,MAAM,OAAO,GAAG,kBAAkB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,OAAO,IAAI,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEhE,MAAM,EAAC,MAAM,EAAC,GAAG,IAAI,CAAC;QACtB,IAAI,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAC;QAC5C,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAC;QAC1C,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAsB,CAAC;YACzC,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3D,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,IAAI,CAAC,IAAgD,CAAC;YACnE,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,MAAM,GAAW,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,gBAAgB,GAAG,mBAAmB,CAC1C,MAAM,EACN,IAAI,CAAC,KAAK,CAAC,QAAQ,EACnB,QAAQ,YAAY,aAAa,CAClC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/B,aAAa,EAAE,OAAO;YACtB,MAAM,EAAE,gBAAgB;YACxB,gBAAgB;YAChB,YAAY;YACZ,MAAM;SACP,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,qEAAqE;gBACrE,KAAK,CAAC,UAAU,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC;YAC7F,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,eAAe,CACb,KAIC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAErE,MAAM,EAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAChD,MAAM,EAAC,IAAI,EAAC,GAAG,KAAK,CAAC;QAErB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;QAE7B,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,2EAA2E;QAC3E,yEAAyE;QACzE,sBAAsB;QACtB,MAAM,OAAO,GAAG,QAAQ,YAAY,aAAa,CAAC;QAClD,MAAM,WAAW,GAAI,IAAmC,EAAE,MAAM,EAAE,WAAW,CAAC;QAC9E,MAAM,eAAe,GACnB,WAAW;YACX,WAAW,CAAC,KAAK,CACf,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CACT,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,YAAY,CACvF,CAAC;QACJ,MAAM,gBAAgB,GACpB,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAEtF,OAAO,IAAI,aAAa,CAAC,KAAK,EAAE;YAC9B,IAAI,EAAE,UAAU;YAChB,IAAI;YACJ,OAAO;YACP,UAAU,EAAE,KAAK;YACjB,gBAAgB;YAChB,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC3B,QAAQ,EAAE,KAAK;YACf,SAAS;YACT,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED,4BAA4B;IAC5B,cAAc,CAAC,KAAsC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QAED,MAAM,EAAC,MAAM,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,MAAM,MAAM,GAAG,KAAK;aACjB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;aACzB,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,GAAG,CAAC,EAAE;YACT,aAAa;YACb,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;YACzC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACL,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,YAAY;QACV,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,aAAa,EACb,OAAO,EACP,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACX,GAAG,IAAI,CAAC,KAAK,CAAC;QAEf,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO,IAAI,SAAS,CAClB,IAAI,CAAC,gBAAgB,CAAC;gBACpB,EAAE,EAAE,OAAO;aACZ,CAAC,EACF;gBACE,WAAW,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChD,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChD,cAAc,EAAE;oBACd,WAAW,EAAE;wBACX,aAAa,EAAE,0BAA0B,CAAC,aAAa,CAAC;wBACxD,OAAO,EAAE,0BAA0B,CAAC,OAAO,CAAC;wBAC5C,YAAY;wBACZ,gBAAgB;wBAChB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc;wBACpD,UAAU;qBACX;iBACF;gBACD,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9C,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI;gBACjC,QAAQ;gBACR,OAAO;gBACP,OAAO;gBACP,MAAM;gBACN,WAAW;gBACX,UAAU;gBACV,YAAY;gBACZ,WAAW;gBACX,YAAY;gBACZ,gBAAgB;gBAChB,kBAAkB;gBAClB,UAAU;aACX,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACrE,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,gBAAgB,CAAC;YACpB,EAAE,EAAE,MAAM;SACX,CAAC,EACF;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YACxB,OAAO;YACP,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC3B,QAAQ,EAAE,KAAK;YACf,QAAQ;YACR,SAAS;SACV,CACF,CAAC;IACJ,CAAC;;AA/PM,yBAAY,GAAG,YAAY,CAAC;AAC5B,sBAAS,GAAG,cAAc,CAAC;eAJf,YAAY;AAqQjC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAW,EAAE,CAC5C,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -4,6 +4,7 @@ import type { Layer } from '@deck.gl/core';
|
|
|
4
4
|
export type TileLoadDataProps<DataT = any> = {
|
|
5
5
|
requestScheduler: RequestScheduler;
|
|
6
6
|
getData: (props: TileLoadProps) => Promise<DataT>;
|
|
7
|
+
getRequestPriority: (tile: Tile2DHeader<DataT>) => number;
|
|
7
8
|
onLoad: (tile: Tile2DHeader<DataT>) => void;
|
|
8
9
|
onError: (error: any, tile: Tile2DHeader<DataT>) => void;
|
|
9
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-2d-header.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-header.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAE,SAAS,EAAE,aAAa,EAAC,mBAAgB;AAClE,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,GAAG,IAAI;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;CAC1D,CAAC;AAEF,qBAAa,YAAY,CAAC,KAAK,GAAG,GAAG;IACnC,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAExB,EAAE,EAAG,MAAM,CAAC;IACZ,IAAI,EAAG,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,WAAW,EAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7C,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,KAAK,CAAmB;gBAEpB,KAAK,EAAE,SAAS;IAiB5B,4CAA4C;IAC5C,IAAI,IAAI,IAAI,eAAe,CAE1B;IAGD,IAAI,IAAI,CAAC,KAAK,EAAE,eAAe,EAgB9B;IAED,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,CAE/C;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,UAAU,IAAI,MAAM,CAOvB;YAGa,SAAS;
|
|
1
|
+
{"version":3,"file":"tile-2d-header.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-header.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAE,SAAS,EAAE,aAAa,EAAC,mBAAgB;AAClE,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,GAAG,IAAI;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAClD,kBAAkB,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC;IAC1D,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;CAC1D,CAAC;AAEF,qBAAa,YAAY,CAAC,KAAK,GAAG,GAAG;IACnC,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAExB,EAAE,EAAG,MAAM,CAAC;IACZ,IAAI,EAAG,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,WAAW,EAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7C,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,KAAK,CAAmB;gBAEpB,KAAK,EAAE,SAAS;IAiB5B,4CAA4C;IAC5C,IAAI,IAAI,IAAI,eAAe,CAE1B;IAGD,IAAI,IAAI,CAAC,KAAK,EAAE,eAAe,EAgB9B;IAED,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,CAE/C;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,UAAU,IAAI,MAAM,CAOvB;YAGa,SAAS;IAiEvB,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,cAAc,IAAI,IAAI;IAQtB,KAAK,IAAI,IAAI;CAQd"}
|
|
@@ -60,15 +60,13 @@ export class Tile2DHeader {
|
|
|
60
60
|
return result;
|
|
61
61
|
}
|
|
62
62
|
/* eslint-disable max-statements */
|
|
63
|
-
async _loadData({ getData, requestScheduler, onLoad, onError }) {
|
|
63
|
+
async _loadData({ getData, getRequestPriority, requestScheduler, onLoad, onError }) {
|
|
64
64
|
const { index, id, bbox, userData, zoom } = this;
|
|
65
65
|
const loaderId = this._loaderId;
|
|
66
66
|
this._abortController = new AbortController();
|
|
67
67
|
const { signal } = this._abortController;
|
|
68
|
-
// @ts-expect-error (2345)
|
|
69
|
-
const requestToken = await requestScheduler.scheduleRequest(this,
|
|
70
|
-
return tile.isSelected ? 1 : -1;
|
|
71
|
-
});
|
|
68
|
+
// @ts-expect-error (2345) loaders.gl's RequestScheduler callback type is too narrow.
|
|
69
|
+
const requestToken = await requestScheduler.scheduleRequest(this, getRequestPriority);
|
|
72
70
|
if (!requestToken) {
|
|
73
71
|
this._isCancelled = true;
|
|
74
72
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-2d-header.js","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-header.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;
|
|
1
|
+
{"version":3,"file":"tile-2d-header.js","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-header.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-2d-traversal.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-traversal.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,QAAQ,EAAsC,MAAM,eAAe,CAAC;AAS5E,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC,mBAAgB;
|
|
1
|
+
{"version":3,"file":"tile-2d-traversal.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-traversal.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,QAAQ,EAAsC,MAAM,eAAe,CAAC;AAS5E,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC,mBAAgB;AA6MlD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,MAAM,CAAC,EAAE,MAAM,GACd,SAAS,EAAE,CAiEb"}
|
|
@@ -58,6 +58,10 @@ class OSMNode {
|
|
|
58
58
|
if (isInside < 0) {
|
|
59
59
|
return false;
|
|
60
60
|
}
|
|
61
|
+
// Globe: reject tiles occluded by the near hemisphere
|
|
62
|
+
if (project && this.beyondHorizon(viewport.cameraPosition, project, elevationBounds[1])) {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
61
65
|
// Avoid loading overlapping tiles - if a descendant is requested, do not request the ancester
|
|
62
66
|
if (!this.childVisible) {
|
|
63
67
|
let { z } = this;
|
|
@@ -92,6 +96,24 @@ class OSMNode {
|
|
|
92
96
|
}
|
|
93
97
|
return result;
|
|
94
98
|
}
|
|
99
|
+
beyondHorizon(cameraPosition, project, elevation) {
|
|
100
|
+
const cx = cameraPosition[0];
|
|
101
|
+
const cy = cameraPosition[1];
|
|
102
|
+
const cz = cameraPosition[2];
|
|
103
|
+
const cMag = Math.sqrt(cx * cx + cy * cy + cz * cz);
|
|
104
|
+
const camLng = (Math.atan2(cx, -cy) * 180) / Math.PI;
|
|
105
|
+
const camLat = (Math.asin(cz / cMag) * 180) / Math.PI;
|
|
106
|
+
const [west, north] = osmTile2lngLat(this.x, this.y, this.z);
|
|
107
|
+
const [east, south] = osmTile2lngLat(this.x + 1, this.y + 1, this.z);
|
|
108
|
+
const tileCenterLng = (west + east) / 2;
|
|
109
|
+
const wrappedCamLng = tileCenterLng + (((camLng - tileCenterLng + 540) % 360) - 180);
|
|
110
|
+
const closestLng = Math.max(west, Math.min(wrappedCamLng, east));
|
|
111
|
+
const closestLat = Math.max(south, Math.min(camLat, north));
|
|
112
|
+
const closest = project([closestLng, closestLat, elevation]);
|
|
113
|
+
const dot = closest[0] * cx + closest[1] * cy + closest[2] * cz;
|
|
114
|
+
const magSq = closest[0] * closest[0] + closest[1] * closest[1] + closest[2] * closest[2];
|
|
115
|
+
return dot <= magSq;
|
|
116
|
+
}
|
|
95
117
|
insideBounds([minX, minY, maxX, maxY]) {
|
|
96
118
|
const scale = Math.pow(2, this.z);
|
|
97
119
|
const extent = TILE_SIZE / scale;
|
|
@@ -131,7 +153,7 @@ class OSMNode {
|
|
|
131
153
|
}
|
|
132
154
|
// eslint-disable-next-line complexity
|
|
133
155
|
export function getOSMTileIndices(viewport, maxZ, zRange, bounds) {
|
|
134
|
-
const project = viewport instanceof _GlobeViewport
|
|
156
|
+
const project = viewport instanceof _GlobeViewport
|
|
135
157
|
? // eslint-disable-next-line @typescript-eslint/unbound-method
|
|
136
158
|
viewport.projectPosition
|
|
137
159
|
: null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-2d-traversal.js","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-traversal.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tile-2d-traversal.js","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-traversal.ts"],"names":[],"mappings":"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"}
|
|
@@ -115,6 +115,11 @@ export declare class Tileset2D {
|
|
|
115
115
|
};
|
|
116
116
|
private updateTileStates;
|
|
117
117
|
private _getCullBounds;
|
|
118
|
+
private _getRequestPriority;
|
|
119
|
+
private _getTileDistancePriority;
|
|
120
|
+
private _getTileScreenCorners;
|
|
121
|
+
private _isPointInPolygon;
|
|
122
|
+
private _getPointToSegmentDistanceSquared;
|
|
118
123
|
private _pruneRequests;
|
|
119
124
|
private _rebuildTree;
|
|
120
125
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileset-2d.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tileset-2d.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAGvC,OAAO,EAAC,OAAO,EAAU,YAAY,EAAC,MAAM,eAAe,CAAC;AAE5D,OAAO,EAAC,YAAY,EAAC,4BAAyB;AAG9C,OAAO,
|
|
1
|
+
{"version":3,"file":"tileset-2d.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tileset-2d.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,9 @@ export const STRATEGY_NEVER = 'never';
|
|
|
31
31
|
export const STRATEGY_REPLACE = 'no-overlap';
|
|
32
32
|
export const STRATEGY_DEFAULT = 'best-available';
|
|
33
33
|
const DEFAULT_CACHE_SCALE = 5;
|
|
34
|
+
const SELECTED_TILE_PRIORITY = 0;
|
|
35
|
+
const VISIBLE_TILE_PRIORITY = 1e8;
|
|
36
|
+
const MAX_TILE_DISTANCE_PRIORITY = VISIBLE_TILE_PRIORITY - SELECTED_TILE_PRIORITY - 1;
|
|
34
37
|
const STRATEGIES = {
|
|
35
38
|
[STRATEGY_DEFAULT]: updateTileStateDefault,
|
|
36
39
|
[STRATEGY_REPLACE]: updateTileStateReplace,
|
|
@@ -293,6 +296,87 @@ export class Tileset2D {
|
|
|
293
296
|
}
|
|
294
297
|
return false;
|
|
295
298
|
}
|
|
299
|
+
_getRequestPriority(tile) {
|
|
300
|
+
if (!tile.isSelected && !tile.isVisible) {
|
|
301
|
+
return -1;
|
|
302
|
+
}
|
|
303
|
+
// RequestScheduler loads lower priority values first.
|
|
304
|
+
const distance = this._getTileDistancePriority(tile);
|
|
305
|
+
if (tile.isSelected) {
|
|
306
|
+
return SELECTED_TILE_PRIORITY + distance;
|
|
307
|
+
}
|
|
308
|
+
return VISIBLE_TILE_PRIORITY + distance;
|
|
309
|
+
}
|
|
310
|
+
_getTileDistancePriority(tile) {
|
|
311
|
+
const { width, height } = this._viewport || {};
|
|
312
|
+
if (!this._viewport || !width || !height) {
|
|
313
|
+
return 0;
|
|
314
|
+
}
|
|
315
|
+
try {
|
|
316
|
+
const points = this._getTileScreenCorners(tile.bbox);
|
|
317
|
+
const center = [width / 2, height / 2];
|
|
318
|
+
if (points.length === 4) {
|
|
319
|
+
if (this._isPointInPolygon(center, points)) {
|
|
320
|
+
return 0;
|
|
321
|
+
}
|
|
322
|
+
const distance = points.reduce((minDistance, point, i) => {
|
|
323
|
+
const nextPoint = points[(i + 1) % points.length];
|
|
324
|
+
return Math.min(minDistance, this._getPointToSegmentDistanceSquared(center, point, nextPoint));
|
|
325
|
+
}, Number.MAX_SAFE_INTEGER);
|
|
326
|
+
return Math.min(distance, MAX_TILE_DISTANCE_PRIORITY);
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
catch {
|
|
330
|
+
// Some viewport/tile combinations are not projectable. Keep them valid but last in tier.
|
|
331
|
+
}
|
|
332
|
+
return MAX_TILE_DISTANCE_PRIORITY;
|
|
333
|
+
}
|
|
334
|
+
_getTileScreenCorners(bbox) {
|
|
335
|
+
const coordinates = 'west' in bbox
|
|
336
|
+
? [
|
|
337
|
+
[bbox.west, bbox.south],
|
|
338
|
+
[bbox.east, bbox.south],
|
|
339
|
+
[bbox.east, bbox.north],
|
|
340
|
+
[bbox.west, bbox.north]
|
|
341
|
+
]
|
|
342
|
+
: [
|
|
343
|
+
[bbox.left, bbox.top],
|
|
344
|
+
[bbox.right, bbox.top],
|
|
345
|
+
[bbox.right, bbox.bottom],
|
|
346
|
+
[bbox.left, bbox.bottom]
|
|
347
|
+
];
|
|
348
|
+
return coordinates
|
|
349
|
+
.map(coordinate => this._viewport.project(coordinate))
|
|
350
|
+
.filter(([x, y]) => Number.isFinite(x) && Number.isFinite(y));
|
|
351
|
+
}
|
|
352
|
+
_isPointInPolygon(point, polygon) {
|
|
353
|
+
let inside = false;
|
|
354
|
+
const [x, y] = point;
|
|
355
|
+
for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {
|
|
356
|
+
const [xi, yi] = polygon[i];
|
|
357
|
+
const [xj, yj] = polygon[j];
|
|
358
|
+
if (yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi) {
|
|
359
|
+
inside = !inside;
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
return inside;
|
|
363
|
+
}
|
|
364
|
+
_getPointToSegmentDistanceSquared(point, segmentStart, segmentEnd) {
|
|
365
|
+
const [x, y] = point;
|
|
366
|
+
const [x1, y1] = segmentStart;
|
|
367
|
+
const [x2, y2] = segmentEnd;
|
|
368
|
+
const dx = x2 - x1;
|
|
369
|
+
const dy = y2 - y1;
|
|
370
|
+
const lengthSquared = dx * dx + dy * dy;
|
|
371
|
+
const t = lengthSquared
|
|
372
|
+
? Math.max(0, Math.min(1, ((x - x1) * dx + (y - y1) * dy) / lengthSquared))
|
|
373
|
+
: 0;
|
|
374
|
+
const segmentX = x1 + t * dx;
|
|
375
|
+
const segmentY = y1 + t * dy;
|
|
376
|
+
const distanceX = x - segmentX;
|
|
377
|
+
const distanceY = y - segmentY;
|
|
378
|
+
return distanceX * distanceX + distanceY * distanceY;
|
|
379
|
+
}
|
|
296
380
|
_pruneRequests() {
|
|
297
381
|
const { maxRequests = 0 } = this.opts;
|
|
298
382
|
const abortCandidates = [];
|
|
@@ -383,6 +467,7 @@ export class Tileset2D {
|
|
|
383
467
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
384
468
|
tile.loadData({
|
|
385
469
|
getData: this.opts.getTileData,
|
|
470
|
+
getRequestPriority: this._getRequestPriority.bind(this),
|
|
386
471
|
requestScheduler: this._requestScheduler,
|
|
387
472
|
onLoad: this.onTileLoad,
|
|
388
473
|
onError: this.opts.onTileError
|