@realsee/five 6.0.0-alpha.0 → 6.0.0-alpha.10
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/docs/assets/search.js +1 -1
- package/docs/classes/five.AnimationFrameLoop.html +1 -1
- package/docs/classes/five.BVH.html +1 -1
- package/docs/classes/five.BVHIntersect.html +1 -1
- package/docs/classes/five.BVHNode.html +1 -1
- package/docs/classes/five.BVHVector3.html +1 -1
- package/docs/classes/five.BoxBoundingVolume.html +1 -1
- package/docs/classes/five.Camera.html +1 -1
- package/docs/classes/five.Clipper.html +1 -1
- package/docs/classes/five.CullingVolume.html +1 -1
- package/docs/classes/five.Five.html +77 -69
- package/docs/classes/five.InternalWebGLRenderer.html +1 -1
- package/docs/classes/five.IntersectMesh.html +1 -1
- package/docs/classes/five.Model.html +28 -47
- package/docs/classes/five.NetworkSubscribe.html +1 -1
- package/docs/classes/five.PBMContainer.html +7 -9
- package/docs/classes/five.PBMGroup.html +1 -1
- package/docs/classes/five.PBMMaterialReferenceCache.html +1 -1
- package/docs/classes/five.PBMMesh.html +1 -1
- package/docs/classes/five.PBMMeshMaterial.html +15 -11
- package/docs/classes/five.PanoCircleMesh.html +1 -1
- package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
- package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
- package/docs/classes/five.RegionBoundingVolume.html +1 -1
- package/docs/classes/five.RequestScheduler.html +1 -1
- package/docs/classes/five.Scene.html +1 -1
- package/docs/classes/five.SphereBoundingVolume.html +1 -1
- package/docs/classes/five.Subscribe.html +2 -2
- package/docs/classes/five.TextureLoader.html +1 -1
- package/docs/classes/five.Tile.html +1 -1
- package/docs/classes/five.Tile3DModel.html +1 -1
- package/docs/classes/five.TileCubeTextureTarget.html +1 -1
- package/docs/classes/five.TileNode.html +1 -1
- package/docs/classes/five.Tileset.html +2 -2
- package/docs/classes/five.TilesetCache.html +1 -1
- package/docs/classes/five.TilesetTraverser.html +1 -1
- package/docs/classes/five.Work.html +12 -12
- package/docs/classes/five.XRButton.html +1 -1
- package/docs/classes/gltf_loader.DDSLoader.html +1 -1
- package/docs/classes/gltf_loader.DRACOLoader.html +1 -1
- package/docs/classes/gltf_loader.GLTFLoader.html +1 -1
- package/docs/classes/gltf_loader.GLTFObject.html +1 -1
- package/docs/classes/gltf_loader.GLTFParser.html +1 -1
- package/docs/classes/gltf_loader.THREEGLTFLoader.html +1 -1
- package/docs/classes/line.Line.html +1 -1
- package/docs/classes/line.LineGeometry.html +1 -1
- package/docs/classes/line.LineMaterial.html +1 -1
- package/docs/classes/line.LineSegmentsGeometry.html +1 -1
- package/docs/classes/line.THREE_Line2.html +1 -1
- package/docs/classes/line.THREE_LineSegments2.html +1 -1
- package/docs/classes/react.Store.html +1 -1
- package/docs/classes/sticker.Sticker.html +1 -1
- package/docs/classes/vfx.Airflow.html +1 -1
- package/docs/classes/vfx.Flame.html +1 -1
- package/docs/classes/vfx.Particle.html +1 -1
- package/docs/classes/vfx.SpotLight.html +1 -1
- package/docs/enums/five.PBMPointColorType.html +1 -1
- package/docs/enums/five.PBMPointShapeType.html +1 -1
- package/docs/enums/five.PBMPointSizeType.html +1 -1
- package/docs/enums/five.VolumePlaneIntersect.html +1 -1
- package/docs/index.html +1 -1
- package/docs/interfaces/five.AddableObject.html +1 -1
- package/docs/interfaces/five.AnimationFrame.html +1 -1
- package/docs/interfaces/five.BaseEvent.html +1 -0
- package/docs/interfaces/five.BoundingVolume.html +1 -1
- package/docs/interfaces/five.CameraPose.html +1 -1
- package/docs/interfaces/five.ClipperParameter.html +1 -1
- package/docs/interfaces/five.DepthPanoramaControllerCustomInitArgs.html +12 -12
- package/docs/interfaces/five.EventCallback.html +198 -108
- package/docs/interfaces/five.FiveInitArgs.html +1 -1
- package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +7 -7
- package/docs/interfaces/five.GestureEvent.html +1 -0
- package/docs/interfaces/five.ImageOptions.html +1 -1
- package/docs/interfaces/five.ImageURLMappings.html +1 -1
- package/docs/interfaces/five.ImageURLOptions.html +1 -1
- package/docs/interfaces/five.IntersectEvent.html +1 -0
- package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
- package/docs/interfaces/five.Intersection.html +1 -1
- package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +5 -5
- package/docs/interfaces/five.ModeChangeEvent.html +1 -0
- package/docs/interfaces/five.ModelControllerCustomInitArgs.html +8 -8
- package/docs/interfaces/five.ModelEvent.html +1 -0
- package/docs/interfaces/five.ModelLodOptions.html +1 -1
- package/docs/interfaces/five.ModelsEvent.html +1 -0
- package/docs/interfaces/five.MotionKeyframe.html +1 -1
- package/docs/interfaces/five.MovePanoOptions.html +9 -7
- package/docs/interfaces/five.NetworkOptions.html +1 -1
- package/docs/interfaces/five.NetworkResourceEvent.html +1 -0
- package/docs/interfaces/five.ObjectEvent.html +1 -0
- package/docs/interfaces/five.PBMPanoPicture.html +1 -1
- package/docs/interfaces/five.PBMParameters.html +15 -11
- package/docs/interfaces/five.PanoCircleMeshCustomOptions.html +1 -1
- package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
- package/docs/interfaces/five.PanoCircleMeshOptions.html +1 -1
- package/docs/interfaces/five.PanoCircleMeshSolidOptions.html +1 -1
- package/docs/interfaces/five.PanoEvent.html +1 -0
- package/docs/interfaces/five.PanoTextureEvent.html +1 -0
- package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +14 -14
- package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +8 -8
- package/docs/interfaces/five.Pose.html +1 -1
- package/docs/interfaces/five.RenderEvent.html +1 -0
- package/docs/interfaces/five.Scissor.html +1 -1
- package/docs/interfaces/five.State.html +6 -6
- package/docs/interfaces/five.StateEvent.html +1 -0
- package/docs/interfaces/five.SubscribeMixinType.emit.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.hasListener.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.off.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.on.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.once.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.waitUnitl.html +1 -1
- package/docs/interfaces/five.TextureOptions.html +1 -1
- package/docs/interfaces/five.Tile3DModelLoaderOptions.html +2 -2
- package/docs/interfaces/five.TileCubeNode.html +1 -1
- package/docs/interfaces/five.TileCubeTree.html +1 -1
- package/docs/interfaces/five.TileHeader.html +1 -1
- package/docs/interfaces/five.TilesetHeader.html +1 -1
- package/docs/interfaces/five.TilesetOptions.html +1 -1
- package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +4 -4
- package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +12 -12
- package/docs/interfaces/five.WebXRAxesParams.html +1 -0
- package/docs/interfaces/five.WebXRControllerParams.html +1 -1
- package/docs/interfaces/five.WorkCubeImage.html +6 -6
- package/docs/interfaces/five.WorkImage.html +10 -10
- package/docs/interfaces/five.WorkInitial.html +9 -9
- package/docs/interfaces/five.WorkModel.html +8 -6
- package/docs/interfaces/five.WorkObserver.html +24 -16
- package/docs/interfaces/five.WorkOptions.html +7 -7
- package/docs/interfaces/five.WorkResolvedObserver.html +37 -0
- package/docs/interfaces/five.WorkTile.html +1 -1
- package/docs/interfaces/five.WorkVideo.html +4 -4
- package/docs/interfaces/five.WorksEvent.html +1 -0
- package/docs/interfaces/five.XRControllerEvent.html +1 -0
- package/docs/interfaces/five.XRGestureEvent.html +1 -0
- package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +12 -12
- package/docs/interfaces/five.XRSessionEvent.html +1 -0
- package/docs/interfaces/gltf_loader.DDS.html +1 -1
- package/docs/interfaces/gltf_loader.GLTF.html +1 -1
- package/docs/interfaces/gltf_loader.GLTFReference.html +1 -1
- package/docs/interfaces/gltf_loader.THREEGLTF.html +1 -1
- package/docs/interfaces/react.FiveActionReactCallbacks.html +3 -5
- package/docs/interfaces/react.FiveInjectionTypes.html +11 -18
- package/docs/interfaces/react.PropTypeOfFiveFeatures.html +1 -1
- package/docs/interfaces/sticker.IntersectionLike.html +1 -1
- package/docs/interfaces/vfx.ParticleArgs.html +1 -1
- package/docs/interfaces/vfx.ParticleTweenKeyframe.html +1 -1
- package/docs/interfaces/vue.FiveActionVueCallbacks.html +3 -3
- package/docs/modules/five.SubscribeMixinType.html +1 -1
- package/docs/modules/five.html +387 -240
- package/docs/modules/gltf_loader.html +1 -1
- package/docs/modules/line.html +1 -1
- package/docs/modules/react.html +1 -1
- package/docs/modules/sticker.html +1 -1
- package/docs/modules/vfx.html +1 -1
- package/docs/modules/vue.html +1 -1
- package/docs/modules.html +1 -1
- package/five/index.d.ts +946 -646
- package/five/index.js +6 -6
- package/gltf-loader/index.js +3 -3
- package/line/index.js +3 -3
- package/package.json +1 -1
- package/react/index.d.ts +3 -2
- package/react/index.js +3 -3
- package/sticker/index.js +3 -3
- package/umd/five-gltf-loader.js +1 -1
- package/umd/five-line.js +1 -1
- package/umd/five-react.js +1 -1
- package/umd/five-sticker.js +1 -1
- package/umd/five-vue.js +1 -1
- package/umd/five.js +1 -1
- package/vfx/index.js +2 -2
- package/vue/index.d.ts +4 -3
- package/vue/index.js +3 -3
- package/docs/interfaces/five.ModelEventCallback.html +0 -16
package/five/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/// <reference types="webxr" />
|
|
2
|
+
|
|
1
3
|
import * as THREE_2 from 'three';
|
|
2
4
|
|
|
3
5
|
export declare interface AddableObject extends THREE_2.Object3D {
|
|
@@ -46,6 +48,13 @@ export declare class AnimationFrameLoop {
|
|
|
46
48
|
disponse(): void;
|
|
47
49
|
}
|
|
48
50
|
|
|
51
|
+
export declare interface BaseEvent {
|
|
52
|
+
type: string;
|
|
53
|
+
timeStamp: number;
|
|
54
|
+
preventDefault(): void;
|
|
55
|
+
defaultPrevented: boolean;
|
|
56
|
+
}
|
|
57
|
+
|
|
49
58
|
export declare interface BoundingVolume {
|
|
50
59
|
type: 'box' | 'sphere' | 'regin';
|
|
51
60
|
applyMatrix4(matrix: THREE_2.Matrix4): this;
|
|
@@ -201,7 +210,7 @@ export declare class Clipper {
|
|
|
201
210
|
private static sharedInstance?;
|
|
202
211
|
static get shared(): Clipper;
|
|
203
212
|
constructor();
|
|
204
|
-
update(
|
|
213
|
+
update(clipperParameter: ClipperParameter | ClipperParameter[], camera: THREE_2.Camera): void;
|
|
205
214
|
private projectPlanes;
|
|
206
215
|
}
|
|
207
216
|
|
|
@@ -222,297 +231,69 @@ export declare type ControllerCustomInitTypes = {
|
|
|
222
231
|
};
|
|
223
232
|
|
|
224
233
|
export declare type ControllerEventTypes = {
|
|
225
|
-
/**
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
/**
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
/**
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
/**
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
* - moveToPano 在加载全景图资源前触发
|
|
289
|
-
* - panoWillArrive 在加载全景图资源后触发
|
|
290
|
-
* @param panoId - 移动到的点位
|
|
291
|
-
* @param userAction - 是否用户触发
|
|
292
|
-
*/
|
|
293
|
-
moveToPano(panoId: WorkPanoId, userAction: boolean): void;
|
|
294
|
-
/**
|
|
295
|
-
* 开始加载某个观察点的全景资源
|
|
296
|
-
* @param panoId - 移动到的点位
|
|
297
|
-
*/
|
|
298
|
-
panoWillLoad(panoId: WorkPanoId): void;
|
|
299
|
-
/**
|
|
300
|
-
* 某个观察点的全景资源加载完成
|
|
301
|
-
* @param panoId - 对应的点位
|
|
302
|
-
*/
|
|
303
|
-
panoLoaded(panoId: WorkPanoId): void;
|
|
304
|
-
/**
|
|
305
|
-
* 某个观察点的全景资源加载失败
|
|
306
|
-
* @param error - 错误对象
|
|
307
|
-
* @param panoId - 对应的点位
|
|
308
|
-
*/
|
|
309
|
-
panoLoadError(error: Error, panoId: WorkPanoId): void;
|
|
310
|
-
/**
|
|
311
|
-
* 移动到某个观察点位被取消
|
|
312
|
-
* @description
|
|
313
|
-
* 这个有一些情况会导致
|
|
314
|
-
* - 移动过程中切换模态
|
|
315
|
-
* - 移动过程中 five 被析构
|
|
316
|
-
* - 移动过程点击切换到另一个点位
|
|
317
|
-
* @param panoId - 对应的点位
|
|
318
|
-
*/
|
|
319
|
-
moveToPanoCanceled(panoId: WorkPanoId): void;
|
|
320
|
-
/**
|
|
321
|
-
* 开始移动到某个观察点位
|
|
322
|
-
* @description
|
|
323
|
-
* 和 moveToPano 相比
|
|
324
|
-
* - moveToPano 在加载全景图资源前触发
|
|
325
|
-
* - panoWillArrive 在加载全景图资源后触发
|
|
326
|
-
* @param panoId - 移动到点位
|
|
327
|
-
* @param pose - 相机姿态
|
|
328
|
-
* @param userAction - 是否用户触发
|
|
329
|
-
*/
|
|
330
|
-
panoWillArrive(panoId: WorkPanoId, pose: Pose, userAction: boolean): void;
|
|
331
|
-
/**
|
|
332
|
-
* 移动到某个观察点位
|
|
333
|
-
* @param panoIndex - 移动到点位
|
|
334
|
-
* @param pose - 相机姿态
|
|
335
|
-
* @param userAction - 是否用户触发
|
|
336
|
-
*/
|
|
337
|
-
panoArrived(panoId: WorkPanoId, pose: Pose, userAction: boolean): void;
|
|
338
|
-
/**
|
|
339
|
-
* 移动中, 会告知移动状态(耗时百分比)
|
|
340
|
-
* @param panoId - 将要移动到的点位下标
|
|
341
|
-
* @param prevPanoId - 上一个点位下标
|
|
342
|
-
* @param progress - 整个过程经度 [0-1]
|
|
343
|
-
*/
|
|
344
|
-
movingToPano(panoId: WorkPanoId, prevPanoId: WorkPanoId, progress: number): void;
|
|
345
|
-
/**
|
|
346
|
-
* 意图要触发手势, 可以通过 `return false` 阻止
|
|
347
|
-
* @param type - 手势类型
|
|
348
|
-
* @param pointers - 手指位置
|
|
349
|
-
* @param final - 是否手势结束
|
|
350
|
-
* @returns 可以通过 `return false` 阻止
|
|
351
|
-
*/
|
|
352
|
-
wantsGesture(type: GestureTypes, pointers: {
|
|
353
|
-
x: number;
|
|
354
|
-
y: number;
|
|
355
|
-
delta?: number;
|
|
356
|
-
}[], final: boolean): void | false;
|
|
357
|
-
/**
|
|
358
|
-
* 手势 触发
|
|
359
|
-
* @param type - 手势类型
|
|
360
|
-
* @param pointers - 手指位置
|
|
361
|
-
* @param final - 是否手势结束
|
|
362
|
-
*/
|
|
363
|
-
gesture(type: GestureTypes, pointers: {
|
|
364
|
-
x: number;
|
|
365
|
-
y: number;
|
|
366
|
-
delta?: number;
|
|
367
|
-
}[], final: boolean): void;
|
|
368
|
-
/**
|
|
369
|
-
* 意图要触发 pan 手势(滑动屏幕), 可以通过 `return false` 阻止
|
|
370
|
-
* @param pose - 意图的相机姿态
|
|
371
|
-
* @param final - 是否手势结束
|
|
372
|
-
* @returns 可以通过 `return false` 阻止
|
|
373
|
-
*/
|
|
374
|
-
wantsPanGesture(pose: Pose, final: boolean): void | false;
|
|
375
|
-
/**
|
|
376
|
-
* pan 手势(滑动屏幕) 被触发
|
|
377
|
-
* @param pose - 相机姿态
|
|
378
|
-
* @param final - 是否手势结束
|
|
379
|
-
*/
|
|
380
|
-
panGesture(pose: Pose, final: boolean): void;
|
|
381
|
-
/**
|
|
382
|
-
* 意图要触发 pan 手势(滑动屏幕) 的惯性运动, 可以通过 `return false` 阻止
|
|
383
|
-
* @param pose - 意图的相机姿态
|
|
384
|
-
* @param final - 是否手势结束
|
|
385
|
-
* @returns 可以通过 `return false` 阻止
|
|
386
|
-
*/
|
|
387
|
-
wantsInteriaPan(pose: Pose): void | false;
|
|
388
|
-
/**
|
|
389
|
-
* pan 手势(滑动屏幕) 的惯性运动
|
|
390
|
-
* @param pose - 意图的相机姿态
|
|
391
|
-
* @param final - 是否手势结束
|
|
392
|
-
*/
|
|
393
|
-
interiaPan(pose: Pose, final: boolean): void;
|
|
394
|
-
/**
|
|
395
|
-
* 意图要触发 tap 手势(点击屏幕), 可以通过 `return false` 阻止
|
|
396
|
-
* @param raycaster - 点击对应的三维射线
|
|
397
|
-
* @param tapPosition - 点击对应的屏幕位置
|
|
398
|
-
* @param final - 是否手势结束
|
|
399
|
-
* @returns 可以通过 `return false` 阻止
|
|
400
|
-
*/
|
|
401
|
-
wantsTapGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, final: boolean): void | false;
|
|
402
|
-
/**
|
|
403
|
-
* tap 手势(点击屏幕) 被触发
|
|
404
|
-
* @param raycaster - 点击对应的三维射线
|
|
405
|
-
* @param tapPosition - 点击对应的屏幕位置
|
|
406
|
-
* @param final - 是否手势结束
|
|
407
|
-
*/
|
|
408
|
-
tapGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, final: boolean): void;
|
|
409
|
-
/**
|
|
410
|
-
* 意图要触发 pinch 手势(双指缩放),可以通过 `return false` 阻止
|
|
411
|
-
* @param scale - 缩放数值
|
|
412
|
-
* @param nextFov - 意图的fov变更
|
|
413
|
-
* @param final - 是否手势结束
|
|
414
|
-
* @returns 可以通过 `return false` 阻止
|
|
415
|
-
*/
|
|
416
|
-
wantsPinchGesture(scale: number, nextFov: number, final: boolean): void | false;
|
|
417
|
-
/**
|
|
418
|
-
* 意图要触发 press 手势(长按屏幕), 可以通过 `return false` 阻止
|
|
419
|
-
* @param raycaster - 长按对应的三维射线
|
|
420
|
-
* @param tapPosition - 长按对应的屏幕位置
|
|
421
|
-
* @param duration - 长按持续时间
|
|
422
|
-
* @param final - 是否手势结束
|
|
423
|
-
* @returns 可以通过 `return false` 阻止
|
|
424
|
-
*/
|
|
425
|
-
wantsPressGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, duration: number, isFinal: boolean): void | false;
|
|
426
|
-
/**
|
|
427
|
-
* tap 手势(点击屏幕) 被触发
|
|
428
|
-
* @param raycaster - 点击对应的三维射线
|
|
429
|
-
* @param tapPosition - 点击对应的屏幕位置
|
|
430
|
-
* @param duration - 长按持续时间
|
|
431
|
-
* @param final - 是否手势结束
|
|
432
|
-
*/
|
|
433
|
-
pressGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, duration: number, isFinal: boolean): void;
|
|
434
|
-
/**
|
|
435
|
-
* pinch 手势(双指缩放) 被触发
|
|
436
|
-
* @param scale - 缩放数值
|
|
437
|
-
* @param nextFov - 意图的fov变更
|
|
438
|
-
* @param final - 是否手势结束
|
|
439
|
-
*/
|
|
440
|
-
pinchGesture(scale: number, fov: number, final: boolean): void;
|
|
441
|
-
/**
|
|
442
|
-
* 意图要触发 鼠标滚轮 可以通过 `return false` 阻止
|
|
443
|
-
* @param delta - 滚轮数值
|
|
444
|
-
* @param nextFov - 意图的fov变更
|
|
445
|
-
* @param final - 是否手势结束
|
|
446
|
-
* @returns 可以通过 `return false` 阻止
|
|
447
|
-
*/
|
|
448
|
-
wantsMouseWheel(delta: number, nextFov: number, final: boolean): void | false;
|
|
449
|
-
/**
|
|
450
|
-
* 鼠标滚轮被触发
|
|
451
|
-
* @param delta - 滚轮数值
|
|
452
|
-
* @param nextFov - 意图的fov变更
|
|
453
|
-
* @param final - 是否手势结束
|
|
454
|
-
*/
|
|
455
|
-
mouseWheel(delta: number, fov: number, final: boolean): void;
|
|
456
|
-
/**
|
|
457
|
-
* 鼠标焦点环位置被重新计算
|
|
458
|
-
* @param intersection - 焦点碰撞结果
|
|
459
|
-
* @param mesh - 焦点环 mesh
|
|
460
|
-
*/
|
|
461
|
-
intersectionOnModelUpdate(intersection: Intersection, mesh: IntersectMeshInterface): void;
|
|
462
|
-
/**
|
|
463
|
-
* 意图要展示鼠标焦点环,可以通过 `return false` 阻止
|
|
464
|
-
* @param intersection - 焦点碰撞结果
|
|
465
|
-
* @returns 可以通过 `return false` 阻止
|
|
466
|
-
*/
|
|
467
|
-
wantsShowIntersectionOnModel(raycaster: THREE_2.Raycaster): void | false;
|
|
468
|
-
/** 鼠标焦点环被隐藏 */
|
|
469
|
-
intersectionHidden(): void;
|
|
470
|
-
/** 意图要退出VR眼镜模式 */
|
|
471
|
-
vrWantsToExit(): void;
|
|
472
|
-
/**
|
|
473
|
-
* 观察点的全景资源开始加载
|
|
474
|
-
* @param panoId - 加载点位
|
|
475
|
-
*/
|
|
476
|
-
textureStartLoad(panoId: WorkPanoId): void;
|
|
477
|
-
/**
|
|
478
|
-
* 观察点的全景资源加载中,可获取到进度
|
|
479
|
-
* @param progress - 加载进度 [0-1]
|
|
480
|
-
* @param panoId - 加载点位下标
|
|
481
|
-
*/
|
|
482
|
-
textureLoading(progress: number, panoId: WorkPanoId): void;
|
|
483
|
-
/**
|
|
484
|
-
* 观察点的全景资源加载被中止
|
|
485
|
-
* @param panoId - 加载点位
|
|
486
|
-
*/
|
|
487
|
-
textureAbort(panoId: WorkPanoId): void;
|
|
488
|
-
/**
|
|
489
|
-
* 观察点的全景资源加载失败
|
|
490
|
-
* @param error - 错误对象
|
|
491
|
-
* @param panoId - 加载点位
|
|
492
|
-
*/
|
|
493
|
-
textureError(error: Error, panoId: WorkPanoId): void;
|
|
494
|
-
/**
|
|
495
|
-
* 观察点的全景资源加载完成
|
|
496
|
-
* @param panoId - 加载点位
|
|
497
|
-
*/
|
|
498
|
-
textureLoaded(panoId: WorkPanoId, meta: (NetWorkMeta | null)[]): void;
|
|
499
|
-
/**
|
|
500
|
-
* 抛出错误
|
|
501
|
-
* @param error - 抛出错误
|
|
502
|
-
*/
|
|
503
|
-
error(error: Error): void;
|
|
504
|
-
/**
|
|
505
|
-
* webXR模式开始,webxr session完成坐标系矫正
|
|
506
|
-
*/
|
|
507
|
-
webXRSessionStart(): void;
|
|
508
|
-
/**
|
|
509
|
-
* webXR模式结束,webxr session销毁
|
|
510
|
-
*/
|
|
511
|
-
webXRSessionEnd(): void;
|
|
512
|
-
/**
|
|
513
|
-
* axes代表控制杆,axes数组的0-1元素分别代表左控制器的左(-1)右(1),左控制器的上(-1)下(1),axes数组的2-3元素同理
|
|
514
|
-
*/
|
|
515
|
-
webXRControllerEvent(type: WebXRControllerType, key: WebXRControllerKey, params: WebXRControllerParams): void;
|
|
234
|
+
/** 手势 滑动屏幕 */
|
|
235
|
+
"gesture.pan"(event: GestureEvent): void;
|
|
236
|
+
/** 手势 点击屏幕 */
|
|
237
|
+
"gesture.tap"(event: GestureEvent): void;
|
|
238
|
+
/** 手势 长按屏幕 */
|
|
239
|
+
"gesture.press"(event: GestureEvent): void;
|
|
240
|
+
/** 手势 双指缩放 */
|
|
241
|
+
"gesture.pinch"(event: GestureEvent): void;
|
|
242
|
+
/** 手势 鼠标滚轮 */
|
|
243
|
+
"gesture.mousewheel"(event: GestureEvent): void;
|
|
244
|
+
/** 手势 鼠标移动 */
|
|
245
|
+
"gesture.mousemove"(event: GestureEvent): void;
|
|
246
|
+
/** 手势 惯性 */
|
|
247
|
+
"gesture.momentum"(event: GestureEvent): void;
|
|
248
|
+
/** 模态切换动画 开始 */
|
|
249
|
+
"initAnimation.start"(event: StateEvent): void;
|
|
250
|
+
/** 模态切换动画 结束 */
|
|
251
|
+
"initAnimation.end"(event: StateEvent): void;
|
|
252
|
+
/** 相机改变 */
|
|
253
|
+
"camera.update"(event: StateEvent): void;
|
|
254
|
+
"intersect.update"(event: IntersectEvent): void;
|
|
255
|
+
/** 选择 */
|
|
256
|
+
"pano.select"(event: PanoEvent): void;
|
|
257
|
+
/** 请求点位 */
|
|
258
|
+
"pano.request"(event: PanoEvent): void;
|
|
259
|
+
/** 运动去点位 */
|
|
260
|
+
"pano.moveTo"(event: PanoEvent): void;
|
|
261
|
+
/** 运动点位过程 */
|
|
262
|
+
"pano.moving"(event: PanoEvent): void;
|
|
263
|
+
/** 运动到达点位 */
|
|
264
|
+
"pano.arrived"(event: PanoEvent): void;
|
|
265
|
+
/** 取消运动点位 */
|
|
266
|
+
"pano.cancel"(event: PanoEvent): void;
|
|
267
|
+
/** 运动点位出错 */
|
|
268
|
+
"pano.error"(event: PanoEvent): void;
|
|
269
|
+
/** 加载全景材质 */
|
|
270
|
+
"pano.texture.load"(event: PanoTextureEvent): void;
|
|
271
|
+
/** 加载全景材质进度 */
|
|
272
|
+
"pano.texture.progress"(event: PanoTextureEvent): void;
|
|
273
|
+
/** 加载全景材质成功 */
|
|
274
|
+
"pano.texture.success"(event: PanoTextureEvent): void;
|
|
275
|
+
/** 加载全景材质失败 */
|
|
276
|
+
"pano.texture.error"(event: PanoTextureEvent): void;
|
|
277
|
+
/** 加载全景材质中止 */
|
|
278
|
+
"pano.texture.abort"(event: PanoTextureEvent): void;
|
|
279
|
+
/** VRPanorama 请求退出 */
|
|
280
|
+
"vr.requestExit"(event: BaseEvent): void;
|
|
281
|
+
/** XR 退出 */
|
|
282
|
+
"xr.session.end"(event: XRSessionEvent_2): void;
|
|
283
|
+
/** XR 进入 */
|
|
284
|
+
"xr.session.start"(event: XRSessionEvent_2): void;
|
|
285
|
+
/** XR 手势(按钮) */
|
|
286
|
+
"xr.gesture.tap"(event: XRGestureEvent): void;
|
|
287
|
+
/** XR 手势(按钮) */
|
|
288
|
+
"xr.gesture.press"(event: XRGestureEvent): void;
|
|
289
|
+
/** XR 手势(按钮) */
|
|
290
|
+
"xr.gesture.buttonUp"(event: XRGestureEvent): void;
|
|
291
|
+
/** XR 手势(按钮) */
|
|
292
|
+
"xr.gesture.buttonDown"(event: XRGestureEvent): void;
|
|
293
|
+
/** XR手柄更新*/
|
|
294
|
+
"xr.controller.update"(event: XRControllerEvent): void;
|
|
295
|
+
/** 抛出错误 */
|
|
296
|
+
"error"(error: Error): void;
|
|
516
297
|
};
|
|
517
298
|
|
|
518
299
|
export declare class CullingVolume {
|
|
@@ -545,7 +326,7 @@ export declare interface DepthPanoramaControllerCustomInitArgs extends PanoramaL
|
|
|
545
326
|
*/
|
|
546
327
|
panoTapTriggerRadius?: number;
|
|
547
328
|
/** 地面观察点标识自定义创建器 */
|
|
548
|
-
panoCircleMeshCreator?: (
|
|
329
|
+
panoCircleMeshCreator?: (pano: Pano) => PanoCircleMeshInterface;
|
|
549
330
|
}
|
|
550
331
|
|
|
551
332
|
/**
|
|
@@ -561,150 +342,51 @@ export declare interface EventCallback extends EventTypes {
|
|
|
561
342
|
* @description
|
|
562
343
|
* 具体事件列表 请查看 {@link EventCallback}
|
|
563
344
|
*/
|
|
564
|
-
export declare type EventTypes = Pick<ControllerEventTypes, typeof PROXY_CONTROLLER_EVENT_NAMES[number]> & {
|
|
565
|
-
/**
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
/**
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
/**
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
/**
|
|
606
|
-
|
|
607
|
-
* @description
|
|
608
|
-
* bvh 树用于高效的碰撞检测,可以在 `model.bvh` 属性来设置是否开启。默认开启。
|
|
609
|
-
* bvh 树计算需要一定事件,可能会暂时影响一些性能。计算完毕后,会对碰撞检测带来质的提升。
|
|
610
|
-
* @param model - 加载完的 model 本质是一个 {@link PBMGroup}
|
|
611
|
-
*/
|
|
612
|
-
modelBvhLoaded(model: Model): void;
|
|
613
|
-
/**
|
|
614
|
-
* 模型加载错误
|
|
615
|
-
* @param error - 错误对象
|
|
616
|
-
* @param model - 加载完的 model 本质是一个 {@link PBMGroup}
|
|
617
|
-
*/
|
|
618
|
-
modelLoadError(error: Error, model: Model): void;
|
|
619
|
-
/**
|
|
620
|
-
* 模型加载完成
|
|
621
|
-
* @param model - 加载完的 model 本质是一个 {@link PBMGroup}
|
|
622
|
-
*/
|
|
623
|
-
modelLoaded(model: Model): void;
|
|
624
|
-
/**
|
|
625
|
-
* 模型楼层切换
|
|
626
|
-
* @param shownFloor - 模型楼层
|
|
627
|
-
*/
|
|
628
|
-
modelShownFloorChange(shownFloor: number | null, totalFloorLength: number): void;
|
|
629
|
-
/**
|
|
630
|
-
* 渲染循环
|
|
631
|
-
* @param rendered - 是否渲染了
|
|
632
|
-
*/
|
|
633
|
-
renderFrame(rendered: boolean): void;
|
|
634
|
-
/**
|
|
635
|
-
* 当前 fps 变化
|
|
636
|
-
* @param fps - 当前刷新率
|
|
637
|
-
*/
|
|
638
|
-
fps(fps: number): void;
|
|
639
|
-
/**
|
|
640
|
-
* 当目标 state 变化时
|
|
641
|
-
* @param state - 当前姿态状态
|
|
642
|
-
* @param userAction - 是否用户触发
|
|
643
|
-
*/
|
|
644
|
-
stateChange(state: State, userAction: boolean): void;
|
|
645
|
-
/**
|
|
646
|
-
* 当前实时 state 变化时
|
|
647
|
-
* @param state - 当前姿态状态
|
|
648
|
-
* @param userAction - 是否用户触发
|
|
649
|
-
*/
|
|
650
|
-
currentStateChange(state: State, userAction: boolean): void;
|
|
651
|
-
/**
|
|
652
|
-
* 当 setState 方法被调用
|
|
653
|
-
* @param state - 当前姿态状态
|
|
654
|
-
*/
|
|
655
|
-
setState(state: State): void;
|
|
656
|
-
/**
|
|
657
|
-
* 当 state 被同步完成时
|
|
658
|
-
* @param state - 当前姿态状态
|
|
659
|
-
*/
|
|
660
|
-
stateSynced(state: State): void;
|
|
661
|
-
/**
|
|
662
|
-
* 意图要移动到某个点时, 可以通过 return false 阻止
|
|
663
|
-
* @param panoId - 意图要移动到点位
|
|
664
|
-
* @param options - 移动参数
|
|
665
|
-
* @param userAction - 是否用户触发
|
|
666
|
-
* @returns 可以通过 return false 阻止
|
|
667
|
-
*/
|
|
668
|
-
wantsMoveToPano(panoId: WorkPanoId, options: MovePanoOptions, userAction: boolean): void | false;
|
|
669
|
-
/**
|
|
670
|
-
* 同 wantsMoveToPano
|
|
671
|
-
* @description
|
|
672
|
-
* @param panoId - 意图要移动到点位
|
|
673
|
-
* @param options - 移动参数
|
|
674
|
-
* @param userAction - 是否用户触发
|
|
675
|
-
* @returns 可以通过 return false 阻止
|
|
676
|
-
*/
|
|
677
|
-
wantsToMoveToPano(panoId: WorkPanoId, options: MovePanoOptions, userAction: boolean): void;
|
|
678
|
-
/**
|
|
679
|
-
* 意图要切换到某个模态, 可以通过 return false 阻止
|
|
680
|
-
* @param mode - 意图要切换到的模态
|
|
681
|
-
* @param prevMode - 当前模态
|
|
682
|
-
* @returns 可以通过 return false 阻止
|
|
683
|
-
*/
|
|
684
|
-
wantsChangeMode(mode: Mode, prevMode: Mode): void | false;
|
|
685
|
-
/**
|
|
686
|
-
* 模态切换完成
|
|
687
|
-
* @param mode - 切换到的模态
|
|
688
|
-
* @param prevMode - 上本质是一个模态
|
|
689
|
-
* @param panoIndex - 初始化动画结束后的点位下标
|
|
690
|
-
* @param toPose - 初始化动画结束后的状态
|
|
691
|
-
* @param userAction - 是否用户触发
|
|
692
|
-
*/
|
|
693
|
-
modeChange(mode: Mode, prevMode: Mode, panoId: WorkPanoId, toPose: Pose, userAction: boolean): void;
|
|
694
|
-
/**
|
|
695
|
-
* 帮助元素显应的变换
|
|
696
|
-
* @param visible - 帮助元素的是否开启
|
|
697
|
-
*/
|
|
698
|
-
helpersVisibleChange(visible: boolean): void;
|
|
699
|
-
/**
|
|
700
|
-
* 网络资源分析
|
|
701
|
-
* @param source - 资源地址
|
|
702
|
-
* @param state - 状态
|
|
703
|
-
* @param detail - 详情
|
|
704
|
-
*/
|
|
705
|
-
network(source: string, type: NetworkType, state: NetworkState, detail: string): void;
|
|
345
|
+
export declare type EventTypes = Pick<ControllerEventTypes, typeof PROXY_CONTROLLER_EVENT_NAMES[number]> & LegacyEventType & {
|
|
346
|
+
/** 请求点位 */
|
|
347
|
+
"pano.request"(event: PanoEvent): void;
|
|
348
|
+
/** 内部错误 */
|
|
349
|
+
"error"(error: Error): void;
|
|
350
|
+
/** 请求 work数据 */
|
|
351
|
+
"works.request"(event: WorksEvent): void;
|
|
352
|
+
/** 加载 work */
|
|
353
|
+
"works.load"(event: WorksEvent): void;
|
|
354
|
+
/** 加载 work 并 controller ready */
|
|
355
|
+
"works.ready"(event: WorksEvent): void;
|
|
356
|
+
/** 设置 state */
|
|
357
|
+
"state.set"(event: StateEvent): void;
|
|
358
|
+
/** 当 state 变化 */
|
|
359
|
+
"state.change"(event: StateEvent): void;
|
|
360
|
+
/** 当 state 同步完成 */
|
|
361
|
+
"state.synced"(event: StateEvent): void;
|
|
362
|
+
/** 当前 state 变化 */
|
|
363
|
+
"currentState.change"(event: StateEvent): void;
|
|
364
|
+
/** 当模型加载 */
|
|
365
|
+
"model.request"(event: ModelEvent): void;
|
|
366
|
+
/** 当模型修改楼层 */
|
|
367
|
+
"model.load"(event: ModelEvent): void;
|
|
368
|
+
/** 当模型错误 */
|
|
369
|
+
"model.error"(event: ModelEvent): void;
|
|
370
|
+
/** 当模型修改楼层 */
|
|
371
|
+
"model.changeShownFloor"(event: ModelEvent): void;
|
|
372
|
+
/** 模型加载完成 */
|
|
373
|
+
"models.load"(event: ModelsEvent): void;
|
|
374
|
+
/** 渲染前 */
|
|
375
|
+
"render.prepare"(event: RenderEvent): void;
|
|
376
|
+
/** 渲染后 */
|
|
377
|
+
"render"(event: RenderEvent): void;
|
|
378
|
+
/** 请求改变 mode */
|
|
379
|
+
"mode.change.request"(event: ModeChangeEvent): void;
|
|
380
|
+
/** 改变 mode */
|
|
381
|
+
"mode.change"(event: ModeChangeEvent): void;
|
|
382
|
+
/** 改变 helpers 元素可见 */
|
|
383
|
+
"helpers.visible"(event: ObjectEvent): void;
|
|
384
|
+
/** 网络资源 */
|
|
385
|
+
"network.resource"(event: NetworkResourceEvent): void;
|
|
386
|
+
/** 当前 fps 变化 */
|
|
387
|
+
"fps"(fps: number): void;
|
|
706
388
|
/** five 被析构。 插件中请监听用于自身析构 */
|
|
707
|
-
dispose(): void;
|
|
389
|
+
"dispose"(): void;
|
|
708
390
|
};
|
|
709
391
|
|
|
710
392
|
/**
|
|
@@ -750,11 +432,13 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
750
432
|
*/
|
|
751
433
|
paused: boolean;
|
|
752
434
|
/** 当前点位序号 */
|
|
753
|
-
|
|
435
|
+
pano: Pano;
|
|
754
436
|
/** 当前展示的模式 */
|
|
755
437
|
currentMode: Mode;
|
|
756
438
|
/** 内部使用的 `THREE.Scene` */
|
|
757
439
|
scene: Scene;
|
|
440
|
+
/** 供外部放置需要在xr场景下产生遮挡的物体们*/
|
|
441
|
+
xrCustomObjectsScene: THREE_2.Scene;
|
|
758
442
|
/** 内部使用的 `Camera` */
|
|
759
443
|
camera: Camera;
|
|
760
444
|
/**
|
|
@@ -777,7 +461,8 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
777
461
|
*/
|
|
778
462
|
renderer?: THREE_2.WebGLRenderer;
|
|
779
463
|
/** 当前加载的模型 */
|
|
780
|
-
|
|
464
|
+
models: Models;
|
|
465
|
+
private lastModels;
|
|
781
466
|
/**
|
|
782
467
|
* 是否需要渲染
|
|
783
468
|
* @description
|
|
@@ -831,6 +516,19 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
831
516
|
* ```
|
|
832
517
|
*/
|
|
833
518
|
state: State;
|
|
519
|
+
info: null | {
|
|
520
|
+
memory: {
|
|
521
|
+
geometries: number;
|
|
522
|
+
textures: number;
|
|
523
|
+
};
|
|
524
|
+
render: {
|
|
525
|
+
calls: number;
|
|
526
|
+
frame: number;
|
|
527
|
+
lines: number;
|
|
528
|
+
points: number;
|
|
529
|
+
triangles: number;
|
|
530
|
+
};
|
|
531
|
+
};
|
|
834
532
|
/** 插件暴露的方法 */
|
|
835
533
|
plugins: {
|
|
836
534
|
[key: string]: FivePluginInstance<any>;
|
|
@@ -840,6 +538,7 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
840
538
|
private boundingMesh;
|
|
841
539
|
private stopAnimationLoop?;
|
|
842
540
|
private fps;
|
|
541
|
+
private modelGroup;
|
|
843
542
|
private helperGroup;
|
|
844
543
|
private modeChangeDuration;
|
|
845
544
|
private onlyRenderIfNeeds;
|
|
@@ -851,7 +550,6 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
851
550
|
private extraElements;
|
|
852
551
|
private getPixelsRenderTarget;
|
|
853
552
|
private readyCallbacks;
|
|
854
|
-
private modelPending;
|
|
855
553
|
private syncingState;
|
|
856
554
|
/**
|
|
857
555
|
* 是否开启 IOS EDR 模式
|
|
@@ -916,11 +614,17 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
916
614
|
*/
|
|
917
615
|
get enableIOSEDR(): boolean;
|
|
918
616
|
set enableIOSEDR(enable: boolean);
|
|
617
|
+
/**
|
|
618
|
+
* 后处理类型
|
|
619
|
+
*/
|
|
620
|
+
get postProcessingType(): PostProcessingType;
|
|
919
621
|
/**
|
|
920
622
|
* 是否开启EDL模式
|
|
921
623
|
*/
|
|
922
624
|
get enableEDL(): boolean;
|
|
923
625
|
set enableEDL(enable: boolean);
|
|
626
|
+
get enableHQ(): boolean;
|
|
627
|
+
set enableHQ(enable: boolean);
|
|
924
628
|
/**
|
|
925
629
|
* 是否开启后处理
|
|
926
630
|
*/
|
|
@@ -1010,6 +714,7 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
1010
714
|
/** 当前加载的 work 数据 */
|
|
1011
715
|
get works(): Works;
|
|
1012
716
|
get work(): Work | undefined;
|
|
717
|
+
get model(): Model;
|
|
1013
718
|
/**
|
|
1014
719
|
* 加载 Work 数据
|
|
1015
720
|
* @param inputWork - Work 数据
|
|
@@ -1044,6 +749,10 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
1044
749
|
* 获取显示用的画布(Canvas DOM节点)
|
|
1045
750
|
*/
|
|
1046
751
|
getElement(): HTMLCanvasElement | undefined;
|
|
752
|
+
/**
|
|
753
|
+
* 获取观测点
|
|
754
|
+
*/
|
|
755
|
+
get observers(): WorkResolvedObserver[];
|
|
1047
756
|
/**
|
|
1048
757
|
* 强制渲染
|
|
1049
758
|
* @description
|
|
@@ -1068,16 +777,14 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
1068
777
|
* @param options - 移动点位参数
|
|
1069
778
|
* @param userAction - 是否用户触犯
|
|
1070
779
|
*/
|
|
1071
|
-
moveToPano(
|
|
1072
|
-
moveToPano(panoIndex: number, options?: MovePanoOptions, userAction?: boolean): Promise<void>;
|
|
780
|
+
moveToPano(pano: Pano | PanoId | number, options?: MovePanoOptions, userAction?: boolean): Promise<void>;
|
|
1073
781
|
/**
|
|
1074
782
|
* 预加载点位图片资源
|
|
1075
|
-
* @param
|
|
783
|
+
* @param pano - 观察点序号
|
|
1076
784
|
* @param callback - 加载完成回调, 并传递加载用时。
|
|
1077
785
|
* @returns 加载完成的 Promise 参数同 callback
|
|
1078
786
|
*/
|
|
1079
|
-
preloadPano(
|
|
1080
|
-
preloadPano(panoIndex: number, callback?: (costs: number) => void): Promise<number>;
|
|
787
|
+
preloadPano(pano: Pano | PanoId | number, callback?: (costs: number) => void): Promise<number>;
|
|
1081
788
|
/**
|
|
1082
789
|
* 计算三维坐标对应到屏幕的二维坐标
|
|
1083
790
|
* @description
|
|
@@ -1137,8 +844,6 @@ export declare class Five extends Subscribe<EventTypes> {
|
|
|
1137
844
|
private applyController;
|
|
1138
845
|
/** 移除事件绑定 */
|
|
1139
846
|
private removeEventListeners;
|
|
1140
|
-
/** 销毁GPU Picking 所用的材质 */
|
|
1141
|
-
private diposeGPUPickingMaterial;
|
|
1142
847
|
}
|
|
1143
848
|
|
|
1144
849
|
/** Five 初始化参数 */
|
|
@@ -1347,7 +1052,36 @@ export declare interface FloorplanControllerCustomInitArgs {
|
|
|
1347
1052
|
intersectMeshCreator?: () => IntersectMeshInterface;
|
|
1348
1053
|
}
|
|
1349
1054
|
|
|
1350
|
-
export declare
|
|
1055
|
+
export declare interface GestureEvent extends StateEvent {
|
|
1056
|
+
target: EventTarget | null;
|
|
1057
|
+
pointerType: 'touch' | 'pen' | 'mouse' | 'kinect';
|
|
1058
|
+
srcEvent: MouseEvent | TouchEvent | PointerEvent;
|
|
1059
|
+
pointers: {
|
|
1060
|
+
x: number;
|
|
1061
|
+
y: number;
|
|
1062
|
+
delta: number;
|
|
1063
|
+
buttons: number;
|
|
1064
|
+
coords: THREE_2.Vector2;
|
|
1065
|
+
raycaster: THREE_2.Raycaster;
|
|
1066
|
+
}[];
|
|
1067
|
+
isFirst: boolean;
|
|
1068
|
+
isFinal: boolean;
|
|
1069
|
+
scale: number;
|
|
1070
|
+
center: {
|
|
1071
|
+
x: number;
|
|
1072
|
+
y: number;
|
|
1073
|
+
delta: number;
|
|
1074
|
+
buttons: number;
|
|
1075
|
+
coords: THREE_2.Vector2;
|
|
1076
|
+
raycaster: THREE_2.Raycaster;
|
|
1077
|
+
};
|
|
1078
|
+
velocityX: number;
|
|
1079
|
+
velocityY: number;
|
|
1080
|
+
overallVelocityX: number;
|
|
1081
|
+
overallVelocityY: number;
|
|
1082
|
+
}
|
|
1083
|
+
|
|
1084
|
+
export declare type GestureTypes = "pan" | "tap" | "pinch" | "press" | "mouseWheel" | "mouseMove";
|
|
1351
1085
|
|
|
1352
1086
|
export declare function getViewportScale(): number;
|
|
1353
1087
|
|
|
@@ -1356,90 +1090,504 @@ export declare function getViewportScale(): number;
|
|
|
1356
1090
|
*/
|
|
1357
1091
|
export declare interface ImageOptions {
|
|
1358
1092
|
/**
|
|
1359
|
-
* url 地址转化
|
|
1360
|
-
* @param url - 原始地址
|
|
1361
|
-
* @param options - 当前地址参数
|
|
1362
|
-
* @returns 转化后地址
|
|
1093
|
+
* url 地址转化
|
|
1094
|
+
* @param url - 原始地址
|
|
1095
|
+
* @param options - 当前地址参数
|
|
1096
|
+
* @returns 转化后地址
|
|
1097
|
+
*/
|
|
1098
|
+
transform?: (url: string, options: ImageURLOptions) => string;
|
|
1099
|
+
/** 图片尺寸参数 尽量使用 2 的幂次 如 512 1024 2048 */
|
|
1100
|
+
size?: number;
|
|
1101
|
+
/** 图片质量参数(0-100) */
|
|
1102
|
+
quality?: number;
|
|
1103
|
+
/** 图片格式参数 */
|
|
1104
|
+
format?: "jpg" | "png" | "heif" | "webp" | "avif";
|
|
1105
|
+
/** 锐化参数 海外不支持 */
|
|
1106
|
+
sharpen?: number;
|
|
1107
|
+
mappings?: ImageURLMappings;
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
export declare function imageSupport(): Promise<{
|
|
1111
|
+
avif: boolean;
|
|
1112
|
+
webp: boolean;
|
|
1113
|
+
}>;
|
|
1114
|
+
|
|
1115
|
+
export declare interface ImageURLMappings {
|
|
1116
|
+
[publicDomain: string]: {
|
|
1117
|
+
"type"?: string;
|
|
1118
|
+
"pano": [string, string];
|
|
1119
|
+
"tile": [string, string];
|
|
1120
|
+
"model": [string, string];
|
|
1121
|
+
"texture": [string];
|
|
1122
|
+
"default": [string];
|
|
1123
|
+
};
|
|
1124
|
+
}
|
|
1125
|
+
|
|
1126
|
+
export declare interface ImageURLOptions {
|
|
1127
|
+
/** 图片类型标识 */
|
|
1128
|
+
key: string;
|
|
1129
|
+
/** 图片尺寸参数 尽量使用 2 的幂次 如 256 512 1024 */
|
|
1130
|
+
size?: number;
|
|
1131
|
+
/** 图片质量参数(0-100) */
|
|
1132
|
+
quality?: number;
|
|
1133
|
+
/** 图片格式参数 */
|
|
1134
|
+
format?: "jpg" | "png" | "heif" | "webp" | "avif";
|
|
1135
|
+
/** 图片裁切 */
|
|
1136
|
+
cut?: [x: number, y: number, width: number, height: number];
|
|
1137
|
+
/** 锐化参数 海外不支持 */
|
|
1138
|
+
sharpen?: number;
|
|
1139
|
+
/** url匹配规则 */
|
|
1140
|
+
mappings?: ImageURLMappings;
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
export declare class InternalWebGLRenderer extends THREE_2.WebGLRenderer {
|
|
1144
|
+
constructor({ preserveDrawingBuffer, backgroundColor, backgroundAlpha, pixelRatio, antialias, webgl2, }: {
|
|
1145
|
+
preserveDrawingBuffer?: boolean;
|
|
1146
|
+
backgroundColor?: number | THREE_2.Color;
|
|
1147
|
+
backgroundAlpha?: number;
|
|
1148
|
+
pixelRatio?: number;
|
|
1149
|
+
antialias?: boolean;
|
|
1150
|
+
webgl2?: boolean;
|
|
1151
|
+
});
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1154
|
+
export declare interface IntersectEvent extends BaseEvent {
|
|
1155
|
+
object: THREE_2.Object3D;
|
|
1156
|
+
raycaster: THREE_2.Raycaster;
|
|
1157
|
+
intersection: Intersection | null;
|
|
1158
|
+
}
|
|
1159
|
+
|
|
1160
|
+
export declare interface Intersection {
|
|
1161
|
+
/** 焦点坐标 */
|
|
1162
|
+
point: THREE.Vector3;
|
|
1163
|
+
/** 焦点面片 */
|
|
1164
|
+
face?: {
|
|
1165
|
+
normal: THREE.Vector3;
|
|
1166
|
+
} | null;
|
|
1167
|
+
/** 焦点距离 */
|
|
1168
|
+
distance: number;
|
|
1169
|
+
}
|
|
1170
|
+
|
|
1171
|
+
export declare class IntersectMesh extends THREE_2.Object3D implements IntersectMeshInterface {
|
|
1172
|
+
private ringMesh;
|
|
1173
|
+
constructor();
|
|
1174
|
+
dispose(): void;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1177
|
+
/**
|
|
1178
|
+
* 地面提示点位接口
|
|
1179
|
+
*/
|
|
1180
|
+
export declare interface IntersectMeshInterface extends THREE_2.Object3D {
|
|
1181
|
+
dispose(): void;
|
|
1182
|
+
}
|
|
1183
|
+
|
|
1184
|
+
export declare function isPanoId(id: any): id is PanoId;
|
|
1185
|
+
|
|
1186
|
+
/**
|
|
1187
|
+
* 过时的事件列表
|
|
1188
|
+
*/
|
|
1189
|
+
export declare type LegacyEventType = {
|
|
1190
|
+
/**
|
|
1191
|
+
* 模态间切换动画开始
|
|
1192
|
+
* @param panoIndex - 当前点位
|
|
1193
|
+
* @param pose - 相机姿态
|
|
1194
|
+
* @param userAction - 是否用户触发
|
|
1195
|
+
*/
|
|
1196
|
+
initAnimationWillStart(panoIndex: number, pose: Pose, userAction: boolean): void;
|
|
1197
|
+
/**
|
|
1198
|
+
* 模态间切换动画结束
|
|
1199
|
+
* @param panoIndex - 当前点位
|
|
1200
|
+
* @param pose - 相机姿态
|
|
1201
|
+
* @param userAction - 是否用户触发
|
|
1202
|
+
*/
|
|
1203
|
+
initAnimationEnded(panoIndex: number, pose: Pose, userAction: boolean): void;
|
|
1204
|
+
/**
|
|
1205
|
+
* 意图要触发手势, 可以通过 `return false` 阻止
|
|
1206
|
+
* @param type - 手势类型
|
|
1207
|
+
* @param pointers - 手指位置
|
|
1208
|
+
* @param final - 是否手势结束
|
|
1209
|
+
* @returns 可以通过 `return false` 阻止
|
|
1210
|
+
*/
|
|
1211
|
+
wantsGesture(type: GestureTypes, pointers: {
|
|
1212
|
+
x: number;
|
|
1213
|
+
y: number;
|
|
1214
|
+
delta?: number;
|
|
1215
|
+
}[], final: boolean): void | false;
|
|
1216
|
+
/**
|
|
1217
|
+
* 手势 触发
|
|
1218
|
+
* @param type - 手势类型
|
|
1219
|
+
* @param pointers - 手指位置
|
|
1220
|
+
* @param final - 是否手势结束
|
|
1221
|
+
*/
|
|
1222
|
+
gesture(type: GestureTypes, pointers: {
|
|
1223
|
+
x: number;
|
|
1224
|
+
y: number;
|
|
1225
|
+
delta?: number;
|
|
1226
|
+
}[], final: boolean): void;
|
|
1227
|
+
/**
|
|
1228
|
+
* 意图要触发 pan 手势(滑动屏幕), 可以通过 `return false` 阻止
|
|
1229
|
+
* @param pose - 意图的相机姿态
|
|
1230
|
+
* @param final - 是否手势结束
|
|
1231
|
+
* @returns 可以通过 `return false` 阻止
|
|
1232
|
+
*/
|
|
1233
|
+
wantsPanGesture(pose: Pose, final: boolean): void | false;
|
|
1234
|
+
/**
|
|
1235
|
+
* pan 手势(滑动屏幕) 被触发
|
|
1236
|
+
* @param pose - 相机姿态
|
|
1237
|
+
* @param final - 是否手势结束
|
|
1238
|
+
*/
|
|
1239
|
+
panGesture(pose: Pose, final: boolean): void;
|
|
1240
|
+
/**
|
|
1241
|
+
* 意图要触发 tap 手势(点击屏幕), 可以通过 `return false` 阻止
|
|
1242
|
+
* @param raycaster - 点击对应的三维射线
|
|
1243
|
+
* @param tapPosition - 点击对应的屏幕位置
|
|
1244
|
+
* @param final - 是否手势结束
|
|
1245
|
+
* @returns 可以通过 `return false` 阻止
|
|
1246
|
+
*/
|
|
1247
|
+
wantsTapGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, final: boolean): void | false;
|
|
1248
|
+
/**
|
|
1249
|
+
* tap 手势(点击屏幕) 被触发
|
|
1250
|
+
* @param raycaster - 点击对应的三维射线
|
|
1251
|
+
* @param tapPosition - 点击对应的屏幕位置
|
|
1252
|
+
* @param final - 是否手势结束
|
|
1253
|
+
*/
|
|
1254
|
+
tapGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, final: boolean): void;
|
|
1255
|
+
/**
|
|
1256
|
+
* 意图要触发 pinch 手势(双指缩放),可以通过 `return false` 阻止
|
|
1257
|
+
* @param scale - 缩放数值
|
|
1258
|
+
* @param nextFov - 意图的fov变更
|
|
1259
|
+
* @param final - 是否手势结束
|
|
1260
|
+
* @returns 可以通过 `return false` 阻止
|
|
1261
|
+
*/
|
|
1262
|
+
wantsPinchGesture(scale: number, nextFov: number, final: boolean): void | false;
|
|
1263
|
+
/**
|
|
1264
|
+
* 意图要触发 press 手势(长按屏幕), 可以通过 `return false` 阻止
|
|
1265
|
+
* @param raycaster - 长按对应的三维射线
|
|
1266
|
+
* @param tapPosition - 长按对应的屏幕位置
|
|
1267
|
+
* @param duration - 长按持续时间
|
|
1268
|
+
* @param final - 是否手势结束
|
|
1269
|
+
* @returns 可以通过 `return false` 阻止
|
|
1270
|
+
*/
|
|
1271
|
+
wantsPressGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, duration: number, isFinal: boolean): void | false;
|
|
1272
|
+
/**
|
|
1273
|
+
* tap 手势(点击屏幕) 被触发
|
|
1274
|
+
* @param raycaster - 点击对应的三维射线
|
|
1275
|
+
* @param tapPosition - 点击对应的屏幕位置
|
|
1276
|
+
* @param duration - 长按持续时间
|
|
1277
|
+
* @param final - 是否手势结束
|
|
1278
|
+
*/
|
|
1279
|
+
pressGesture(raycaster: THREE_2.Raycaster, tapPosition: THREE_2.Vector2, duration: number, isFinal: boolean): void;
|
|
1280
|
+
/**
|
|
1281
|
+
* pinch 手势(双指缩放) 被触发
|
|
1282
|
+
* @param scale - 缩放数值
|
|
1283
|
+
* @param nextFov - 意图的fov变更
|
|
1284
|
+
* @param final - 是否手势结束
|
|
1285
|
+
*/
|
|
1286
|
+
pinchGesture(scale: number, fov: number, final: boolean): void;
|
|
1287
|
+
/**
|
|
1288
|
+
* 意图要触发 鼠标滚轮 可以通过 `return false` 阻止
|
|
1289
|
+
* @param delta - 滚轮数值
|
|
1290
|
+
* @param nextFov - 意图的fov变更
|
|
1291
|
+
* @param final - 是否手势结束
|
|
1292
|
+
* @returns 可以通过 `return false` 阻止
|
|
1293
|
+
*/
|
|
1294
|
+
wantsMouseWheel(delta: number, nextFov: number, final: boolean): void | false;
|
|
1295
|
+
/**
|
|
1296
|
+
* 鼠标滚轮被触发
|
|
1297
|
+
* @param delta - 滚轮数值
|
|
1298
|
+
* @param nextFov - 意图的fov变更
|
|
1299
|
+
* @param final - 是否手势结束
|
|
1300
|
+
*/
|
|
1301
|
+
mouseWheel(delta: number, fov: number, final: boolean): void;
|
|
1302
|
+
/**
|
|
1303
|
+
* 意图要触发 pan 手势(滑动屏幕) 的惯性运动, 可以通过 `return false` 阻止
|
|
1304
|
+
* @param pose - 意图的相机姿态
|
|
1305
|
+
* @param final - 是否手势结束
|
|
1306
|
+
* @returns 可以通过 `return false` 阻止
|
|
1307
|
+
*/
|
|
1308
|
+
wantsInteriaPan(pose: Pose): void | false;
|
|
1309
|
+
/**
|
|
1310
|
+
* pan 手势(滑动屏幕) 的惯性运动
|
|
1311
|
+
* @param pose - 意图的相机姿态
|
|
1312
|
+
* @param final - 是否手势结束
|
|
1313
|
+
*/
|
|
1314
|
+
interiaPan(pose: Pose, final: boolean): void;
|
|
1315
|
+
/**
|
|
1316
|
+
* 意图要变化相机的可视角度 可以通过 `return false` 阻止
|
|
1317
|
+
* @deprecated
|
|
1318
|
+
* 建议通过 初始化设置的 `defaultFov`, `maxFov`, `minFov` 来限制
|
|
1319
|
+
* @param fov - 意图要变化相机的可视角度
|
|
1320
|
+
* @returns 可以通过 `return false` 阻止
|
|
1321
|
+
*/
|
|
1322
|
+
wantsChangeCameraFov(fov: number): void | false;
|
|
1323
|
+
/**
|
|
1324
|
+
* 相机姿态变化
|
|
1325
|
+
* @param pose - 相机姿态
|
|
1326
|
+
* @param userAction - 是否用户触发
|
|
1327
|
+
*/
|
|
1328
|
+
cameraUpdate(pose: Pose, userAction: boolean): void;
|
|
1329
|
+
/**
|
|
1330
|
+
* 相机姿态中可视角度变化
|
|
1331
|
+
* @param fov - 相机的可视角度
|
|
1332
|
+
* @param userAction - 是否用户触发
|
|
1333
|
+
*/
|
|
1334
|
+
cameraFovUpdate(fov: Pose["fov"], userAction: boolean): void;
|
|
1335
|
+
/**
|
|
1336
|
+
* 相机姿态中相机位置变化
|
|
1337
|
+
* @param offset - 相机位置
|
|
1338
|
+
* @param userAction - 是否用户触发
|
|
1339
|
+
*/
|
|
1340
|
+
cameraPositionUpdate(offset: Pose["offset"], userAction: boolean): void;
|
|
1341
|
+
/**
|
|
1342
|
+
* 相机姿态中相机方向变化
|
|
1343
|
+
* @param coordinates - 相机姿态的俯仰角和偏航角
|
|
1344
|
+
* @param userAction - 是否用户触发
|
|
1345
|
+
*/
|
|
1346
|
+
cameraDirectionUpdate(coordinates: Pick<Pose, "longitude" | "latitude">, userAction: boolean): void;
|
|
1347
|
+
/**
|
|
1348
|
+
* 鼠标焦点环位置被重新计算
|
|
1349
|
+
* @param intersection - 焦点碰撞结果
|
|
1350
|
+
* @param mesh - 焦点环 mesh
|
|
1351
|
+
*/
|
|
1352
|
+
intersectionOnModelUpdate(intersection: Intersection, mesh: THREE_2.Object3D): void;
|
|
1353
|
+
/**
|
|
1354
|
+
* 意图要展示鼠标焦点环,可以通过 `return false` 阻止
|
|
1355
|
+
* @param intersection - 焦点碰撞结果
|
|
1356
|
+
* @returns 可以通过 `return false` 阻止
|
|
1357
|
+
*/
|
|
1358
|
+
wantsShowIntersectionOnModel(raycaster: THREE_2.Raycaster): void | false;
|
|
1359
|
+
/** 鼠标焦点环被隐藏 */
|
|
1360
|
+
intersectionHidden(): void;
|
|
1361
|
+
/**
|
|
1362
|
+
* 意图要移动到某个点时, 可以通过 return false 阻止
|
|
1363
|
+
* @param panoIndex - 意图要移动到点位
|
|
1364
|
+
* @param options - 移动参数
|
|
1365
|
+
* @param userAction - 是否用户触发
|
|
1366
|
+
* @returns 可以通过 return false 阻止
|
|
1367
|
+
*/
|
|
1368
|
+
wantsMoveToPano(panoIndex: number, options: MovePanoOptions, userAction: boolean): void | false;
|
|
1369
|
+
/**
|
|
1370
|
+
* 同 wantsMoveToPano
|
|
1371
|
+
* @description
|
|
1372
|
+
* @param panoIndex - 意图要移动到点位
|
|
1373
|
+
* @param options - 移动参数
|
|
1374
|
+
* @param userAction - 是否用户触发
|
|
1375
|
+
* @returns 可以通过 return false 阻止
|
|
1376
|
+
*/
|
|
1377
|
+
wantsToMoveToPano(panoIndex: number, options: MovePanoOptions, userAction: boolean): void;
|
|
1378
|
+
/**
|
|
1379
|
+
* 观察点位被选择
|
|
1380
|
+
* @param panoIndex - 选择的点位
|
|
1381
|
+
*/
|
|
1382
|
+
panoSelected(panoIndex: number | null): void;
|
|
1383
|
+
/**
|
|
1384
|
+
* 开始加载并移动到某个观察点位
|
|
1385
|
+
* @description
|
|
1386
|
+
* 可 panoWillArrive 相比
|
|
1387
|
+
* - moveToPano 在加载全景图资源前触发
|
|
1388
|
+
* - panoWillArrive 在加载全景图资源后触发
|
|
1389
|
+
* @param panoIndex - 移动到的点位
|
|
1390
|
+
* @param userAction - 是否用户触发
|
|
1391
|
+
*/
|
|
1392
|
+
moveToPano(panoIndex: number, userAction: boolean): void;
|
|
1393
|
+
/**
|
|
1394
|
+
* 移动中, 会告知移动状态(耗时百分比)
|
|
1395
|
+
* @param panoIndex - 将要移动到的点位下标
|
|
1396
|
+
* @param prevPanoIndex - 上一个点位下标
|
|
1397
|
+
* @param progress - 整个过程经度 [0-1]
|
|
1398
|
+
*/
|
|
1399
|
+
movingToPano(panoIndex: number, prevPanoIndex: number, progress: number): void;
|
|
1400
|
+
/**
|
|
1401
|
+
* 开始加载某个观察点的全景资源
|
|
1402
|
+
* @param pano - 移动到的点位
|
|
1403
|
+
*/
|
|
1404
|
+
panoWillLoad(panoIndex: number): void;
|
|
1405
|
+
/**
|
|
1406
|
+
* 某个观察点的全景资源加载完成
|
|
1407
|
+
* @param panoIndex - 对应的点位
|
|
1408
|
+
*/
|
|
1409
|
+
panoLoaded(panoIndex: number): void;
|
|
1410
|
+
/**
|
|
1411
|
+
* 开始移动到某个观察点位
|
|
1412
|
+
* @description
|
|
1413
|
+
* 和 moveToPano 相比
|
|
1414
|
+
* - moveToPano 在加载全景图资源前触发
|
|
1415
|
+
* - panoWillArrive 在加载全景图资源后触发
|
|
1416
|
+
* @param panoIndex - 移动到点位
|
|
1417
|
+
* @param pose - 相机姿态
|
|
1418
|
+
* @param userAction - 是否用户触发
|
|
1419
|
+
*/
|
|
1420
|
+
panoWillArrive(panoIndex: number, pose: Pose, userAction: boolean): void;
|
|
1421
|
+
/**
|
|
1422
|
+
* 移动到某个观察点位
|
|
1423
|
+
* @param panoIndex - 移动到点位
|
|
1424
|
+
* @param pose - 相机姿态
|
|
1425
|
+
* @param userAction - 是否用户触发
|
|
1426
|
+
*/
|
|
1427
|
+
panoArrived(panoIndex: number, pose: Pose, userAction: boolean): void;
|
|
1428
|
+
/**
|
|
1429
|
+
* 某个观察点的全景资源加载失败
|
|
1430
|
+
* @param error - 错误对象
|
|
1431
|
+
* @param panoIndex - 对应的点位
|
|
1432
|
+
*/
|
|
1433
|
+
panoLoadError(error: Error, panoIndex: number): void;
|
|
1434
|
+
/**
|
|
1435
|
+
* 移动到某个观察点位被取消
|
|
1436
|
+
* @description
|
|
1437
|
+
* 这个有一些情况会导致
|
|
1438
|
+
* - 移动过程中切换模态
|
|
1439
|
+
* - 移动过程中 five 被析构
|
|
1440
|
+
* - 移动过程点击切换到另一个点位
|
|
1441
|
+
* @param panoIndex - 对应的点位
|
|
1442
|
+
*/
|
|
1443
|
+
moveToPanoCanceled(panoIndex: number): void;
|
|
1444
|
+
/**
|
|
1445
|
+
* 观察点的全景资源开始加载
|
|
1446
|
+
* @param panoIndex - 加载点位
|
|
1447
|
+
*/
|
|
1448
|
+
textureStartLoad(panoIndex: number): void;
|
|
1449
|
+
/**
|
|
1450
|
+
* 观察点的全景资源加载中,可获取到进度
|
|
1451
|
+
* @param progress - 加载进度 [0-1]
|
|
1452
|
+
* @param panoIndex - 加载点位下标
|
|
1453
|
+
*/
|
|
1454
|
+
textureLoading(progress: number, panoIndex: number): void;
|
|
1455
|
+
/**
|
|
1456
|
+
* 观察点的全景资源加载被中止
|
|
1457
|
+
* @param panoIndex - 加载点位
|
|
1458
|
+
*/
|
|
1459
|
+
textureAbort(panoIndex: number): void;
|
|
1460
|
+
/**
|
|
1461
|
+
* 观察点的全景资源加载失败
|
|
1462
|
+
* @param error - 错误对象
|
|
1463
|
+
* @param panoIndex - 加载点位
|
|
1464
|
+
*/
|
|
1465
|
+
textureError(error: Error, panoIndex: number): void;
|
|
1466
|
+
/**
|
|
1467
|
+
* 观察点的全景资源加载完成
|
|
1468
|
+
* @param panoIndex - 加载点位
|
|
1469
|
+
*/
|
|
1470
|
+
textureLoaded(panoIndex: number, meta: (NetWorkMeta | null)[]): void;
|
|
1471
|
+
/**
|
|
1472
|
+
* webXR模式开始,webxr session完成坐标系矫正
|
|
1473
|
+
*/
|
|
1474
|
+
webXRSessionStart(): void;
|
|
1475
|
+
/**
|
|
1476
|
+
* webXR模式结束,webxr session销毁
|
|
1477
|
+
*/
|
|
1478
|
+
webXRSessionEnd(): void;
|
|
1479
|
+
/**
|
|
1480
|
+
* axes代表控制杆,axes数组的0-1元素分别代表左控制器的左(-1)右(1),左控制器的上(-1)下(1),axes数组的2-3元素同理
|
|
1481
|
+
*/
|
|
1482
|
+
webXRControllerEvent(type: WebXRControllerType, key: WebXRControllerKey, params: WebXRControllerParams): void;
|
|
1483
|
+
/**
|
|
1484
|
+
* xr控制器的Axes原始实时数据状态
|
|
1485
|
+
*/
|
|
1486
|
+
webXRAxesUpdate(type: 'left' | 'right', param: WebXRAxesParams): void;
|
|
1487
|
+
/**
|
|
1488
|
+
* xr控制器的控制器射线更新
|
|
1489
|
+
*/
|
|
1490
|
+
webXRControllerRayUpdate(raycaster: {
|
|
1491
|
+
leftRay: THREE_2.Raycaster;
|
|
1492
|
+
rightRay: THREE_2.Raycaster;
|
|
1493
|
+
}): void;
|
|
1494
|
+
/**
|
|
1495
|
+
* 准备加载 Work 数据
|
|
1496
|
+
* @param input - 输入的 work
|
|
1497
|
+
* @param work - 归一化的标准 work
|
|
1498
|
+
* @param state - 加载时的姿态
|
|
1499
|
+
*/
|
|
1500
|
+
willLoad(input: any, work: Work, state: Partial<State>): void;
|
|
1501
|
+
/**
|
|
1502
|
+
* 开始加载 Work 数据
|
|
1503
|
+
* @param input - 输入的 work
|
|
1504
|
+
* @param work - 归一化的标准 work
|
|
1505
|
+
* @param state - 加载时的姿态
|
|
1506
|
+
*/
|
|
1507
|
+
load(input: any, work: Work, state: Partial<State>): void;
|
|
1508
|
+
/**
|
|
1509
|
+
* 加载完 Work 数据
|
|
1510
|
+
* @param input - 输入的 work
|
|
1511
|
+
* @param work - 归一化的标准 work
|
|
1512
|
+
*/
|
|
1513
|
+
loaded(input: any, work: Work): void;
|
|
1514
|
+
/**
|
|
1515
|
+
* 当目标 state 变化时
|
|
1516
|
+
* @param state - 当前姿态状态
|
|
1517
|
+
* @param userAction - 是否用户触发
|
|
1518
|
+
*/
|
|
1519
|
+
stateChange(state: State, userAction: boolean): void;
|
|
1520
|
+
/**
|
|
1521
|
+
* 当前实时 state 变化时
|
|
1522
|
+
* @param state - 当前姿态状态
|
|
1523
|
+
* @param userAction - 是否用户触发
|
|
1524
|
+
*/
|
|
1525
|
+
currentStateChange(state: State, userAction: boolean): void;
|
|
1526
|
+
/**
|
|
1527
|
+
* 当 setState 方法被调用
|
|
1528
|
+
* @param state - 当前姿态状态
|
|
1529
|
+
*/
|
|
1530
|
+
setState(state: State): void;
|
|
1531
|
+
/**
|
|
1532
|
+
* 当 state 被同步完成时
|
|
1533
|
+
* @param state - 当前姿态状态
|
|
1534
|
+
*/
|
|
1535
|
+
stateSynced(state: State): void;
|
|
1536
|
+
/**
|
|
1537
|
+
* 模型开始加载
|
|
1538
|
+
* @param workModel - 归一化的标准 work 中的 model 值
|
|
1539
|
+
*/
|
|
1540
|
+
modelWillLoad(workModel: WorkModel): void;
|
|
1541
|
+
/**
|
|
1542
|
+
* 模型加载错误
|
|
1543
|
+
* @param error - 错误对象
|
|
1544
|
+
* @param model - 加载完的 model
|
|
1545
|
+
*/
|
|
1546
|
+
modelLoadError(error: Error, model: Model): void;
|
|
1547
|
+
/**
|
|
1548
|
+
* 模型加载完成
|
|
1549
|
+
* @param models - 加载完的 model
|
|
1550
|
+
*/
|
|
1551
|
+
modelLoaded(model: Model): void;
|
|
1552
|
+
/**
|
|
1553
|
+
* 模型楼层切换
|
|
1554
|
+
* @param shownFloor - 模型楼层
|
|
1555
|
+
*/
|
|
1556
|
+
modelShownFloorChange(shownFloor: number | null, floorLength: number): void;
|
|
1557
|
+
/**
|
|
1558
|
+
* 渲染循环
|
|
1559
|
+
* @param rendered - 是否渲染了
|
|
1363
1560
|
*/
|
|
1364
|
-
|
|
1365
|
-
/**
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
key: string;
|
|
1395
|
-
/** 图片尺寸参数 尽量使用 2 的幂次 如 256 512 1024 */
|
|
1396
|
-
size?: number;
|
|
1397
|
-
/** 图片质量参数(0-100) */
|
|
1398
|
-
quality?: number;
|
|
1399
|
-
/** 图片格式参数 */
|
|
1400
|
-
format?: "jpg" | "png" | "heif" | "webp" | "avif";
|
|
1401
|
-
/** 图片裁切 */
|
|
1402
|
-
cut?: [x: number, y: number, width: number, height: number];
|
|
1403
|
-
/** 锐化参数 海外不支持 */
|
|
1404
|
-
sharpen?: number;
|
|
1405
|
-
/** url匹配规则 */
|
|
1406
|
-
mappings?: ImageURLMappings;
|
|
1407
|
-
}
|
|
1408
|
-
|
|
1409
|
-
export declare class InternalWebGLRenderer extends THREE_2.WebGLRenderer {
|
|
1410
|
-
constructor({ preserveDrawingBuffer, backgroundColor, backgroundAlpha, pixelRatio, antialias, webgl2, }: {
|
|
1411
|
-
preserveDrawingBuffer?: boolean;
|
|
1412
|
-
backgroundColor?: number | THREE_2.Color;
|
|
1413
|
-
backgroundAlpha?: number;
|
|
1414
|
-
pixelRatio?: number;
|
|
1415
|
-
antialias?: boolean;
|
|
1416
|
-
webgl2?: boolean;
|
|
1417
|
-
});
|
|
1418
|
-
}
|
|
1419
|
-
|
|
1420
|
-
export declare interface Intersection {
|
|
1421
|
-
/** 焦点坐标 */
|
|
1422
|
-
point: THREE.Vector3;
|
|
1423
|
-
/** 焦点面片 */
|
|
1424
|
-
face?: {
|
|
1425
|
-
normal: THREE.Vector3;
|
|
1426
|
-
} | null;
|
|
1427
|
-
/** 焦点距离 */
|
|
1428
|
-
distance: number;
|
|
1429
|
-
}
|
|
1430
|
-
|
|
1431
|
-
export declare class IntersectMesh extends THREE_2.Object3D implements IntersectMeshInterface {
|
|
1432
|
-
private ringMesh;
|
|
1433
|
-
constructor();
|
|
1434
|
-
dispose(): void;
|
|
1435
|
-
}
|
|
1436
|
-
|
|
1437
|
-
/**
|
|
1438
|
-
* 地面提示点位接口
|
|
1439
|
-
*/
|
|
1440
|
-
export declare interface IntersectMeshInterface extends THREE_2.Object3D {
|
|
1441
|
-
dispose(): void;
|
|
1442
|
-
}
|
|
1561
|
+
renderFrame(rendered: boolean): void;
|
|
1562
|
+
/**
|
|
1563
|
+
* 意图要切换到某个模态, 可以通过 return false 阻止
|
|
1564
|
+
* @param mode - 意图要切换到的模态
|
|
1565
|
+
* @param prevMode - 当前模态
|
|
1566
|
+
* @returns 可以通过 return false 阻止
|
|
1567
|
+
*/
|
|
1568
|
+
wantsChangeMode(mode: Mode, prevMode: Mode): void | false;
|
|
1569
|
+
/**
|
|
1570
|
+
* 模态切换完成
|
|
1571
|
+
* @param mode - 切换到的模态
|
|
1572
|
+
* @param prevMode - 上本质是一个模态
|
|
1573
|
+
* @param panoIndex - 初始化动画结束后的点位下标
|
|
1574
|
+
* @param toPose - 初始化动画结束后的状态
|
|
1575
|
+
* @param userAction - 是否用户触发
|
|
1576
|
+
*/
|
|
1577
|
+
modeChange(mode: Mode, prevMode: Mode, panoIndex: number, toPose: Pose, userAction: boolean): void;
|
|
1578
|
+
/**
|
|
1579
|
+
* 帮助元素显应的变换
|
|
1580
|
+
* @param visible - 帮助元素的是否开启
|
|
1581
|
+
*/
|
|
1582
|
+
helpersVisibleChange(visible: boolean): void;
|
|
1583
|
+
/**
|
|
1584
|
+
* 网络资源分析
|
|
1585
|
+
* @param source - 资源地址
|
|
1586
|
+
* @param state - 状态
|
|
1587
|
+
* @param detail - 详情
|
|
1588
|
+
*/
|
|
1589
|
+
network(source: string, type: NetworkType, state: NetworkState, detail: string): void;
|
|
1590
|
+
};
|
|
1443
1591
|
|
|
1444
1592
|
export declare type LooseWork = {
|
|
1445
1593
|
work_code?: string;
|
|
@@ -1471,8 +1619,19 @@ export declare type LooseWorkModel = {
|
|
|
1471
1619
|
material_textures?: string[];
|
|
1472
1620
|
material_base_url?: string;
|
|
1473
1621
|
tiles?: {
|
|
1622
|
+
type?: 'point_cloud' | 'mesh' | string;
|
|
1623
|
+
name?: string;
|
|
1624
|
+
up_axis?: string;
|
|
1474
1625
|
tileset_url: string;
|
|
1475
1626
|
};
|
|
1627
|
+
layers?: [
|
|
1628
|
+
{
|
|
1629
|
+
type?: 'point_cloud' | 'mesh' | string;
|
|
1630
|
+
name?: string;
|
|
1631
|
+
up_axis?: string;
|
|
1632
|
+
tileset_url: string;
|
|
1633
|
+
}
|
|
1634
|
+
];
|
|
1476
1635
|
};
|
|
1477
1636
|
|
|
1478
1637
|
export declare type LooseWorkObserver = {
|
|
@@ -1580,6 +1739,11 @@ export declare type Mode =
|
|
|
1580
1739
|
/** XR眼镜模式*/
|
|
1581
1740
|
"XRPanorama";
|
|
1582
1741
|
|
|
1742
|
+
export declare interface ModeChangeEvent extends StateEvent {
|
|
1743
|
+
prevMode: Mode;
|
|
1744
|
+
mode: Mode;
|
|
1745
|
+
}
|
|
1746
|
+
|
|
1583
1747
|
/**
|
|
1584
1748
|
* Five 模型
|
|
1585
1749
|
* @description
|
|
@@ -1588,14 +1752,23 @@ export declare type Mode =
|
|
|
1588
1752
|
* 需要满足 your/path/filename.at3d.json_xxxxxx,
|
|
1589
1753
|
* 通过 json_xxxxxx(<dataURL>) 方式返回。
|
|
1590
1754
|
*/
|
|
1591
|
-
export declare class Model extends
|
|
1592
|
-
|
|
1593
|
-
|
|
1755
|
+
export declare class Model extends THREE_2.Object3D {
|
|
1756
|
+
/** work */
|
|
1757
|
+
work: Work | null;
|
|
1758
|
+
/** 模型的不同图层 */
|
|
1759
|
+
viewLayers: {
|
|
1760
|
+
name: string;
|
|
1761
|
+
type: string;
|
|
1762
|
+
upAxis: string;
|
|
1763
|
+
coordinates: string;
|
|
1764
|
+
scene: Tile3DModel;
|
|
1765
|
+
}[];
|
|
1766
|
+
onError: (error: Error) => void;
|
|
1767
|
+
onShownFloorChange: (floorIndex: number | null) => void;
|
|
1768
|
+
onLoad: () => void;
|
|
1594
1769
|
/** 外接盒子的大小 */
|
|
1595
1770
|
bounding: THREE_2.Box3;
|
|
1596
|
-
/**
|
|
1597
|
-
shownFloor: number | null;
|
|
1598
|
-
/** 楼层的数量 */
|
|
1771
|
+
/** 所有楼层 */
|
|
1599
1772
|
floorLength: number;
|
|
1600
1773
|
/** 材质贴图参数 */
|
|
1601
1774
|
textureOptions: TextureOptions;
|
|
@@ -1603,45 +1776,47 @@ export declare class Model extends PBMContainer implements Subscribe<ModelEventT
|
|
|
1603
1776
|
refined: boolean;
|
|
1604
1777
|
/** 模型已经加载 */
|
|
1605
1778
|
loaded: boolean;
|
|
1779
|
+
/** 当前样式参数 */
|
|
1780
|
+
materialVersion: string;
|
|
1781
|
+
private _materialValues;
|
|
1782
|
+
private _materialVersionMap;
|
|
1783
|
+
private _floorIndex;
|
|
1784
|
+
private _clippers;
|
|
1785
|
+
/** 样式缓存 */
|
|
1786
|
+
private cache;
|
|
1787
|
+
needsRender: boolean;
|
|
1788
|
+
private disposed;
|
|
1789
|
+
constructor(options?: {
|
|
1790
|
+
onError?: (error: Error) => void;
|
|
1791
|
+
onShownFloorChange?: (floorIndex: number | null) => void;
|
|
1792
|
+
onLoad?: () => void;
|
|
1793
|
+
});
|
|
1794
|
+
get empty(): boolean;
|
|
1795
|
+
/** 获取材质参数 */
|
|
1796
|
+
getMaterial(): ModelMaterialValues;
|
|
1797
|
+
/** 设置材质参数 */
|
|
1798
|
+
setMaterial(values: Partial<ModelMaterialValues>): void;
|
|
1606
1799
|
/**
|
|
1607
|
-
*
|
|
1608
|
-
* 具体可查看 {@link Subscribe.hasListener}
|
|
1609
|
-
*/
|
|
1610
|
-
hasListener: SubscribeMixinType.hasListener<ModelEventType>;
|
|
1611
|
-
/**
|
|
1612
|
-
* 注册事件
|
|
1613
|
-
* 具体可查看 {@link Subscribe.on}
|
|
1614
|
-
*/
|
|
1615
|
-
on: SubscribeMixinType.on<ModelEventType>;
|
|
1616
|
-
/**
|
|
1617
|
-
* 注册事件(是否只执行一次)
|
|
1618
|
-
* 具体可查看 {@link Subscribe.once}
|
|
1619
|
-
*/
|
|
1620
|
-
once: SubscribeMixinType.once<ModelEventType>;
|
|
1621
|
-
/**
|
|
1622
|
-
* 解除事件
|
|
1623
|
-
* 具体可查看 {@link Subscribe.off}
|
|
1624
|
-
*/
|
|
1625
|
-
off: SubscribeMixinType.off<ModelEventType>;
|
|
1626
|
-
/**
|
|
1627
|
-
* 触发事件
|
|
1628
|
-
* 具体可查看 {@link Subscribe.emit}
|
|
1800
|
+
* 当前显示的楼层
|
|
1629
1801
|
*/
|
|
1630
|
-
|
|
1802
|
+
get shownFloor(): PBMParameters['floorIndex'] | null;
|
|
1803
|
+
set shownFloor(floorIndex: PBMParameters['floorIndex'] | null);
|
|
1804
|
+
get shownfloor(): PBMParameters['floorIndex'] | null;
|
|
1805
|
+
set shownfloor(floorIndex: PBMParameters['floorIndex'] | null);
|
|
1631
1806
|
/**
|
|
1632
|
-
*
|
|
1633
|
-
*
|
|
1807
|
+
* 显示某楼层
|
|
1808
|
+
* @example
|
|
1809
|
+
* ```
|
|
1810
|
+
* model.show() //显示全部楼层
|
|
1811
|
+
* model.show(1) //显示第一楼层
|
|
1812
|
+
* ```
|
|
1634
1813
|
*/
|
|
1635
|
-
|
|
1636
|
-
private renderer?;
|
|
1637
|
-
constructor(renderer?: THREE_2.WebGLRenderer);
|
|
1814
|
+
show(floorIndex?: PBMParameters['floorIndex'] | null): void;
|
|
1638
1815
|
/**
|
|
1639
|
-
*
|
|
1640
|
-
* @deprecated
|
|
1641
|
-
* 请用 shwonFloor 代替
|
|
1816
|
+
* 裁切
|
|
1642
1817
|
*/
|
|
1643
|
-
get
|
|
1644
|
-
|
|
1818
|
+
get clippers(): PBMParameters['clippers'];
|
|
1819
|
+
set clippers(clippers: PBMParameters['clippers']);
|
|
1645
1820
|
/**
|
|
1646
1821
|
* 获取模型边界线
|
|
1647
1822
|
* @param sphere - 获取区域
|
|
@@ -1649,23 +1824,13 @@ export declare class Model extends PBMContainer implements Subscribe<ModelEventT
|
|
|
1649
1824
|
* @returns 所有模型边界线
|
|
1650
1825
|
*/
|
|
1651
1826
|
getEdgesBySphere(sphere: THREE_2.Sphere, threshold?: number): THREE_2.Line3[];
|
|
1652
|
-
/**
|
|
1653
|
-
* 显示某楼层
|
|
1654
|
-
* @example
|
|
1655
|
-
* ```
|
|
1656
|
-
* model.show() //显示全部楼层
|
|
1657
|
-
* model.show(1) //显示第一楼层
|
|
1658
|
-
* model.show(1, 0) //显示第一楼层, 并且其他楼层透明度为 0
|
|
1659
|
-
* ```
|
|
1660
|
-
*/
|
|
1661
|
-
show(floorIndex?: number | null): void;
|
|
1662
1827
|
/**
|
|
1663
1828
|
* 计算模型射线碰撞检测
|
|
1664
1829
|
* @param raycaster - THREE 射线对象
|
|
1665
1830
|
* @param floors - 和某一楼层做碰撞检测, 不传为和所有楼层做碰撞检测
|
|
1666
1831
|
* @returns 返回碰撞
|
|
1667
1832
|
*/
|
|
1668
|
-
intersectRaycaster(raycaster: THREE_2.Raycaster
|
|
1833
|
+
intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
|
|
1669
1834
|
/**
|
|
1670
1835
|
* 加载模型
|
|
1671
1836
|
* @param work - work 的
|
|
@@ -1675,8 +1840,8 @@ export declare class Model extends PBMContainer implements Subscribe<ModelEventT
|
|
|
1675
1840
|
networkSubscribe?: NetworkSubscribe;
|
|
1676
1841
|
requestProxy?: (url: string) => string | Promise<string>;
|
|
1677
1842
|
textureOptions?: TextureOptions;
|
|
1678
|
-
}): Promise<
|
|
1679
|
-
update(renderer: THREE_2.WebGLRenderer, camera: Camera): void;
|
|
1843
|
+
}): Promise<void>;
|
|
1844
|
+
update(renderer: THREE_2.WebGLRenderer, camera: Camera, mode: Mode): void;
|
|
1680
1845
|
/**
|
|
1681
1846
|
* 析构函数
|
|
1682
1847
|
* @description
|
|
@@ -1688,40 +1853,34 @@ export declare class Model extends PBMContainer implements Subscribe<ModelEventT
|
|
|
1688
1853
|
export declare interface ModelControllerCustomInitArgs extends PanoramaLikeControllerCustomInitArgs {
|
|
1689
1854
|
}
|
|
1690
1855
|
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
*/
|
|
1696
|
-
export declare interface ModelEventCallback extends ModelEventType {
|
|
1856
|
+
export declare interface ModelEvent extends BaseEvent {
|
|
1857
|
+
model: Model;
|
|
1858
|
+
work: Work;
|
|
1859
|
+
error: Error | null;
|
|
1697
1860
|
}
|
|
1698
1861
|
|
|
1699
|
-
/**
|
|
1700
|
-
* 模型事件列表
|
|
1701
|
-
* @description
|
|
1702
|
-
* 具体事件列表 请查看 {@link ModelEventCallback}
|
|
1703
|
-
*/
|
|
1704
|
-
export declare type ModelEventType = {
|
|
1705
|
-
/** 模型加载完成 */
|
|
1706
|
-
loaded(): void;
|
|
1707
|
-
/** 模型细化 */
|
|
1708
|
-
refined(): void;
|
|
1709
|
-
/**
|
|
1710
|
-
* 显示楼层改变
|
|
1711
|
-
* @param shownFloor - 显示的楼层
|
|
1712
|
-
*/
|
|
1713
|
-
shownFloorChange(shownFloor: number | null, totalFloorLength: number): void;
|
|
1714
|
-
/**
|
|
1715
|
-
* 内部错误
|
|
1716
|
-
* @param error - 错误对象
|
|
1717
|
-
*/
|
|
1718
|
-
error(error: Error): void;
|
|
1719
|
-
};
|
|
1720
|
-
|
|
1721
1862
|
export declare interface ModelLodOptions {
|
|
1722
1863
|
maxDepth?: number;
|
|
1723
1864
|
}
|
|
1724
1865
|
|
|
1866
|
+
export declare type ModelMaterialValues = Pick<PBMParameters, 'pano0' | 'pano1' | 'modelAlpha' | 'progress' | 'useBlackTransition' | 'opacity' | 'constantColor' | 'useEDL' | 'useHQWeight' | 'useHQDepth' | 'pointShape' | 'pointColorType' | 'pointSizeType' | 'pointSize' | 'pointMinSize' | 'pointMaxSize' | 'pointSizeAdaptiveScale' | 'gradientTexture'>;
|
|
1867
|
+
|
|
1868
|
+
export declare type Models = Model[] & {
|
|
1869
|
+
needsRender: boolean;
|
|
1870
|
+
bounding: THREE_2.Box3;
|
|
1871
|
+
loaded: boolean;
|
|
1872
|
+
refined: boolean;
|
|
1873
|
+
materialVersion: string;
|
|
1874
|
+
intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
|
|
1875
|
+
setMaterial(values: Partial<ModelMaterialValues>): void;
|
|
1876
|
+
getMaterial(): ModelMaterialValues;
|
|
1877
|
+
update(renderer: THREE_2.WebGLRenderer, camera: Camera, mode: Mode): void;
|
|
1878
|
+
};
|
|
1879
|
+
|
|
1880
|
+
export declare interface ModelsEvent extends BaseEvent {
|
|
1881
|
+
models: Models;
|
|
1882
|
+
}
|
|
1883
|
+
|
|
1725
1884
|
export declare interface MotionKeyframe<K extends string> {
|
|
1726
1885
|
progress: number;
|
|
1727
1886
|
value: MotionValue<K>;
|
|
@@ -1733,7 +1892,7 @@ export declare type MotionValue<K extends string> = Record<K, number>;
|
|
|
1733
1892
|
/**
|
|
1734
1893
|
* 点位移动参数
|
|
1735
1894
|
*/
|
|
1736
|
-
export declare interface MovePanoOptions extends Partial<Omit<
|
|
1895
|
+
export declare interface MovePanoOptions extends Partial<Omit<State, "offset" | 'distance' | 'mode'>> {
|
|
1737
1896
|
/** 是否通过初始化参数限制 fov, latitude */
|
|
1738
1897
|
limit?: boolean;
|
|
1739
1898
|
/**
|
|
@@ -1756,9 +1915,9 @@ export declare interface MovePanoOptions extends Partial<Omit<Pose, "offset">> {
|
|
|
1756
1915
|
/** 运动曲线函数 */
|
|
1757
1916
|
easing?: (k: number) => number;
|
|
1758
1917
|
/** 运动开始回调 */
|
|
1759
|
-
moveStartCallback?: (
|
|
1918
|
+
moveStartCallback?: (toState: State) => void;
|
|
1760
1919
|
/** 运动结束回调 */
|
|
1761
|
-
moveEndCallback?: (
|
|
1920
|
+
moveEndCallback?: (state: State) => void;
|
|
1762
1921
|
/**
|
|
1763
1922
|
* 运动被取消回调
|
|
1764
1923
|
* @description
|
|
@@ -1793,6 +1952,13 @@ export declare interface NetworkOptions {
|
|
|
1793
1952
|
allowHosts?: string[];
|
|
1794
1953
|
}
|
|
1795
1954
|
|
|
1955
|
+
export declare interface NetworkResourceEvent extends BaseEvent {
|
|
1956
|
+
source: string;
|
|
1957
|
+
requestType: NetworkType;
|
|
1958
|
+
requestState: NetworkState;
|
|
1959
|
+
detail: string;
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1796
1962
|
export declare type NetworkResponse<T = any, E extends NetWorkMeta | NetWorkMeta[] = NetWorkMeta> = {
|
|
1797
1963
|
body: T;
|
|
1798
1964
|
meta: E;
|
|
@@ -1807,6 +1973,15 @@ export declare class NetworkSubscribe extends Subscribe<{
|
|
|
1807
1973
|
|
|
1808
1974
|
export declare type NetworkType = "XMLHttpRequest" | "Script" | "Image" | "Link";
|
|
1809
1975
|
|
|
1976
|
+
export declare interface ObjectEvent extends BaseEvent {
|
|
1977
|
+
object: THREE_2.Object3D;
|
|
1978
|
+
}
|
|
1979
|
+
|
|
1980
|
+
export declare type Pano = {
|
|
1981
|
+
workCode: string;
|
|
1982
|
+
panoIndex: number;
|
|
1983
|
+
};
|
|
1984
|
+
|
|
1810
1985
|
export declare class PanoCircleMesh extends THREE_2.Object3D implements PanoCircleMeshInterface {
|
|
1811
1986
|
needsRender: boolean;
|
|
1812
1987
|
private currentStartTime;
|
|
@@ -1943,6 +2118,19 @@ export declare interface PanoCircleMeshSolidOptions {
|
|
|
1943
2118
|
color?: number;
|
|
1944
2119
|
}
|
|
1945
2120
|
|
|
2121
|
+
export declare function panoEqual(a: Pano, b: Pano): boolean;
|
|
2122
|
+
|
|
2123
|
+
export declare interface PanoEvent extends StateEvent {
|
|
2124
|
+
prevPano: Pano;
|
|
2125
|
+
progress: number;
|
|
2126
|
+
options: MovePanoOptions;
|
|
2127
|
+
error: Error | null;
|
|
2128
|
+
}
|
|
2129
|
+
|
|
2130
|
+
export declare type PanoId = `${Pano['workCode']}[${number}]`;
|
|
2131
|
+
|
|
2132
|
+
export declare function panoParse(panoId: PanoId): Pano;
|
|
2133
|
+
|
|
1946
2134
|
export declare interface PanoramaControllerCustomInitArgs extends PanoramaLikeControllerCustomInitArgs {
|
|
1947
2135
|
/** 最远可移动观察点距离 */
|
|
1948
2136
|
maxAccessibleDistance?: number;
|
|
@@ -1954,7 +2142,7 @@ export declare interface PanoramaControllerCustomInitArgs extends PanoramaLikeCo
|
|
|
1954
2142
|
*/
|
|
1955
2143
|
panoTapTriggerRadius?: number;
|
|
1956
2144
|
/** 地面观察点标识自定义创建器 */
|
|
1957
|
-
panoCircleMeshCreator?: (
|
|
2145
|
+
panoCircleMeshCreator?: (pano: Pano) => PanoCircleMeshInterface;
|
|
1958
2146
|
/**
|
|
1959
2147
|
* 全景瓦片登记
|
|
1960
2148
|
* @param fov - 当前 fov
|
|
@@ -1989,6 +2177,15 @@ export declare interface PanoramaLikeControllerCustomInitArgs {
|
|
|
1989
2177
|
intersectMeshCreator?: () => IntersectMeshInterface;
|
|
1990
2178
|
}
|
|
1991
2179
|
|
|
2180
|
+
export declare function panoStringify(pano: Pano): PanoId;
|
|
2181
|
+
|
|
2182
|
+
export declare interface PanoTextureEvent extends BaseEvent {
|
|
2183
|
+
pano: Pano;
|
|
2184
|
+
progress: number;
|
|
2185
|
+
meta: NetWorkMeta[] | null;
|
|
2186
|
+
error: Error | null;
|
|
2187
|
+
}
|
|
2188
|
+
|
|
1992
2189
|
/**
|
|
1993
2190
|
* 解析 Work 数据
|
|
1994
2191
|
* @param obj - work 数据,从如数开发者平台获取
|
|
@@ -1998,6 +2195,8 @@ export declare interface PanoramaLikeControllerCustomInitArgs {
|
|
|
1998
2195
|
export declare function parseWork(obj: Work | LooseWork | string | any, options?: ParseWorkOptions): Work;
|
|
1999
2196
|
|
|
2000
2197
|
export declare type ParseWorkOptions = {
|
|
2198
|
+
/** 重置 WorkCode */
|
|
2199
|
+
workCode?: string | ((input: any) => string);
|
|
2001
2200
|
/** 重写资源前缀 */
|
|
2002
2201
|
baseURL?: string;
|
|
2003
2202
|
/** 资源地址使用短地址 */
|
|
@@ -2035,9 +2234,7 @@ export declare class PBMContainer extends THREE_2.Group {
|
|
|
2035
2234
|
setMaterial(parameters: Partial<PBMParameters>): void;
|
|
2036
2235
|
update(renderer: THREE_2.WebGLRenderer, camera: Camera): void;
|
|
2037
2236
|
/** 析构材质 */
|
|
2038
|
-
|
|
2039
|
-
/** 析构模型网格 */
|
|
2040
|
-
disposeGeometry(): void;
|
|
2237
|
+
dispose(): void;
|
|
2041
2238
|
}
|
|
2042
2239
|
|
|
2043
2240
|
/** PBM 模型组 */
|
|
@@ -2088,6 +2285,10 @@ export declare class PBMMeshMaterial extends THREE_2.ShaderMaterial implements P
|
|
|
2088
2285
|
clippers: ClipperParameter[] | null;
|
|
2089
2286
|
/** edl*/
|
|
2090
2287
|
useEDL: boolean;
|
|
2288
|
+
/** hq*/
|
|
2289
|
+
useHQWeight: boolean;
|
|
2290
|
+
/** HQDepthMask*/
|
|
2291
|
+
useHQDepth: boolean;
|
|
2091
2292
|
/** 点云着色方式*/
|
|
2092
2293
|
pointColorType: PBMPointColorType;
|
|
2093
2294
|
/** 点云大小绘制方式*/
|
|
@@ -2139,6 +2340,10 @@ export declare interface PBMParameters {
|
|
|
2139
2340
|
constantColor: THREE_2.Vector3 | null;
|
|
2140
2341
|
/** 是否使用EDL*/
|
|
2141
2342
|
useEDL: boolean;
|
|
2343
|
+
/** 是否使用HQ*/
|
|
2344
|
+
useHQWeight: boolean;
|
|
2345
|
+
/** 是否使用HQ_DEPTH_MASK*/
|
|
2346
|
+
useHQDepth: boolean;
|
|
2142
2347
|
/** 点云形状*/
|
|
2143
2348
|
pointShape: PBMPointShapeType;
|
|
2144
2349
|
/** 点云着色方式*/
|
|
@@ -2189,7 +2394,9 @@ export declare interface Pose {
|
|
|
2189
2394
|
distance: number;
|
|
2190
2395
|
}
|
|
2191
2396
|
|
|
2192
|
-
export declare
|
|
2397
|
+
export declare type PostProcessingType = 'edl' | 'hq' | 'luminance' | null;
|
|
2398
|
+
|
|
2399
|
+
export declare const PROXY_CONTROLLER_EVENT_NAMES: readonly ["gesture.pan", "gesture.tap", "gesture.press", "gesture.pinch", "gesture.mousewheel", "gesture.mousemove", "gesture.momentum", "initAnimation.start", "initAnimation.end", "camera.update", "intersect.update", "pano.select", "pano.moveTo", "pano.moving", "pano.arrived", "pano.cancel", "pano.error", "pano.texture.load", "pano.texture.progress", "pano.texture.success", "pano.texture.error", "pano.texture.abort", "xr.session.start", "xr.session.end", "xr.gesture.tap", "xr.gesture.press", "xr.gesture.buttonUp", "xr.gesture.buttonDown"];
|
|
2193
2400
|
|
|
2194
2401
|
export declare class RegionBoundingVolume implements BoundingVolume {
|
|
2195
2402
|
type: "regin";
|
|
@@ -2218,6 +2425,23 @@ export declare type RegionBoundingVolumeJson = {
|
|
|
2218
2425
|
region: number[];
|
|
2219
2426
|
};
|
|
2220
2427
|
|
|
2428
|
+
export declare interface RenderEvent extends BaseEvent {
|
|
2429
|
+
needsRender: boolean;
|
|
2430
|
+
info: null | {
|
|
2431
|
+
memory: {
|
|
2432
|
+
geometries: number;
|
|
2433
|
+
textures: number;
|
|
2434
|
+
};
|
|
2435
|
+
render: {
|
|
2436
|
+
calls: number;
|
|
2437
|
+
frame: number;
|
|
2438
|
+
lines: number;
|
|
2439
|
+
points: number;
|
|
2440
|
+
triangles: number;
|
|
2441
|
+
};
|
|
2442
|
+
};
|
|
2443
|
+
}
|
|
2444
|
+
|
|
2221
2445
|
export declare type RequestResult = null | {
|
|
2222
2446
|
done: () => void;
|
|
2223
2447
|
};
|
|
@@ -2318,10 +2542,15 @@ export declare type SphereBoundingVolumeJson = {
|
|
|
2318
2542
|
export declare interface State extends Pose {
|
|
2319
2543
|
/** 模态 */
|
|
2320
2544
|
mode: Mode;
|
|
2545
|
+
/** workCode */
|
|
2546
|
+
workCode: string;
|
|
2321
2547
|
/** 观察点序号 */
|
|
2322
2548
|
panoIndex: number;
|
|
2323
|
-
|
|
2324
|
-
|
|
2549
|
+
}
|
|
2550
|
+
|
|
2551
|
+
export declare interface StateEvent extends BaseEvent {
|
|
2552
|
+
state: State;
|
|
2553
|
+
userAction: boolean;
|
|
2325
2554
|
}
|
|
2326
2555
|
|
|
2327
2556
|
/**
|
|
@@ -2528,7 +2757,7 @@ export declare class Tile {
|
|
|
2528
2757
|
loadContent(): Promise<boolean>;
|
|
2529
2758
|
unloadContent(): boolean;
|
|
2530
2759
|
getScreenSpaceError(frameState: TilesetFrameState, distanceToCamera: number, useParentGeometricError: boolean): number;
|
|
2531
|
-
|
|
2760
|
+
getPriority(): number;
|
|
2532
2761
|
}
|
|
2533
2762
|
|
|
2534
2763
|
export declare class Tile3DModel extends THREE_2.Object3D {
|
|
@@ -2542,11 +2771,12 @@ export declare class Tile3DModel extends THREE_2.Object3D {
|
|
|
2542
2771
|
boundingBox: THREE_2.Box3;
|
|
2543
2772
|
needsRefined: boolean;
|
|
2544
2773
|
refined: boolean;
|
|
2774
|
+
loaded: boolean;
|
|
2545
2775
|
disposed: boolean;
|
|
2546
2776
|
needsRender: boolean;
|
|
2547
2777
|
lastRefineTime: number;
|
|
2548
|
-
|
|
2549
|
-
|
|
2778
|
+
nodeGroup: THREE_2.Group;
|
|
2779
|
+
debugBoundingGroup: THREE_2.Group;
|
|
2550
2780
|
private nodes;
|
|
2551
2781
|
private debugBoundings;
|
|
2552
2782
|
private unloadTileQueue;
|
|
@@ -2577,6 +2807,7 @@ export declare interface Tile3DModelLoaderOptions {
|
|
|
2577
2807
|
allowHosts?: string[];
|
|
2578
2808
|
requestProxy?: (url: string) => string | Promise<string>;
|
|
2579
2809
|
networkSubscribe?: NetworkSubscribe;
|
|
2810
|
+
onError?: (error: Error) => void;
|
|
2580
2811
|
}
|
|
2581
2812
|
|
|
2582
2813
|
export declare type TileContentData = {
|
|
@@ -2744,7 +2975,7 @@ export declare interface TilesetHeader {
|
|
|
2744
2975
|
export declare interface TilesetOptions {
|
|
2745
2976
|
onTileLoad: (tile: Tile) => any;
|
|
2746
2977
|
onTileUnload: (tile: Tile) => any;
|
|
2747
|
-
onTileError: (tile: Tile,
|
|
2978
|
+
onTileError: (tile: Tile, error: Error) => any;
|
|
2748
2979
|
contentLoader: (tile: Tile) => Promise<boolean>;
|
|
2749
2980
|
allowHosts?: string[];
|
|
2750
2981
|
requestProxy?: (url: string) => string | Promise<string>;
|
|
@@ -2798,26 +3029,36 @@ export declare enum VolumePlaneIntersect {
|
|
|
2798
3029
|
export declare interface VRPanoramaControllerCustomInitArgs extends Omit<PanoramaControllerCustomInitArgs, "maxLatitude" | "minLatitude"> {
|
|
2799
3030
|
}
|
|
2800
3031
|
|
|
2801
|
-
export declare
|
|
3032
|
+
export declare interface WebXRAxesParams {
|
|
3033
|
+
raycaster: {
|
|
3034
|
+
leftRay: THREE_2.Raycaster;
|
|
3035
|
+
rightRay: THREE_2.Raycaster;
|
|
3036
|
+
};
|
|
3037
|
+
axesState: {
|
|
3038
|
+
up: number;
|
|
3039
|
+
down: number;
|
|
3040
|
+
left: number;
|
|
3041
|
+
right: number;
|
|
3042
|
+
};
|
|
3043
|
+
deltaTime: number;
|
|
3044
|
+
}
|
|
3045
|
+
|
|
3046
|
+
export declare type WebXRControllerKey = XRGestureEvent['buttons'];
|
|
2802
3047
|
|
|
2803
3048
|
export declare interface WebXRControllerParams {
|
|
2804
|
-
raycaster:
|
|
3049
|
+
raycaster: {
|
|
3050
|
+
leftRay: THREE_2.Raycaster;
|
|
3051
|
+
rightRay: THREE_2.Raycaster;
|
|
3052
|
+
};
|
|
2805
3053
|
}
|
|
2806
3054
|
|
|
2807
|
-
export declare type WebXRControllerType = 'tap' | 'press' | 'axes';
|
|
2808
|
-
|
|
2809
|
-
export declare type WebXREventTypes = {
|
|
2810
|
-
/** WebXR模式开始,session完成坐标系设置*/
|
|
2811
|
-
webXRSessionStart(): void;
|
|
2812
|
-
/** WebXR模式结束,销毁session*/
|
|
2813
|
-
webXRSessionEnd(): void;
|
|
2814
|
-
};
|
|
3055
|
+
export declare type WebXRControllerType = 'tap' | 'press' | 'axes' | 'buttonUp' | 'buttonDown';
|
|
2815
3056
|
|
|
2816
3057
|
export declare class Work {
|
|
2817
3058
|
/** 名称 */
|
|
2818
3059
|
name: string;
|
|
2819
3060
|
/** 编号 */
|
|
2820
|
-
workCode:
|
|
3061
|
+
workCode: string;
|
|
2821
3062
|
/** 允许访问的安全域名 */
|
|
2822
3063
|
allowHosts: string[];
|
|
2823
3064
|
/** 过期时间 */
|
|
@@ -2848,8 +3089,6 @@ export declare class Work {
|
|
|
2848
3089
|
toJSON(): any;
|
|
2849
3090
|
}
|
|
2850
3091
|
|
|
2851
|
-
export declare type WorkCode = string;
|
|
2852
|
-
|
|
2853
3092
|
export declare interface WorkCubeImage {
|
|
2854
3093
|
/** 全景图 up */
|
|
2855
3094
|
up: string;
|
|
@@ -2877,10 +3116,11 @@ export declare interface WorkImage extends WorkCubeImage {
|
|
|
2877
3116
|
|
|
2878
3117
|
/** 初始化位姿参数 */
|
|
2879
3118
|
export declare interface WorkInitial {
|
|
3119
|
+
work: Work;
|
|
2880
3120
|
/** 模态 */
|
|
2881
3121
|
mode?: Mode;
|
|
2882
3122
|
/** 点位序号 */
|
|
2883
|
-
|
|
3123
|
+
panoIndex?: number;
|
|
2884
3124
|
/** 相机水平角 */
|
|
2885
3125
|
longitude?: number;
|
|
2886
3126
|
/** 相机俯仰角 */
|
|
@@ -2903,7 +3143,13 @@ export declare interface WorkModel {
|
|
|
2903
3143
|
textures?: string[];
|
|
2904
3144
|
/** 模型贴图文件地址的父目录 */
|
|
2905
3145
|
textureBase?: string;
|
|
2906
|
-
|
|
3146
|
+
/** 3d tile */
|
|
3147
|
+
layers: {
|
|
3148
|
+
type: 'point_cloud' | 'mesh';
|
|
3149
|
+
name: string;
|
|
3150
|
+
upAxis: string;
|
|
3151
|
+
tileset: string;
|
|
3152
|
+
}[];
|
|
2907
3153
|
}
|
|
2908
3154
|
|
|
2909
3155
|
/** 每个点位的数据 */
|
|
@@ -2912,8 +3158,12 @@ export declare interface WorkObserver {
|
|
|
2912
3158
|
work: Work;
|
|
2913
3159
|
/** 序号 */
|
|
2914
3160
|
index: number;
|
|
3161
|
+
/** 序号 */
|
|
3162
|
+
panoIndex: number;
|
|
3163
|
+
/** 点位序号 */
|
|
3164
|
+
panoId: PanoId;
|
|
2915
3165
|
/** 点位序号 */
|
|
2916
|
-
|
|
3166
|
+
pano: Pano;
|
|
2917
3167
|
/** 点位所在楼层 */
|
|
2918
3168
|
floorIndex: number;
|
|
2919
3169
|
/** 点位 derived_id */
|
|
@@ -2927,9 +3177,13 @@ export declare interface WorkObserver {
|
|
|
2927
3177
|
/** 点位视频 */
|
|
2928
3178
|
video?: WorkVideo;
|
|
2929
3179
|
/** 可以看到的相关点位序号 */
|
|
2930
|
-
|
|
3180
|
+
visibleNodes: number[];
|
|
3181
|
+
/** 可以看到的相关点位序号 */
|
|
3182
|
+
visibleIds: PanoId[];
|
|
2931
3183
|
/** 可以连通的相关点位序号 */
|
|
2932
|
-
|
|
3184
|
+
accessibleNodes: number[];
|
|
3185
|
+
/** 可以看到的相关点位序号 */
|
|
3186
|
+
accessibleIds: PanoId[];
|
|
2933
3187
|
/** 点位和模型的地面坐标 */
|
|
2934
3188
|
standingPosition: THREE_2.Vector3;
|
|
2935
3189
|
/** 点位和模型的观察点坐标 */
|
|
@@ -2955,16 +3209,25 @@ export declare interface WorkOptions {
|
|
|
2955
3209
|
modelMaxScreenSpaceError?: number;
|
|
2956
3210
|
}
|
|
2957
3211
|
|
|
2958
|
-
export declare
|
|
3212
|
+
export declare interface WorkResolvedObserver extends WorkObserver {
|
|
3213
|
+
isResolved: true;
|
|
3214
|
+
}
|
|
2959
3215
|
|
|
2960
3216
|
export declare type Works = ReadonlyArray<Work> & {
|
|
2961
|
-
resolvedObservers:
|
|
3217
|
+
resolvedObservers: WorkResolvedObserver[];
|
|
2962
3218
|
initial: WorkInitial;
|
|
2963
|
-
getWork(workCode:
|
|
2964
|
-
getResolvedObserver(
|
|
3219
|
+
getWork(workCode: string): Work | undefined;
|
|
3220
|
+
getResolvedObserver(pano: PanoId | Pano | number): WorkResolvedObserver | undefined;
|
|
2965
3221
|
update(): void;
|
|
2966
3222
|
};
|
|
2967
3223
|
|
|
3224
|
+
export declare interface WorksEvent extends BaseEvent {
|
|
3225
|
+
input: any;
|
|
3226
|
+
works: Works;
|
|
3227
|
+
state: Partial<State>;
|
|
3228
|
+
userAction: boolean;
|
|
3229
|
+
}
|
|
3230
|
+
|
|
2968
3231
|
export declare interface WorkTile {
|
|
2969
3232
|
level: number;
|
|
2970
3233
|
size: number;
|
|
@@ -2990,7 +3253,44 @@ export declare class XRButton {
|
|
|
2990
3253
|
static createButton(onClickHook: () => void): HTMLAnchorElement | HTMLButtonElement;
|
|
2991
3254
|
}
|
|
2992
3255
|
|
|
3256
|
+
export declare interface XRControllerEvent extends BaseEvent {
|
|
3257
|
+
controller: {
|
|
3258
|
+
type: 'left' | 'right';
|
|
3259
|
+
axes: {
|
|
3260
|
+
up: number;
|
|
3261
|
+
down: number;
|
|
3262
|
+
left: number;
|
|
3263
|
+
right: number;
|
|
3264
|
+
};
|
|
3265
|
+
raycaster: {
|
|
3266
|
+
leftRay: THREE_2.Raycaster;
|
|
3267
|
+
rightRay: THREE_2.Raycaster;
|
|
3268
|
+
};
|
|
3269
|
+
deltaTime: number;
|
|
3270
|
+
};
|
|
3271
|
+
}
|
|
3272
|
+
|
|
3273
|
+
export declare interface XRGestureEvent extends BaseEvent {
|
|
3274
|
+
session: XRSession | null;
|
|
3275
|
+
buttons: 'A' | 'B' | 'X' | 'Y' | 'RightTrigger' | 'RightPinch' | 'LeftTrigger' | 'LeftPinch' | 'LeftAxesLeft' | 'LeftAxesRight' | 'LeftAxesUp' | 'LeftAxesDown' | 'RightAxesLeft' | 'RightAxesRight' | 'RightAxesUp' | 'RightAxesDown';
|
|
3276
|
+
machineType: 'Pico' | 'Oculus';
|
|
3277
|
+
isFirst: boolean;
|
|
3278
|
+
isFinal: boolean;
|
|
3279
|
+
controllers: {
|
|
3280
|
+
raycaster: {
|
|
3281
|
+
leftRay: THREE_2.Raycaster;
|
|
3282
|
+
rightRay: THREE_2.Raycaster;
|
|
3283
|
+
};
|
|
3284
|
+
};
|
|
3285
|
+
}
|
|
3286
|
+
|
|
2993
3287
|
export declare interface XRPanoramaControllerCustomInitArgs extends Omit<PanoramaControllerCustomInitArgs, "maxLatitude" | "minLatitude"> {
|
|
2994
3288
|
}
|
|
2995
3289
|
|
|
3290
|
+
declare interface XRSessionEvent_2 extends BaseEvent {
|
|
3291
|
+
session: XRSession | null;
|
|
3292
|
+
machineType: 'Pico' | 'Oculus';
|
|
3293
|
+
}
|
|
3294
|
+
export { XRSessionEvent_2 as XRSessionEvent }
|
|
3295
|
+
|
|
2996
3296
|
export { }
|