@gisatcz/deckgl-geolib 2.2.2 → 2.3.1-dev.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/cjs/index.js +36 -14
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.min.js +2 -2
- package/dist/cjs/index.min.js.map +1 -1
- package/dist/esm/index.js +36 -14
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.min.js +2 -2
- package/dist/esm/index.min.js.map +1 -1
- package/dist/esm/types/core/CogTiles.d.ts +2 -25
- package/dist/esm/types/core/GeoImage.d.ts +4 -50
- package/dist/esm/types/core/lib/BitmapGenerator.d.ts +2 -2
- package/dist/esm/types/core/lib/TerrainGenerator.d.ts +2 -25
- package/dist/esm/types/core/types.d.ts +20 -0
- package/dist/esm/types/layers/CogBitmapLayer.d.ts +8 -25
- package/dist/esm/types/layers/CogTerrainLayer.d.ts +2 -2
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { GeoTIFF, GeoTIFFImage } from 'geotiff';
|
|
2
2
|
import GeoImage from './GeoImage';
|
|
3
|
-
import { GeoImageOptions } from './types';
|
|
3
|
+
import { GeoImageOptions, TileResult } from './types';
|
|
4
4
|
export type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
5
5
|
declare class CogTiles {
|
|
6
6
|
cog: GeoTIFF;
|
|
@@ -54,30 +54,7 @@ declare class CogTiles {
|
|
|
54
54
|
* @param size The width/height of the square tile (e.g., 256 or 257)
|
|
55
55
|
*/
|
|
56
56
|
createEmptyTile(size?: number): Float32Array<ArrayBuffer>;
|
|
57
|
-
getTile(x: number, y: number, z: number, bounds: Bounds, meshMaxError: number): Promise<
|
|
58
|
-
loaderData: {
|
|
59
|
-
header: {};
|
|
60
|
-
};
|
|
61
|
-
header: {
|
|
62
|
-
vertexCount: any;
|
|
63
|
-
boundingBox: [[number, number, number], [number, number, number]];
|
|
64
|
-
};
|
|
65
|
-
mode: number;
|
|
66
|
-
indices: {
|
|
67
|
-
value: Uint32Array<ArrayBuffer>;
|
|
68
|
-
size: number;
|
|
69
|
-
};
|
|
70
|
-
attributes: {
|
|
71
|
-
POSITION: {
|
|
72
|
-
value: Float32Array<ArrayBuffer>;
|
|
73
|
-
size: number;
|
|
74
|
-
};
|
|
75
|
-
TEXCOORD_0: {
|
|
76
|
-
value: Float32Array<ArrayBuffer>;
|
|
77
|
-
size: number;
|
|
78
|
-
};
|
|
79
|
-
};
|
|
80
|
-
} | ImageBitmap>;
|
|
57
|
+
getTile(x: number, y: number, z: number, bounds: Bounds, meshMaxError: number): Promise<TileResult | null>;
|
|
81
58
|
/**
|
|
82
59
|
* Determines the data type (e.g., "Int32", "Float64") of a GeoTIFF image
|
|
83
60
|
* by reading its TIFF tags.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { GeoTIFFImage } from 'geotiff';
|
|
2
|
-
import { GeoImageOptions, Bounds } from './types';
|
|
2
|
+
import { GeoImageOptions, Bounds, TileResult } from './types';
|
|
3
3
|
export * from './types';
|
|
4
4
|
export default class GeoImage {
|
|
5
5
|
data: GeoTIFFImage | undefined;
|
|
@@ -9,62 +9,16 @@ export default class GeoImage {
|
|
|
9
9
|
height: number;
|
|
10
10
|
rasters: any[];
|
|
11
11
|
bounds: Bounds;
|
|
12
|
-
}, options: GeoImageOptions, meshMaxError: any): Promise<
|
|
13
|
-
loaderData: {
|
|
14
|
-
header: {};
|
|
15
|
-
};
|
|
16
|
-
header: {
|
|
17
|
-
vertexCount: any;
|
|
18
|
-
boundingBox: [[number, number, number], [number, number, number]];
|
|
19
|
-
};
|
|
20
|
-
mode: number;
|
|
21
|
-
indices: {
|
|
22
|
-
value: Uint32Array<ArrayBuffer>;
|
|
23
|
-
size: number;
|
|
24
|
-
};
|
|
25
|
-
attributes: {
|
|
26
|
-
POSITION: {
|
|
27
|
-
value: Float32Array<ArrayBuffer>;
|
|
28
|
-
size: number;
|
|
29
|
-
};
|
|
30
|
-
TEXCOORD_0: {
|
|
31
|
-
value: Float32Array<ArrayBuffer>;
|
|
32
|
-
size: number;
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
|
-
} | ImageBitmap>;
|
|
12
|
+
}, options: GeoImageOptions, meshMaxError: any): Promise<TileResult | null>;
|
|
36
13
|
getHeightmap(input: string | {
|
|
37
14
|
bounds: Bounds;
|
|
38
15
|
width: number;
|
|
39
16
|
height: number;
|
|
40
17
|
rasters: any[];
|
|
41
|
-
}, options: GeoImageOptions, meshMaxError: any): Promise<
|
|
42
|
-
loaderData: {
|
|
43
|
-
header: {};
|
|
44
|
-
};
|
|
45
|
-
header: {
|
|
46
|
-
vertexCount: any;
|
|
47
|
-
boundingBox: [[number, number, number], [number, number, number]];
|
|
48
|
-
};
|
|
49
|
-
mode: number;
|
|
50
|
-
indices: {
|
|
51
|
-
value: Uint32Array<ArrayBuffer>;
|
|
52
|
-
size: number;
|
|
53
|
-
};
|
|
54
|
-
attributes: {
|
|
55
|
-
POSITION: {
|
|
56
|
-
value: Float32Array<ArrayBuffer>;
|
|
57
|
-
size: number;
|
|
58
|
-
};
|
|
59
|
-
TEXCOORD_0: {
|
|
60
|
-
value: Float32Array<ArrayBuffer>;
|
|
61
|
-
size: number;
|
|
62
|
-
};
|
|
63
|
-
};
|
|
64
|
-
}>;
|
|
18
|
+
}, options: GeoImageOptions, meshMaxError: any): Promise<TileResult>;
|
|
65
19
|
getBitmap(input: string | {
|
|
66
20
|
width: number;
|
|
67
21
|
height: number;
|
|
68
22
|
rasters: any[];
|
|
69
|
-
}, options: GeoImageOptions): Promise<
|
|
23
|
+
}, options: GeoImageOptions): Promise<TileResult>;
|
|
70
24
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import chroma from 'chroma-js';
|
|
2
|
-
import { GeoImageOptions, TypedArray } from '../types';
|
|
2
|
+
import { GeoImageOptions, TypedArray, TileResult } from '../types';
|
|
3
3
|
export declare class BitmapGenerator {
|
|
4
4
|
static generate(input: {
|
|
5
5
|
width: number;
|
|
6
6
|
height: number;
|
|
7
7
|
rasters: TypedArray[];
|
|
8
|
-
}, options: GeoImageOptions): Promise<
|
|
8
|
+
}, options: GeoImageOptions): Promise<TileResult>;
|
|
9
9
|
static getMinMax(array: TypedArray, options: GeoImageOptions, samplesPerPixel?: number): number[];
|
|
10
10
|
static getColorValue(dataArray: TypedArray | any[], options: GeoImageOptions, arrayLength: number, samplesPerPixel?: number): Uint8ClampedArray<ArrayBuffer>;
|
|
11
11
|
static findClassIndex(number: number, intervals: [number, number][], bounds: [boolean, boolean][]): number;
|
|
@@ -1,34 +1,11 @@
|
|
|
1
|
-
import { GeoImageOptions, Bounds, TypedArray } from '../types';
|
|
1
|
+
import { GeoImageOptions, Bounds, TypedArray, TileResult } from '../types';
|
|
2
2
|
export declare class TerrainGenerator {
|
|
3
3
|
static generate(input: {
|
|
4
4
|
width: number;
|
|
5
5
|
height: number;
|
|
6
6
|
rasters: TypedArray[];
|
|
7
7
|
bounds: Bounds;
|
|
8
|
-
}, options: GeoImageOptions, meshMaxError: number):
|
|
9
|
-
loaderData: {
|
|
10
|
-
header: {};
|
|
11
|
-
};
|
|
12
|
-
header: {
|
|
13
|
-
vertexCount: any;
|
|
14
|
-
boundingBox: [[number, number, number], [number, number, number]];
|
|
15
|
-
};
|
|
16
|
-
mode: number;
|
|
17
|
-
indices: {
|
|
18
|
-
value: Uint32Array<ArrayBuffer>;
|
|
19
|
-
size: number;
|
|
20
|
-
};
|
|
21
|
-
attributes: {
|
|
22
|
-
POSITION: {
|
|
23
|
-
value: Float32Array<ArrayBuffer>;
|
|
24
|
-
size: number;
|
|
25
|
-
};
|
|
26
|
-
TEXCOORD_0: {
|
|
27
|
-
value: Float32Array<ArrayBuffer>;
|
|
28
|
-
size: number;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
};
|
|
8
|
+
}, options: GeoImageOptions, meshMaxError: number): TileResult;
|
|
32
9
|
/**
|
|
33
10
|
* Decodes raw raster data into a Float32Array of elevation values.
|
|
34
11
|
* Handles channel selection, value scaling, data type validation, and border stitching.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import chroma from 'chroma-js';
|
|
2
|
+
import type { MeshAttributes } from '@loaders.gl/schema';
|
|
2
3
|
export type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
3
4
|
export type ClampToTerrainOptions = {
|
|
4
5
|
terrainDrawMode?: string;
|
|
@@ -40,3 +41,22 @@ export type GeoImageOptions = {
|
|
|
40
41
|
};
|
|
41
42
|
export declare const DefaultGeoImageOptions: GeoImageOptions;
|
|
42
43
|
export type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
|
|
44
|
+
export type TerrainMesh = {
|
|
45
|
+
loaderData?: Record<string, unknown>;
|
|
46
|
+
header?: {
|
|
47
|
+
vertexCount: number;
|
|
48
|
+
boundingBox?: [number[], number[]];
|
|
49
|
+
};
|
|
50
|
+
mode: number;
|
|
51
|
+
indices?: {
|
|
52
|
+
value: Uint32Array;
|
|
53
|
+
size: number;
|
|
54
|
+
};
|
|
55
|
+
attributes: MeshAttributes;
|
|
56
|
+
};
|
|
57
|
+
export interface TileResult {
|
|
58
|
+
map: ImageBitmap | TerrainMesh;
|
|
59
|
+
raw: TypedArray | null;
|
|
60
|
+
width: number;
|
|
61
|
+
height: number;
|
|
62
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { CompositeLayer, CompositeLayerProps, DefaultProps,
|
|
1
|
+
import { CompositeLayer, CompositeLayerProps, DefaultProps, UpdateParameters } from '@deck.gl/core';
|
|
2
2
|
import { _Tile2DHeader as Tile2DHeader, _TileLoadProps as TileLoadProps, GeoBoundingBox, NonGeoBoundingBox, TileLayer, TileLayerProps } from '@deck.gl/geo-layers';
|
|
3
3
|
import { BitmapLayer } from '@deck.gl/layers';
|
|
4
4
|
import type { MeshAttributes } from '@loaders.gl/schema';
|
|
5
5
|
import CogTiles from '../core/CogTiles';
|
|
6
|
-
import { GeoImageOptions } from '../core/GeoImage';
|
|
6
|
+
import { GeoImageOptions, TileResult } from '../core/GeoImage';
|
|
7
7
|
export type TileBoundingBox = NonGeoBoundingBox | GeoBoundingBox;
|
|
8
8
|
export type ZRange = [minZ: number, maxZ: number];
|
|
9
9
|
export type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
@@ -17,7 +17,7 @@ export declare const urlType: {
|
|
|
17
17
|
export type ClampToTerrainOptions = {
|
|
18
18
|
terrainDrawMode?: string;
|
|
19
19
|
};
|
|
20
|
-
type MeshAndTexture =
|
|
20
|
+
type MeshAndTexture = TileResult;
|
|
21
21
|
/** Props added by the CogBitmapLayer */
|
|
22
22
|
type _CogBitmapLayerProps = {
|
|
23
23
|
/** Image url that encodes raster data. * */
|
|
@@ -56,29 +56,12 @@ export default class CogBitmapLayer<ExtraPropsT extends object = object> extends
|
|
|
56
56
|
initializeState(context: any): Promise<void>;
|
|
57
57
|
init(): Promise<void>;
|
|
58
58
|
updateState({ props, oldProps }: UpdateParameters<this>): void;
|
|
59
|
-
getTiledBitmapData(tile: TileLoadProps): Promise<
|
|
60
|
-
renderSubLayers(props: TileLayerProps<
|
|
59
|
+
getTiledBitmapData(tile: TileLoadProps): Promise<TileResult>;
|
|
60
|
+
renderSubLayers(props: TileLayerProps<TileResult> & {
|
|
61
61
|
id: string;
|
|
62
|
-
data:
|
|
63
|
-
tile: Tile2DHeader<
|
|
62
|
+
data: TileResult;
|
|
63
|
+
tile: Tile2DHeader<TileResult>;
|
|
64
64
|
}): BitmapLayer<{}>;
|
|
65
|
-
renderLayers(): TileLayer<
|
|
66
|
-
getTileData: any;
|
|
67
|
-
renderSubLayers: any;
|
|
68
|
-
updateTriggers: {
|
|
69
|
-
getTileData: (number | boolean | ClampToTerrainOptions)[];
|
|
70
|
-
};
|
|
71
|
-
extent: any;
|
|
72
|
-
tileSize: any;
|
|
73
|
-
minZoom: number;
|
|
74
|
-
maxZoom: number;
|
|
75
|
-
maxRequests: number;
|
|
76
|
-
onTileLoad: (tile: Tile2DHeader<MeshAndTexture>) => void;
|
|
77
|
-
onTileUnload: (tile: Tile2DHeader<MeshAndTexture>) => void;
|
|
78
|
-
onTileError: (err: any, tile?: any) => void;
|
|
79
|
-
maxCacheSize: number;
|
|
80
|
-
maxCacheByteSize: number;
|
|
81
|
-
refinementStrategy: import("@deck.gl/geo-layers/dist/tileset-2d").RefinementStrategy;
|
|
82
|
-
}>;
|
|
65
|
+
renderLayers(): TileLayer<TileResult, {}>;
|
|
83
66
|
}
|
|
84
67
|
export {};
|
|
@@ -3,7 +3,7 @@ import { SimpleMeshLayer } from '@deck.gl/mesh-layers';
|
|
|
3
3
|
import type { MeshAttributes } from '@loaders.gl/schema';
|
|
4
4
|
import { TileLayerProps, GeoBoundingBox, _TileLoadProps as TileLoadProps, _Tile2DHeader as Tile2DHeader, NonGeoBoundingBox } from '@deck.gl/geo-layers';
|
|
5
5
|
import CogTiles from '../core/CogTiles';
|
|
6
|
-
import { GeoImageOptions } from '../core/GeoImage';
|
|
6
|
+
import { GeoImageOptions, TileResult } from '../core/GeoImage';
|
|
7
7
|
export type Bounds = [minX: number, minY: number, maxX: number, maxY: number];
|
|
8
8
|
export type TileBoundingBox = NonGeoBoundingBox | GeoBoundingBox;
|
|
9
9
|
export type ZRange = [minZ: number, maxZ: number];
|
|
@@ -27,7 +27,7 @@ type TerrainLoadProps = {
|
|
|
27
27
|
meshMaxError: number;
|
|
28
28
|
signal?: AbortSignal;
|
|
29
29
|
};
|
|
30
|
-
type MeshAndTexture = [
|
|
30
|
+
type MeshAndTexture = [TileResult | null, TextureSource | null];
|
|
31
31
|
/** All properties supported by CogTerrainLayer */
|
|
32
32
|
export type CogTerrainLayerProps = _CogTerrainLayerProps & TileLayerProps<MeshAndTexture> & CompositeLayerProps;
|
|
33
33
|
/** Props added by the CogTerrainLayer */
|