@geoql/v-maplibre 1.2.4 → 1.4.0
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/README.md +7 -0
- package/dist/controls/index.d.ts +2 -0
- package/dist/controls/lidar/VControlLidar.vue.d.ts +56 -0
- package/dist/controls/lidar/events.d.ts +1 -0
- package/dist/controls/lidar/index.d.ts +3 -0
- package/dist/controls/lidar/types.d.ts +81 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.js +4275 -55
- package/dist/index.js.map +1 -1
- package/dist/layers/deckgl/arc/VLayerDeckglArc.vue.d.ts +1 -1
- package/dist/layers/deckgl/bitmap/VLayerDeckglBitmap.vue.d.ts +1 -1
- package/dist/layers/deckgl/cog/VLayerDeckglCOG.vue.d.ts +166 -0
- package/dist/layers/deckgl/cog/index.d.ts +1 -0
- package/dist/layers/deckgl/column/VLayerDeckglColumn.vue.d.ts +2 -2
- package/dist/layers/deckgl/contour/VLayerDeckglContour.vue.d.ts +2 -2
- package/dist/layers/deckgl/geohash/VLayerDeckglGeohash.vue.d.ts +2 -2
- package/dist/layers/deckgl/geojson/VLayerDeckglGeojson.vue.d.ts +2 -2
- package/dist/layers/deckgl/great-circle/VLayerDeckglGreatCircle.vue.d.ts +1 -1
- package/dist/layers/deckgl/grid/VLayerDeckglGrid.vue.d.ts +1 -1
- package/dist/layers/deckgl/grid-cell/VLayerDeckglGridCell.vue.d.ts +1 -1
- package/dist/layers/deckgl/h3-cluster/VLayerDeckglH3Cluster.vue.d.ts +2 -2
- package/dist/layers/deckgl/h3-hexagon/VLayerDeckglH3Hexagon.vue.d.ts +2 -2
- package/dist/layers/deckgl/heatmap/VLayerDeckglHeatmap.vue.d.ts +2 -2
- package/dist/layers/deckgl/hexagon/VLayerDeckglHexagon.vue.d.ts +1 -1
- package/dist/layers/deckgl/icon/VLayerDeckglIcon.vue.d.ts +2 -2
- package/dist/layers/deckgl/index.d.ts +1 -0
- package/dist/layers/deckgl/line/VLayerDeckglLine.vue.d.ts +1 -1
- package/dist/layers/deckgl/mvt/VLayerDeckglMVT.vue.d.ts +2 -2
- package/dist/layers/deckgl/path/VLayerDeckglPath.vue.d.ts +2 -2
- package/dist/layers/deckgl/point-cloud/VLayerDeckglPointCloud.vue.d.ts +2 -2
- package/dist/layers/deckgl/polygon/VLayerDeckglPolygon.vue.d.ts +2 -2
- package/dist/layers/deckgl/quadkey/VLayerDeckglQuadkey.vue.d.ts +2 -2
- package/dist/layers/deckgl/s2/VLayerDeckglS2.vue.d.ts +2 -2
- package/dist/layers/deckgl/scatterplot/VLayerDeckglScatterplot.vue.d.ts +2 -2
- package/dist/layers/deckgl/scenegraph/VLayerDeckglScenegraph.vue.d.ts +7 -1
- package/dist/layers/deckgl/screen-grid/VLayerDeckglScreenGrid.vue.d.ts +1 -1
- package/dist/layers/deckgl/simple-mesh/VLayerDeckglSimpleMesh.vue.d.ts +1 -1
- package/dist/layers/deckgl/solid-polygon/VLayerDeckglSolidPolygon.vue.d.ts +2 -2
- package/dist/layers/deckgl/terrain/VLayerDeckglTerrain.vue.d.ts +1 -1
- package/dist/layers/deckgl/text/VLayerDeckglText.vue.d.ts +2 -2
- package/dist/layers/deckgl/tile/VLayerDeckglTile.vue.d.ts +2 -2
- package/dist/layers/deckgl/tile-3d/VLayerDeckglTile3D.vue.d.ts +3 -2
- package/dist/layers/deckgl/trips/VLayerDeckglTrips.vue.d.ts +2 -2
- package/dist/layers/deckgl/wms/VLayerDeckglWMS.vue.d.ts +1 -1
- package/dist/layers/index.d.ts +1 -0
- package/dist/layers/maplibre/route/VLayerMaplibreRoute.vue.d.ts +64 -0
- package/dist/layers/maplibre/route/index.d.ts +1 -0
- package/dist/markers/VMarker.vue.d.ts +1 -1
- package/package.json +15 -2
- package/dist/index-kNnO8_Zs.js +0 -56222
- package/dist/index-kNnO8_Zs.js.map +0 -1
- package/dist/index-m5ZKPBwA.js +0 -5106
- package/dist/index-m5ZKPBwA.js.map +0 -1
package/README.md
CHANGED
|
@@ -46,6 +46,9 @@ bun add @deck.gl/core @deck.gl/layers @deck.gl/mapbox
|
|
|
46
46
|
bun add @deck.gl/aggregation-layers # Heatmap, Hexagon, Grid
|
|
47
47
|
bun add @deck.gl/geo-layers # Trips, MVT, Tile, H3
|
|
48
48
|
bun add @deck.gl/mesh-layers # SimpleMesh, Scenegraph
|
|
49
|
+
|
|
50
|
+
# Raster layers (COG/GeoTIFF)
|
|
51
|
+
bun add @developmentseed/deck.gl-geotiff
|
|
49
52
|
```
|
|
50
53
|
|
|
51
54
|
## Quick Start
|
|
@@ -129,6 +132,10 @@ High-performance WebGL visualization layers powered by deck.gl:
|
|
|
129
132
|
- `VLayerDeckglSimpleMesh` - 3D meshes
|
|
130
133
|
- `VLayerDeckglScenegraph` - glTF/GLB models
|
|
131
134
|
|
|
135
|
+
**Raster Layers** (requires `@developmentseed/deck.gl-geotiff`)
|
|
136
|
+
|
|
137
|
+
- `VLayerDeckglCOG` - Cloud-Optimized GeoTIFF visualization
|
|
138
|
+
|
|
132
139
|
### Control Components
|
|
133
140
|
|
|
134
141
|
- **`VControlNavigation`** - Navigation controls (zoom, rotate)
|
package/dist/controls/index.d.ts
CHANGED
|
@@ -3,3 +3,5 @@ export { FullscreenControl as VControlFullscreen } from './fullscreen';
|
|
|
3
3
|
export { GeolocateControl as VControlGeolocate } from './geolocate';
|
|
4
4
|
export { NavigationControl as VControlNavigation } from './navigation';
|
|
5
5
|
export { ScaleControl as VControlScale } from './scale';
|
|
6
|
+
export { LidarControl as VControlLidar } from './lidar';
|
|
7
|
+
export type { LidarControlOptions, ColorScheme, CopcLoadingMode, PointCloudInfo, PointCloudBounds, StreamingProgress, LidarLoadEventData, LidarErrorEventData, LidarUnloadEventData, } from './lidar';
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { ControlPosition, LidarControlOptions, ColorScheme, PointCloudInfo } from './types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
options?: LidarControlOptions;
|
|
4
|
+
position?: ControlPosition;
|
|
5
|
+
defaultUrl?: string;
|
|
6
|
+
};
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
|
|
8
|
+
loadPointCloud: (source: string | File | ArrayBuffer) => Promise<PointCloudInfo> | undefined;
|
|
9
|
+
unloadPointCloud: (id?: string) => void | undefined;
|
|
10
|
+
flyToPointCloud: (id?: string) => void | undefined;
|
|
11
|
+
setPointSize: (size: number) => void | undefined;
|
|
12
|
+
setColorScheme: (scheme: ColorScheme) => void | undefined;
|
|
13
|
+
setOpacity: (opacity: number) => void | undefined;
|
|
14
|
+
setPickable: (pickable: boolean) => void | undefined;
|
|
15
|
+
setUsePercentile: (use: boolean) => void | undefined;
|
|
16
|
+
setElevationRange: (min: number, max: number) => void | undefined;
|
|
17
|
+
clearElevationRange: () => void | undefined;
|
|
18
|
+
setZOffset: (offset: number) => void | undefined;
|
|
19
|
+
setZOffsetEnabled: (enabled: boolean) => void | undefined;
|
|
20
|
+
toggle: () => void | undefined;
|
|
21
|
+
expand: () => void | undefined;
|
|
22
|
+
collapse: () => void | undefined;
|
|
23
|
+
getState: () => unknown;
|
|
24
|
+
getPointClouds: () => PointCloudInfo[] | undefined;
|
|
25
|
+
stopStreaming: (id?: string) => void | undefined;
|
|
26
|
+
isStreaming: (id?: string) => boolean | undefined;
|
|
27
|
+
getControl: () => {
|
|
28
|
+
on: (event: string, handler: (data?: unknown) => void) => void;
|
|
29
|
+
off: (event: string, handler: (data?: unknown) => void) => void;
|
|
30
|
+
loadPointCloud: (source: string | File | ArrayBuffer) => Promise<PointCloudInfo>;
|
|
31
|
+
unloadPointCloud: (id?: string) => void;
|
|
32
|
+
flyToPointCloud: (id?: string) => void;
|
|
33
|
+
setPointSize: (size: number) => void;
|
|
34
|
+
setColorScheme: (scheme: ColorScheme) => void;
|
|
35
|
+
setOpacity: (opacity: number) => void;
|
|
36
|
+
setPickable: (pickable: boolean) => void;
|
|
37
|
+
setUsePercentile: (use: boolean) => void;
|
|
38
|
+
setElevationRange: (min: number, max: number) => void;
|
|
39
|
+
clearElevationRange: () => void;
|
|
40
|
+
setZOffset: (offset: number) => void;
|
|
41
|
+
setZOffsetEnabled: (enabled: boolean) => void;
|
|
42
|
+
toggle: () => void;
|
|
43
|
+
expand: () => void;
|
|
44
|
+
collapse: () => void;
|
|
45
|
+
getState: () => unknown;
|
|
46
|
+
getPointClouds: () => PointCloudInfo[];
|
|
47
|
+
stopStreaming: (id?: string) => void;
|
|
48
|
+
isStreaming: (id?: string) => boolean;
|
|
49
|
+
} | null;
|
|
50
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
51
|
+
options: LidarControlOptions;
|
|
52
|
+
position: ControlPosition;
|
|
53
|
+
defaultUrl: string;
|
|
54
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
55
|
+
declare const _default: typeof __VLS_export;
|
|
56
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const lidarControlEvents: string[];
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
export type { ControlPosition } from 'maplibre-gl';
|
|
2
|
+
export type ColorScheme = 'elevation' | 'intensity' | 'classification' | 'rgb';
|
|
3
|
+
export type CopcLoadingMode = 'full' | 'dynamic';
|
|
4
|
+
export interface PointCloudBounds {
|
|
5
|
+
minX: number;
|
|
6
|
+
minY: number;
|
|
7
|
+
minZ: number;
|
|
8
|
+
maxX: number;
|
|
9
|
+
maxY: number;
|
|
10
|
+
maxZ: number;
|
|
11
|
+
}
|
|
12
|
+
export interface PointCloudInfo {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
pointCount: number;
|
|
16
|
+
bounds: PointCloudBounds;
|
|
17
|
+
hasRGB: boolean;
|
|
18
|
+
hasIntensity: boolean;
|
|
19
|
+
hasClassification: boolean;
|
|
20
|
+
source: string;
|
|
21
|
+
wkt?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface StreamingProgress {
|
|
24
|
+
loadedNodes: number;
|
|
25
|
+
loadedPoints: number;
|
|
26
|
+
queueSize: number;
|
|
27
|
+
isLoading: boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface LidarControlOptions {
|
|
30
|
+
/** Start collapsed (default: true) */
|
|
31
|
+
collapsed?: boolean;
|
|
32
|
+
/** Panel title (default: 'LiDAR Viewer') */
|
|
33
|
+
title?: string;
|
|
34
|
+
/** Panel width in pixels (default: 365) */
|
|
35
|
+
panelWidth?: number;
|
|
36
|
+
/** Panel max height with scrollbar (default: 500) */
|
|
37
|
+
panelMaxHeight?: number;
|
|
38
|
+
/** Custom CSS class */
|
|
39
|
+
className?: string;
|
|
40
|
+
/** Point size in pixels (default: 2) */
|
|
41
|
+
pointSize?: number;
|
|
42
|
+
/** Opacity 0-1 (default: 1.0) */
|
|
43
|
+
opacity?: number;
|
|
44
|
+
/** Color scheme (default: 'elevation') */
|
|
45
|
+
colorScheme?: ColorScheme;
|
|
46
|
+
/** Use 2-98% percentile for coloring (default: true) */
|
|
47
|
+
usePercentile?: boolean;
|
|
48
|
+
/** Max points to display (default: 1000000) */
|
|
49
|
+
pointBudget?: number;
|
|
50
|
+
/** Elevation filter range */
|
|
51
|
+
elevationRange?: [number, number] | null;
|
|
52
|
+
/** Enable Z offset adjustment (default: false) */
|
|
53
|
+
zOffsetEnabled?: boolean;
|
|
54
|
+
/** Z offset in meters (default: 0) */
|
|
55
|
+
zOffset?: number;
|
|
56
|
+
/** Enable point picking/hover tooltips (default: false) */
|
|
57
|
+
pickable?: boolean;
|
|
58
|
+
/** Fields to show in tooltip (default: all) */
|
|
59
|
+
pickInfoFields?: string[];
|
|
60
|
+
/** Auto zoom to data after loading (default: true) */
|
|
61
|
+
autoZoom?: boolean;
|
|
62
|
+
/** Loading mode for COPC files (default: 'dynamic') */
|
|
63
|
+
copcLoadingMode?: CopcLoadingMode;
|
|
64
|
+
/** Max points for streaming (default: 5000000) */
|
|
65
|
+
streamingPointBudget?: number;
|
|
66
|
+
/** Concurrent node requests (default: 4) */
|
|
67
|
+
streamingMaxConcurrentRequests?: number;
|
|
68
|
+
/** Viewport change debounce (default: 150) */
|
|
69
|
+
streamingViewportDebounceMs?: number;
|
|
70
|
+
}
|
|
71
|
+
export interface LidarLoadEventData {
|
|
72
|
+
pointCloud: PointCloudInfo;
|
|
73
|
+
}
|
|
74
|
+
export interface LidarErrorEventData {
|
|
75
|
+
error: Error;
|
|
76
|
+
}
|
|
77
|
+
export interface LidarUnloadEventData {
|
|
78
|
+
pointCloud: {
|
|
79
|
+
id: string;
|
|
80
|
+
};
|
|
81
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { VControlAttribution, VControlFullscreen, VControlGeolocate, VControlNavigation, VControlScale } from './controls';
|
|
2
|
-
import { VLayerMaplibreCanvas, VLayerMaplibreGeojson, VLayerMaplibreCluster, VLayerMaplibreImage, VLayerMaplibreRaster, VLayerMaplibreVector, VLayerMaplibreVideo, VLayerMaplibrePmtile } from './layers';
|
|
1
|
+
import { VControlAttribution, VControlFullscreen, VControlGeolocate, VControlNavigation, VControlScale, VControlLidar } from './controls';
|
|
2
|
+
import { VLayerMaplibreCanvas, VLayerMaplibreGeojson, VLayerMaplibreCluster, VLayerMaplibreImage, VLayerMaplibreRaster, VLayerMaplibreVector, VLayerMaplibreVideo, VLayerMaplibrePmtile, VLayerMaplibreRoute } from './layers';
|
|
3
3
|
import VMap from './map/VMap.vue';
|
|
4
4
|
import VMarker from './markers/VMarker.vue';
|
|
5
5
|
import VPopup from './popups/VPopup.vue';
|
|
6
|
-
export { VMap, VMarker, VPopup, VLayerMaplibreCanvas, VLayerMaplibreGeojson, VLayerMaplibreCluster, VLayerMaplibreImage, VLayerMaplibreRaster, VLayerMaplibreVector, VLayerMaplibreVideo, VLayerMaplibrePmtile, VControlAttribution, VControlFullscreen, VControlGeolocate, VControlNavigation, VControlScale, };
|
|
6
|
+
export { VMap, VMarker, VPopup, VLayerMaplibreCanvas, VLayerMaplibreGeojson, VLayerMaplibreCluster, VLayerMaplibreImage, VLayerMaplibreRaster, VLayerMaplibreVector, VLayerMaplibreVideo, VLayerMaplibrePmtile, VLayerMaplibreRoute, VControlAttribution, VControlFullscreen, VControlGeolocate, VControlNavigation, VControlScale, VControlLidar, };
|
|
7
|
+
export type { LidarControlOptions, ColorScheme, CopcLoadingMode, PointCloudInfo, PointCloudBounds, StreamingProgress, } from './controls';
|
|
7
8
|
export * from './layers/deckgl';
|
|
8
9
|
export default VMap;
|