maplibre-gl-lidar 0.5.0 → 0.6.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 +31 -0
- package/dist/{LidarLayerAdapter-zXSROe7Q.cjs → LidarLayerAdapter-CHu9adLN.cjs} +1266 -89
- package/dist/LidarLayerAdapter-CHu9adLN.cjs.map +1 -0
- package/dist/{LidarLayerAdapter-ZG9A0pFN.js → LidarLayerAdapter-_Y5U5uBB.js} +1266 -89
- package/dist/LidarLayerAdapter-_Y5U5uBB.js.map +1 -0
- package/dist/index.cjs +2 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +2 -1
- package/dist/react.cjs +7 -2
- package/dist/react.cjs.map +1 -1
- package/dist/react.mjs +8 -3
- package/dist/react.mjs.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/core/LidarControl.d.ts +29 -0
- package/dist/types/lib/core/LidarControl.d.ts.map +1 -1
- package/dist/types/lib/core/types.d.ts +12 -0
- package/dist/types/lib/core/types.d.ts.map +1 -1
- package/dist/types/lib/gui/PanelBuilder.d.ts +6 -0
- package/dist/types/lib/gui/PanelBuilder.d.ts.map +1 -1
- package/dist/types/lib/hooks/useLidarState.d.ts +1 -0
- package/dist/types/lib/hooks/useLidarState.d.ts.map +1 -1
- package/dist/types/lib/loaders/EptStreamingLoader.d.ts +240 -0
- package/dist/types/lib/loaders/EptStreamingLoader.d.ts.map +1 -0
- package/dist/types/lib/loaders/ept-types.d.ts +98 -0
- package/dist/types/lib/loaders/ept-types.d.ts.map +1 -0
- package/dist/types/lib/loaders/index.d.ts +2 -0
- package/dist/types/lib/loaders/index.d.ts.map +1 -1
- package/dist/types/lib/loaders/streaming-types.d.ts +1 -1
- package/dist/types/lib/loaders/streaming-types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/LidarLayerAdapter-ZG9A0pFN.js.map +0 -1
- package/dist/LidarLayerAdapter-zXSROe7Q.cjs.map +0 -1
package/README.md
CHANGED
|
@@ -9,6 +9,7 @@ A MapLibre GL JS plugin for visualizing LiDAR point clouds using deck.gl.
|
|
|
9
9
|
|
|
10
10
|
- Load and visualize LAS/LAZ/COPC point cloud files (LAS 1.0 - 1.4)
|
|
11
11
|
- **Dynamic COPC streaming** - viewport-based loading for large cloud-optimized point clouds
|
|
12
|
+
- **EPT (Entwine Point Tile) support** - stream large point cloud datasets from EPT servers
|
|
12
13
|
- Multiple color schemes: elevation, intensity, classification, RGB
|
|
13
14
|
- **Classification legend with toggle** - interactive legend to show/hide individual classification types
|
|
14
15
|
- **Percentile-based coloring** - use 2-98% percentile range for better color distribution (clips outliers)
|
|
@@ -410,6 +411,35 @@ control.loadPointCloud(url, { loadingMode: 'dynamic' }); // Force streaming
|
|
|
410
411
|
|
|
411
412
|
**Note:** Non-COPC files (regular LAS/LAZ) always use full loading mode since they don't have the octree structure required for streaming.
|
|
412
413
|
|
|
414
|
+
### EPT (Entwine Point Tile) Support
|
|
415
|
+
|
|
416
|
+
maplibre-gl-lidar supports [Entwine Point Tile (EPT)](https://entwine.io/en/latest/entwine-point-tile.html) datasets, a widely-used format for serving large point clouds over HTTP with viewport-based streaming.
|
|
417
|
+
|
|
418
|
+
**Key features:**
|
|
419
|
+
- **Directory-based format** - Metadata in ept.json, hierarchy in ept-hierarchy/, data in ept-data/
|
|
420
|
+
- **Viewport-based streaming** - Points load dynamically based on current map view
|
|
421
|
+
- **LAZ compression** - Efficient data transfer using LAZ compression
|
|
422
|
+
- **Automatic CRS transformation** - Coordinates transformed from source CRS to WGS84
|
|
423
|
+
|
|
424
|
+
**Loading EPT data:**
|
|
425
|
+
|
|
426
|
+
```typescript
|
|
427
|
+
// Load EPT dataset by URL (automatically detected via ept.json)
|
|
428
|
+
lidarControl.loadPointCloud('https://na-c.entwine.io/dublin/ept.json');
|
|
429
|
+
|
|
430
|
+
// Or load programmatically
|
|
431
|
+
lidarControl.loadPointCloudEptStreaming('https://na-c.entwine.io/dublin/ept.json', {
|
|
432
|
+
pointBudget: 5_000_000, // Max points in memory
|
|
433
|
+
});
|
|
434
|
+
```
|
|
435
|
+
|
|
436
|
+
**Sample EPT datasets:**
|
|
437
|
+
- Dublin, Ireland: `https://na-c.entwine.io/dublin/ept.json`
|
|
438
|
+
- New York City (4.7B points): `https://na-c.entwine.io/nyc/ept.json`
|
|
439
|
+
- Red Rocks: `https://na-c.entwine.io/red-rocks/ept.json`
|
|
440
|
+
|
|
441
|
+
**Note:** EPT datasets require CORS support from the server. The sample datasets from entwine.io are CORS-enabled.
|
|
442
|
+
|
|
413
443
|
### React Hooks
|
|
414
444
|
|
|
415
445
|
#### useLidarState
|
|
@@ -445,6 +475,7 @@ console.log(`Loaded ${data.pointCount} points`);
|
|
|
445
475
|
- LAS 1.0 - 1.4 (all versions supported via copc.js + loaders.gl fallback)
|
|
446
476
|
- LAZ (compressed LAS)
|
|
447
477
|
- COPC (Cloud Optimized Point Cloud) - with dynamic streaming support
|
|
478
|
+
- EPT (Entwine Point Tile) - viewport-based streaming from HTTP servers
|
|
448
479
|
|
|
449
480
|
**Note:** LAS 1.2 and 1.4 are loaded using copc.js for optimal performance. LAS 1.0, 1.1, and 1.3 files automatically fall back to @loaders.gl/las.
|
|
450
481
|
|