@honua/app-platform 0.1.1-beta.0 → 0.1.4-beta.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/collaboration/client.d.ts.map +1 -1
- package/connect-url-safety.d.ts +53 -0
- package/connect-url-safety.js +189 -0
- package/contract/discovery.d.ts +34 -0
- package/contract/discovery.d.ts.map +1 -1
- package/contract/index.d.ts +7 -5
- package/contract/index.d.ts.map +1 -1
- package/contract/index.js +3 -2
- package/contract/pmtiles.d.ts +10 -1
- package/contract/pmtiles.d.ts.map +1 -1
- package/contract/pmtiles.js +10 -2
- package/contract/protocol-module.d.ts +84 -9
- package/contract/protocol-module.d.ts.map +1 -1
- package/contract/query-filter-fes.d.ts +18 -0
- package/contract/query-filter-fes.d.ts.map +1 -0
- package/contract/query-filter-fes.js +122 -0
- package/contract/query-filter.d.ts +300 -0
- package/contract/query-filter.d.ts.map +1 -0
- package/contract/query-filter.js +883 -0
- package/contract/schema.d.ts +12 -0
- package/contract/schema.d.ts.map +1 -1
- package/contract/schema.js +34 -0
- package/contract/source-capability-support.d.ts.map +1 -1
- package/contract/source-capability-support.js +15 -3
- package/contract/source.d.ts +45 -25
- package/contract/source.d.ts.map +1 -1
- package/contract/source.js +719 -479
- package/contract/types.d.ts +87 -18
- package/contract/types.d.ts.map +1 -1
- package/contract/widget-source.d.ts.map +1 -1
- package/controls/basemap-switcher.d.ts +19 -11
- package/controls/basemap-switcher.d.ts.map +1 -1
- package/controls/basemap-switcher.js +58 -25
- package/controls/catalog.d.ts +105 -0
- package/controls/catalog.d.ts.map +1 -0
- package/controls/catalog.js +341 -0
- package/controls/element-utils.d.ts +9 -0
- package/controls/element-utils.d.ts.map +1 -1
- package/controls/element-utils.js +17 -0
- package/controls/index.d.ts +29 -8
- package/controls/index.d.ts.map +1 -1
- package/controls/index.js +26 -8
- package/controls/layer-list.d.ts +13 -5
- package/controls/layer-list.d.ts.map +1 -1
- package/controls/layer-list.js +72 -15
- package/controls/legend.d.ts +32 -5
- package/controls/legend.d.ts.map +1 -1
- package/controls/legend.js +95 -25
- package/controls/qualification.d.ts +152 -0
- package/controls/qualification.d.ts.map +1 -0
- package/controls/qualification.js +1265 -0
- package/controls/registry.d.ts +104 -0
- package/controls/registry.d.ts.map +1 -0
- package/controls/registry.js +150 -0
- package/controls/swipe-control.d.ts +6 -1
- package/controls/swipe-control.d.ts.map +1 -1
- package/controls/swipe-control.js +82 -20
- package/core/client.d.ts +45 -21
- package/core/client.d.ts.map +1 -1
- package/core/client.js +224 -46
- package/core/error-classifications.d.ts +6 -0
- package/core/error-classifications.d.ts.map +1 -1
- package/core/error-classifications.js +6 -0
- package/core/error-code-registry.d.ts +6 -0
- package/core/error-code-registry.d.ts.map +1 -1
- package/core/error-code-registry.js +6 -0
- package/core/error-envelope.js +2 -0
- package/core/errors.d.ts +1 -1
- package/core/errors.js +1 -1
- package/core/geoparquet-sql.d.ts +68 -4
- package/core/geoparquet-sql.d.ts.map +1 -1
- package/core/geoparquet-sql.js +325 -8
- package/core/odata-write-codec.d.ts.map +1 -1
- package/core/odata-write-codec.js +0 -1
- package/core/odata.d.ts +6 -0
- package/core/odata.d.ts.map +1 -1
- package/core/odata.js +6 -1
- package/core/ogc-processes.d.ts +182 -25
- package/core/ogc-processes.d.ts.map +1 -1
- package/core/ogc-processes.js +602 -30
- package/core/process-runner.d.ts +8 -1
- package/core/process-runner.d.ts.map +1 -1
- package/core/process-runner.js +1 -0
- package/core/protocol-transport.d.ts +2 -0
- package/core/protocol-transport.d.ts.map +1 -1
- package/core/stac.d.ts +31 -0
- package/core/stac.d.ts.map +1 -1
- package/core/stac.js +136 -19
- package/core/surfaces.d.ts.map +1 -1
- package/core/surfaces.js +273 -68
- package/core/types.d.ts +123 -9
- package/core/types.d.ts.map +1 -1
- package/core/wfs-axis-order.d.ts +18 -0
- package/core/wfs-axis-order.d.ts.map +1 -0
- package/core/wfs-axis-order.js +108 -0
- package/core/wfs-capabilities.d.ts +65 -24
- package/core/wfs-capabilities.d.ts.map +1 -1
- package/core/wfs-capabilities.js +237 -27
- package/core/wfs-filter.d.ts +26 -3
- package/core/wfs-filter.d.ts.map +1 -1
- package/core/wfs-filter.js +48 -53
- package/core/wfs-protocol-error.d.ts +12 -0
- package/core/wfs-protocol-error.d.ts.map +1 -0
- package/core/wfs-protocol-error.js +13 -0
- package/core/wfs.d.ts +53 -1
- package/core/wfs.d.ts.map +1 -1
- package/core/wfs.js +251 -29
- package/core/wms-feature-info.d.ts +92 -0
- package/core/wms-feature-info.d.ts.map +1 -0
- package/core/wms-feature-info.js +285 -0
- package/core/wms.d.ts +9 -0
- package/core/wms.d.ts.map +1 -1
- package/core/wms.js +17 -5
- package/esri-compat/event-bus.d.ts +20 -0
- package/esri-compat/event-bus.d.ts.map +1 -1
- package/esri-compat/feature-filter.d.ts +46 -1
- package/esri-compat/feature-filter.d.ts.map +1 -1
- package/esri-compat/feature-filter.js +49 -0
- package/esri-compat/geojson-layer.d.ts +4 -2
- package/esri-compat/geojson-layer.d.ts.map +1 -1
- package/esri-compat/geojson-layer.js +4 -2
- package/esri-compat/identity-manager.js +2 -2
- package/esri-compat/imagery-layer.d.ts +2 -1
- package/esri-compat/imagery-layer.d.ts.map +1 -1
- package/esri-compat/imagery-layer.js +2 -1
- package/esri-compat/layer-list.d.ts +8 -1
- package/esri-compat/layer-list.d.ts.map +1 -1
- package/esri-compat/layer-list.js +11 -4
- package/esri-compat/legend.d.ts.map +1 -1
- package/esri-compat/legend.js +1 -1
- package/esri-compat/locator.d.ts +297 -0
- package/esri-compat/locator.d.ts.map +1 -0
- package/esri-compat/locator.js +579 -0
- package/esri-compat/map-image-layer.d.ts.map +1 -1
- package/esri-compat/map-view.d.ts.map +1 -1
- package/esri-compat/map-view.js +1 -1
- package/esri-compat/scene-view.d.ts.map +1 -1
- package/esri-compat/time-slider.d.ts +29 -0
- package/esri-compat/time-slider.d.ts.map +1 -1
- package/esri-compat/time-slider.js +117 -0
- package/esri-compat/wfs-layer.d.ts +2 -1
- package/esri-compat/wfs-layer.d.ts.map +1 -1
- package/esri-compat/wfs-layer.js +2 -1
- package/esri-compat/widget-host.d.ts +42 -6
- package/esri-compat/widget-host.d.ts.map +1 -1
- package/esri-compat/widget-host.js +99 -10
- package/generated-app/projection.d.ts.map +1 -1
- package/generated-app/runtime.d.ts.map +1 -1
- package/map/data-to-map-bridge.d.ts +1 -1
- package/map/data-to-map-bridge.d.ts.map +1 -1
- package/map/data-to-map-bridge.js +1 -2
- package/map/honua-map.d.ts.map +1 -1
- package/map/honua-map.js +1 -1
- package/map/index.d.ts +2 -0
- package/map/index.d.ts.map +1 -1
- package/map/index.js +2 -0
- package/map/realtime-reconciliation-adapter.d.ts +98 -0
- package/map/realtime-reconciliation-adapter.d.ts.map +1 -0
- package/map/realtime-reconciliation-adapter.js +84 -0
- package/map/temporal-playback.d.ts +25 -0
- package/map/temporal-playback.d.ts.map +1 -1
- package/map/temporal-playback.js +29 -1
- package/operator/workspace/workspace.d.ts.map +1 -1
- package/operator/workspace/workspace.js +0 -2
- package/package.json +4 -3
- package/query-planner/canonical-filter.d.ts +30 -0
- package/query-planner/canonical-filter.d.ts.map +1 -0
- package/query-planner/canonical-filter.js +30 -0
- package/query-planner/columnar-plan.d.ts +63 -0
- package/query-planner/columnar-plan.d.ts.map +1 -0
- package/query-planner/columnar-plan.js +94 -0
- package/query-planner/diagnostics.d.ts +3 -3
- package/query-planner/diagnostics.d.ts.map +1 -1
- package/query-planner/diagnostics.js +17 -4
- package/query-planner/duckdb.d.ts.map +1 -1
- package/query-planner/duckdb.js +16 -2
- package/query-planner/execution-context.d.ts.map +1 -1
- package/query-planner/execution-context.js +3 -1
- package/query-planner/executor.d.ts.map +1 -1
- package/query-planner/executor.js +7 -1
- package/query-planner/geoservices.d.ts.map +1 -1
- package/query-planner/geoservices.js +24 -5
- package/query-planner/grpc.d.ts.map +1 -1
- package/query-planner/grpc.js +29 -5
- package/query-planner/index.d.ts +20 -5
- package/query-planner/index.d.ts.map +1 -1
- package/query-planner/index.js +16 -3
- package/query-planner/ir.d.ts +6 -1
- package/query-planner/ir.d.ts.map +1 -1
- package/query-planner/ir.js +63 -1
- package/query-planner/odata-protocol-module.d.ts +54 -0
- package/query-planner/odata-protocol-module.d.ts.map +1 -0
- package/query-planner/odata-protocol-module.js +199 -0
- package/query-planner/odata-v1.d.ts +23 -0
- package/query-planner/odata-v1.d.ts.map +1 -0
- package/query-planner/odata-v1.js +202 -0
- package/query-planner/odata.d.ts +0 -3
- package/query-planner/odata.d.ts.map +1 -1
- package/query-planner/odata.js +0 -143
- package/query-planner/ogc-features.d.ts.map +1 -1
- package/query-planner/ogc-features.js +23 -1
- package/query-planner/planner.d.ts +2 -2
- package/query-planner/planner.d.ts.map +1 -1
- package/query-planner/planner.js +146 -27
- package/query-planner/representation.d.ts +59 -0
- package/query-planner/representation.d.ts.map +1 -0
- package/query-planner/representation.js +140 -0
- package/query-planner/types.d.ts +153 -3
- package/query-planner/types.d.ts.map +1 -1
- package/query-planner/wfs-protocol-module.d.ts +57 -0
- package/query-planner/wfs-protocol-module.d.ts.map +1 -0
- package/query-planner/wfs-protocol-module.js +731 -0
- package/query-planner/wfs-v1.d.ts +41 -0
- package/query-planner/wfs-v1.d.ts.map +1 -0
- package/query-planner/wfs-v1.js +366 -0
- package/query-planner/wfs.d.ts +1 -3
- package/query-planner/wfs.d.ts.map +1 -1
- package/query-planner/wfs.js +1 -70
- package/realtime/checkpoint-store.d.ts +206 -0
- package/realtime/checkpoint-store.d.ts.map +1 -0
- package/realtime/checkpoint-store.js +504 -0
- package/realtime/honua-server.d.ts +8 -0
- package/realtime/honua-server.d.ts.map +1 -1
- package/realtime/honua-server.js +123 -14
- package/realtime/index.d.ts +4 -0
- package/realtime/index.d.ts.map +1 -1
- package/realtime/index.js +2 -0
- package/realtime/reconciliation.d.ts +245 -0
- package/realtime/reconciliation.d.ts.map +1 -0
- package/realtime/reconciliation.js +377 -0
- package/realtime/resumable-transport.d.ts.map +1 -1
- package/realtime/sse.d.ts.map +1 -1
- package/realtime/websocket.d.ts.map +1 -1
- package/realtime/wire.d.ts +2 -1
- package/realtime/wire.d.ts.map +1 -1
- package/realtime/wire.js +24 -8
- package/replica-sync/errors.d.ts +19 -1
- package/replica-sync/errors.d.ts.map +1 -1
- package/replica-sync/errors.js +16 -0
- package/replica-sync/geoservices.d.ts +260 -0
- package/replica-sync/geoservices.d.ts.map +1 -0
- package/replica-sync/geoservices.js +1093 -0
- package/replica-sync/index.d.ts +5 -1
- package/replica-sync/index.d.ts.map +1 -1
- package/replica-sync/index.js +3 -1
- package/replica-sync/transport-conformance.d.ts +58 -0
- package/replica-sync/transport-conformance.d.ts.map +1 -0
- package/replica-sync/transport-conformance.js +265 -0
- package/replica-sync/types.d.ts +22 -0
- package/replica-sync/types.d.ts.map +1 -1
- package/runtime/index.d.ts +6 -2
- package/runtime/index.d.ts.map +1 -1
- package/runtime/index.js +3 -1
- package/runtime/load-package.d.ts +24 -0
- package/runtime/load-package.d.ts.map +1 -1
- package/runtime/load-package.js +45 -1
- package/runtime/maplibre-renderer.d.ts +11 -0
- package/runtime/maplibre-renderer.d.ts.map +1 -1
- package/runtime/maplibre-renderer.js +32 -7
- package/runtime/offline-region-protocol.d.ts +73 -0
- package/runtime/offline-region-protocol.d.ts.map +1 -0
- package/runtime/offline-region-protocol.js +63 -0
- package/runtime/offline-region-style.d.ts +78 -0
- package/runtime/offline-region-style.d.ts.map +1 -0
- package/runtime/offline-region-style.js +147 -0
- package/runtime/pmtiles-protocol.d.ts +7 -8
- package/runtime/pmtiles-protocol.d.ts.map +1 -1
- package/runtime/pmtiles-protocol.js +19 -66
- package/runtime/protocol-registry.d.ts +55 -0
- package/runtime/protocol-registry.d.ts.map +1 -0
- package/runtime/protocol-registry.js +103 -0
- package/runtime/runtime.d.ts +2 -0
- package/runtime/runtime.d.ts.map +1 -1
- package/runtime/runtime.js +6 -1
- package/scene-workspace/analysis-widgets.d.ts +4 -2
- package/scene-workspace/analysis-widgets.d.ts.map +1 -1
- package/scene-workspace/analysis-widgets.js +4 -2
- package/scene-workspace/camera-correspondence.d.ts +151 -0
- package/scene-workspace/camera-correspondence.d.ts.map +1 -0
- package/scene-workspace/camera-correspondence.js +220 -0
- package/scene-workspace/cesium-adapter.d.ts +230 -29
- package/scene-workspace/cesium-adapter.d.ts.map +1 -1
- package/scene-workspace/cesium-adapter.js +741 -56
- package/scene-workspace/cesium-mount.d.ts +205 -0
- package/scene-workspace/cesium-mount.d.ts.map +1 -0
- package/scene-workspace/cesium-mount.js +392 -0
- package/scene-workspace/cesium-scene-owner.d.ts +160 -0
- package/scene-workspace/cesium-scene-owner.d.ts.map +1 -0
- package/scene-workspace/cesium-scene-owner.js +205 -0
- package/scene-workspace/cesium-state-sync.d.ts +101 -0
- package/scene-workspace/cesium-state-sync.d.ts.map +1 -0
- package/scene-workspace/cesium-state-sync.js +432 -0
- package/scene-workspace/cesium-time.d.ts +346 -0
- package/scene-workspace/cesium-time.d.ts.map +1 -0
- package/scene-workspace/cesium-time.js +403 -0
- package/scene-workspace/index.d.ts +42 -10
- package/scene-workspace/index.d.ts.map +1 -1
- package/scene-workspace/index.js +32 -7
- package/scene-workspace/maplibre-state-sync.d.ts +112 -0
- package/scene-workspace/maplibre-state-sync.d.ts.map +1 -0
- package/scene-workspace/maplibre-state-sync.js +400 -0
- package/scene-workspace/primitives.d.ts +237 -3
- package/scene-workspace/primitives.d.ts.map +1 -1
- package/scene-workspace/primitives.js +1087 -17
- package/scene-workspace/scene-discovery.d.ts +5 -2
- package/scene-workspace/scene-discovery.d.ts.map +1 -1
- package/scene-workspace/scene-discovery.js +5 -2
- package/scene-workspace/scene-view.d.ts +5 -2
- package/scene-workspace/scene-view.d.ts.map +1 -1
- package/scene-workspace/scene-view.js +5 -2
- package/scene-workspace/source-to-cesium.d.ts +141 -8
- package/scene-workspace/source-to-cesium.d.ts.map +1 -1
- package/scene-workspace/source-to-cesium.js +497 -72
- package/scene-workspace/state-sync-port-kit.d.ts +156 -0
- package/scene-workspace/state-sync-port-kit.d.ts.map +1 -0
- package/scene-workspace/state-sync-port-kit.js +319 -0
- package/scene-workspace/state-sync.d.ts +34 -1
- package/scene-workspace/state-sync.d.ts.map +1 -1
- package/scene-workspace/state-sync.js +48 -0
- package/scene-workspace/types.d.ts +8 -0
- package/scene-workspace/types.d.ts.map +1 -1
- package/scene-workspace/types.js +2 -0
- package/scene-workspace/workspace.d.ts +12 -1
- package/scene-workspace/workspace.d.ts.map +1 -1
- package/scene-workspace/workspace.js +13 -0
- package/studio/index.d.ts +24 -7
- package/studio/index.d.ts.map +1 -1
- package/studio/index.js +21 -7
- package/studio/lifecycle-client.d.ts +164 -0
- package/studio/lifecycle-client.d.ts.map +1 -0
- package/studio/lifecycle-client.js +299 -0
- package/studio/lifecycle-errors.d.ts +91 -0
- package/studio/lifecycle-errors.d.ts.map +1 -0
- package/studio/lifecycle-errors.js +77 -0
- package/studio/lifecycle-types.d.ts +321 -0
- package/studio/lifecycle-types.d.ts.map +1 -0
- package/studio/lifecycle-types.js +22 -0
- package/web-components/controller.d.ts.map +1 -1
- package/web-components/csp-styles.d.ts +6 -0
- package/web-components/csp-styles.d.ts.map +1 -0
- package/web-components/csp-styles.js +53 -0
- package/web-components/elements.d.ts +158 -2
- package/web-components/elements.d.ts.map +1 -1
- package/web-components/elements.js +1302 -215
- package/web-components/export-redaction.d.ts +252 -0
- package/web-components/export-redaction.d.ts.map +1 -0
- package/web-components/export-redaction.js +588 -0
- package/web-components/export.d.ts +417 -0
- package/web-components/export.d.ts.map +1 -0
- package/web-components/export.js +719 -0
- package/web-components/feature-editor-model.d.ts +265 -0
- package/web-components/feature-editor-model.d.ts.map +1 -0
- package/web-components/feature-editor-model.js +438 -0
- package/web-components/feature-editor-sketch.d.ts +125 -0
- package/web-components/feature-editor-sketch.d.ts.map +1 -0
- package/web-components/feature-editor-sketch.js +194 -0
- package/web-components/feature-editor-workflow.d.ts +286 -0
- package/web-components/feature-editor-workflow.d.ts.map +1 -0
- package/web-components/feature-editor-workflow.js +889 -0
- package/web-components/feature-editor.d.ts +83 -0
- package/web-components/feature-editor.d.ts.map +1 -0
- package/web-components/feature-editor.js +829 -0
- package/web-components/feature-table-engine.d.ts +465 -0
- package/web-components/feature-table-engine.d.ts.map +1 -0
- package/web-components/feature-table-engine.js +1360 -0
- package/web-components/feature-table-view.d.ts +95 -0
- package/web-components/feature-table-view.d.ts.map +1 -0
- package/web-components/feature-table-view.js +343 -0
- package/web-components/index.d.ts +34 -3
- package/web-components/index.d.ts.map +1 -1
- package/web-components/index.js +35 -2
- package/web-components/maplibre-renderer.d.ts.map +1 -1
- package/web-components/maplibre-renderer.js +13 -4
- package/web-components/measurement.d.ts +3 -1
- package/web-components/measurement.d.ts.map +1 -1
- package/web-components/measurement.js +62 -18
- package/web-components/time-slider.d.ts +122 -0
- package/web-components/time-slider.d.ts.map +1 -0
- package/web-components/time-slider.js +740 -0
- package/web-components/types.d.ts +310 -0
- package/web-components/types.d.ts.map +1 -1
- package/webmap/convert-label.js +0 -1
- package/webmap/convert-symbol.d.ts.map +1 -1
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The 2D/3D camera correspondence.
|
|
3
|
+
*
|
|
4
|
+
* The renderer-neutral {@link SceneCameraState} is a globe pose: geodetic
|
|
5
|
+
* longitude/latitude, an ellipsoidal camera height in metres, and a
|
|
6
|
+
* heading/pitch/roll triple in degrees using Cesium's sign convention
|
|
7
|
+
* (`pitch = -90` looks straight down, `pitch = 0` looks at the horizon).
|
|
8
|
+
*
|
|
9
|
+
* A 2D web map does not carry a camera height at all — it carries a *zoom*,
|
|
10
|
+
* which is a statement about ground resolution. This module is the documented,
|
|
11
|
+
* unit-tested bridge between the two, so no consumer has to re-derive it. The
|
|
12
|
+
* Cesium half of the same correspondence lives in `cesium-adapter.ts`
|
|
13
|
+
* (`cameraStateToCesiumView` / `cesiumCameraToSceneState`), which needs no
|
|
14
|
+
* conversion because the workspace camera *is* a globe pose.
|
|
15
|
+
*
|
|
16
|
+
* ## The zoom/height relationship
|
|
17
|
+
*
|
|
18
|
+
* Zoom fixes the ground resolution of the projected plane:
|
|
19
|
+
*
|
|
20
|
+
* ```text
|
|
21
|
+
* groundResolution(zoom, lat) = C · cos(lat) / (tileSize · 2^zoom) [m/px]
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* where `C` is the WGS84 equatorial circumference. The 2D renderer places its
|
|
25
|
+
* perspective camera so the map centre fills the viewport at that resolution:
|
|
26
|
+
*
|
|
27
|
+
* ```text
|
|
28
|
+
* centreDistance(px) = 0.5 · viewportHeight / tan(fov / 2)
|
|
29
|
+
* centreDistance(m) = groundResolution · centreDistance(px)
|
|
30
|
+
* cameraHeight(m) = centreDistance(m) · cos(pitch2D)
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* The relationship is therefore **not** latitude-independent and **not**
|
|
34
|
+
* viewport-independent: the same zoom on a taller viewport puts the camera
|
|
35
|
+
* further away in metres, because more ground is on screen at the same
|
|
36
|
+
* resolution. Both halves are captured in {@link MapLibreCameraGeometry}, which
|
|
37
|
+
* a live port reads from the map it is bound to rather than assuming.
|
|
38
|
+
*
|
|
39
|
+
* ## What cannot round-trip
|
|
40
|
+
*
|
|
41
|
+
* A globe camera can hold poses a Web Mercator plane cannot express. Those are
|
|
42
|
+
* clamped and reported as {@link SceneCameraDegradation} entries rather than
|
|
43
|
+
* silently applied: latitudes beyond the Mercator limit, zooms outside the
|
|
44
|
+
* map's own range, pitches beyond the map's maximum, and a non-zero roll on a
|
|
45
|
+
* renderer that does not support roll. A projection that needed no clamping
|
|
46
|
+
* reports `exact` fidelity and round-trips to floating-point precision.
|
|
47
|
+
*
|
|
48
|
+
* @beta Part of the beta `@honua/app-platform/scene-workspace` surface.
|
|
49
|
+
* @module
|
|
50
|
+
*/
|
|
51
|
+
/** WGS84 equatorial circumference in metres (`2π · 6378137`). */
|
|
52
|
+
export const EARTH_CIRCUMFERENCE_METERS = 40_075_016.685_578_49;
|
|
53
|
+
/**
|
|
54
|
+
* The Web Mercator latitude limit in degrees. Beyond it the projection is
|
|
55
|
+
* undefined, so a globe camera over the poles has no 2D equivalent.
|
|
56
|
+
*/
|
|
57
|
+
export const WEB_MERCATOR_MAX_LATITUDE = 85.051_128_779_806_59;
|
|
58
|
+
/** Documented defaults for {@link MapLibreCameraGeometry}. */
|
|
59
|
+
export const DEFAULT_MAPLIBRE_CAMERA_GEOMETRY = Object.freeze({
|
|
60
|
+
viewportHeightPixels: 600,
|
|
61
|
+
fovRadians: 0.643_501_108_793_284_4,
|
|
62
|
+
tileSizePixels: 512,
|
|
63
|
+
});
|
|
64
|
+
/** Documented defaults for {@link MapLibreCameraLimits}. */
|
|
65
|
+
export const DEFAULT_MAPLIBRE_CAMERA_LIMITS = Object.freeze({
|
|
66
|
+
minZoom: 0,
|
|
67
|
+
maxZoom: 22,
|
|
68
|
+
maxPitch: 60,
|
|
69
|
+
rollSupported: false,
|
|
70
|
+
});
|
|
71
|
+
const DEG2RAD = Math.PI / 180;
|
|
72
|
+
/** Smallest camera height treated as physical, so the inverse never divides by zero. */
|
|
73
|
+
const MIN_CAMERA_HEIGHT_METERS = 1e-3;
|
|
74
|
+
/**
|
|
75
|
+
* Ground resolution in metres per CSS pixel at a zoom and latitude.
|
|
76
|
+
*
|
|
77
|
+
* This is the definition of zoom, and the only part of the correspondence that
|
|
78
|
+
* is independent of the viewport and the lens.
|
|
79
|
+
*/
|
|
80
|
+
export function mapLibreGroundResolutionMeters(zoom, latitude, geometry = DEFAULT_MAPLIBRE_CAMERA_GEOMETRY) {
|
|
81
|
+
const normalized = normalizeGeometry(geometry);
|
|
82
|
+
const cosine = Math.cos(clampLatitude(latitude) * DEG2RAD);
|
|
83
|
+
return (EARTH_CIRCUMFERENCE_METERS * cosine) / (normalized.tileSizePixels * 2 ** zoom);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Camera height in metres above the map centre for a 2D zoom.
|
|
87
|
+
*
|
|
88
|
+
* `pitchDegrees` is the 2D tilt (`0` = straight down), not the globe pitch.
|
|
89
|
+
*/
|
|
90
|
+
export function mapLibreZoomToCameraHeight(zoom, latitude, pitchDegrees = 0, geometry = DEFAULT_MAPLIBRE_CAMERA_GEOMETRY) {
|
|
91
|
+
const normalized = normalizeGeometry(geometry);
|
|
92
|
+
const distance = mapLibreGroundResolutionMeters(zoom, latitude, normalized) * centerDistancePixels(normalized);
|
|
93
|
+
return Math.max(MIN_CAMERA_HEIGHT_METERS, distance * Math.cos(clampPitch(pitchDegrees) * DEG2RAD));
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The inverse of {@link mapLibreZoomToCameraHeight}: the zoom whose camera sits
|
|
97
|
+
* `height` metres above the map centre. Unclamped — callers decide what their
|
|
98
|
+
* map will accept.
|
|
99
|
+
*/
|
|
100
|
+
export function mapLibreCameraHeightToZoom(height, latitude, pitchDegrees = 0, geometry = DEFAULT_MAPLIBRE_CAMERA_GEOMETRY) {
|
|
101
|
+
const normalized = normalizeGeometry(geometry);
|
|
102
|
+
const safeHeight = Math.max(MIN_CAMERA_HEIGHT_METERS, finite(height, MIN_CAMERA_HEIGHT_METERS));
|
|
103
|
+
const distance = safeHeight / Math.cos(clampPitch(pitchDegrees) * DEG2RAD);
|
|
104
|
+
const resolution = distance / centerDistancePixels(normalized);
|
|
105
|
+
const cosine = Math.cos(clampLatitude(latitude) * DEG2RAD);
|
|
106
|
+
return Math.log2((EARTH_CIRCUMFERENCE_METERS * cosine) / (normalized.tileSizePixels * resolution));
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Read a 2D map view as a renderer-neutral globe pose.
|
|
110
|
+
*
|
|
111
|
+
* Always lossless in this direction: every 2D view is a valid globe pose. The
|
|
112
|
+
* pitch convention flips (`pitch2D = 0` looks down, which is `pitch = -90` on
|
|
113
|
+
* the globe) and the bearing is the heading unchanged.
|
|
114
|
+
*/
|
|
115
|
+
export function mapLibreViewToSceneCamera(view, geometry = DEFAULT_MAPLIBRE_CAMERA_GEOMETRY) {
|
|
116
|
+
const longitude = wrapLongitude(finite(view.center[0], 0));
|
|
117
|
+
const latitude = clampLatitude(finite(view.center[1], 0));
|
|
118
|
+
const pitch = clampPitch(finite(view.pitch, 0));
|
|
119
|
+
return Object.freeze({
|
|
120
|
+
longitude,
|
|
121
|
+
latitude,
|
|
122
|
+
height: mapLibreZoomToCameraHeight(finite(view.zoom, 0), latitude, pitch, geometry),
|
|
123
|
+
heading: wrapDegrees(finite(view.bearing, 0)),
|
|
124
|
+
pitch: pitch - 90,
|
|
125
|
+
roll: wrapSignedDegrees(finite(view.roll, 0)),
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Project a globe pose onto a 2D map view, clamping what the plane cannot hold
|
|
130
|
+
* and naming every clamp.
|
|
131
|
+
*
|
|
132
|
+
* The caller is expected to apply `view` and surface `degradations`; the shared
|
|
133
|
+
* state is deliberately left alone, because writing the clamped pose back would
|
|
134
|
+
* drag the 3D view down to the 2D renderer's limits.
|
|
135
|
+
*/
|
|
136
|
+
export function sceneCameraToMapLibreView(camera, options = {}) {
|
|
137
|
+
const geometry = normalizeGeometry(options.geometry ?? DEFAULT_MAPLIBRE_CAMERA_GEOMETRY);
|
|
138
|
+
const limits = normalizeLimits(options.limits ?? DEFAULT_MAPLIBRE_CAMERA_LIMITS);
|
|
139
|
+
const degradations = [];
|
|
140
|
+
const requestedLatitude = finite(camera.latitude, 0);
|
|
141
|
+
const latitude = clampLatitude(requestedLatitude);
|
|
142
|
+
if (Math.abs(requestedLatitude - latitude) > 1e-9) {
|
|
143
|
+
degradations.push(degradation("camera-latitude-clamped", "Latitude is beyond the Web Mercator limit and was clamped; the 2D plane cannot reach the poles.", requestedLatitude, latitude));
|
|
144
|
+
}
|
|
145
|
+
const requestedPitch = finite(camera.pitch ?? -90, -90) + 90;
|
|
146
|
+
const pitch = Math.min(Math.max(requestedPitch, 0), limits.maxPitch);
|
|
147
|
+
if (Math.abs(requestedPitch - pitch) > 1e-9) {
|
|
148
|
+
degradations.push(degradation("camera-pitch-clamped", "Globe pitch exceeds the 2D map's maximum tilt and was clamped.", requestedPitch, pitch));
|
|
149
|
+
}
|
|
150
|
+
const requestedZoom = mapLibreCameraHeightToZoom(Math.max(finite(camera.height, MIN_CAMERA_HEIGHT_METERS), MIN_CAMERA_HEIGHT_METERS), latitude, pitch, geometry);
|
|
151
|
+
const zoom = Math.min(Math.max(requestedZoom, limits.minZoom), limits.maxZoom);
|
|
152
|
+
if (Math.abs(requestedZoom - zoom) > 1e-9) {
|
|
153
|
+
degradations.push(degradation("camera-zoom-clamped", "Camera height maps outside the 2D map's zoom range and was clamped.", requestedZoom, zoom));
|
|
154
|
+
}
|
|
155
|
+
const requestedRoll = wrapSignedDegrees(finite(camera.roll ?? 0, 0));
|
|
156
|
+
const roll = limits.rollSupported ? requestedRoll : 0;
|
|
157
|
+
if (!limits.rollSupported && Math.abs(requestedRoll) > 1e-9) {
|
|
158
|
+
degradations.push(degradation("camera-roll-dropped", "The 2D renderer cannot express camera roll; the globe's roll was dropped.", requestedRoll, 0));
|
|
159
|
+
}
|
|
160
|
+
return Object.freeze({
|
|
161
|
+
view: Object.freeze({
|
|
162
|
+
center: Object.freeze([wrapLongitude(finite(camera.longitude, 0)), latitude]),
|
|
163
|
+
zoom,
|
|
164
|
+
bearing: wrapDegrees(finite(camera.heading ?? 0, 0)),
|
|
165
|
+
pitch,
|
|
166
|
+
roll,
|
|
167
|
+
}),
|
|
168
|
+
fidelity: (degradations.length === 0 ? "exact" : "equivalent"),
|
|
169
|
+
degradations: Object.freeze(degradations),
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
function degradation(code, message, requested, applied) {
|
|
173
|
+
return Object.freeze({ code, message, requested, applied });
|
|
174
|
+
}
|
|
175
|
+
function centerDistancePixels(geometry) {
|
|
176
|
+
return (0.5 * geometry.viewportHeightPixels) / Math.tan(geometry.fovRadians / 2);
|
|
177
|
+
}
|
|
178
|
+
function normalizeGeometry(geometry) {
|
|
179
|
+
const viewportHeightPixels = positive(geometry?.viewportHeightPixels, DEFAULT_MAPLIBRE_CAMERA_GEOMETRY.viewportHeightPixels);
|
|
180
|
+
const tileSizePixels = positive(geometry?.tileSizePixels, DEFAULT_MAPLIBRE_CAMERA_GEOMETRY.tileSizePixels);
|
|
181
|
+
const fovRaw = positive(geometry?.fovRadians, DEFAULT_MAPLIBRE_CAMERA_GEOMETRY.fovRadians);
|
|
182
|
+
const fovRadians = fovRaw >= Math.PI ? DEFAULT_MAPLIBRE_CAMERA_GEOMETRY.fovRadians : fovRaw;
|
|
183
|
+
return { viewportHeightPixels, fovRadians, tileSizePixels };
|
|
184
|
+
}
|
|
185
|
+
function normalizeLimits(limits) {
|
|
186
|
+
const minZoom = finite(limits?.minZoom, DEFAULT_MAPLIBRE_CAMERA_LIMITS.minZoom);
|
|
187
|
+
const maxZoomRaw = finite(limits?.maxZoom, DEFAULT_MAPLIBRE_CAMERA_LIMITS.maxZoom);
|
|
188
|
+
return {
|
|
189
|
+
minZoom,
|
|
190
|
+
maxZoom: Math.max(minZoom, maxZoomRaw),
|
|
191
|
+
maxPitch: Math.min(Math.max(finite(limits?.maxPitch, DEFAULT_MAPLIBRE_CAMERA_LIMITS.maxPitch), 0), 89),
|
|
192
|
+
rollSupported: limits?.rollSupported === true,
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
function clampLatitude(latitude) {
|
|
196
|
+
return Math.min(Math.max(latitude, -WEB_MERCATOR_MAX_LATITUDE), WEB_MERCATOR_MAX_LATITUDE);
|
|
197
|
+
}
|
|
198
|
+
function clampPitch(pitch) {
|
|
199
|
+
return Math.min(Math.max(pitch, 0), 89);
|
|
200
|
+
}
|
|
201
|
+
function wrapLongitude(longitude) {
|
|
202
|
+
const wrapped = ((((longitude + 180) % 360) + 360) % 360) - 180;
|
|
203
|
+
return Object.is(wrapped, -0) ? 0 : wrapped;
|
|
204
|
+
}
|
|
205
|
+
/** Wrap into `[0, 360)`, matching the heading range the Cesium half normalizes to. */
|
|
206
|
+
function wrapDegrees(degrees) {
|
|
207
|
+
const wrapped = degrees % 360;
|
|
208
|
+
return wrapped < 0 ? wrapped + 360 : wrapped;
|
|
209
|
+
}
|
|
210
|
+
/** Wrap into `(-180, 180]`, the natural range for a signed roll. */
|
|
211
|
+
function wrapSignedDegrees(degrees) {
|
|
212
|
+
const wrapped = wrapDegrees(degrees);
|
|
213
|
+
return wrapped > 180 ? wrapped - 360 : wrapped;
|
|
214
|
+
}
|
|
215
|
+
function finite(value, fallback) {
|
|
216
|
+
return typeof value === "number" && Number.isFinite(value) ? value : fallback;
|
|
217
|
+
}
|
|
218
|
+
function positive(value, fallback) {
|
|
219
|
+
return typeof value === "number" && Number.isFinite(value) && value > 0 ? value : fallback;
|
|
220
|
+
}
|
|
@@ -7,20 +7,30 @@
|
|
|
7
7
|
* when a live {@link CesiumSceneRuntimeTarget} is actually driven.
|
|
8
8
|
*
|
|
9
9
|
* As of honua-server#1197 the adapter renders Honua 3D content end-to-end:
|
|
10
|
-
* 3D-Tiles tilesets (add/remove/visibility
|
|
11
|
-
* via `CesiumTerrainProvider`, with
|
|
12
|
-
*
|
|
13
|
-
* 3D-Tiles feature's
|
|
10
|
+
* 3D-Tiles tilesets (add/remove/visibility, including point clouds with bounded
|
|
11
|
+
* shading), terrain providers (quantized-mesh via `CesiumTerrainProvider`, with
|
|
12
|
+
* vertical exaggeration), imagery providers, and glTF/GLB model layers placed
|
|
13
|
+
* with heading/pitch/roll + scale. It also resolves a picked 3D-Tiles feature's
|
|
14
|
+
* attributes (batch properties / `EXT_structural_metadata`).
|
|
15
|
+
*
|
|
16
|
+
* Every model/imagery binding is validated before the peer loads, so an
|
|
17
|
+
* unrenderable primitive fails closed with a stable diagnostic instead of
|
|
18
|
+
* reaching a Cesium factory or silently rendering nothing.
|
|
14
19
|
*
|
|
15
20
|
* The provider wiring is still kept Cesium-mockable: every CesiumJS symbol the
|
|
16
21
|
* adapter touches is read off the lazily-imported module, so the wiring is
|
|
17
22
|
* exercised against a `vi.mock("cesium")` stub without a live WebGL `Viewer`.
|
|
18
23
|
*
|
|
19
|
-
* @
|
|
20
|
-
*
|
|
24
|
+
* @beta Part of the beta `@honua/app-platform/scene-workspace` surface: the
|
|
25
|
+
* adapter's exports are not renamed or removed through 0.1.x, and diagnostic
|
|
26
|
+
* codes and renderer capability flags grow additively. The `cesium` peer floor
|
|
27
|
+
* may rise within 0.1.x, and the server-authored 3D style types track the
|
|
28
|
+
* Honua Server styling contract. See the surface tiers table in
|
|
29
|
+
* `docs/standalone-capability-matrix.md`.
|
|
21
30
|
* @module
|
|
22
31
|
*/
|
|
23
|
-
import { type
|
|
32
|
+
import { type CesiumClockTarget, type CesiumSceneTimeApplication } from "./cesium-time.js";
|
|
33
|
+
import { type SceneElevationSourcePrimitive, type SceneImageryLayerPrimitive, type SceneModelLayerPrimitive, type ScenePrimitiveApplyResult, type ScenePrimitiveDiagnostic, type ScenePrimitiveStatus, type SceneRuntimeAdapter, type SceneRuntimeCapabilities, type SceneRuntimePrimitive } from "./primitives.js";
|
|
24
34
|
import type { SceneCameraState, SceneWorkspaceState } from "./types.js";
|
|
25
35
|
/**
|
|
26
36
|
* Capabilities advertised by the Cesium adapter. Unlike the MapLibre 2.5D
|
|
@@ -66,13 +76,16 @@ export interface CesiumCameraLike {
|
|
|
66
76
|
readonly heading: number;
|
|
67
77
|
readonly pitch: number;
|
|
68
78
|
readonly roll: number;
|
|
79
|
+
/**
|
|
80
|
+
* `orientation` is `unknown` rather than a heading/pitch/roll record because
|
|
81
|
+
* the real `Camera.setView` also accepts a direction/up pair. Narrowing it
|
|
82
|
+
* here made a live `Camera` fail to satisfy this interface, which is the one
|
|
83
|
+
* thing it exists to describe (#1049); callers still build the orientation
|
|
84
|
+
* through the typed {@link CesiumHeadingPitchRollRadians}.
|
|
85
|
+
*/
|
|
69
86
|
setView(options: {
|
|
70
87
|
destination?: unknown;
|
|
71
|
-
orientation?:
|
|
72
|
-
heading?: number;
|
|
73
|
-
pitch?: number;
|
|
74
|
-
roll?: number;
|
|
75
|
-
};
|
|
88
|
+
orientation?: unknown;
|
|
76
89
|
}): void;
|
|
77
90
|
}
|
|
78
91
|
/**
|
|
@@ -95,10 +108,15 @@ export interface CesiumTilesetLike {
|
|
|
95
108
|
/**
|
|
96
109
|
* A glTF/GLB model handle (the bits the adapter mutates). Real Cesium `Model`
|
|
97
110
|
* instances satisfy this.
|
|
111
|
+
*
|
|
112
|
+
* `color` is Cesium's per-model blend color; its alpha channel is how a `Model`
|
|
113
|
+
* expresses opacity, which is what backs {@link CesiumLayerHandle.setOpacity}
|
|
114
|
+
* on the glTF/GLB path.
|
|
98
115
|
*/
|
|
99
116
|
export interface CesiumModelLike {
|
|
100
117
|
show: boolean;
|
|
101
118
|
modelMatrix?: unknown;
|
|
119
|
+
color?: unknown;
|
|
102
120
|
destroy?(): void;
|
|
103
121
|
isDestroyed?(): boolean;
|
|
104
122
|
}
|
|
@@ -111,17 +129,36 @@ export interface CesiumPrimitiveCollectionLike {
|
|
|
111
129
|
remove(primitive?: unknown): boolean;
|
|
112
130
|
contains(primitive?: unknown): boolean;
|
|
113
131
|
}
|
|
132
|
+
export interface CesiumImageryProviderLike {
|
|
133
|
+
destroy?(): void;
|
|
134
|
+
isDestroyed?(): boolean;
|
|
135
|
+
}
|
|
136
|
+
export interface CesiumImageryLayerLike {
|
|
137
|
+
show: boolean;
|
|
138
|
+
alpha: number;
|
|
139
|
+
destroy?(): void;
|
|
140
|
+
isDestroyed?(): boolean;
|
|
141
|
+
}
|
|
142
|
+
export interface CesiumImageryLayerCollectionLike {
|
|
143
|
+
addImageryProvider(provider: CesiumImageryProviderLike, index?: number): CesiumImageryLayerLike;
|
|
144
|
+
remove(layer: CesiumImageryLayerLike, destroy?: boolean): boolean;
|
|
145
|
+
contains(layer: CesiumImageryLayerLike): boolean;
|
|
146
|
+
}
|
|
114
147
|
/**
|
|
115
|
-
* The Cesium `Scene` surface the adapter mutates:
|
|
116
|
-
*
|
|
148
|
+
* The Cesium `Scene` surface the adapter mutates: primitive and imagery
|
|
149
|
+
* collections, a settable `terrainProvider`, vertical exaggeration, and a
|
|
117
150
|
* `pick` entry point used by {@link pickCesiumFeatureAttributes}.
|
|
118
151
|
*/
|
|
119
152
|
export interface CesiumSceneLike {
|
|
120
153
|
readonly primitives: CesiumPrimitiveCollectionLike;
|
|
154
|
+
readonly imageryLayers?: CesiumImageryLayerCollectionLike;
|
|
121
155
|
terrainProvider?: unknown;
|
|
122
156
|
verticalExaggeration?: number;
|
|
123
157
|
pick?(windowPosition: unknown, width?: number, height?: number): unknown;
|
|
124
158
|
}
|
|
159
|
+
interface CesiumTerrainProviderLike {
|
|
160
|
+
destroy?(): void;
|
|
161
|
+
}
|
|
125
162
|
/**
|
|
126
163
|
* The subset of a live Cesium `Viewer`/`Scene` the adapter drives. Supplying
|
|
127
164
|
* this is optional: an adapter created without a target still diagnoses
|
|
@@ -129,8 +166,13 @@ export interface CesiumSceneLike {
|
|
|
129
166
|
*
|
|
130
167
|
* `scene` is optional so a camera-only target (as shipped in #1196) keeps
|
|
131
168
|
* working unchanged; layer rendering simply no-ops without it.
|
|
169
|
+
*
|
|
170
|
+
* `clock` (from {@link CesiumClockTarget}) is the opt-in for application-time
|
|
171
|
+
* binding: supply `viewer.clock` and the adapter drives it from the workspace
|
|
172
|
+
* `timeline` slice; omit it and no clock is ever touched. See
|
|
173
|
+
* `docs/scene-workspace.md` for the ownership contract.
|
|
132
174
|
*/
|
|
133
|
-
export interface CesiumSceneRuntimeTarget {
|
|
175
|
+
export interface CesiumSceneRuntimeTarget extends CesiumClockTarget {
|
|
134
176
|
readonly camera: CesiumCameraLike;
|
|
135
177
|
readonly scene?: CesiumSceneLike;
|
|
136
178
|
}
|
|
@@ -151,12 +193,21 @@ export interface CesiumModelPlacement {
|
|
|
151
193
|
/**
|
|
152
194
|
* The handle returned by {@link applyCesiumScenePrimitives} so callers can
|
|
153
195
|
* later toggle visibility or tear a layer down. Keyed by the primitive id.
|
|
196
|
+
*
|
|
197
|
+
* `setOpacity` is present only where the underlying Cesium object exposes an
|
|
198
|
+
* alpha channel the adapter owns: imagery layers (`ImageryLayer.alpha`) and
|
|
199
|
+
* glTF/GLB models (`Model.color` alpha). A `Cesium3DTileset` has no tileset-wide
|
|
200
|
+
* alpha — tileset translucency is a `Cesium3DTileStyle` concern owned by the
|
|
201
|
+
* server styling contract — so tileset handles deliberately omit it rather than
|
|
202
|
+
* clobbering an applied style. Callers must feature-detect.
|
|
154
203
|
*/
|
|
155
204
|
export interface CesiumLayerHandle {
|
|
156
205
|
readonly id: string;
|
|
157
|
-
readonly kind: "model-layer" | "elevation-source";
|
|
206
|
+
readonly kind: "model-layer" | "elevation-source" | "imagery-layer";
|
|
158
207
|
readonly format?: SceneModelLayerPrimitive["format"];
|
|
208
|
+
readonly protocol?: SceneImageryLayerPrimitive["protocol"];
|
|
159
209
|
setVisible(visible: boolean): void;
|
|
210
|
+
setOpacity?(opacity: number): void;
|
|
160
211
|
remove(): void;
|
|
161
212
|
}
|
|
162
213
|
/**
|
|
@@ -219,11 +270,33 @@ type CesiumModule = {
|
|
|
219
270
|
fromUrl(url: string, options?: Record<string, unknown>): Promise<CesiumTilesetLike>;
|
|
220
271
|
};
|
|
221
272
|
readonly Cesium3DTileStyle: new (style?: Record<string, unknown>) => unknown;
|
|
273
|
+
readonly Color: {
|
|
274
|
+
readonly WHITE: {
|
|
275
|
+
withAlpha(alpha: number): unknown;
|
|
276
|
+
};
|
|
277
|
+
};
|
|
222
278
|
readonly Model: {
|
|
223
279
|
fromGltfAsync(options: Record<string, unknown>): Promise<CesiumModelLike>;
|
|
224
280
|
};
|
|
225
281
|
readonly CesiumTerrainProvider: {
|
|
226
|
-
fromUrl(url: string, options?: Record<string, unknown>): Promise<
|
|
282
|
+
fromUrl(url: string, options?: Record<string, unknown>): Promise<CesiumTerrainProviderLike>;
|
|
283
|
+
};
|
|
284
|
+
/**
|
|
285
|
+
* Optional on purpose: only the clock binding reads it, and a peer without it
|
|
286
|
+
* degrades to `scene-time-runtime-unavailable` instead of throwing, so a
|
|
287
|
+
* plan-only application never depends on it.
|
|
288
|
+
*/
|
|
289
|
+
readonly JulianDate?: {
|
|
290
|
+
fromIso8601(value: string): unknown;
|
|
291
|
+
};
|
|
292
|
+
readonly UrlTemplateImageryProvider: new (options: Record<string, unknown>) => CesiumImageryProviderLike;
|
|
293
|
+
readonly WebMapServiceImageryProvider: new (options: Record<string, unknown>) => CesiumImageryProviderLike;
|
|
294
|
+
readonly WebMapTileServiceImageryProvider: new (options: Record<string, unknown>) => CesiumImageryProviderLike;
|
|
295
|
+
readonly SingleTileImageryProvider: {
|
|
296
|
+
fromUrl(url: string, options?: Record<string, unknown>): Promise<CesiumImageryProviderLike>;
|
|
297
|
+
};
|
|
298
|
+
readonly ArcGisMapServerImageryProvider: {
|
|
299
|
+
fromUrl(url: string, options?: Record<string, unknown>): Promise<CesiumImageryProviderLike>;
|
|
227
300
|
};
|
|
228
301
|
};
|
|
229
302
|
/**
|
|
@@ -336,10 +409,25 @@ export declare function setTilesetStyle(tileset: CesiumTilesetLike, spec: Honua3
|
|
|
336
409
|
* load a tileset themselves.
|
|
337
410
|
*/
|
|
338
411
|
export declare function applyTilesetServerStyle(tileset: CesiumTilesetLike, tilesetUrl: string, cesium?: CesiumModule, fetchImpl?: typeof fetch): Promise<Honua3DStyleSpec | undefined>;
|
|
412
|
+
/**
|
|
413
|
+
* Cancellation shared by every adapter entry point that materializes a live
|
|
414
|
+
* renderer resource.
|
|
415
|
+
*
|
|
416
|
+
* The Cesium asset factories (`Cesium3DTileset.fromUrl`, `Model.fromGltfAsync`,
|
|
417
|
+
* `SingleTileImageryProvider.fromUrl`, …) take no `AbortSignal`, so a load that
|
|
418
|
+
* is already in flight cannot be stopped at the peer. What the signal *does*
|
|
419
|
+
* guarantee is the half that matters for teardown: an aborted load is never
|
|
420
|
+
* attached to the scene, and the resource it resolved to is destroyed before the
|
|
421
|
+
* rejection propagates. Nothing is stranded in a scene the host has abandoned.
|
|
422
|
+
*/
|
|
423
|
+
export interface CesiumSceneMaterializationOptions {
|
|
424
|
+
/** Abort the materialization. Checked before the load starts and again before the resource is attached. */
|
|
425
|
+
readonly signal?: AbortSignal;
|
|
426
|
+
}
|
|
339
427
|
/**
|
|
340
428
|
* Options controlling {@link addCesium3DTileset}.
|
|
341
429
|
*/
|
|
342
|
-
export interface AddCesium3DTilesetOptions {
|
|
430
|
+
export interface AddCesium3DTilesetOptions extends CesiumSceneMaterializationOptions {
|
|
343
431
|
/**
|
|
344
432
|
* When `true` (the default), a tileset that advertises Honua styling metadata
|
|
345
433
|
* (`extras.honua_style`) has its `style.json` sidecar fetched and applied
|
|
@@ -369,9 +457,18 @@ export declare function addCesium3DTileset(scene: CesiumSceneLike, primitive: Sc
|
|
|
369
457
|
/**
|
|
370
458
|
* Materialize a glTF/GLB model from a model-layer primitive, placing it at the
|
|
371
459
|
* primitive's position/rotation/scale, and add it to the scene. Returns a
|
|
372
|
-
* handle for visibility / teardown.
|
|
460
|
+
* handle for visibility / opacity / teardown.
|
|
461
|
+
*/
|
|
462
|
+
export declare function addCesiumModel(scene: CesiumSceneLike, primitive: SceneModelLayerPrimitive, cesium?: CesiumModule, options?: CesiumSceneMaterializationOptions): Promise<CesiumLayerHandle>;
|
|
463
|
+
/**
|
|
464
|
+
* Materialize one renderer-neutral imagery primitive through Cesium's matching
|
|
465
|
+
* provider and add it to the scene's imagery collection.
|
|
466
|
+
*
|
|
467
|
+
* The returned handle owns the provider and layer it creates. Removal is
|
|
468
|
+
* idempotent, releases the layer's GPU resources through Cesium, and calls an
|
|
469
|
+
* optional provider `destroy()` exactly once.
|
|
373
470
|
*/
|
|
374
|
-
export declare function
|
|
471
|
+
export declare function addCesiumImageryLayer(scene: CesiumSceneLike, primitive: SceneImageryLayerPrimitive, cesium?: CesiumModule, options?: CesiumSceneMaterializationOptions): Promise<CesiumLayerHandle>;
|
|
375
472
|
/**
|
|
376
473
|
* Wire a terrain provider from an elevation-source primitive onto the scene.
|
|
377
474
|
*
|
|
@@ -405,27 +502,131 @@ export declare function pickCesiumFeatureAttributes(scene: CesiumSceneLike, wind
|
|
|
405
502
|
* As of #1197 this lands the full 3D stack against `target.scene`:
|
|
406
503
|
* - `camera` → `Camera.setView` (via the lazily-loaded `Cartesian3`).
|
|
407
504
|
* - `elevation-source` → `scene.terrainProvider` + `verticalExaggeration`.
|
|
505
|
+
* - `imagery-layer` → a protocol-specific provider added to `scene.imageryLayers`.
|
|
408
506
|
* - `model-layer` (`3d-tiles`) → `Cesium3DTileset.fromUrl` added to
|
|
409
507
|
* `scene.primitives`; (`gltf`/`glb`) → `Model.fromGltfAsync` placed by
|
|
410
508
|
* position/rotation/scale.
|
|
411
509
|
*
|
|
412
510
|
* Returns the diagnostics plus the live layer handles keyed by primitive id so
|
|
413
511
|
* callers can toggle visibility / tear layers down. Layer rendering is skipped
|
|
414
|
-
*
|
|
415
|
-
*
|
|
416
|
-
*
|
|
417
|
-
*
|
|
418
|
-
|
|
419
|
-
|
|
512
|
+
* when no `scene` is attached or when a primitive diagnoses as unsupported —
|
|
513
|
+
* and every skip is accounted for by a diagnostic, so nothing is silently
|
|
514
|
+
* dropped. Point clouds ride the 3D-Tiles path with optional
|
|
515
|
+
* `pointCloudShading`. I3S is declared-capable but unmaterialized, so it
|
|
516
|
+
* diagnoses `scene-primitive-model-format-not-materialized`; extrusions remain
|
|
517
|
+
* a MapLibre-path concern.
|
|
518
|
+
*
|
|
519
|
+
* As of #1048 `state` is load-bearing: its `timeline` slice is bound to the
|
|
520
|
+
* target's clock when the host opted into one (see
|
|
521
|
+
* {@link CesiumSceneRuntimeTarget}), and every arm — applied, host-owned,
|
|
522
|
+
* unbound, uninterpretable — reports itself as a `scene-time-*` diagnostic.
|
|
523
|
+
* Binding time constructs no renderer resource, so it never displaces a
|
|
524
|
+
* primitive: the mount's reuse diff is untouched by a moving clock.
|
|
525
|
+
*/
|
|
526
|
+
export declare function applyCesiumScenePrimitives(target: CesiumSceneRuntimeTarget, primitives: readonly SceneRuntimePrimitive[], state?: SceneWorkspaceState): Promise<ScenePrimitiveApplyResult & {
|
|
420
527
|
readonly layers: ReadonlyMap<string, CesiumLayerHandle>;
|
|
421
528
|
}>;
|
|
529
|
+
/**
|
|
530
|
+
* Stable identity of a scene primitive within one mount: its kind and id.
|
|
531
|
+
*
|
|
532
|
+
* Identity is deliberately kind-qualified. Two primitives of different kinds may
|
|
533
|
+
* legitimately share an id (a terrain source and the imagery draped over it, for
|
|
534
|
+
* instance), and they own different renderer resources, so they must never be
|
|
535
|
+
* treated as revisions of one another.
|
|
536
|
+
*
|
|
537
|
+
* @internal
|
|
538
|
+
*/
|
|
539
|
+
export declare function scenePrimitiveMountKey(primitive: SceneRuntimePrimitive): string;
|
|
540
|
+
/**
|
|
541
|
+
* A stable, order-independent fingerprint of a primitive's configuration, used
|
|
542
|
+
* to decide whether a revised plan's primitive is the *same* binding as the one
|
|
543
|
+
* already mounted.
|
|
544
|
+
*
|
|
545
|
+
* Returns `undefined` when the primitive cannot be fingerprinted deterministically
|
|
546
|
+
* (a cycle, or a non-serializable value smuggled through `metadata`). An absent
|
|
547
|
+
* fingerprint means "assume changed": the binding is rebuilt rather than reused,
|
|
548
|
+
* which costs a rebuild but can never leave a stale renderer resource claiming to
|
|
549
|
+
* satisfy a plan it no longer matches.
|
|
550
|
+
*
|
|
551
|
+
* @internal
|
|
552
|
+
*/
|
|
553
|
+
export declare function scenePrimitiveFingerprint(primitive: SceneRuntimePrimitive): string | undefined;
|
|
554
|
+
/**
|
|
555
|
+
* Options for the internal apply engine that both {@link applyCesiumScenePrimitives}
|
|
556
|
+
* and the mount lifecycle share.
|
|
557
|
+
*
|
|
558
|
+
* @internal
|
|
559
|
+
*/
|
|
560
|
+
export interface ApplyCesiumScenePrimitivesInternalOptions {
|
|
561
|
+
/**
|
|
562
|
+
* Cancels the application. Checked before the Cesium peer loads, between
|
|
563
|
+
* primitives, and inside each materialization before its resource is attached.
|
|
564
|
+
* An abort unwinds through the same rollback path as any other failure, so the
|
|
565
|
+
* scene is left exactly as it was before the application started.
|
|
566
|
+
*/
|
|
567
|
+
readonly signal?: AbortSignal;
|
|
568
|
+
/**
|
|
569
|
+
* Keys (see {@link scenePrimitiveMountKey}) whose primitive is unchanged since
|
|
570
|
+
* the previous application. A present key is skipped entirely — no renderer
|
|
571
|
+
* resource is constructed for it — and its value, when defined, is the live
|
|
572
|
+
* handle carried forward into this application's result.
|
|
573
|
+
*/
|
|
574
|
+
readonly reuse?: ReadonlyMap<string, CesiumLayerHandle | undefined>;
|
|
575
|
+
/**
|
|
576
|
+
* Workspace state applied alongside the plan. Only the `timeline` slice is
|
|
577
|
+
* consumed here — it drives the target's clock when the host bound one. Time
|
|
578
|
+
* is deliberately outside the plan, so it can never displace a mounted
|
|
579
|
+
* binding.
|
|
580
|
+
*/
|
|
581
|
+
readonly state?: SceneWorkspaceState;
|
|
582
|
+
}
|
|
583
|
+
/**
|
|
584
|
+
* The outcome of one application: the diagnostics and layer handles that
|
|
585
|
+
* {@link applyCesiumScenePrimitives} exposes, plus the per-key ownership record
|
|
586
|
+
* and reuse accounting the mount lifecycle needs to diff the next revision.
|
|
587
|
+
*
|
|
588
|
+
* @internal
|
|
589
|
+
*/
|
|
590
|
+
export interface CesiumScenePrimitiveApplication {
|
|
591
|
+
readonly status: ScenePrimitiveStatus;
|
|
592
|
+
readonly diagnostics: readonly ScenePrimitiveDiagnostic[];
|
|
593
|
+
readonly layers: ReadonlyMap<string, CesiumLayerHandle>;
|
|
594
|
+
/** Every plan key mapped to the handle it owns (`undefined` for handle-less kinds). */
|
|
595
|
+
readonly mounted: ReadonlyMap<string, CesiumLayerHandle | undefined>;
|
|
596
|
+
/** Ids of primitives whose renderer resource was constructed by this application. */
|
|
597
|
+
readonly created: readonly string[];
|
|
598
|
+
/** Ids of primitives whose renderer resource was carried forward untouched. */
|
|
599
|
+
readonly reused: readonly string[];
|
|
600
|
+
/** What the workspace `timeline` slice did to the bound clock, if anything. */
|
|
601
|
+
readonly time: CesiumSceneTimeApplication;
|
|
602
|
+
}
|
|
603
|
+
/**
|
|
604
|
+
* The application engine behind both the one-shot
|
|
605
|
+
* {@link applyCesiumScenePrimitives} and the {@link CesiumLayerHandle}-owning
|
|
606
|
+
* mount lifecycle.
|
|
607
|
+
*
|
|
608
|
+
* Two properties hold regardless of how it is driven:
|
|
609
|
+
*
|
|
610
|
+
* - **Transactional.** Any failure — including an abort — removes every handle
|
|
611
|
+
* this application created, in reverse construction order, and restores the
|
|
612
|
+
* terrain provider, vertical exaggeration, and clock the scene had on entry.
|
|
613
|
+
* Handles carried in through `reuse` are never touched, so a failed revision
|
|
614
|
+
* leaves the previously applied plan intact.
|
|
615
|
+
* - **Ownership-complete.** Every renderer resource it constructs is either
|
|
616
|
+
* returned in `mounted` or destroyed before the call returns. Nothing is
|
|
617
|
+
* reachable only from a discarded local.
|
|
618
|
+
*
|
|
619
|
+
* @internal
|
|
620
|
+
*/
|
|
621
|
+
export declare function applyCesiumScenePrimitivesInternal(target: CesiumSceneRuntimeTarget, primitives: readonly SceneRuntimePrimitive[], options?: ApplyCesiumScenePrimitivesInternalOptions): Promise<CesiumScenePrimitiveApplication>;
|
|
422
622
|
/**
|
|
423
623
|
* Create a {@link SceneRuntimeAdapter} backed by CesiumJS.
|
|
424
624
|
*
|
|
425
625
|
* When `options.target` (a live Cesium `Viewer`/`Scene` surface — a `camera`
|
|
426
|
-
* plus an optional `scene`) is supplied, `apply` drives
|
|
427
|
-
* sync plus, when a `scene` is attached, terrain
|
|
428
|
-
* and glTF/GLB model layers
|
|
626
|
+
* plus an optional `scene` and an optional `clock`) is supplied, `apply` drives
|
|
627
|
+
* the live globe: camera sync plus, when a `scene` is attached, terrain and
|
|
628
|
+
* imagery providers, 3D-Tiles tilesets, and glTF/GLB model layers, and, when a
|
|
629
|
+
* `clock` is attached, the workspace `timeline` slice. Without a target the adapter still
|
|
429
630
|
* diagnoses primitives against Cesium's true-3D capabilities — useful for
|
|
430
631
|
* migration analysis before a viewer exists. CesiumJS itself is only imported
|
|
431
632
|
* lazily when `apply` runs.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cesium-adapter.d.ts","sourceRoot":"","sources":["../../../src/scene-workspace/cesium-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cesium-adapter.d.ts","sourceRoot":"","sources":["../../../src/scene-workspace/cesium-adapter.ts"],"names":[],"mappings":"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"}
|