@realsee/five 6.0.0-alpha.4 → 6.0.0-alpha.40

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.
Files changed (170) hide show
  1. package/docs/assets/search.js +1 -1
  2. package/docs/classes/five.AnimationFrameLoop.html +1 -1
  3. package/docs/classes/five.BVH.html +2 -2
  4. package/docs/classes/five.BVHIntersect.html +1 -1
  5. package/docs/classes/five.BVHNode.html +2 -2
  6. package/docs/classes/five.BVHVector3.html +1 -1
  7. package/docs/classes/five.BoxBoundingVolume.html +1 -1
  8. package/docs/classes/five.Camera.html +6 -6
  9. package/docs/classes/five.Clipper.html +1 -1
  10. package/docs/classes/five.CullingVolume.html +1 -1
  11. package/docs/classes/five.Five.html +68 -64
  12. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  13. package/docs/classes/five.IntersectMesh.html +1 -1
  14. package/docs/classes/five.Model.html +24 -22
  15. package/docs/classes/five.NetworkSubscribe.html +1 -1
  16. package/docs/classes/five.PBMContainer.html +1 -1
  17. package/docs/classes/five.PBMGroup.html +1 -1
  18. package/docs/classes/five.PBMMaterialReferenceCache.html +1 -1
  19. package/docs/classes/five.PBMMesh.html +1 -1
  20. package/docs/classes/five.PBMMeshMaterial.html +19 -15
  21. package/docs/classes/five.PanoCircleMesh.html +1 -1
  22. package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
  23. package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
  24. package/docs/classes/five.RegionBoundingVolume.html +1 -1
  25. package/docs/classes/five.RequestScheduler.html +1 -1
  26. package/docs/classes/five.Scene.html +1 -1
  27. package/docs/classes/five.SphereBoundingVolume.html +1 -1
  28. package/docs/classes/five.Subscribe.html +1 -1
  29. package/docs/classes/five.TextureLoader.html +1 -1
  30. package/docs/classes/five.Tile.html +1 -1
  31. package/docs/classes/five.Tile3DModel.html +1 -1
  32. package/docs/classes/five.TileCubeTextureTarget.html +1 -1
  33. package/docs/classes/five.TileNode.html +1 -1
  34. package/docs/classes/five.Tileset.html +3 -3
  35. package/docs/classes/five.TilesetCache.html +1 -1
  36. package/docs/classes/five.TilesetTraverser.html +1 -1
  37. package/docs/classes/five.Work.html +14 -12
  38. package/docs/classes/five.XRButton.html +1 -1
  39. package/docs/classes/gltf_loader.DDSLoader.html +1 -1
  40. package/docs/classes/gltf_loader.DRACOLoader.html +1 -1
  41. package/docs/classes/gltf_loader.GLTFLoader.html +1 -1
  42. package/docs/classes/gltf_loader.GLTFObject.html +1 -1
  43. package/docs/classes/gltf_loader.GLTFParser.html +1 -1
  44. package/docs/classes/gltf_loader.THREEGLTFLoader.html +1 -1
  45. package/docs/classes/line.Line.html +1 -1
  46. package/docs/classes/line.LineGeometry.html +1 -1
  47. package/docs/classes/line.LineMaterial.html +1 -1
  48. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  49. package/docs/classes/line.THREE_Line2.html +1 -1
  50. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  51. package/docs/classes/react.Store.html +1 -1
  52. package/docs/classes/sticker.Sticker.html +1 -1
  53. package/docs/classes/vfx.Airflow.html +1 -1
  54. package/docs/classes/vfx.Flame.html +1 -1
  55. package/docs/classes/vfx.Particle.html +1 -1
  56. package/docs/classes/vfx.SpotLight.html +1 -1
  57. package/docs/enums/five.VolumePlaneIntersect.html +1 -1
  58. package/docs/index.html +1 -1
  59. package/docs/interfaces/five.AddableObject.html +1 -1
  60. package/docs/interfaces/five.AnimationFrame.html +1 -1
  61. package/docs/interfaces/five.BaseEvent.html +1 -1
  62. package/docs/interfaces/five.BoundingVolume.html +1 -1
  63. package/docs/interfaces/five.CameraPose.html +1 -1
  64. package/docs/interfaces/five.ClipperParameter.html +1 -1
  65. package/docs/interfaces/five.DepthPanoramaControllerCustomInitArgs.html +1 -1
  66. package/docs/interfaces/five.EventCallback.html +97 -85
  67. package/docs/interfaces/five.FiveInitArgs.html +1 -1
  68. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +10 -8
  69. package/docs/interfaces/five.GestureEvent.html +1 -1
  70. package/docs/interfaces/five.ImageOptions.html +1 -1
  71. package/docs/interfaces/five.ImageURLMappings.html +1 -1
  72. package/docs/interfaces/five.ImageURLOptions.html +1 -1
  73. package/docs/interfaces/five.IntersectEvent.html +1 -1
  74. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  75. package/docs/interfaces/five.Intersection.html +3 -3
  76. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +8 -6
  77. package/docs/interfaces/five.ModeChangeEvent.html +1 -1
  78. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
  79. package/docs/interfaces/five.ModelEvent.html +1 -1
  80. package/docs/interfaces/five.ModelLodOptions.html +1 -1
  81. package/docs/interfaces/five.ModelsEvent.html +1 -1
  82. package/docs/interfaces/five.MotionKeyframe.html +1 -1
  83. package/docs/interfaces/five.MovePanoOptions.html +1 -1
  84. package/docs/interfaces/five.NetworkOptions.html +1 -1
  85. package/docs/interfaces/five.NetworkResourceEvent.html +1 -1
  86. package/docs/interfaces/five.ObjectEvent.html +1 -1
  87. package/docs/interfaces/five.PBMPanoPicture.html +1 -1
  88. package/docs/interfaces/five.PBMParameters.html +26 -22
  89. package/docs/interfaces/five.PanoCircleMeshCustomOptions.html +1 -1
  90. package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
  91. package/docs/interfaces/five.PanoCircleMeshOptions.html +1 -1
  92. package/docs/interfaces/five.PanoCircleMeshSolidOptions.html +1 -1
  93. package/docs/interfaces/five.PanoEvent.html +1 -1
  94. package/docs/interfaces/five.PanoTextureEvent.html +1 -1
  95. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
  96. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
  97. package/docs/interfaces/five.Pose.html +1 -1
  98. package/docs/interfaces/five.RenderEvent.html +1 -1
  99. package/docs/interfaces/five.Scissor.html +1 -1
  100. package/docs/interfaces/five.State.html +1 -1
  101. package/docs/interfaces/five.StateEvent.html +1 -1
  102. package/docs/interfaces/five.SubscribeMixinType.emit.html +1 -1
  103. package/docs/interfaces/five.SubscribeMixinType.hasListener.html +1 -1
  104. package/docs/interfaces/five.SubscribeMixinType.off.html +1 -1
  105. package/docs/interfaces/five.SubscribeMixinType.on.html +1 -1
  106. package/docs/interfaces/five.SubscribeMixinType.once.html +1 -1
  107. package/docs/interfaces/five.SubscribeMixinType.waitUnitl.html +1 -1
  108. package/docs/interfaces/five.TextureOptions.html +1 -1
  109. package/docs/interfaces/five.Tile3DModelLoaderOptions.html +2 -2
  110. package/docs/interfaces/five.TileCubeNode.html +1 -1
  111. package/docs/interfaces/five.TileCubeTree.html +1 -1
  112. package/docs/interfaces/five.TileHeader.html +1 -1
  113. package/docs/interfaces/five.TilesetHeader.html +1 -1
  114. package/docs/interfaces/five.TilesetOptions.html +1 -1
  115. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +4 -4
  116. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
  117. package/docs/interfaces/five.WebXRAxesParams.html +1 -0
  118. package/docs/interfaces/five.WebXRControllerParams.html +1 -1
  119. package/docs/interfaces/five.WorkCubeImage.html +6 -6
  120. package/docs/interfaces/five.WorkImage.html +10 -10
  121. package/docs/interfaces/five.WorkInitial.html +9 -9
  122. package/docs/interfaces/five.WorkModel.html +6 -6
  123. package/docs/interfaces/five.WorkObserver.html +22 -20
  124. package/docs/interfaces/five.WorkOptions.html +10 -8
  125. package/docs/interfaces/five.WorkResolvedObserver.html +21 -19
  126. package/docs/interfaces/five.WorkTile.html +1 -1
  127. package/docs/interfaces/five.WorkVideo.html +4 -4
  128. package/docs/interfaces/five.WorksEvent.html +1 -1
  129. package/docs/interfaces/five.XRControllerEvent.html +1 -0
  130. package/docs/interfaces/five.XRGestureEvent.html +1 -1
  131. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +1 -1
  132. package/docs/interfaces/five.XRSessionEvent.html +1 -1
  133. package/docs/interfaces/gltf_loader.DDS.html +1 -1
  134. package/docs/interfaces/gltf_loader.GLTF.html +1 -1
  135. package/docs/interfaces/gltf_loader.GLTFReference.html +1 -1
  136. package/docs/interfaces/gltf_loader.THREEGLTF.html +1 -1
  137. package/docs/interfaces/react.FiveActionReactCallbacks.html +1 -1
  138. package/docs/interfaces/react.FiveInjectionTypes.html +6 -6
  139. package/docs/interfaces/react.PropTypeOfFiveFeatures.html +1 -1
  140. package/docs/interfaces/sticker.IntersectionLike.html +1 -1
  141. package/docs/interfaces/vfx.ParticleArgs.html +1 -1
  142. package/docs/interfaces/vfx.ParticleTweenKeyframe.html +1 -1
  143. package/docs/interfaces/vue.FiveActionVueCallbacks.html +1 -1
  144. package/docs/modules/five.SubscribeMixinType.html +1 -1
  145. package/docs/modules/five.html +83 -69
  146. package/docs/modules/gltf_loader.html +1 -1
  147. package/docs/modules/line.html +1 -1
  148. package/docs/modules/react.html +1 -1
  149. package/docs/modules/sticker.html +1 -1
  150. package/docs/modules/vfx.html +1 -1
  151. package/docs/modules/vue.html +1 -1
  152. package/docs/modules.html +1 -1
  153. package/five/index.d.ts +276 -85
  154. package/five/index.js +8 -8
  155. package/gltf-loader/index.js +3 -3
  156. package/line/index.js +3 -3
  157. package/package.json +1 -1
  158. package/react/index.js +3 -3
  159. package/sticker/index.js +3 -3
  160. package/umd/five-gltf-loader.js +1 -1
  161. package/umd/five-line.js +1 -1
  162. package/umd/five-react.js +1 -1
  163. package/umd/five-sticker.js +1 -1
  164. package/umd/five-vue.js +1 -1
  165. package/umd/five.js +1 -1
  166. package/vfx/index.js +2 -2
  167. package/vue/index.js +3 -3
  168. package/docs/enums/five.PBMPointColorType.html +0 -1
  169. package/docs/enums/five.PBMPointShapeType.html +0 -1
  170. package/docs/enums/five.PBMPointSizeType.html +0 -1
