@deck.gl/geo-layers 8.7.0-beta.1 → 8.7.0-beta.5
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 +38 -24
- package/dist/es5/tile-layer/tileset-2d.js +19 -2
- package/dist/es5/tile-layer/tileset-2d.js.map +1 -1
- package/dist/esm/tile-layer/tileset-2d.js +14 -2
- package/dist/esm/tile-layer/tileset-2d.js.map +1 -1
- package/dist.min.js +1 -1
- package/package.json +5 -5
- package/src/tile-layer/tileset-2d.js +14 -2
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@deck.gl/geo-layers",
|
|
3
3
|
"description": "deck.gl layers supporting geospatial use cases and GIS formats",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "8.7.0-beta.
|
|
5
|
+
"version": "8.7.0-beta.5",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"@loaders.gl/terrain": "^3.1.5",
|
|
37
37
|
"@loaders.gl/tiles": "^3.1.5",
|
|
38
38
|
"@luma.gl/experimental": "^8.5.10",
|
|
39
|
-
"@math.gl/core": "^3.5.
|
|
40
|
-
"@math.gl/culling": "^3.5.
|
|
41
|
-
"@math.gl/web-mercator": "^3.5.
|
|
39
|
+
"@math.gl/core": "^3.5.7",
|
|
40
|
+
"@math.gl/culling": "^3.5.7",
|
|
41
|
+
"@math.gl/web-mercator": "^3.5.7",
|
|
42
42
|
"h3-js": "^3.6.0",
|
|
43
43
|
"long": "^3.2.0"
|
|
44
44
|
},
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"@deck.gl/mesh-layers": "^8.0.0",
|
|
50
50
|
"@loaders.gl/core": "^3.0.0"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "02b67ab8085c6283c0cae45e37a9b70b24f4434b"
|
|
53
53
|
}
|
|
@@ -74,6 +74,9 @@ export default class Tileset2D {
|
|
|
74
74
|
this._selectedTiles = null;
|
|
75
75
|
this._frameNumber = 0;
|
|
76
76
|
|
|
77
|
+
this._modelMatrix = new Matrix4();
|
|
78
|
+
this._modelMatrixInverse = new Matrix4();
|
|
79
|
+
|
|
77
80
|
this.setOptions(opts);
|
|
78
81
|
}
|
|
79
82
|
|
|
@@ -90,6 +93,10 @@ export default class Tileset2D {
|
|
|
90
93
|
return this._selectedTiles.every(tile => tile.isLoaded);
|
|
91
94
|
}
|
|
92
95
|
|
|
96
|
+
get needsReload() {
|
|
97
|
+
return this._selectedTiles.some(tile => tile.needsReload);
|
|
98
|
+
}
|
|
99
|
+
|
|
93
100
|
setOptions(opts) {
|
|
94
101
|
Object.assign(this.opts, opts);
|
|
95
102
|
if (Number.isFinite(opts.maxZoom)) {
|
|
@@ -134,8 +141,8 @@ export default class Tileset2D {
|
|
|
134
141
|
const isModelMatrixNew = !modelMatrixAsMatrix4.equals(this._modelMatrix);
|
|
135
142
|
if (!viewport.equals(this._viewport) || isModelMatrixNew) {
|
|
136
143
|
if (isModelMatrixNew) {
|
|
137
|
-
this._modelMatrixInverse =
|
|
138
|
-
this._modelMatrix =
|
|
144
|
+
this._modelMatrixInverse = modelMatrixAsMatrix4.clone().invert();
|
|
145
|
+
this._modelMatrix = modelMatrixAsMatrix4;
|
|
139
146
|
}
|
|
140
147
|
this._viewport = viewport;
|
|
141
148
|
const tileIndices = this.getTileIndices({
|
|
@@ -152,6 +159,11 @@ export default class Tileset2D {
|
|
|
152
159
|
// Some new tiles are added
|
|
153
160
|
this._rebuildTree();
|
|
154
161
|
}
|
|
162
|
+
// Check for needed reloads explicitly even if the view/matrix has not changed.
|
|
163
|
+
} else if (this.needsReload) {
|
|
164
|
+
this._selectedTiles = this._selectedTiles.map(tile =>
|
|
165
|
+
this._getTile({x: tile.x, y: tile.y, z: tile.z})
|
|
166
|
+
);
|
|
155
167
|
}
|
|
156
168
|
|
|
157
169
|
// Update tile states
|