@deck.gl/geo-layers 8.8.22 → 8.8.24
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 +56 -43
- package/dist/es5/tile-layer/tileset-2d.js +122 -102
- package/dist/es5/tile-layer/tileset-2d.js.map +1 -1
- package/dist/es5/tile-layer/utils.js +15 -16
- package/dist/es5/tile-layer/utils.js.map +1 -1
- package/dist/esm/tile-layer/tileset-2d.js +17 -6
- package/dist/esm/tile-layer/tileset-2d.js.map +1 -1
- package/dist/esm/tile-layer/utils.js +14 -18
- package/dist/esm/tile-layer/utils.js.map +1 -1
- package/dist.min.js +1 -1
- package/package.json +2 -2
- package/src/tile-layer/tileset-2d.ts +15 -7
- package/src/tile-layer/utils.ts +20 -8
- package/typed/tile-layer/tileset-2d.d.ts.map +1 -1
- package/typed/tile-layer/utils.d.ts +1 -1
- package/typed/tile-layer/utils.d.ts.map +1 -1
- package/typed/tileset-2d/index.d.ts +6 -0
- package/typed/tileset-2d/index.d.ts.map +1 -0
- package/typed/tileset-2d/memoize.d.ts +7 -0
- package/typed/tileset-2d/memoize.d.ts.map +1 -0
- package/typed/tileset-2d/tile-2d-header.d.ts +39 -0
- package/typed/tileset-2d/tile-2d-header.d.ts.map +1 -0
- package/typed/tileset-2d/tile-2d-traversal.d.ts +4 -0
- package/typed/tileset-2d/tile-2d-traversal.d.ts.map +1 -0
- package/typed/tileset-2d/tileset-2d.d.ts +121 -0
- package/typed/tileset-2d/tileset-2d.d.ts.map +1 -0
- package/typed/tileset-2d/types.d.ts +30 -0
- package/typed/tileset-2d/types.d.ts.map +1 -0
- package/typed/tileset-2d/utils.d.ts +51 -0
- package/typed/tileset-2d/utils.d.ts.map +1 -0
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.8.
|
|
5
|
+
"version": "8.8.24",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"@loaders.gl/core": "^3.0.0",
|
|
55
55
|
"@luma.gl/core": "^8.0.0"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "39b37f7a97ad7a248f4d3a8eb1e25e9e91049147"
|
|
58
58
|
}
|
|
@@ -242,19 +242,27 @@ export default class Tileset2D {
|
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
if (cullRect && this._viewport) {
|
|
245
|
-
const
|
|
245
|
+
const boundsArr = this._getCullBounds({
|
|
246
246
|
viewport: this._viewport,
|
|
247
247
|
z: this._zRange,
|
|
248
248
|
cullRect
|
|
249
249
|
});
|
|
250
250
|
const {bbox} = tile;
|
|
251
|
-
|
|
252
|
-
|
|
251
|
+
for (const [minX, minY, maxX, maxY] of boundsArr) {
|
|
252
|
+
let overlaps;
|
|
253
|
+
if ('west' in bbox) {
|
|
254
|
+
overlaps = bbox.west < maxX && bbox.east > minX && bbox.south < maxY && bbox.north > minY;
|
|
255
|
+
} else {
|
|
256
|
+
// top/bottom could be swapped depending on the indexing system
|
|
257
|
+
const y0 = Math.min(bbox.top, bbox.bottom);
|
|
258
|
+
const y1 = Math.max(bbox.top, bbox.bottom);
|
|
259
|
+
overlaps = bbox.left < maxX && bbox.right > minX && y0 < maxY && y1 > minY;
|
|
260
|
+
}
|
|
261
|
+
if (overlaps) {
|
|
262
|
+
return true;
|
|
263
|
+
}
|
|
253
264
|
}
|
|
254
|
-
|
|
255
|
-
const y0 = Math.min(bbox.top, bbox.bottom);
|
|
256
|
-
const y1 = Math.max(bbox.top, bbox.bottom);
|
|
257
|
-
return bbox.left < maxX && bbox.right > minX && y0 < maxY && y1 > minY;
|
|
265
|
+
return false;
|
|
258
266
|
}
|
|
259
267
|
return true;
|
|
260
268
|
}
|
package/src/tile-layer/utils.ts
CHANGED
|
@@ -130,7 +130,7 @@ function getBoundingBox(viewport: Viewport, zRange: number[] | null, extent: Bou
|
|
|
130
130
|
/** Get culling bounds in world space */
|
|
131
131
|
export function getCullBounds({
|
|
132
132
|
viewport,
|
|
133
|
-
z,
|
|
133
|
+
z = 0,
|
|
134
134
|
cullRect
|
|
135
135
|
}: {
|
|
136
136
|
/** Current viewport */
|
|
@@ -139,13 +139,25 @@ export function getCullBounds({
|
|
|
139
139
|
z: ZRange | number | undefined;
|
|
140
140
|
/** Culling rectangle in screen space */
|
|
141
141
|
cullRect: {x: number; y: number; width: number; height: number};
|
|
142
|
-
}): [number, number, number, number] {
|
|
143
|
-
const
|
|
144
|
-
|
|
145
|
-
|
|
142
|
+
}): [number, number, number, number][] {
|
|
143
|
+
const subViewports = viewport.subViewports || [viewport];
|
|
144
|
+
return subViewports.map(v => getCullBoundsInViewport(v, z, cullRect));
|
|
145
|
+
}
|
|
146
146
|
|
|
147
|
+
function getCullBoundsInViewport(
|
|
148
|
+
/** Current viewport */
|
|
149
|
+
viewport: Viewport,
|
|
150
|
+
/** At altitude */
|
|
151
|
+
z: ZRange | number,
|
|
152
|
+
/** Culling rectangle in screen space */
|
|
153
|
+
cullRect: {x: number; y: number; width: number; height: number}
|
|
154
|
+
): [number, number, number, number] {
|
|
147
155
|
if (!Array.isArray(z)) {
|
|
148
|
-
const
|
|
156
|
+
const x = cullRect.x - viewport.x;
|
|
157
|
+
const y = cullRect.y - viewport.y;
|
|
158
|
+
const {width, height} = cullRect;
|
|
159
|
+
|
|
160
|
+
const unprojectOption = {targetZ: z};
|
|
149
161
|
|
|
150
162
|
const topLeft = viewport.unproject([x, y], unprojectOption);
|
|
151
163
|
const topRight = viewport.unproject([x + width, y], unprojectOption);
|
|
@@ -160,8 +172,8 @@ export function getCullBounds({
|
|
|
160
172
|
];
|
|
161
173
|
}
|
|
162
174
|
|
|
163
|
-
const bounds0 =
|
|
164
|
-
const bounds1 =
|
|
175
|
+
const bounds0 = getCullBoundsInViewport(viewport, z[0], cullRect);
|
|
176
|
+
const bounds1 = getCullBoundsInViewport(viewport, z[1], cullRect);
|
|
165
177
|
|
|
166
178
|
return [
|
|
167
179
|
Math.min(bounds0[0], bounds1[0]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileset-2d.d.ts","sourceRoot":"","sources":["../../src/tile-layer/tileset-2d.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAS,SAAS,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAyB5C,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,oBAAY,0BAA0B,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;AACzE,oBAAY,kBAAkB,GAC1B,OAAO,cAAc,GACrB,OAAO,gBAAgB,GACvB,OAAO,gBAAgB,GACvB,0BAA0B,CAAC;AAU/B,oBAAY,cAAc,GAAG,IAAI,CAC/B,QAAQ,CAAC,cAAc,CAAC,EACtB,UAAU,GACV,cAAc,GACd,kBAAkB,GAClB,oBAAoB,GACpB,QAAQ,GACR,SAAS,GACT,SAAS,GACT,aAAa,GACb,YAAY,CACf,GAAG;IACF,WAAW,EAAE,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IACxD,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,YAAY,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;CACvD,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,MAAM,CAAiB;IAE/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,mBAAmB,CAAU;IAErC,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAE1B,OAAO,CAAC,UAAU,CAA+B;IAEjD;;;OAGG;gBACS,IAAI,EAAE,cAAc;IAkChC,IAAI,KAAK,wBAER;IAED,IAAI,aAAa,IAAI,YAAY,EAAE,GAAG,IAAI,CAEzC;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAWtC,QAAQ,IAAI,IAAI;IAWhB,SAAS,IAAI,IAAI;IAWjB;;OAEG;IACH,MAAM,CACJ,QAAQ,EAAE,QAAQ,EAClB,EAAC,MAAM,EAAE,WAAW,EAAC,GAAE;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAM,GACnE,MAAM;IAkDT,aAAa,CACX,IAAI,EAAE,YAAY,EAClB,QAAQ,CAAC,EAAE;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAC/D,OAAO;
|
|
1
|
+
{"version":3,"file":"tileset-2d.d.ts","sourceRoot":"","sources":["../../src/tile-layer/tileset-2d.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export declare function getCullBounds({ viewport, z, cullRect }: {
|
|
|
24
24
|
width: number;
|
|
25
25
|
height: number;
|
|
26
26
|
};
|
|
27
|
-
}): [number, number, number, number];
|
|
27
|
+
}): [number, number, number, number][];
|
|
28
28
|
export declare function osmTile2lngLat(x: number, y: number, z: number): [number, number];
|
|
29
29
|
export declare function tileToBoundingBox(viewport: Viewport, x: number, y: number, z: number, tileSize?: number): TileBoundingBox;
|
|
30
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tile-layer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAC,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AAKnF,eAAO,MAAM,OAAO;;;;;CAyBnB,CAAC;AA8BF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,EAC3B,IAAI,EAAE;IACJ,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;CACZ,GACA,MAAM,GAAG,IAAI,CAsBf;AAsCD,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tile-layer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAC,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AAKnF,eAAO,MAAM,OAAO;;;;;CAyBnB,CAAC;AA8BF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,EAC3B,IAAI,EAAE;IACJ,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;CACZ,GACA,MAAM,GAAG,IAAI,CAsBf;AAsCD,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,CAAK,EACL,QAAQ,EACT,EAAE;IACD,uBAAuB;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,sBAAsB;IACtB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,EAAE;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC;CACjE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAGrC;AAwDD,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMhF;AAMD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,QAAQ,GAAE,MAAkB,GAC3B,eAAe,CASjB;AA0BD;;;;GAIG;AAEH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAoB,EACpB,WAAW,EACX,kBAAkB,EAClB,UAAc,EACf,EAAE;IACD,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA0BA;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,cAAc,CAO5D"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type { TileLoadProps, Bounds, ZRange, GeoBoundingBox, NonGeoBoundingBox, TileBoundingBox } from './types';
|
|
2
|
+
export type { Tileset2DProps, RefinementStrategy } from './tileset-2d';
|
|
3
|
+
export { Tileset2D, STRATEGY_DEFAULT } from './tileset-2d';
|
|
4
|
+
export { Tile2DHeader } from './tile-2d-header';
|
|
5
|
+
export { isGeoBoundingBox, isURLTemplate, urlType, getURLFromTemplate, getTileIndices, tileToBoundingBox } from './utils';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/index.ts"],"names":[],"mappings":"AAEA,YAAY,EACV,aAAa,EACb,MAAM,EACN,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAC,cAAc,EAAE,kBAAkB,EAAC,MAAM,cAAc,CAAC;AACrE,OAAO,EAAC,SAAS,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EAClB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Speed up consecutive function calls by caching the result of calls with identical input
|
|
3
|
+
* https://en.wikipedia.org/wiki/Memoization
|
|
4
|
+
* @param compute - the function to be memoized
|
|
5
|
+
*/
|
|
6
|
+
export declare function memoize<In, Out>(compute: (args: In) => Out): (args: In) => Out;
|
|
7
|
+
//# sourceMappingURL=memoize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/memoize.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,GAAG,CAc9E"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { RequestScheduler } from '@loaders.gl/loader-utils';
|
|
2
|
+
import { TileBoundingBox, TileIndex, TileLoadProps } from './types';
|
|
3
|
+
export declare type TileLoadDataProps<DataT = any> = {
|
|
4
|
+
requestScheduler: RequestScheduler;
|
|
5
|
+
getData: (props: TileLoadProps) => Promise<DataT>;
|
|
6
|
+
onLoad: (tile: Tile2DHeader<DataT>) => void;
|
|
7
|
+
onError: (error: any, tile: Tile2DHeader<DataT>) => void;
|
|
8
|
+
};
|
|
9
|
+
export declare class Tile2DHeader<DataT = any> {
|
|
10
|
+
index: TileIndex;
|
|
11
|
+
isVisible: boolean;
|
|
12
|
+
isSelected: boolean;
|
|
13
|
+
parent: Tile2DHeader | null;
|
|
14
|
+
children: Tile2DHeader[] | null;
|
|
15
|
+
content: DataT | null;
|
|
16
|
+
state?: number;
|
|
17
|
+
layers?: any[] | null;
|
|
18
|
+
id: string;
|
|
19
|
+
bbox: TileBoundingBox;
|
|
20
|
+
zoom: number;
|
|
21
|
+
userData?: Record<string, any>;
|
|
22
|
+
private _abortController;
|
|
23
|
+
private _loader;
|
|
24
|
+
private _loaderId;
|
|
25
|
+
private _isLoaded;
|
|
26
|
+
private _isCancelled;
|
|
27
|
+
private _needsReload;
|
|
28
|
+
constructor(index: TileIndex);
|
|
29
|
+
get data(): Promise<DataT | null> | DataT | null;
|
|
30
|
+
get isLoaded(): boolean;
|
|
31
|
+
get isLoading(): boolean;
|
|
32
|
+
get needsReload(): boolean;
|
|
33
|
+
get byteLength(): number;
|
|
34
|
+
private _loadData;
|
|
35
|
+
loadData(opts: TileLoadDataProps): Promise<void>;
|
|
36
|
+
setNeedsReload(): void;
|
|
37
|
+
abort(): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=tile-2d-header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tile-2d-header.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-header.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAE,SAAS,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAElE,oBAAY,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,GAAG,EAAE,GAAG,IAAI,CAAC;IAEtB,EAAE,EAAG,MAAM,CAAC;IACZ,IAAI,EAAG,eAAe,CAAC;IACvB,IAAI,EAAG,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE/B,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;gBAElB,KAAK,EAAE,SAAS;IAiB5B,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;IA8DvB,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,cAAc,IAAI,IAAI;IAQtB,KAAK,IAAI,IAAI;CAQd"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Viewport } from '@deck.gl/core/typed';
|
|
2
|
+
import { Bounds, TileIndex, ZRange } from './types';
|
|
3
|
+
export declare function getOSMTileIndices(viewport: Viewport, maxZ: number, zRange: ZRange | undefined, bounds?: Bounds): TileIndex[];
|
|
4
|
+
//# sourceMappingURL=tile-2d-traversal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tile-2d-traversal.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tile-2d-traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAsC,MAAM,eAAe,CAAC;AAS5E,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AA6KlD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,SAAS,EAAE,CAiEb"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { Viewport } from '@deck.gl/core/typed';
|
|
2
|
+
import { Matrix4 } from '@math.gl/core';
|
|
3
|
+
import { Tile2DHeader } from './tile-2d-header';
|
|
4
|
+
import { TileIndex, ZRange } from './types';
|
|
5
|
+
import { TileLoadProps } from './types';
|
|
6
|
+
export declare const STRATEGY_NEVER = "never";
|
|
7
|
+
export declare const STRATEGY_REPLACE = "no-overlap";
|
|
8
|
+
export declare const STRATEGY_DEFAULT = "best-available";
|
|
9
|
+
export declare type RefinementStrategyFunction = (tiles: Tile2DHeader[]) => void;
|
|
10
|
+
export declare type RefinementStrategy = 'never' | 'no-overlap' | 'best-available' | RefinementStrategyFunction;
|
|
11
|
+
export declare type Tileset2DProps<DataT = any> = {
|
|
12
|
+
/** `getTileData` is called to retrieve the data of each tile. */
|
|
13
|
+
getTileData: (props: TileLoadProps) => Promise<DataT> | DataT;
|
|
14
|
+
/** The bounding box of the layer's data. */
|
|
15
|
+
extent?: number[] | null;
|
|
16
|
+
/** The pixel dimension of the tiles, usually a power of 2. */
|
|
17
|
+
tileSize?: number;
|
|
18
|
+
/** The max zoom level of the layer's data. @default null */
|
|
19
|
+
maxZoom?: number | null;
|
|
20
|
+
/** The min zoom level of the layer's data. @default 0 */
|
|
21
|
+
minZoom?: number | null;
|
|
22
|
+
/** The maximum number of tiles that can be cached. */
|
|
23
|
+
maxCacheSize?: number | null;
|
|
24
|
+
/** The maximum memory used for caching tiles. @default null */
|
|
25
|
+
maxCacheByteSize?: number | null;
|
|
26
|
+
/** How the tile layer refines the visibility of tiles. @default 'best-available' */
|
|
27
|
+
refinementStrategy?: RefinementStrategy;
|
|
28
|
+
/** Range of minimum and maximum heights in the tile. */
|
|
29
|
+
zRange?: ZRange | null;
|
|
30
|
+
/** The maximum number of concurrent getTileData calls. @default 6 */
|
|
31
|
+
maxRequests?: number;
|
|
32
|
+
/** Changes the zoom level at which the tiles are fetched. Needs to be an integer. @default 0 */
|
|
33
|
+
zoomOffset?: number;
|
|
34
|
+
/** Called when a tile successfully loads. */
|
|
35
|
+
onTileLoad?: (tile: Tile2DHeader<DataT>) => void;
|
|
36
|
+
/** Called when a tile is cleared from cache. */
|
|
37
|
+
onTileUnload?: (tile: Tile2DHeader<DataT>) => void;
|
|
38
|
+
/** Called when a tile failed to load. */
|
|
39
|
+
onTileError?: (err: any, tile: Tile2DHeader<DataT>) => void;
|
|
40
|
+
};
|
|
41
|
+
export declare const DEFAULT_TILESET2D_PROPS: Omit<Required<Tileset2DProps>, 'getTileData'>;
|
|
42
|
+
/**
|
|
43
|
+
* Manages loading and purging of tile data. This class caches recently visited tiles
|
|
44
|
+
* and only creates new tiles if they are present.
|
|
45
|
+
*/
|
|
46
|
+
export declare class Tileset2D {
|
|
47
|
+
private opts;
|
|
48
|
+
private _requestScheduler;
|
|
49
|
+
private _cache;
|
|
50
|
+
private _dirty;
|
|
51
|
+
private _tiles;
|
|
52
|
+
private _cacheByteSize;
|
|
53
|
+
private _viewport;
|
|
54
|
+
private _zRange?;
|
|
55
|
+
private _selectedTiles;
|
|
56
|
+
private _frameNumber;
|
|
57
|
+
private _modelMatrix;
|
|
58
|
+
private _modelMatrixInverse;
|
|
59
|
+
private _maxZoom?;
|
|
60
|
+
private _minZoom?;
|
|
61
|
+
private onTileLoad;
|
|
62
|
+
/**
|
|
63
|
+
* Takes in a function that returns tile data, a cache size, and a max and a min zoom level.
|
|
64
|
+
* Cache size defaults to 5 * number of tiles in the current viewport
|
|
65
|
+
*/
|
|
66
|
+
constructor(opts: Tileset2DProps);
|
|
67
|
+
get tiles(): Tile2DHeader<any>[];
|
|
68
|
+
get selectedTiles(): Tile2DHeader[] | null;
|
|
69
|
+
get isLoaded(): boolean;
|
|
70
|
+
get needsReload(): boolean;
|
|
71
|
+
setOptions(opts: Tileset2DProps): void;
|
|
72
|
+
finalize(): void;
|
|
73
|
+
reloadAll(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Update the cache with the given viewport and model matrix and triggers callback onUpdate.
|
|
76
|
+
*/
|
|
77
|
+
update(viewport: Viewport, { zRange, modelMatrix }?: {
|
|
78
|
+
zRange?: ZRange;
|
|
79
|
+
modelMatrix?: Matrix4;
|
|
80
|
+
}): number;
|
|
81
|
+
isTileVisible(tile: Tile2DHeader, cullRect?: {
|
|
82
|
+
x: number;
|
|
83
|
+
y: number;
|
|
84
|
+
width: number;
|
|
85
|
+
height: number;
|
|
86
|
+
}): boolean;
|
|
87
|
+
/** Returns array of tile indices in the current viewport */
|
|
88
|
+
getTileIndices({ viewport, maxZoom, minZoom, zRange, modelMatrix, modelMatrixInverse }: {
|
|
89
|
+
viewport: Viewport;
|
|
90
|
+
maxZoom?: number;
|
|
91
|
+
minZoom?: number;
|
|
92
|
+
zRange: ZRange | undefined;
|
|
93
|
+
tileSize?: number;
|
|
94
|
+
modelMatrix?: Matrix4;
|
|
95
|
+
modelMatrixInverse?: Matrix4;
|
|
96
|
+
zoomOffset?: number;
|
|
97
|
+
}): TileIndex[];
|
|
98
|
+
/** Returns unique string key for a tile index */
|
|
99
|
+
getTileId(index: TileIndex): string;
|
|
100
|
+
/** Returns a zoom level for a tile index */
|
|
101
|
+
getTileZoom(index: TileIndex): number;
|
|
102
|
+
/** Returns additional metadata to add to tile, bbox by default */
|
|
103
|
+
getTileMetadata(index: TileIndex): Record<string, any>;
|
|
104
|
+
/** Returns index of the parent tile */
|
|
105
|
+
getParentIndex(index: TileIndex): {
|
|
106
|
+
x: number;
|
|
107
|
+
y: number;
|
|
108
|
+
z: number;
|
|
109
|
+
};
|
|
110
|
+
private updateTileStates;
|
|
111
|
+
private _getCullBounds;
|
|
112
|
+
private _pruneRequests;
|
|
113
|
+
private _rebuildTree;
|
|
114
|
+
/**
|
|
115
|
+
* Clear tiles that are not visible when the cache is full
|
|
116
|
+
*/
|
|
117
|
+
private _resizeCache;
|
|
118
|
+
private _getTile;
|
|
119
|
+
_getNearestAncestor(tile: Tile2DHeader): Tile2DHeader | null;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=tileset-2d.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tileset-2d.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/tileset-2d.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export declare type ZRange = [minZ: number, maxZ: number];
|
|
2
|
+
export declare type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
3
|
+
export declare type GeoBoundingBox = {
|
|
4
|
+
west: number;
|
|
5
|
+
north: number;
|
|
6
|
+
east: number;
|
|
7
|
+
south: number;
|
|
8
|
+
};
|
|
9
|
+
export declare type NonGeoBoundingBox = {
|
|
10
|
+
left: number;
|
|
11
|
+
top: number;
|
|
12
|
+
right: number;
|
|
13
|
+
bottom: number;
|
|
14
|
+
};
|
|
15
|
+
export declare type TileBoundingBox = NonGeoBoundingBox | GeoBoundingBox;
|
|
16
|
+
export declare type TileIndex = {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
z: number;
|
|
20
|
+
};
|
|
21
|
+
export declare type TileLoadProps = {
|
|
22
|
+
index: TileIndex;
|
|
23
|
+
id: string;
|
|
24
|
+
bbox: TileBoundingBox;
|
|
25
|
+
url?: string | null;
|
|
26
|
+
signal?: AbortSignal;
|
|
27
|
+
userData?: Record<string, any>;
|
|
28
|
+
zoom?: number;
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/types.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAElD,oBAAY,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAE9E,oBAAY,cAAc,GAAG;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAC;AACxF,oBAAY,iBAAiB,GAAG;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAE3F,oBAAY,eAAe,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAEjE,oBAAY,SAAS,GAAG;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAE1D,oBAAY,aAAa,GAAG;IAC1B,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Viewport } from '@deck.gl/core/typed';
|
|
2
|
+
import { Matrix4 } from '@math.gl/core';
|
|
3
|
+
import { Bounds, GeoBoundingBox, TileBoundingBox, TileIndex, ZRange } from './types';
|
|
4
|
+
export declare const urlType: {
|
|
5
|
+
type: string;
|
|
6
|
+
value: null;
|
|
7
|
+
validate: (value: any, propType: any) => any;
|
|
8
|
+
equals: (value1: any, value2: any) => boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function getURLFromTemplate(template: string | string[], tile: {
|
|
11
|
+
index: TileIndex;
|
|
12
|
+
id: string;
|
|
13
|
+
}): string | null;
|
|
14
|
+
/** Get culling bounds in world space */
|
|
15
|
+
export declare function getCullBounds({ viewport, z, cullRect }: {
|
|
16
|
+
/** Current viewport */
|
|
17
|
+
viewport: Viewport;
|
|
18
|
+
/** Current z range */
|
|
19
|
+
z: ZRange | number | undefined;
|
|
20
|
+
/** Culling rectangle in screen space */
|
|
21
|
+
cullRect: {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
};
|
|
27
|
+
}): [number, number, number, number][];
|
|
28
|
+
export declare function osmTile2lngLat(x: number, y: number, z: number): [number, number];
|
|
29
|
+
export declare function tileToBoundingBox(viewport: Viewport, x: number, y: number, z: number, tileSize?: number): TileBoundingBox;
|
|
30
|
+
/**
|
|
31
|
+
* Returns all tile indices in the current viewport. If the current zoom level is smaller
|
|
32
|
+
* than minZoom, return an empty array. If the current zoom level is greater than maxZoom,
|
|
33
|
+
* return tiles that are on maxZoom.
|
|
34
|
+
*/
|
|
35
|
+
export declare function getTileIndices({ viewport, maxZoom, minZoom, zRange, extent, tileSize, modelMatrix, modelMatrixInverse, zoomOffset }: {
|
|
36
|
+
viewport: Viewport;
|
|
37
|
+
maxZoom?: number;
|
|
38
|
+
minZoom?: number;
|
|
39
|
+
zRange: ZRange | undefined;
|
|
40
|
+
extent?: Bounds;
|
|
41
|
+
tileSize?: number;
|
|
42
|
+
modelMatrix?: Matrix4;
|
|
43
|
+
modelMatrixInverse?: Matrix4;
|
|
44
|
+
zoomOffset?: number;
|
|
45
|
+
}): TileIndex[];
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if s is a valid URL template
|
|
48
|
+
*/
|
|
49
|
+
export declare function isURLTemplate(s: string): boolean;
|
|
50
|
+
export declare function isGeoBoundingBox(v: any): v is GeoBoundingBox;
|
|
51
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tileset-2d/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAC,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AAKnF,eAAO,MAAM,OAAO;;;;;CAyBnB,CAAC;AA8BF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,EAC3B,IAAI,EAAE;IACJ,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;CACZ,GACA,MAAM,GAAG,IAAI,CAsBf;AAsCD,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,CAAK,EACL,QAAQ,EACT,EAAE;IACD,uBAAuB;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,sBAAsB;IACtB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,EAAE;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC;CACjE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAGrC;AAwDD,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMhF;AAMD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,QAAQ,GAAE,MAAkB,GAC3B,eAAe,CASjB;AA0BD;;;;GAIG;AAEH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAoB,EACpB,WAAW,EACX,kBAAkB,EAClB,UAAc,EACf,EAAE;IACD,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA0BA;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,cAAc,CAO5D"}
|