package/five/index.d.ts CHANGED
@@ -13,6 +13,15 @@ export declare interface AddableObject extends THREE_2.Object3D {
13
13
  setTime?(time: number): void;
14
14
  }
15
15
 
16
+ declare interface AjaxOptions<T extends AjaxResponseType = AjaxResponseType> extends NetworkOptions {
17
+ /** 数据返回类型 */
18
+ responseType?: T;
19
+ }
20
+
21
+ declare type AjaxResponseType = "arraybuffer" | "blob" | "text";
22
+
23
+ declare type AjaxResponseTypeMapping<K extends AjaxResponseType> = K extends "arraybuffer" ? ArrayBuffer : K extends "blob" ? Blob : K extends "text" ? string : never;
24
+
16
25
  export declare interface AnimationFrame {
17
26
  callback: (time: number, deltaTime: number, ...args: any[]) => void;
18
27
  once: boolean;
@@ -118,7 +127,8 @@ export declare class BVH {
118
127
  export declare class BVHIntersect {
119
128
  triangle: [BVHVector3, BVHVector3, BVHVector3];
120
129
  intersectionPoint: BVHVector3;
121
- constructor(triangle: [BVHVector3, BVHVector3, BVHVector3], intersectionPoint: BVHVector3);
130
+ triangleIndex: number;
131
+ constructor(triangle: [BVHVector3, BVHVector3, BVHVector3], intersectionPoint: BVHVector3, triangleIndex: number);
122
132
  }
123
133
 
124
134
  /**
@@ -162,13 +172,15 @@ export declare class Camera extends THREE_2.Camera {
162
172
  far: number;
163
173
  perspToOrtho: THREE_2.Vector2;
164
174
  orthoDistance: number;
175
+ screenHeight: number;
176
+ pixelRatio: number;
165
177
  /** 相机姿态 */
166
178
  pose: CameraPose;
167
179
  private perspectiveCamera;
168
180
  private orthographicCamera;
169
181
  needsRender: boolean;
170
182
  private lastValues;
171
- constructor(fov: number, aspect?: number, near?: number, far?: number, perspToOrtho?: THREE_2.Vector2, orthoDistance?: number);
183
+ constructor(fov: number, aspect?: number, near?: number, far?: number, perspToOrtho?: THREE_2.Vector2, orthoDistance?: number, screenHeight?: number, pixelRatio?: number);
172
184
  get zoom(): number;
173
185
  get top(): number;
174
186
  get bottom(): number;
@@ -210,7 +222,7 @@ export declare class Clipper {
210
222
  private static sharedInstance?;
211
223
  static get shared(): Clipper;
212
224
  constructor();
213
- update(clipperParameters: ClipperParameter[], camera: THREE_2.Camera): void;
225
+ update(clipperParameter: ClipperParameter | ClipperParameter[], camera: THREE_2.Camera): void;
214
226
  private projectPlanes;
215
227
  }
216
228
 
@@ -284,6 +296,14 @@ export declare type ControllerEventTypes = {
284
296
  "xr.session.start"(event: XRSessionEvent_2): void;
285
297
  /** XR 手势(按钮) */
286
298
  "xr.gesture.tap"(event: XRGestureEvent): void;
299
+ /** XR 手势(按钮) */
300
+ "xr.gesture.press"(event: XRGestureEvent): void;
301
+ /** XR 手势(按钮) */
302
+ "xr.gesture.buttonUp"(event: XRGestureEvent): void;
303
+ /** XR 手势(按钮) */
304
+ "xr.gesture.buttonDown"(event: XRGestureEvent): void;
305
+ /** XR手柄更新*/
306
+ "xr.controller.update"(event: XRControllerEvent): void;
287
307
  /** 抛出错误 */
288
308
  "error"(error: Error): void;
289
309
  };
@@ -307,6 +327,8 @@ export declare class CullingVolume {
307
327
  */
308
328
  export declare function defaultImageURLTransform(source: string, options: ImageURLOptions): string;
309
329
 
330
+ export declare const defaultPbmParameters: PBMParameters;
331
+
310
332
  export declare interface DepthPanoramaControllerCustomInitArgs extends PanoramaLikeControllerCustomInitArgs {
311
333
  /** 最远可移动观察点距离 */
312
334
  maxAccessibleDistance?: number;
@@ -381,6 +403,14 @@ export declare type EventTypes = Pick<ControllerEventTypes, typeof PROXY_CONTROL
381
403
  "dispose"(): void;
382
404
  };
383
405
 
406
+ declare class Fetcher {
407
+ private options;
408
+ constructor(options?: NetworkOptions);
409
+ ajax<T extends AjaxResponseType = "text">(source: string, options?: AjaxOptions<T>, onLoad?: NetworkSuccessCallback<AjaxResponseTypeMapping<T>>, onError?: NetworkErrorCallback, onProgress?: NetworkProgressCallback): Promise<NetworkResponse<AjaxResponseTypeMapping<T>>>;
410
+ loadImage<T extends HTMLImageElement = HTMLImageElement>(source: string, options?: NetworkOptions, onLoad?: NetworkSuccessCallback, onError?: NetworkErrorCallback, onProgress?: NetworkProgressCallback, target?: T): Promise<NetworkResponse<T>>;
411
+ preload(source: string, options?: NetworkOptions): Promise<void>;
412
+ }
413
+
384
414
  /**
385
415
  * 如视 VR Web展示器
386
416
  *
@@ -398,6 +428,8 @@ export declare class Five extends Subscribe<EventTypes> {
398
428
  static get version(): string;
399
429
  static get dracoPath(): string;
400
430
  static set dracoPath(path: string);
431
+ static get ktx2Path(): string;
432
+ static set ktx2Path(path: string);
401
433
  /**
402
434
  * Five 的显示模式,可以通过 `five.changeMode` `five.setState` 来切换
403
435
  * @description
@@ -429,6 +461,8 @@ export declare class Five extends Subscribe<EventTypes> {
429
461
  currentMode: Mode;
430
462
  /** 内部使用的 `THREE.Scene` */
431
463
  scene: Scene;
464
+ /** 供外部放置需要在xr场景下产生遮挡的物体们*/
465
+ xrCustomObjectsScene: THREE_2.Scene;
432
466
  /** 内部使用的 `Camera` */
433
467
  camera: Camera;
434
468
  /**
@@ -604,11 +638,17 @@ export declare class Five extends Subscribe<EventTypes> {
604
638
  */
605
639
  get enableIOSEDR(): boolean;
606
640
  set enableIOSEDR(enable: boolean);
641
+ /**
642
+ * 后处理类型
643
+ */
644
+ get postProcessingType(): PostProcessingType;
607
645
  /**
608
646
  * 是否开启EDL模式
609
647
  */
610
648
  get enableEDL(): boolean;
611
649
  set enableEDL(enable: boolean);
650
+ get enableHQ(): boolean;
651
+ set enableHQ(enable: boolean);
612
652
  /**
613
653
  * 是否开启后处理
614
654
  */
@@ -1020,6 +1060,8 @@ parameters: Parameters<T>[1]
1020
1060
  export declare type FivePluginInstance<T extends FivePlugin<any, any>> = ReturnType<T>;
1021
1061
 
1022
1062
  export declare interface FloorplanControllerCustomInitArgs {
1063
+ /** 默认水平角 */
1064
+ defaultLongitude?: number;
1023
1065
  /** 默认俯仰角 */
1024
1066
  defaultLatitude?: number;
1025
1067
  /** 最大俯仰角 */
@@ -1092,8 +1134,9 @@ export declare interface ImageOptions {
1092
1134
  }
1093
1135
 
1094
1136
  export declare function imageSupport(): Promise<{
1095
- avif: boolean;
1096
1137
  webp: boolean;
1138
+ avif: boolean;
1139
+ heif: boolean;
1097
1140
  }>;
1098
1141
 
1099
1142
  export declare interface ImageURLMappings {
@@ -1150,6 +1193,7 @@ export declare interface Intersection {
1150
1193
  } | null;
1151
1194
  /** 焦点距离 */
1152
1195
  distance: number;
1196
+ floor: number;
1153
1197
  }
1154
1198
 
1155
1199
  export declare class IntersectMesh extends THREE_2.Object3D implements IntersectMeshInterface {
@@ -1464,6 +1508,17 @@ export declare type LegacyEventType = {
1464
1508
  * axes代表控制杆,axes数组的0-1元素分别代表左控制器的左(-1)右(1),左控制器的上(-1)下(1),axes数组的2-3元素同理
1465
1509
  */
1466
1510
  webXRControllerEvent(type: WebXRControllerType, key: WebXRControllerKey, params: WebXRControllerParams): void;
1511
+ /**
1512
+ * xr控制器的Axes原始实时数据状态
1513
+ */
1514
+ webXRAxesUpdate(type: 'left' | 'right', param: WebXRAxesParams): void;
1515
+ /**
1516
+ * xr控制器的控制器射线更新
1517
+ */
1518
+ webXRControllerRayUpdate(raycaster: {
1519
+ leftRay: THREE_2.Raycaster;
1520
+ rightRay: THREE_2.Raycaster;
1521
+ }): void;
1467
1522
  /**
1468
1523
  * 准备加载 Work 数据
1469
1524
  * @param input - 输入的 work
@@ -1562,6 +1617,41 @@ export declare type LegacyEventType = {
1562
1617
  network(source: string, type: NetworkType, state: NetworkState, detail: string): void;
1563
1618
  };
1564
1619
 
1620
+ export declare function loadAt3d(url: string, options: {
1621
+ textureOptions?: TextureOptions;
1622
+ textureBaseUri?: string;
1623
+ textureArray?: string[];
1624
+ fetcher: Fetcher;
1625
+ }): Promise<ParsedResultType>;
1626
+
1627
+ export declare function loadB3dm(url: string, options: {
1628
+ upAxis: 'X' | 'Y' | 'Z';
1629
+ fetcher: Fetcher;
1630
+ }): Promise<ParsedResultType>;
1631
+
1632
+ export declare function loadDome(url: string, options: {
1633
+ textureOptions: TextureOptions;
1634
+ textureBaseUri?: string;
1635
+ fetcher: Fetcher;
1636
+ }): Promise<ParsedResultType>;
1637
+
1638
+ export declare function loadDomez(url: string, options: {
1639
+ textureOptions: TextureOptions;
1640
+ textureBaseUri?: string;
1641
+ fetcher: Fetcher;
1642
+ }): Promise<ParsedResultType>;
1643
+
1644
+ export declare function loadPbm(url: string, options: {
1645
+ textureOptions?: TextureOptions;
1646
+ textureBaseUri?: string;
1647
+ textureArray?: string[];
1648
+ fetcher: Fetcher;
1649
+ }): Promise<ParsedResultType>;
1650
+
1651
+ export declare function loadPnts(url: string, options: {
1652
+ fetcher: Fetcher;
1653
+ }): Promise<ParsedResultType>;
1654
+
1565
1655
  export declare type LooseWork = {
1566
1656
  work_code?: string;
1567
1657
  code?: string;
@@ -1659,6 +1749,8 @@ export declare type LooseWorkWithExtrinsics = {
1659
1749
  transform?: number[];
1660
1750
  /** 可视区域 */
1661
1751
  viewerRequestVolume?: BoundingVolumeJson;
1752
+ /** 模型显示最小细化层级 */
1753
+ modelMinLevelOfDetail?: number;
1662
1754
  /** 模型显示最大细化层级 */
1663
1755
  modelMaxLevelOfDetail?: number;
1664
1756
  /** 模型最大内存缓存 */
@@ -1670,6 +1762,8 @@ export declare type LooseWorkWithExtrinsics = {
1670
1762
  };
1671
1763
 
1672
1764
  export declare interface MapviewControllerCustomInitArgs {
1765
+ /** 默认水平角 */
1766
+ defaultLongitude?: number;
1673
1767
  /** 默认俯仰角 */
1674
1768
  defaultLatitude?: number;
1675
1769
  /** 默认相机距离 */
@@ -1747,6 +1841,8 @@ export declare class Model extends THREE_2.Object3D {
1747
1841
  textureOptions: TextureOptions;
1748
1842
  /** 模型是否已经细化 */
1749
1843
  refined: boolean;
1844
+ /** 模型细化进度 */
1845
+ refineProgress: [number, number];
1750
1846
  /** 模型已经加载 */
1751
1847
  loaded: boolean;
1752
1848
  /** 当前样式参数 */
@@ -1803,15 +1899,13 @@ export declare class Model extends THREE_2.Object3D {
1803
1899
  * @param floors - 和某一楼层做碰撞检测, 不传为和所有楼层做碰撞检测
1804
1900
  * @returns 返回碰撞
1805
1901
  */
1806
- intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
1902
+ intersectRaycaster(raycaster: THREE_2.Raycaster, floor?: number | null): Intersection[];
1807
1903
  /**
1808
1904
  * 加载模型
1809
1905
  * @param work - work 的
1810
1906
  * @param imageOptions - 图片参数
1811
1907
  */
1812
1908
  load(work: Work, options?: {
1813
- networkSubscribe?: NetworkSubscribe;
1814
- requestProxy?: (url: string) => string | Promise<string>;
1815
1909
  textureOptions?: TextureOptions;
1816
1910
  }): Promise<void>;
1817
1911
  update(renderer: THREE_2.WebGLRenderer, camera: Camera, mode: Mode): void;
@@ -1836,13 +1930,14 @@ export declare interface ModelLodOptions {
1836
1930
  maxDepth?: number;
1837
1931
  }
1838
1932
 
1839
- export declare type ModelMaterialValues = Pick<PBMParameters, 'pano0' | 'pano1' | 'modelAlpha' | 'progress' | 'useBlackTransition' | 'opacity' | 'constantColor' | 'useEDL' | 'pointShape' | 'pointColorType' | 'pointSizeType' | 'pointSize' | 'pointMinSize' | 'pointMaxSize' | 'pointSizeAdaptiveScale' | 'gradientTexture'>;
1933
+ export declare type ModelMaterialValues = Pick<PBMParameters, 'pano0' | 'pano1' | 'modelAlpha' | 'progress' | 'useBlackTransition' | 'opacity' | 'constantColor' | 'useEDL' | 'useHQWeight' | 'useHQDepth' | 'pointShape' | 'pointColor' | 'pointSize' | 'pointBack' | 'pointScale' | 'pointMinPixel' | 'pointMaxPixel' | 'gradientTexture'>;
1840
1934
 
1841
1935
  export declare type Models = Model[] & {
1842
1936
  needsRender: boolean;
1843
1937
  bounding: THREE_2.Box3;
1844
1938
  loaded: boolean;
1845
1939
  refined: boolean;
1940
+ refineProgress: [number, number];
1846
1941
  materialVersion: string;
1847
1942
  intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
1848
1943
  setMaterial(values: Partial<ModelMaterialValues>): void;
@@ -1902,6 +1997,18 @@ export declare interface MovePanoOptions extends Partial<Omit<State, "offset" |
1902
1997
  moveCancelCallback?: () => void;
1903
1998
  }
1904
1999
 
2000
+ declare class NetworkAbortError extends Error {
2001
+ constructor(source: string, type: NetworkType);
2002
+ }
2003
+
2004
+ declare type NetworkError = NetworkResponseError | NetworkAbortError | NetworkTimeoutError | NetworkFirbiddenError;
2005
+
2006
+ declare type NetworkErrorCallback = (error: NetworkError) => void;
2007
+
2008
+ declare class NetworkFirbiddenError extends Error {
2009
+ constructor(source: string, type: NetworkType, reason: string);
2010
+ }
2011
+
1905
2012
  export declare type NetWorkMeta = {
1906
2013
  origin: string;
1907
2014
  source: string;
@@ -1925,6 +2032,8 @@ export declare interface NetworkOptions {
1925
2032
  allowHosts?: string[];
1926
2033
  }
1927
2034
 
2035
+ declare type NetworkProgressCallback = (percent: number) => void;
2036
+
1928
2037
  export declare interface NetworkResourceEvent extends BaseEvent {
1929
2038
  source: string;
1930
2039
  requestType: NetworkType;
@@ -1937,6 +2046,11 @@ export declare type NetworkResponse<T = any, E extends NetWorkMeta | NetWorkMeta
1937
2046
  meta: E;
1938
2047
  };
1939
2048
 
2049
+ declare class NetworkResponseError extends Error {
2050
+ httpStatus: number;
2051
+ constructor(source: string, type: NetworkType, status: number);
2052
+ }
2053
+
1940
2054
  export declare type NetworkState = "ok" | "preload" | "error" | "proxy-error" | "timeout" | "forbidden";
1941
2055
 
1942
2056
  export declare class NetworkSubscribe extends Subscribe<{
@@ -1944,6 +2058,12 @@ export declare class NetworkSubscribe extends Subscribe<{
1944
2058
  }> {
1945
2059
  }
1946
2060
 
2061
+ declare type NetworkSuccessCallback<T = any> = (response: NetworkResponse<T>) => void;
2062
+
2063
+ declare class NetworkTimeoutError extends Error {
2064
+ constructor(source: string, type: NetworkType, timeout: number);
2065
+ }
2066
+
1947
2067
  export declare type NetworkType = "XMLHttpRequest" | "Script" | "Image" | "Link";
1948
2068
 
1949
2069
  export declare interface ObjectEvent extends BaseEvent {
@@ -2159,6 +2279,14 @@ export declare interface PanoTextureEvent extends BaseEvent {
2159
2279
  error: Error | null;
2160
2280
  }
2161
2281
 
2282
+ export declare type ParsedResultType = {
2283
+ type: 'b3dm' | 'pnts' | 'at3d' | 'pbm' | 'dome' | 'domez' | 'glb';
2284
+ byteLength: number;
2285
+ uri: string;
2286
+ object: THREE_2.Object3D;
2287
+ dispose: () => void;
2288
+ };
2289
+
2162
2290
  /**
2163
2291
  * 解析 Work 数据
2164
2292
  * @param obj - work 数据,从如数开发者平台获取
@@ -2239,41 +2367,45 @@ export declare class PBMMeshMaterial extends THREE_2.ShaderMaterial implements P
2239
2367
  /** 更新版本 */
2240
2368
  pbmMaterialParametersVersion: number;
2241
2369
  /** 起始点 */
2242
- pano0: PBMPanoPicture | null;
2370
+ pano0: PBMParameters['pano0'];
2243
2371
  /** 结束点 */
2244
- pano1: PBMPanoPicture | null;
2372
+ pano1: PBMParameters['pano1'];
2245
2373
  /** 模型贴图和全景图的混合程度 [0-1] */
2246
- modelAlpha: number;
2374
+ modelAlpha: PBMParameters['modelAlpha'];
2247
2375
  /** 全景图混合程度 [0-1] */
2248
- progress: number;
2376
+ progress: PBMParameters['progress'];
2249
2377
  /** 全景图通过过度黑色混合 */
2250
- useBlackTransition: boolean;
2378
+ useBlackTransition: PBMParameters['useBlackTransition'];
2251
2379
  /** 模型透明度 */
2252
- opacity: number;
2380
+ opacity: PBMParameters['opacity'];
2253
2381
  /** 模型颜色*/
2254
- constantColor: THREE_2.Vector3 | null;
2382
+ constantColor: PBMParameters['constantColor'];
2255
2383
  /** 楼层参数*/
2256
- floorIndex: number;
2384
+ floorIndex: PBMParameters['floorIndex'];
2257
2385
  /** 对外模型裁切参数*/
2258
- clippers: ClipperParameter[] | null;
2386
+ clippers: PBMParameters['clippers'];
2259
2387
  /** edl*/
2260
- useEDL: boolean;
2388
+ useEDL: PBMParameters['useEDL'];
2389
+ /** hq*/
2390
+ useHQWeight: PBMParameters['useHQWeight'];
2391
+ /** HQDepthMask*/
2392
+ useHQDepth: PBMParameters['useHQDepth'];
2261
2393
  /** 点云着色方式*/
2262
- pointColorType: PBMPointColorType;
2394
+ pointColor: PBMParameters['pointColor'];
2263
2395
  /** 点云大小绘制方式*/
2264
- pointSizeType: PBMPointSizeType;
2396
+ pointSize: PBMParameters['pointSize'];
2265
2397
  /** 点云形状*/
2266
- pointShape: PBMPointShapeType;
2398
+ pointShape: PBMParameters['pointShape'];
2267
2399
  /** 点云基础大小*/
2268
- pointSize: number;
2269
- /** 自适应点云大小因子*/
2270
- pointSizeAdaptiveScale: number;
2271
- /** 点云最大尺寸*/
2272
- pointMinSize: number;
2273
- /** 点云最小尺寸*/
2274
- pointMaxSize: number;
2400
+ pointScale: PBMParameters['pointScale'];
2401
+ /** 点云背面绘制方式*/
2402
+ pointBack: PBMParameters['pointBack'];
2403
+ /** 点云像素最小值*/
2404
+ pointMinPixel: PBMParameters['pointMinPixel'];
2405
+ /** 点云像素最大值*/
2406
+ pointMaxPixel: PBMParameters['pointMaxPixel'];
2275
2407
  /** 高程彩色图*/
2276
- gradientTexture: THREE_2.Texture | null;
2408
+ gradientTexture: PBMParameters['gradientTexture'];
2277
2409
  constructor(parameters?: Partial<PBMParameters>);
2278
2410
  update(renderer: THREE_2.WebGLRenderer, camera: Camera, cache: PBMMaterialReferenceCache): void;
2279
2411
  }
@@ -2309,39 +2441,28 @@ export declare interface PBMParameters {
2309
2441
  constantColor: THREE_2.Vector3 | null;
2310
2442
  /** 是否使用EDL*/
2311
2443
  useEDL: boolean;
2444
+ /** 是否使用HQ*/
2445
+ useHQWeight: boolean;
2446
+ /** 是否使用HQ_DEPTH_MASK*/
2447
+ useHQDepth: boolean;
2312
2448
  /** 点云形状*/
2313
- pointShape: PBMPointShapeType;
2449
+ pointShape: 'SQUARE' | 'CIRCLE';
2314
2450
  /** 点云着色方式*/
2315
- pointColorType: PBMPointColorType;
2451
+ pointColor: 'RGB' | 'ALTITUDE';
2316
2452
  /** 点云大小绘制方式*/
2317
- pointSizeType: PBMPointSizeType;
2453
+ pointSize: 'FIXED' | 'ATTENUATION' | 'GEOMETRIC';
2454
+ /** 点云背面绘制方式*/
2455
+ pointBack: 'VISIBLE' | 'HIDDEN' | 'DARK';
2318
2456
  /** 点云基础大小*/
2319
- pointSize: number;
2457
+ pointScale: number;
2320
2458
  /** 点云最大尺寸*/
2321
- pointMinSize: number;
2459
+ pointMinPixel: number;
2322
2460
  /** 点云最小尺寸*/
2323
- pointMaxSize: number;
2324
- /** 自适应点云尺寸因子*/
2325
- pointSizeAdaptiveScale: number;
2461
+ pointMaxPixel: number;
2326
2462
  /** 高程彩色图*/
2327
2463
  gradientTexture: THREE_2.Texture | null;
2328
2464
  }
2329
2465
 
2330
- export declare enum PBMPointColorType {
2331
- RGB = "rgb",
2332
- ALTITUDE = "altitude"
2333
- }
2334
-
2335
- export declare enum PBMPointShapeType {
2336
- SQUARE = "square",
2337
- CIRCLE = "circle"
2338
- }
2339
-
2340
- export declare enum PBMPointSizeType {
2341
- FIXED = "fixed",
2342
- ADAPTIVE = "adaptive"
2343
- }
2344
-
2345
2466
  /**
2346
2467
  * 相机位姿
2347
2468
  * [[include: coordinate.md]]
@@ -2359,7 +2480,9 @@ export declare interface Pose {
2359
2480
  distance: number;
2360
2481
  }
2361
2482
 
2362
- 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"];
2483
+ export declare type PostProcessingType = 'edl' | 'hq' | 'luminance' | null;
2484
+
2485
+ 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", "xr.controller.update"];
2363
2486
 
2364
2487
  export declare class RegionBoundingVolume implements BoundingVolume {
2365
2488
  type: "regin";
@@ -2605,7 +2728,7 @@ export declare namespace SubscribeMixinType {
2605
2728
  }
2606
2729
 
2607
2730
  export declare class TextureLoader {
2608
- loadTexture(source: string, options?: {
2731
+ loadTexture(source: string, options: {
2609
2732
  imageURL?: {
2610
2733
  transform?: (source: string, options: ImageURLOptions) => string;
2611
2734
  options?: ImageURLOptions;
@@ -2618,7 +2741,9 @@ export declare class TextureLoader {
2618
2741
  wrapT?: THREE_2.Wrapping;
2619
2742
  maxSize?: THREE_2.Vector2;
2620
2743
  viaAjax?: boolean;
2621
- } & NetworkOptions, onLoad?: (response: NetworkResponse<THREE_2.Texture>) => void, onError?: (error: Error) => void, onProgress?: (percent: number) => void, renderer?: THREE_2.WebGLRenderer): Promise<NetworkResponse<THREE_2.Texture>>;
2744
+ timeout?: number;
2745
+ fetcher: Fetcher;
2746
+ }, onLoad?: (response: NetworkResponse<THREE_2.Texture>) => void, onError?: (error: Error) => void, onProgress?: (percent: number) => void, renderer?: THREE_2.WebGLRenderer): Promise<NetworkResponse<THREE_2.Texture>>;
2622
2747
  loadCubeTexture(sources: WorkCubeImage, options: {
2623
2748
  imageURL?: {
2624
2749
  transform?: (source: string, options: ImageURLOptions) => string;
@@ -2630,7 +2755,9 @@ export declare class TextureLoader {
2630
2755
  wrapS?: THREE_2.Wrapping;
2631
2756
  wrapT?: THREE_2.Wrapping;
2632
2757
  viaAjax?: boolean;
2633
- } & NetworkOptions, onLoad: (response: NetworkResponse<THREE_2.CubeTexture, NetWorkMeta[]>) => void, onError: (error: Error) => void, onProgress: (percent: number) => void, renderer: THREE_2.WebGLRenderer): Promise<NetworkResponse<THREE_2.CubeTexture, NetWorkMeta[]>>;
2758
+ timeout?: number;
2759
+ fetcher: Fetcher;
2760
+ }, onLoad: (response: NetworkResponse<THREE_2.CubeTexture, NetWorkMeta[]>) => void, onError: (error: Error) => void, onProgress: (percent: number) => void, renderer: THREE_2.WebGLRenderer): Promise<NetworkResponse<THREE_2.CubeTexture, NetWorkMeta[]>>;
2634
2761
  loadTiledCubeTexture(sources: WorkCubeImage, tileSources: WorkTile[], options: {
2635
2762
  tileImageSize?: number;
2636
2763
  tileMaxLevel?: number;
@@ -2644,7 +2771,9 @@ export declare class TextureLoader {
2644
2771
  wrapS?: THREE_2.Wrapping;
2645
2772
  wrapT?: THREE_2.Wrapping;
2646
2773
  viaAjax?: boolean;
2647
- } & NetworkOptions, onLoad: (response: NetworkResponse<TileCubeTextureTarget, NetWorkMeta[]>) => void, onError: (error: Error) => void, onProgress: (percent: number) => void, renderer: THREE_2.WebGLRenderer): Promise<NetworkResponse<TileCubeTextureTarget, NetWorkMeta[]>>;
2774
+ timeout?: number;
2775
+ fetcher: Fetcher;
2776
+ }, onLoad: (response: NetworkResponse<TileCubeTextureTarget, NetWorkMeta[]>) => void, onError: (error: Error) => void, onProgress: (percent: number) => void, renderer: THREE_2.WebGLRenderer): Promise<NetworkResponse<TileCubeTextureTarget, NetWorkMeta[]>>;
2648
2777
  }
2649
2778
 
2650
2779
  /**
@@ -2724,57 +2853,58 @@ export declare class Tile {
2724
2853
  }
2725
2854
 
2726
2855
  export declare class Tile3DModel extends THREE_2.Object3D {
2856
+ static DEFAULT_MIN_LEVEL_OF_DETAIL: number;
2727
2857
  static DEFAULT_MAX_LEVEL_OF_DETAIL: number;
2728
2858
  static DEFAULT_MAX_MEMORY_USAGE: number;
2729
2859
  static DEFAULT_MAX_SCREEN_SPACE_ERROR: number;
2730
2860
  static DEFAULT_MAX_REQUESTS: number;
2861
+ objType: 'mesh' | 'point_cloud';
2731
2862
  workCode: string;
2863
+ search: string;
2732
2864
  tileset: Tileset;
2865
+ minLevelOfDetail: number;
2733
2866
  maxLevelOfDetail: number;
2734
2867
  boundingBox: THREE_2.Box3;
2735
2868
  needsRefined: boolean;
2736
2869
  refined: boolean;
2870
+ refineProgress: [number, number];
2737
2871
  loaded: boolean;
2738
2872
  disposed: boolean;
2739
2873
  needsRender: boolean;
2740
2874
  lastRefineTime: number;
2741
- private nodeGroup;
2742
- private debugBoundingGroup;
2875
+ frameState: TilesetFrameState | null;
2876
+ nodeGroup: THREE_2.Group;
2877
+ debugBoundingGroup: THREE_2.Group;
2743
2878
  private nodes;
2744
2879
  private debugBoundings;
2745
2880
  private unloadTileQueue;
2746
- constructor(workCode: string, tilesetHeader: TilesetHeader, options: Partial<Tile3DModelLoaderOptions>);
2881
+ constructor(workCode: string, objType: 'mesh' | 'point_cloud', tilesetHeader: TilesetHeader, options: Tile3DModelLoaderOptions);
2747
2882
  get debug(): boolean;
2748
2883
  set debug(value: boolean);
2749
2884
  get maxMemoryUsage(): number;
2750
2885
  set maxMemoryUsage(value: number);
2751
- get viewDistanceScale(): number;
2752
- set viewDistanceScale(value: number);
2753
2886
  get maxRequests(): number;
2754
2887
  set maxRequests(value: number);
2755
2888
  get maxScreenSpaceError(): number;
2756
2889
  set maxScreenSpaceError(value: number);
2757
2890
  loadContent(tile: Tile, options: {
2758
- allowHosts?: string[];
2759
- requestProxy?: (url: string) => string | Promise<string>;
2760
- networkSubscribe?: NetworkSubscribe;
2891
+ fetcher: Fetcher;
2761
2892
  }): Promise<boolean>;
2762
- intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
2893
+ intersectRaycaster(raycaster: THREE_2.Raycaster, distanceOrder: boolean): Intersection[];
2763
2894
  update(renderer: THREE_2.WebGLRenderer, camera: Camera): void;
2764
2895
  dispose(): void;
2765
2896
  }
2766
2897
 
2767
2898
  /** Advanced loader options */
2768
2899
  export declare interface Tile3DModelLoaderOptions {
2900
+ fetcher: Fetcher;
2769
2901
  resourcePath: string;
2770
- allowHosts?: string[];
2771
- requestProxy?: (url: string) => string | Promise<string>;
2772
- networkSubscribe?: NetworkSubscribe;
2902
+ search?: string;
2773
2903
  onError?: (error: Error) => void;
2774
2904
  }
2775
2905
 
2776
2906
  export declare type TileContentData = {
2777
- type: 'b3dm' | 'pnts' | 'at3d' | 'pbm';
2907
+ type: 'b3dm' | 'pnts' | 'at3d' | 'pbm' | 'dome' | 'domez' | 'glb';
2778
2908
  byteLength: number;
2779
2909
  uri: string;
2780
2910
  object: TileNode;
@@ -2815,7 +2945,9 @@ export declare class TileCubeTextureTarget {
2815
2945
  magFilter?: THREE_2.TextureFilter;
2816
2946
  wrapS?: THREE_2.Wrapping;
2817
2947
  wrapT?: THREE_2.Wrapping;
2818
- } & NetworkOptions, renderer: THREE_2.WebGLRenderer);
2948
+ timeout?: number;
2949
+ fetcher: Fetcher;
2950
+ }, renderer: THREE_2.WebGLRenderer);
2819
2951
  get cubeRenderTarget(): THREE_2.WebGLCubeRenderTarget | null;
2820
2952
  set cubeRenderTarget(cubeRenderTarget: THREE_2.WebGLCubeRenderTarget | null);
2821
2953
  private requestTile;
@@ -2845,9 +2977,11 @@ export declare interface TileHeader {
2845
2977
  }
2846
2978
 
2847
2979
  export declare class TileNode extends THREE_2.Group {
2980
+ objType: 'mesh' | 'point_cloud';
2848
2981
  bvhTree: BVH | undefined;
2849
- objType: 'mesh' | 'points';
2850
- constructor(obj: THREE_2.Object3D, objType: 'mesh' | 'points');
2982
+ private objDisposer;
2983
+ private floorsArray;
2984
+ constructor(obj: THREE_2.Object3D, objType: 'mesh' | 'point_cloud', objDisposer: () => void);
2851
2985
  buildBvhTree(): void;
2852
2986
  intersectRaycaster(raycaster: THREE_2.Raycaster): Intersection[];
2853
2987
  dispose(): void;
@@ -2861,7 +2995,7 @@ export declare class Tileset {
2861
2995
  asset: {
2862
2996
  version: string;
2863
2997
  tilesetVersion: string;
2864
- gltfUpAxis: "X" | "Y" | "Z";
2998
+ gltfUpAxis: "Y" | "Z";
2865
2999
  };
2866
3000
  id: string;
2867
3001
  frameNumber: number;
@@ -2875,7 +3009,6 @@ export declare class Tileset {
2875
3009
  requestScheduler: RequestScheduler<string>;
2876
3010
  private memoryUsageInBytes;
2877
3011
  maxMemoryUsage: number;
2878
- viewDistanceScale: number;
2879
3012
  tiles: Map<string, Tile>;
2880
3013
  private pendingCount;
2881
3014
  constructor(id: string, header: TilesetHeader, options: TilesetOptions);
@@ -2918,9 +3051,11 @@ export declare type TilesetFrameState = {
2918
3051
  up: THREE.Vector3;
2919
3052
  };
2920
3053
  height: number;
3054
+ pixelRatio: number;
2921
3055
  cullingVolume: CullingVolume;
2922
3056
  frameNumber: number;
2923
3057
  sseDenominator: number;
3058
+ minLevelOfDetail: number;
2924
3059
  maxLevelOfDetail: number;
2925
3060
  };
2926
3061
 
@@ -2928,7 +3063,7 @@ export declare interface TilesetHeader {
2928
3063
  asset: {
2929
3064
  version: string;
2930
3065
  tilesetVersion?: string;
2931
- gltfUpAxis?: "X" | "Y" | "Z";
3066
+ gltfUpAxis?: "Y" | "Z";
2932
3067
  };
2933
3068
  properties?: Record<string, any>;
2934
3069
  geometricError: number;
@@ -2936,13 +3071,10 @@ export declare interface TilesetHeader {
2936
3071
  }
2937
3072
 
2938
3073
  export declare interface TilesetOptions {
3074
+ contentLoader: (tile: Tile) => Promise<boolean>;
2939
3075
  onTileLoad: (tile: Tile) => any;
2940
3076
  onTileUnload: (tile: Tile) => any;
2941
3077
  onTileError: (tile: Tile, error: Error) => any;
2942
- contentLoader: (tile: Tile) => Promise<boolean>;
2943
- allowHosts?: string[];
2944
- requestProxy?: (url: string) => string | Promise<string>;
2945
- networkSubscribe?: NetworkSubscribe;
2946
3078
  }
2947
3079
 
2948
3080
  export declare class TilesetTraverser {
@@ -2992,15 +3124,34 @@ export declare enum VolumePlaneIntersect {
2992
3124
  export declare interface VRPanoramaControllerCustomInitArgs extends Omit<PanoramaControllerCustomInitArgs, "maxLatitude" | "minLatitude"> {
2993
3125
  }
2994
3126
 
3127
+ export declare interface WebXRAxesParams {
3128
+ raycaster: {
3129
+ leftRay: THREE_2.Raycaster;
3130
+ rightRay: THREE_2.Raycaster;
3131
+ };
3132
+ axesState: {
3133
+ up: number;
3134
+ down: number;
3135
+ left: number;
3136
+ right: number;
3137
+ };
3138
+ deltaTime: number;
3139
+ }
3140
+
2995
3141
  export declare type WebXRControllerKey = XRGestureEvent['buttons'];
2996
3142
 
2997
3143
  export declare interface WebXRControllerParams {
2998
- raycaster: THREE_2.Raycaster[];
3144
+ raycaster: {
3145
+ leftRay: THREE_2.Raycaster;
3146
+ rightRay: THREE_2.Raycaster;
3147
+ };
2999
3148
  }
3000
3149
 
3001
- export declare type WebXRControllerType = 'tap' | 'press' | 'axes';
3150
+ export declare type WebXRControllerType = 'tap' | 'press' | 'axes' | 'buttonUp' | 'buttonDown';
3002
3151
 
3003
3152
  export declare class Work {
3153
+ /** five load 会对其赋值 */
3154
+ fetcher: Fetcher;
3004
3155
  /** 名称 */
3005
3156
  name: string;
3006
3157
  /** 编号 */
@@ -3114,6 +3265,8 @@ export declare interface WorkObserver {
3114
3265
  floorIndex: number;
3115
3266
  /** 点位 derived_id */
3116
3267
  derivedId?: number;
3268
+ /** 点位 derived_id_str */
3269
+ derivedIdStr?: string;
3117
3270
  /** 点位是否激活可用 */
3118
3271
  active: boolean;
3119
3272
  /** 点位是否可加载 */
@@ -3145,6 +3298,8 @@ export declare interface WorkOptions {
3145
3298
  transform: THREE_2.Matrix4;
3146
3299
  /** 可观测区域 */
3147
3300
  viewerRequestVolume?: BoundingVolume;
3301
+ /** 模型显示最小细化层级 */
3302
+ modelMinLevelOfDetail?: number;
3148
3303
  /** 模型显示最大细化层级 */
3149
3304
  modelMaxLevelOfDetail?: number;
3150
3305
  /** 模型最大内存缓存 */
@@ -3199,15 +3354,51 @@ export declare class XRButton {
3199
3354
  static createButton(onClickHook: () => void): HTMLAnchorElement | HTMLButtonElement;
3200
3355
  }
3201
3356
 
3357
+ export declare interface XRControllerEvent extends BaseEvent {
3358
+ left: {
3359
+ axes: {
3360
+ up: number;
3361
+ down: number;
3362
+ left: number;
3363
+ right: number;
3364
+ };
3365
+ raycaster: THREE_2.Raycaster;
3366
+ deltaTime: number;
3367
+ };
3368
+ right: {
3369
+ axes: {
3370
+ up: number;
3371
+ down: number;
3372
+ left: number;
3373
+ right: number;
3374
+ };
3375
+ raycaster: THREE_2.Raycaster;
3376
+ deltaTime: number;
3377
+ };
3378
+ buttons: {
3379
+ X: boolean;
3380
+ Y: boolean;
3381
+ LeftTrigger: boolean;
3382
+ LeftPinch: boolean;
3383
+ A: boolean;
3384
+ B: boolean;
3385
+ RightTrigger: boolean;
3386
+ RightPinch: boolean;
3387
+ };
3388
+ }
3389
+
3202
3390
  export declare interface XRGestureEvent extends BaseEvent {
3203
3391
  session: XRSession | null;
3204
- buttons: null | 'A' | 'B' | 'X' | 'Y' | 'RightTrigger' | 'RightPinch' | 'LeftTrigger' | 'LeftPinch' | 'LeftAxesLeft' | 'LeftAxesRight' | 'LeftAxesUp' | 'LeftAxesDown' | 'RightAxesLeft' | 'RightAxesRight' | 'RightAxesUp' | 'RightAxesDown';
3392
+ buttons: 'A' | 'B' | 'X' | 'Y' | 'RightTrigger' | 'RightPinch' | 'LeftTrigger' | 'LeftPinch' | 'LeftAxesLeft' | 'LeftAxesRight' | 'LeftAxesUp' | 'LeftAxesDown' | 'RightAxesLeft' | 'RightAxesRight' | 'RightAxesUp' | 'RightAxesDown';
3205
3393
  machineType: 'Pico' | 'Oculus';
3206
3394
  isFirst: boolean;
3207
3395
  isFinal: boolean;
3208
3396
  controllers: {
3209
- raycaster: THREE_2.Raycaster;
3210
- }[];
3397
+ raycaster: {
3398
+ leftRay: THREE_2.Raycaster;
3399
+ rightRay: THREE_2.Raycaster;
3400
+ };
3401
+ };
3211
3402
  }
3212
3403
 
3213
3404
  export declare interface XRPanoramaControllerCustomInitArgs extends Omit<PanoramaControllerCustomInitArgs, "maxLatitude" | "minLatitude"> {