@splnlss/3d-story-viewer 0.7.0 → 0.8.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/build/assets/viewer/{geojson.worker-QNi-d8kU.js → geojson.worker-D3uq_RbR.js} +1 -1
- package/build/assets/viewer/spark-a62bdfe36d20.wasm +0 -0
- package/build/assets/viewer/{spark-worker-5ec8a483b87c.js → spark-worker-c1a6c013b888.js} +194 -43
- package/build/computeElevation.cjs +1 -1
- package/build/computeElevation.js +2 -2
- package/build/index-D87IZDc6.cjs +1 -0
- package/build/{index-CsZhc21b.js → index-Hz3jbrou.js} +1302 -829
- package/build/main-Bdopx4KL.js +15819 -0
- package/build/main-CaYKxosA.cjs +1 -0
- package/build/spark.module-B1FWS-vq.js +18168 -0
- package/build/spark.module-BUdzSHba.cjs +1 -0
- package/build/types/src/viewer/ContentLayer/GaussianSplatLayer.d.ts +4 -6
- package/build/types/src/viewer/ContentLayer/MeshLayer.d.ts +1 -1
- package/build/types/src/viewer/ContentLayer/TilesLayer.d.ts +4 -2
- package/build/types/src/viewer/ContentLayer/gaussianSplatUtils.d.ts +2 -1
- package/build/types/src/viewer/ContentLayer/index.d.ts +5 -3
- package/build/types/src/viewer/EnvironmentControls.d.ts +18 -12
- package/build/types/src/viewer/GlobeControls.d.ts +9 -6
- package/build/types/src/viewer/GlobeManager.d.ts +2 -1
- package/build/types/src/viewer/Sky.d.ts +5 -2
- package/build/types/src/viewer/TransitionControls.d.ts +2 -1
- package/build/types/src/viewer/index.d.ts +48 -18
- package/build/types/src/viewer/loadSpark.d.ts +1 -0
- package/build/types/src/viewer/mods.d.ts +1 -0
- package/build/types/src/viewer/shaders/chunks.d.ts +1 -0
- package/build/types/src/viewer/surfacePicking.d.ts +31 -0
- package/build/types/src/viewer/utils.d.ts +6 -4
- package/build/types/src/workers/geojson.worker.d.ts +2 -2
- package/build/types/utils/elevation/gltf.d.ts +2 -1
- package/build/viewer.cjs +1 -1
- package/build/viewer.js +5 -28044
- package/package.json +18 -16
- package/build/assets/viewer/spark-8b93f8c03d97.wasm +0 -0
- package/build/assets/viewer/spark-old-worker-932b4a2c87ca.js +0 -8168
- package/build/assets/viewer/spark-worker-015de49d2d00.wasm +0 -0
- package/build/index-wUFLgXbb.cjs +0 -1
|
@@ -7,13 +7,11 @@ export class GaussianSplatLayer extends ContentLayer {
|
|
|
7
7
|
loadState: string;
|
|
8
8
|
loadAttempt: number;
|
|
9
9
|
abortController: AbortController;
|
|
10
|
-
splatMesh:
|
|
11
|
-
|
|
12
|
-
transformMatrix: any;
|
|
10
|
+
splatMesh: any;
|
|
11
|
+
transformMatrix: import("three").Matrix4;
|
|
13
12
|
load(): Promise<void>;
|
|
14
|
-
createPagedMesh():
|
|
15
|
-
createDirectMesh(attempt: any): Promise<
|
|
13
|
+
createPagedMesh(spark: any): any;
|
|
14
|
+
createDirectMesh(spark: any, attempt: any): Promise<any>;
|
|
16
15
|
disposeMesh(mesh: any): void;
|
|
17
16
|
}
|
|
18
17
|
import { ContentLayer } from '.';
|
|
19
|
-
import { SplatMesh } from '@sparkjsdev/spark';
|
|
@@ -4,9 +4,11 @@ export class TilesLayer extends ContentLayer {
|
|
|
4
4
|
firstSet: any;
|
|
5
5
|
camera: any;
|
|
6
6
|
renderer: any;
|
|
7
|
-
dracoLoader:
|
|
8
|
-
ktx2loader:
|
|
7
|
+
dracoLoader: DRACOLoader;
|
|
8
|
+
ktx2loader: KTX2Loader;
|
|
9
9
|
tiles: TilesRenderer<import("3d-tiles-renderer").TilesRendererEventMap>;
|
|
10
10
|
}
|
|
11
11
|
import { ContentLayer } from '.';
|
|
12
|
+
import { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader.js';
|
|
13
|
+
import { KTX2Loader } from 'three/examples/jsm/loaders/KTX2Loader.js';
|
|
12
14
|
import { TilesRenderer } from '3d-tiles-renderer';
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
export class ContentLayer {
|
|
1
|
+
export class ContentLayer extends Object3D<import("three").Object3DEventMap> {
|
|
2
|
+
constructor();
|
|
2
3
|
type: string;
|
|
3
4
|
isContentLayer: boolean;
|
|
5
|
+
/** @type {string | null} */
|
|
6
|
+
contentLayerId: string | null;
|
|
4
7
|
labels: Set<any>;
|
|
5
8
|
setLabels(labels: any): void;
|
|
6
9
|
setEnabled(enabled: any): void;
|
|
7
|
-
visible: any;
|
|
8
10
|
update(): void;
|
|
9
|
-
dispose(): void;
|
|
10
11
|
disposeObjectResources(root?: this): void;
|
|
11
12
|
}
|
|
13
|
+
import { Object3D } from 'three';
|
|
@@ -3,7 +3,7 @@ export const DRAG: 1;
|
|
|
3
3
|
export const ROTATE: 2;
|
|
4
4
|
export const ZOOM: 3;
|
|
5
5
|
export const WAITING: 4;
|
|
6
|
-
export class EnvironmentControls {
|
|
6
|
+
export class EnvironmentControls extends EventDispatcher<any> {
|
|
7
7
|
constructor(scene?: any, camera?: any, domElement?: any, tilesRenderer?: any);
|
|
8
8
|
set enabled(v: boolean);
|
|
9
9
|
get enabled(): boolean;
|
|
@@ -25,7 +25,7 @@ export class EnvironmentControls {
|
|
|
25
25
|
adjustHeight: boolean;
|
|
26
26
|
enableDamping: boolean;
|
|
27
27
|
dampingFactor: number;
|
|
28
|
-
fallbackPlane:
|
|
28
|
+
fallbackPlane: Plane;
|
|
29
29
|
useFallbackPlane: boolean;
|
|
30
30
|
scaleZoomOrientationAtEdges: boolean;
|
|
31
31
|
autoAdjustCameraRotation: boolean;
|
|
@@ -33,21 +33,21 @@ export class EnvironmentControls {
|
|
|
33
33
|
pointerTracker: any;
|
|
34
34
|
needsUpdate: boolean;
|
|
35
35
|
actionHeightOffset: number;
|
|
36
|
-
pivotPoint:
|
|
36
|
+
pivotPoint: Vector3;
|
|
37
37
|
zoomDirectionSet: boolean;
|
|
38
38
|
zoomPointSet: boolean;
|
|
39
|
-
zoomDirection:
|
|
40
|
-
zoomPoint:
|
|
39
|
+
zoomDirection: Vector3;
|
|
40
|
+
zoomPoint: Vector3;
|
|
41
41
|
zoomDelta: number;
|
|
42
|
-
rotationInertiaPivot:
|
|
43
|
-
rotationInertia:
|
|
44
|
-
dragInertia:
|
|
42
|
+
rotationInertiaPivot: Vector3;
|
|
43
|
+
rotationInertia: Vector2;
|
|
44
|
+
dragInertia: Vector3;
|
|
45
45
|
inertiaTargetDistance: number;
|
|
46
46
|
inertiaStableFrames: number;
|
|
47
47
|
pivotMesh: any;
|
|
48
|
-
raycaster:
|
|
49
|
-
up:
|
|
50
|
-
clock:
|
|
48
|
+
raycaster: Raycaster;
|
|
49
|
+
up: Vector3;
|
|
50
|
+
clock: Clock;
|
|
51
51
|
_detachCallback: () => void;
|
|
52
52
|
_upInitialized: boolean;
|
|
53
53
|
_lastUsedState: number;
|
|
@@ -71,7 +71,7 @@ export class EnvironmentControls {
|
|
|
71
71
|
_updateZoom(): void;
|
|
72
72
|
_updateZoomDirection(): void;
|
|
73
73
|
_updateZoomPoint(): boolean;
|
|
74
|
-
_getPointBelowCamera(point?: any, up?:
|
|
74
|
+
_getPointBelowCamera(point?: any, up?: Vector3): any;
|
|
75
75
|
_updatePosition(deltaTime: any): void;
|
|
76
76
|
_updateRotation(deltaTime: any): void;
|
|
77
77
|
_applyRotation(x: any, y: any, pivotPoint: any): void;
|
|
@@ -80,3 +80,9 @@ export class EnvironmentControls {
|
|
|
80
80
|
_alignCameraUp(up: any, alpha?: number): void;
|
|
81
81
|
_clampRotation(up: any): void;
|
|
82
82
|
}
|
|
83
|
+
import { EventDispatcher } from 'three';
|
|
84
|
+
import { Plane } from 'three';
|
|
85
|
+
import { Vector3 } from 'three';
|
|
86
|
+
import { Vector2 } from 'three';
|
|
87
|
+
import { Raycaster } from 'three';
|
|
88
|
+
import { Clock } from 'three';
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
export class GlobeControls extends EnvironmentControls {
|
|
2
|
-
get tilesGroup():
|
|
3
|
-
get ellipsoidFrame():
|
|
2
|
+
get tilesGroup(): Matrix4;
|
|
3
|
+
get ellipsoidFrame(): Matrix4;
|
|
4
4
|
get ellipsoidFrameInverse(): any;
|
|
5
5
|
isGlobeControls: boolean;
|
|
6
6
|
_dragMode: number;
|
|
7
7
|
_rotationMode: number;
|
|
8
8
|
nearMargin: number;
|
|
9
9
|
farMargin: number;
|
|
10
|
-
globeInertia:
|
|
10
|
+
globeInertia: Quaternion;
|
|
11
11
|
globeInertiaFactor: number;
|
|
12
12
|
ellipsoid: Ellipsoid;
|
|
13
|
-
ellipsoidGroup:
|
|
14
|
-
_ellipsoidFrameInverse:
|
|
13
|
+
ellipsoidGroup: Group<import("three").Object3DEventMap>;
|
|
14
|
+
_ellipsoidFrameInverse: Matrix4;
|
|
15
15
|
setEllipsoid(ellipsoid: any, ellipsoidGroup: any): void;
|
|
16
16
|
getVectorToCenter(target: any): any;
|
|
17
17
|
getDistanceToCenter(): any;
|
|
@@ -27,4 +27,7 @@ export class GlobeControls extends EnvironmentControls {
|
|
|
27
27
|
_isNearControls(): boolean;
|
|
28
28
|
}
|
|
29
29
|
import { EnvironmentControls } from './EnvironmentControls.js';
|
|
30
|
-
import {
|
|
30
|
+
import { Matrix4 } from 'three';
|
|
31
|
+
import { Quaternion } from 'three';
|
|
32
|
+
import { Ellipsoid } from '3d-tiles-renderer';
|
|
33
|
+
import { Group } from 'three';
|
|
@@ -4,7 +4,7 @@ export class GlobeManager extends EventDispatcher {
|
|
|
4
4
|
camera: any;
|
|
5
5
|
renderer: any;
|
|
6
6
|
tiles: TilesRenderer<import("3d-tiles-renderer").TilesRendererEventMap>;
|
|
7
|
-
dracoLoader:
|
|
7
|
+
dracoLoader: DRACOLoader;
|
|
8
8
|
apiToken: any;
|
|
9
9
|
googleMapsToken: any;
|
|
10
10
|
initTiles(): void;
|
|
@@ -13,3 +13,4 @@ export class GlobeManager extends EventDispatcher {
|
|
|
13
13
|
}
|
|
14
14
|
import { EventDispatcher } from '../modules/EventDispatcher';
|
|
15
15
|
import { TilesRenderer } from '3d-tiles-renderer';
|
|
16
|
+
import { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader.js';
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
export class Sky {
|
|
1
|
+
export class Sky extends Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes, import("three").BufferGeometryEventMap>, import("three").Material<import("three").MaterialEventMap> | import("three").Material<import("three").MaterialEventMap>[], import("three").Object3DEventMap> {
|
|
2
|
+
constructor();
|
|
2
3
|
isSky: boolean;
|
|
3
4
|
type: string;
|
|
4
|
-
material:
|
|
5
|
+
material: ShaderMaterial;
|
|
5
6
|
setSurfaceUp(v: any): void;
|
|
6
7
|
}
|
|
8
|
+
import { Mesh } from 'three';
|
|
9
|
+
import { ShaderMaterial } from 'three';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export class TransitionControls extends EventDispatcher {
|
|
2
2
|
constructor(camera: any);
|
|
3
3
|
camera: any;
|
|
4
|
-
lookAt:
|
|
4
|
+
lookAt: Vector3;
|
|
5
5
|
cameraTween: any;
|
|
6
6
|
lookAtTween: any;
|
|
7
7
|
activeTransition: {
|
|
@@ -17,3 +17,4 @@ export class TransitionControls extends EventDispatcher {
|
|
|
17
17
|
cameraUpTween: any;
|
|
18
18
|
}
|
|
19
19
|
import { EventDispatcher } from '../modules/EventDispatcher';
|
|
20
|
+
import { Vector3 } from 'three';
|
|
@@ -24,18 +24,18 @@ declare class Viewer extends EventDispatcher {
|
|
|
24
24
|
isViewer: boolean;
|
|
25
25
|
type: string;
|
|
26
26
|
disposed: boolean;
|
|
27
|
-
sparkRenderer:
|
|
27
|
+
sparkRenderer: any;
|
|
28
28
|
transparentBackground: boolean;
|
|
29
29
|
state: StateDispatcher;
|
|
30
|
-
renderer:
|
|
31
|
-
css2DRenderer:
|
|
32
|
-
clock:
|
|
33
|
-
camera:
|
|
34
|
-
cameraForward:
|
|
35
|
-
cameraRight:
|
|
36
|
-
cameraUp:
|
|
37
|
-
scene:
|
|
38
|
-
content:
|
|
30
|
+
renderer: WebGLRenderer;
|
|
31
|
+
css2DRenderer: CSS2DRenderer;
|
|
32
|
+
clock: Clock;
|
|
33
|
+
camera: PerspectiveCamera;
|
|
34
|
+
cameraForward: Vector3;
|
|
35
|
+
cameraRight: Vector3;
|
|
36
|
+
cameraUp: Vector3;
|
|
37
|
+
scene: Scene<import("three").Object3DEventMap>;
|
|
38
|
+
content: Group<import("three").Object3DEventMap>;
|
|
39
39
|
topLayerIndex: number;
|
|
40
40
|
enabledLayers: any[];
|
|
41
41
|
labels: Map<any, any>;
|
|
@@ -48,7 +48,7 @@ declare class Viewer extends EventDispatcher {
|
|
|
48
48
|
cameraCoords: ViewerCoords;
|
|
49
49
|
/** @type {ViewerCoords} */
|
|
50
50
|
pointerCoords: ViewerCoords;
|
|
51
|
-
pointerXYZ:
|
|
51
|
+
pointerXYZ: Vector3;
|
|
52
52
|
keysDown: {};
|
|
53
53
|
_keysEnabled: boolean;
|
|
54
54
|
/** Camera-relative translation speed in WGS84 ECEF metres/second. */
|
|
@@ -77,7 +77,7 @@ declare class Viewer extends EventDispatcher {
|
|
|
77
77
|
_onKeyUp: (event: any) => void;
|
|
78
78
|
_onResize: (event: any) => void;
|
|
79
79
|
sky: Sky;
|
|
80
|
-
pointerRaycaster:
|
|
80
|
+
pointerRaycaster: Raycaster;
|
|
81
81
|
_onPointerMove: (event: any) => void;
|
|
82
82
|
set keysEnabled(enabled: boolean);
|
|
83
83
|
get keysEnabled(): boolean;
|
|
@@ -85,12 +85,15 @@ declare class Viewer extends EventDispatcher {
|
|
|
85
85
|
/**
|
|
86
86
|
* @param {number} lon
|
|
87
87
|
* @param {number} lat
|
|
88
|
-
* @
|
|
88
|
+
* @param {import('./surfacePicking.js').SurfacePickOptions} [options]
|
|
89
|
+
* @returns {{ lon: number, lat: number, alt: number, source: 'splats' | 'globe' | 'content', layerId: string | null }} WGS84 degrees and ellipsoidal meters, from loaded surfaces only.
|
|
89
90
|
*/
|
|
90
|
-
getElevation(lon: number, lat: number): {
|
|
91
|
+
getElevation(lon: number, lat: number, options?: import("./surfacePicking.js").SurfacePickOptions): {
|
|
91
92
|
lon: number;
|
|
92
93
|
lat: number;
|
|
93
94
|
alt: number;
|
|
95
|
+
source: "splats" | "globe" | "content";
|
|
96
|
+
layerId: string | null;
|
|
94
97
|
};
|
|
95
98
|
/**
|
|
96
99
|
* @param {[number, number, number?][]} coords
|
|
@@ -100,15 +103,16 @@ declare class Viewer extends EventDispatcher {
|
|
|
100
103
|
setBackgroundColor(color: any): void;
|
|
101
104
|
appendTo(container: any): void;
|
|
102
105
|
container: any;
|
|
103
|
-
stats:
|
|
106
|
+
stats: Stats;
|
|
104
107
|
updateCameraDirections(): void;
|
|
105
108
|
setAnimate(bool?: boolean): void;
|
|
106
109
|
/** @param {Event} [event] */
|
|
107
110
|
resizeView(event?: Event): void;
|
|
108
111
|
loadEnv(url: any): Promise<void>;
|
|
109
112
|
clearContentLayers(): void;
|
|
110
|
-
ensureSparkRenderer():
|
|
113
|
+
ensureSparkRenderer(): Promise<any>;
|
|
111
114
|
disposeSparkRenderer(): void;
|
|
115
|
+
sparkRendererGeneration: any;
|
|
112
116
|
/** @param {import('../main.js').ContentLayerDefinition[]} content */
|
|
113
117
|
defineContentLayers(content?: import("../main.js").ContentLayerDefinition[]): void;
|
|
114
118
|
enableContentLayers(labels?: any[]): void;
|
|
@@ -132,7 +136,25 @@ declare class Viewer extends EventDispatcher {
|
|
|
132
136
|
}): HTMLElement;
|
|
133
137
|
animate(time: any): void;
|
|
134
138
|
render(): void;
|
|
135
|
-
|
|
139
|
+
/**
|
|
140
|
+
* Explicit-action raycast; do not call on every pointermove. Returns the nearest
|
|
141
|
+
* loaded surface, not a survey measurement. RAD accuracy depends on streamed LOD.
|
|
142
|
+
* @param {number} screenX Client X in CSS pixels.
|
|
143
|
+
* @param {number} screenY Client Y in CSS pixels.
|
|
144
|
+
* @param {import('./surfacePicking.js').SurfacePickOptions} [options]
|
|
145
|
+
* @returns {{ lon: number, lat: number, alt: number, point: Vector3, source: 'splats' | 'globe' | 'content', layerId: string | null } | null} WGS84 degrees, ellipsoidal meters, ECEF point in meters.
|
|
146
|
+
*/
|
|
147
|
+
pickCoordinates(screenX: number, screenY: number, options?: import("./surfacePicking.js").SurfacePickOptions): {
|
|
148
|
+
lon: number;
|
|
149
|
+
lat: number;
|
|
150
|
+
alt: number;
|
|
151
|
+
point: Vector3;
|
|
152
|
+
source: "splats" | "globe" | "content";
|
|
153
|
+
layerId: string | null;
|
|
154
|
+
} | null;
|
|
155
|
+
/** @param {Raycaster} raycaster @param {import('./surfacePicking.js').SurfacePickOptions} [options] */
|
|
156
|
+
_raycastSurfaces(raycaster: Raycaster, options?: import("./surfacePicking.js").SurfacePickOptions): any;
|
|
157
|
+
getCameraPivot(): Vector3;
|
|
136
158
|
/**
|
|
137
159
|
* @param {number} lon
|
|
138
160
|
* @param {number} lat
|
|
@@ -174,10 +196,18 @@ export namespace ViewerEvents {
|
|
|
174
196
|
let CONTENT_LAYER_ERROR: "content-layer-error";
|
|
175
197
|
}
|
|
176
198
|
import { EventDispatcher } from '../modules/EventDispatcher';
|
|
177
|
-
import { SparkRenderer } from '@sparkjsdev/spark';
|
|
178
199
|
import { StateDispatcher } from '../modules/StateDispatcher';
|
|
200
|
+
import { WebGLRenderer } from 'three';
|
|
201
|
+
import { CSS2DRenderer } from 'three/examples/jsm/renderers/CSS2DRenderer.js';
|
|
202
|
+
import { Clock } from 'three';
|
|
203
|
+
import { PerspectiveCamera } from 'three';
|
|
204
|
+
import { Vector3 } from 'three';
|
|
205
|
+
import { Scene } from 'three';
|
|
206
|
+
import { Group } from 'three';
|
|
179
207
|
import { GlobeControls } from './GlobeControls';
|
|
180
208
|
import { TransitionControls } from './TransitionControls';
|
|
181
209
|
import { GlobeManager } from './GlobeManager';
|
|
182
210
|
import { Sky } from './Sky';
|
|
211
|
+
import { Raycaster } from 'three';
|
|
212
|
+
import Stats from 'stats.js';
|
|
183
213
|
export { Viewer as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export function loadSpark(): any;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {Object} SurfacePickOptions
|
|
3
|
+
* @property {'all' | 'splats' | 'globe' | 'content'} [source] Defaults to all (nearest hit).
|
|
4
|
+
* @property {string[]} [layerIds] Restrict content to these IDs; never includes the globe.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Explicit-action splat picking, deliberately separate from camera/hover raycasts.
|
|
8
|
+
* Spark 2.2's WASM quadratic uses float32 b*b-a*c: long rays against small splats
|
|
9
|
+
* lose the discriminant. Work in float64 and calculate closest approach instead.
|
|
10
|
+
* Uses Spark's public iterator: original direct-format splats, or currently selected
|
|
11
|
+
* RAD pages (not its coarser raycastIndices). This is not a full-resolution survey.
|
|
12
|
+
* Gaussian ellipsoid/disk approximation follows Spark 2.2's rust raycast.rs.
|
|
13
|
+
*/
|
|
14
|
+
export function raycastGaussianSplats(mesh: any, raycaster: any): {
|
|
15
|
+
distance: any;
|
|
16
|
+
point: any;
|
|
17
|
+
object: any;
|
|
18
|
+
splatIndex: number;
|
|
19
|
+
};
|
|
20
|
+
/** @param {SurfacePickOptions} options */
|
|
21
|
+
export function raycastSurfaces(viewer: any, raycaster: any, options?: SurfacePickOptions): any;
|
|
22
|
+
export type SurfacePickOptions = {
|
|
23
|
+
/**
|
|
24
|
+
* Defaults to all (nearest hit).
|
|
25
|
+
*/
|
|
26
|
+
source?: "all" | "splats" | "globe" | "content";
|
|
27
|
+
/**
|
|
28
|
+
* Restrict content to these IDs; never includes the globe.
|
|
29
|
+
*/
|
|
30
|
+
layerIds?: string[];
|
|
31
|
+
};
|
|
@@ -3,10 +3,12 @@ export function ecefToGeodeticRotation(x: any, y: any, z: any, quaternion: any):
|
|
|
3
3
|
lat: number;
|
|
4
4
|
alt: number;
|
|
5
5
|
pitch: number;
|
|
6
|
-
yaw:
|
|
7
|
-
roll:
|
|
6
|
+
yaw: number;
|
|
7
|
+
roll: number;
|
|
8
8
|
};
|
|
9
|
-
export function geodeticToEcefUpVector(lon: any, lat: any):
|
|
10
|
-
export function geodeticToEcefRotation(lon: any, lat: any, pitch: any, yaw: any, roll: any):
|
|
9
|
+
export function geodeticToEcefUpVector(lon: any, lat: any): Vector3;
|
|
10
|
+
export function geodeticToEcefRotation(lon: any, lat: any, pitch: any, yaw: any, roll: any): Quaternion;
|
|
11
11
|
export function exportScene(root: any): void;
|
|
12
|
+
import { Vector3 } from 'three';
|
|
13
|
+
import { Quaternion } from 'three';
|
|
12
14
|
export { ecefToGeodeticPosition, geodeticToEcefPosition } from "../geospatial.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export function createArrowGeometry(data: any): {
|
|
2
|
-
origin:
|
|
2
|
+
origin: import("three").Vector3Tuple;
|
|
3
3
|
meshVertexBuffer: Float32Array<any>;
|
|
4
4
|
};
|
|
5
5
|
export function createPerimeterGeometry(data: any, color: any): {
|
|
6
|
-
origin:
|
|
6
|
+
origin: import("three").Vector3Tuple;
|
|
7
7
|
lineVertexBuffer: Float32Array<any>;
|
|
8
8
|
lineVertexRGBBuffer: Uint8Array<ArrayBuffer>;
|
|
9
9
|
meshVertexBuffer: Float32Array<any>;
|
|
@@ -12,4 +12,5 @@ export function raycastMesh(rayOrigin: any, rayDir: any, positions: any, indices
|
|
|
12
12
|
point: any[];
|
|
13
13
|
barycentric: number[];
|
|
14
14
|
};
|
|
15
|
-
export function intersectGltf(nodes: any, meshes: any, point: any):
|
|
15
|
+
export function intersectGltf(nodes: any, meshes: any, point: any): Vector3;
|
|
16
|
+
import { Vector3 } from 'three';
|