@realsee/five 6.8.0-alpha.0 → 6.8.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.
Files changed (775) hide show
  1. package/AGENTS_READ_ME.md +4 -0
  2. package/AI_CONTEXT.md +4 -0
  3. package/README.md +50 -389
  4. package/ai_guides/README.md +122 -0
  5. package/ai_guides/ai-doc-guidelines.md +102 -0
  6. package/ai_guides/api.md +274 -0
  7. package/ai_guides/features/3dtile.md +172 -0
  8. package/ai_guides/features/camera-animation.md +205 -0
  9. package/ai_guides/features/clipper.md +135 -0
  10. package/ai_guides/features/coordinate-system.md +128 -0
  11. package/ai_guides/features/event.md +154 -0
  12. package/ai_guides/features/five.md +184 -0
  13. package/ai_guides/features/flowing-light-2d-pass.md +438 -0
  14. package/ai_guides/features/flowing-light-3d-pass.md +420 -0
  15. package/ai_guides/features/gaussian-blur-pass.md +202 -0
  16. package/ai_guides/features/gesture.md +180 -0
  17. package/ai_guides/features/get-screen-pixels.md +182 -0
  18. package/ai_guides/features/image-options.md +164 -0
  19. package/ai_guides/features/load-external-model.md +350 -0
  20. package/ai_guides/features/load-progress.md +140 -0
  21. package/ai_guides/features/material.md +151 -0
  22. package/ai_guides/features/mode.md +269 -0
  23. package/ai_guides/features/model.md +186 -0
  24. package/ai_guides/features/move-pano-effect.md +145 -0
  25. package/ai_guides/features/multi-work.md +146 -0
  26. package/ai_guides/features/pano-tile.md +132 -0
  27. package/ai_guides/features/pano-uv.md +131 -0
  28. package/ai_guides/features/parameter.md +153 -0
  29. package/ai_guides/features/plugin.md +210 -0
  30. package/ai_guides/features/postprocessing.md +259 -0
  31. package/ai_guides/features/raycast.md +175 -0
  32. package/ai_guides/features/request-proxy.md +112 -0
  33. package/ai_guides/features/screen-project.md +165 -0
  34. package/ai_guides/features/state.md +101 -0
  35. package/ai_guides/features/view-layer.md +187 -0
  36. package/ai_guides/features/work.md +303 -0
  37. package/ai_guides/glossary.md +93 -0
  38. package/ai_guides/intro.md +23 -0
  39. package/ai_guides/quick-start.md +69 -0
  40. package/ai_guides/release_notes/6.6.md +86 -0
  41. package/ai_guides/release_notes/6.7.md +401 -0
  42. package/ai_guides/release_notes/6.8.md +90 -0
  43. package/ai_guides/support.md +23 -0
  44. package/ai_guides/template.md +70 -0
  45. package/docs/00_FOR_AI_AGENTS.md +11 -0
  46. package/docs/README.md +11 -0
  47. package/docs/assets/hierarchy.js +1 -1
  48. package/docs/assets/highlight.css +29 -29
  49. package/docs/assets/icons.js +1 -1
  50. package/docs/assets/icons.svg +1 -1
  51. package/docs/assets/main.js +2 -2
  52. package/docs/assets/navigation.js +1 -1
  53. package/docs/assets/search.js +1 -1
  54. package/docs/assets/style.css +3 -3
  55. package/docs/classes/five.AdaptiveLuminancePass.html +2 -2
  56. package/docs/classes/five.AnimationFrameLoop.html +5 -5
  57. package/docs/classes/five.BoundingMesh.html +1 -1
  58. package/docs/classes/five.Camera.html +5 -5
  59. package/docs/classes/five.EffectComposer.html +1 -1
  60. package/docs/classes/five.EyeDomeLightingPass.html +2 -2
  61. package/docs/classes/five.Five.html +134 -134
  62. package/docs/classes/five.FivePass.html +2 -2
  63. package/docs/classes/five.FullScreenQuad.html +2 -2
  64. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  65. package/docs/classes/five.Model.html +36 -36
  66. package/docs/classes/five.ModelScene.html +12 -12
  67. package/docs/classes/five.Motion.html +1 -1
  68. package/docs/classes/five.NetworkSubscribe.html +23 -23
  69. package/docs/classes/five.PBMContainer.html +3 -3
  70. package/docs/classes/five.PBMGSObject.html +24 -0
  71. package/docs/classes/five.PBMGroup.html +1 -1
  72. package/docs/classes/five.PBMMesh.html +1 -1
  73. package/docs/classes/five.PBMMeshMaterial.html +15 -6
  74. package/docs/classes/five.PBMPointCloud.html +1 -1
  75. package/docs/classes/five.PBMPointCloudMaterial.html +3 -3
  76. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  77. package/docs/classes/five.PanoCircleMesh.html +4 -4
  78. package/docs/classes/five.PanoCircleMeshCustom.html +4 -4
  79. package/docs/classes/five.PanoCircleMeshSolid.html +4 -4
  80. package/docs/classes/five.Parameter.html +55 -51
  81. package/docs/classes/five.Scene.html +3 -3
  82. package/docs/classes/five.Subscribe.html +26 -25
  83. package/docs/classes/five.Tile.html +1 -1
  84. package/docs/classes/five.Tile3D.html +30 -26
  85. package/docs/classes/five.TileNode.html +2 -2
  86. package/docs/classes/five.Tileset.html +11 -11
  87. package/docs/classes/five.Trajectory.html +1 -1
  88. package/docs/classes/five.TrajectoryNode.html +1 -1
  89. package/docs/classes/five.Work.html +19 -19
  90. package/docs/classes/five.WorkResolvedObserver.html +41 -16
  91. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  92. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  93. package/docs/classes/gltf-loader.GLTFLoader.html +6 -6
  94. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  95. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  96. package/docs/classes/line.Line.html +1 -1
  97. package/docs/classes/line.LineGeometry.html +4 -4
  98. package/docs/classes/line.LineMaterial.html +1 -1
  99. package/docs/classes/line.LineSegmentsGeometry.html +4 -4
  100. package/docs/classes/line.THREE_Line2.html +1 -1
  101. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  102. package/docs/classes/plugins.BasePlugin.Controller.html +16 -16
  103. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  104. package/docs/classes/react.Store.html +12 -11
  105. package/docs/classes/sticker.Sticker.html +11 -11
  106. package/docs/classes/vfx.Airflow.html +1 -1
  107. package/docs/classes/vfx.Flame.html +1 -1
  108. package/docs/classes/vfx.Particle.html +31 -31
  109. package/docs/classes/vfx.ParticleGPU.html +7 -7
  110. package/docs/classes/vfx.SpotLight.html +1 -1
  111. package/docs/documents/README.html +138 -0
  112. package/docs/documents/ai-doc-guidelines.html +117 -0
  113. package/docs/documents/api.html +337 -0
  114. package/docs/documents/features_3dtile.html +216 -0
  115. package/docs/documents/features_camera-animation.html +157 -0
  116. package/docs/documents/features_clipper.html +80 -0
  117. package/docs/documents/features_coordinate-system.html +127 -0
  118. package/docs/documents/features_event.html +104 -0
  119. package/docs/documents/features_five.html +147 -0
  120. package/docs/documents/features_flowing-light-2d-pass.html +356 -0
  121. package/docs/documents/features_flowing-light-3d-pass.html +351 -0
  122. package/docs/documents/features_gaussian-blur-pass.html +182 -0
  123. package/docs/documents/features_gesture.html +120 -0
  124. package/docs/documents/features_get-screen-pixels.html +88 -0
  125. package/docs/documents/features_image-options.html +108 -0
  126. package/docs/documents/features_load-external-model.html +600 -0
  127. package/docs/documents/features_load-progress.html +110 -0
  128. package/docs/documents/features_material.html +334 -0
  129. package/docs/documents/features_mode.html +114 -0
  130. package/docs/documents/features_model.html +141 -0
  131. package/docs/documents/features_move-pano-effect.html +110 -0
  132. package/docs/documents/features_multi-work.html +97 -0
  133. package/docs/documents/features_pano-tile.html +100 -0
  134. package/docs/documents/features_pano-uv.html +82 -0
  135. package/docs/documents/features_parameter.html +101 -0
  136. package/docs/documents/features_plugin.html +105 -0
  137. package/docs/documents/features_postprocessing.html +109 -0
  138. package/docs/documents/features_raycast.html +98 -0
  139. package/docs/documents/features_request-proxy.html +78 -0
  140. package/docs/documents/features_screen-project.html +112 -0
  141. package/docs/documents/features_state.html +71 -0
  142. package/docs/documents/features_view-layer.html +158 -0
  143. package/docs/documents/features_work.html +129 -0
  144. package/docs/documents/glossary.html +94 -0
  145. package/docs/documents/intro.html +24 -0
  146. package/docs/documents/quick-start.html +32 -0
  147. package/docs/documents/release_notes_6.6.html +79 -0
  148. package/docs/documents/release_notes_6.7.html +209 -0
  149. package/docs/documents/release_notes_6.8.html +103 -0
  150. package/docs/documents/support.html +49 -0
  151. package/docs/documents/template.html +80 -0
  152. package/docs/functions/five.coordinatesToVector.html +1 -1
  153. package/docs/functions/five.defaultImageURLTransform.html +3 -3
  154. package/docs/functions/five.headingToLongitude.html +1 -1
  155. package/docs/functions/five.loadAt3d.html +1 -1
  156. package/docs/functions/five.loadB3dm.html +1 -1
  157. package/docs/functions/five.loadDome.html +1 -1
  158. package/docs/functions/five.loadDomez.html +1 -1
  159. package/docs/functions/five.loadFbx.html +1 -1
  160. package/docs/functions/five.loadGltf.html +1 -1
  161. package/docs/functions/five.loadPbm.html +1 -1
  162. package/docs/functions/five.loadPly.html +1 -1
  163. package/docs/functions/five.loadPnts.html +1 -1
  164. package/docs/functions/five.loadSplat.html +1 -0
  165. package/docs/functions/five.loadSpz.html +1 -0
  166. package/docs/functions/five.loadX3p.html +1 -1
  167. package/docs/functions/five.longitudeToHeading.html +1 -1
  168. package/docs/functions/five.parseWork.html +3 -3
  169. package/docs/functions/five.vectorToCoordinates.html +1 -1
  170. package/docs/functions/react.createFiveProvider.html +2 -2
  171. package/docs/functions/react.createStore.html +8 -8
  172. package/docs/functions/react.useFiveAction.html +6 -6
  173. package/docs/functions/react.useFiveCameraDirection.html +1 -1
  174. package/docs/functions/react.useFiveCameraRaycaster.html +1 -1
  175. package/docs/functions/react.useFiveCurrentObserver.html +1 -1
  176. package/docs/functions/react.useFiveCurrentState.html +1 -1
  177. package/docs/functions/react.useFiveEventCallback.html +1 -1
  178. package/docs/functions/react.useFiveFloor.html +1 -1
  179. package/docs/functions/react.useFiveHelper.html +1 -1
  180. package/docs/functions/react.useFiveModelIntersectRaycaster.html +2 -2
  181. package/docs/functions/react.useFiveModelReadyState.html +1 -1
  182. package/docs/functions/react.useFiveProject2d.html +2 -2
  183. package/docs/functions/react.useFiveSceneEffect.html +1 -1
  184. package/docs/functions/react.useFiveWork.html +2 -2
  185. package/docs/functions/vue.useFiveAction.html +8 -8
  186. package/docs/functions/vue.useFiveCameraDirection.html +1 -1
  187. package/docs/functions/vue.useFiveCameraRaycaster.html +1 -1
  188. package/docs/functions/vue.useFiveCurrentObserver.html +1 -1
  189. package/docs/functions/vue.useFiveCurrentState.html +1 -1
  190. package/docs/functions/vue.useFiveEventCallback.html +1 -1
  191. package/docs/functions/vue.useFiveFloor.html +1 -1
  192. package/docs/functions/vue.useFiveHelper.html +1 -1
  193. package/docs/functions/vue.useFiveModel.html +1 -1
  194. package/docs/functions/vue.useFiveModelBounding.html +1 -1
  195. package/docs/functions/vue.useFiveModelIntersectRaycaster.html +2 -2
  196. package/docs/functions/vue.useFiveModelReadyState.html +1 -1
  197. package/docs/functions/vue.useFiveProject2d.html +2 -2
  198. package/docs/functions/vue.useFiveScene.html +1 -1
  199. package/docs/functions/vue.useFiveState.html +1 -1
  200. package/docs/functions/vue.useFiveWorks.html +4 -4
  201. package/docs/hierarchy.html +1 -1
  202. package/docs/index.html +115 -187
  203. package/docs/interfaces/five.AddableObject.html +5 -5
  204. package/docs/interfaces/five.AjaxOptions.html +5 -5
  205. package/docs/interfaces/five.BaseEvent.html +2 -2
  206. package/docs/interfaces/five.EventCallback.html +198 -194
  207. package/docs/interfaces/five.FiveInitArgs.html +18 -18
  208. package/docs/interfaces/five.FiveLoadOptions.html +3 -3
  209. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +8 -8
  210. package/docs/interfaces/five.GestureEvent.html +2 -2
  211. package/docs/interfaces/five.ImageOptions.html +11 -11
  212. package/docs/interfaces/five.ImageURLOptions.html +8 -8
  213. package/docs/interfaces/five.IntersectEvent.html +2 -2
  214. package/docs/interfaces/five.IntersectMesh.html +1 -1
  215. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  216. package/docs/interfaces/five.Intersection.html +4 -3
  217. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +7 -7
  218. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +8 -8
  219. package/docs/interfaces/five.ModeChangeEvent.html +2 -2
  220. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +9 -9
  221. package/docs/interfaces/five.ModelEvent.html +2 -2
  222. package/docs/interfaces/five.ModelOptions.html +3 -3
  223. package/docs/interfaces/five.ModelSceneEvent.html +2 -2
  224. package/docs/interfaces/five.ModelTileEvent.html +8 -0
  225. package/docs/interfaces/five.MovePanoOptions.html +10 -10
  226. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  227. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  228. package/docs/interfaces/five.NetworkOptions.html +4 -4
  229. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  230. package/docs/interfaces/five.NetworkResourceEvent.html +2 -2
  231. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  232. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  233. package/docs/interfaces/five.ObjectEvent.html +2 -2
  234. package/docs/interfaces/five.PBMMaterial.html +1 -1
  235. package/docs/interfaces/five.PBMMeshMaterialParameters.html +1 -1
  236. package/docs/interfaces/five.PBMPanoDepth.html +4 -4
  237. package/docs/interfaces/five.PBMPanoPicture.html +5 -5
  238. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +1 -1
  239. package/docs/interfaces/five.PanoCircleMeshInterface.html +4 -4
  240. package/docs/interfaces/five.PanoEvent.html +2 -2
  241. package/docs/interfaces/five.PanoTextureEvent.html +2 -2
  242. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +15 -15
  243. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +9 -9
  244. package/docs/interfaces/five.ParameterMaterialValue.html +40 -36
  245. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  246. package/docs/interfaces/five.ParameterValue.html +54 -50
  247. package/docs/interfaces/five.Pass.html +1 -1
  248. package/docs/interfaces/five.Pose.html +6 -7
  249. package/docs/interfaces/five.RenderEvent.html +2 -2
  250. package/docs/interfaces/five.ResolvedParameterValue.html +54 -50
  251. package/docs/interfaces/five.SplatData.html +10 -0
  252. package/docs/interfaces/five.State.html +9 -9
  253. package/docs/interfaces/five.StateEvent.html +2 -2
  254. package/docs/interfaces/five.TextureOptions.html +12 -12
  255. package/docs/interfaces/five.Tile3DOptions.html +2 -2
  256. package/docs/interfaces/five.TileCoordinateSystem.html +2 -2
  257. package/docs/interfaces/five.TilesetHeader.html +12 -12
  258. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  259. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +13 -13
  260. package/docs/interfaces/five.ViewLayer.html +30 -26
  261. package/docs/interfaces/five.Viewport.html +4 -4
  262. package/docs/interfaces/five.WorkCubeImage.html +1 -1
  263. package/docs/interfaces/five.WorkImage.html +4 -4
  264. package/docs/interfaces/five.WorkInitial.html +8 -8
  265. package/docs/interfaces/five.WorkModel.html +8 -8
  266. package/docs/interfaces/five.WorkModelLayer.html +6 -6
  267. package/docs/interfaces/five.WorkObserver.html +41 -16
  268. package/docs/interfaces/five.WorkTile.html +4 -4
  269. package/docs/interfaces/five.WorkVideo.html +4 -4
  270. package/docs/interfaces/five.WorksEvent.html +2 -2
  271. package/docs/interfaces/five.XRControllerEvent.html +2 -2
  272. package/docs/interfaces/five.XRGestureEvent.html +2 -2
  273. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +13 -13
  274. package/docs/interfaces/five.XRSessionEvent.html +2 -2
  275. package/docs/interfaces/plugins.BackgroundPluginController.html +11 -11
  276. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +8 -8
  277. package/docs/interfaces/plugins.BasePlugin.BaseOptions.html +1 -1
  278. package/docs/interfaces/plugins.BasePlugin.Config.html +2 -2
  279. package/docs/interfaces/plugins.BasePlugin.State.html +4 -4
  280. package/docs/interfaces/plugins.BasePlugin.StateChangeParams.html +3 -3
  281. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +45 -45
  282. package/docs/interfaces/plugins.DynamicPathLinePluginType.Config.html +18 -18
  283. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +13 -13
  284. package/docs/interfaces/plugins.DynamicPathLinePluginType.Params.html +2 -2
  285. package/docs/interfaces/plugins.DynamicPathLinePluginType.PathConfig.html +14 -14
  286. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +5 -5
  287. package/docs/interfaces/plugins.ItemMaskController.html +12 -12
  288. package/docs/interfaces/plugins.ItemMaskPluginType.Config.html +1 -1
  289. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +5 -5
  290. package/docs/interfaces/plugins.ItemMaskPluginType.Params.html +1 -1
  291. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +7 -7
  292. package/docs/interfaces/plugins.OrientationPluginController.html +12 -12
  293. package/docs/interfaces/plugins.OrientationPluginType.Config.html +1 -1
  294. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +5 -5
  295. package/docs/interfaces/plugins.OrientationPluginType.Params.html +1 -1
  296. package/docs/interfaces/plugins.OrientationPluginType.State.html +5 -5
  297. package/docs/interfaces/plugins.PanoAnimeController.html +14 -14
  298. package/docs/interfaces/plugins.PanoAnimePluginType.Config.html +1 -1
  299. package/docs/interfaces/plugins.PanoAnimePluginType.ConfigChangeEvent.html +3 -3
  300. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +6 -6
  301. package/docs/interfaces/plugins.PanoAnimePluginType.Params.html +1 -1
  302. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +4 -4
  303. package/docs/interfaces/plugins.PluginTemplateType.Config.html +1 -1
  304. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +5 -5
  305. package/docs/interfaces/plugins.PluginTemplateType.Params.html +1 -1
  306. package/docs/interfaces/plugins.PluginTemplateType.State.html +4 -4
  307. package/docs/interfaces/plugins.TrajectoryController.html +30 -15
  308. package/docs/interfaces/react.FiveActionReactCallbacks.html +23 -23
  309. package/docs/interfaces/react.FiveCanvasProps.html +2 -2
  310. package/docs/interfaces/react.FiveInjectionTypes.html +76 -76
  311. package/docs/interfaces/sticker.IntersectionLike.html +2 -2
  312. package/docs/interfaces/vfx.ParticleArgs.html +26 -26
  313. package/docs/interfaces/vfx.ParticleGPUArgs.html +30 -30
  314. package/docs/interfaces/vue.FiveActionVueCallbacks.html +23 -23
  315. package/docs/modules/five.html +1 -1
  316. package/docs/modules.html +1 -1
  317. package/docs/types/five.ControllerEventTypes.html +32 -32
  318. package/docs/types/five.EventTypes.html +26 -24
  319. package/docs/types/five.FivePlugin.html +2 -2
  320. package/docs/types/five.FivePluginInit.html +1 -1
  321. package/docs/types/five.FivePluginInstance.html +1 -1
  322. package/docs/types/five.LegacyEventType.html +142 -142
  323. package/docs/types/five.LoadResultType.html +2 -2
  324. package/docs/types/five.Mode.html +1 -1
  325. package/docs/types/five.MotionCircle.html +1 -1
  326. package/docs/types/five.NetworkProgressCallback.html +1 -1
  327. package/docs/types/five.ParseOptions.html +6 -6
  328. package/docs/types/plugins.BasePlugin.EventMap.html +5 -5
  329. package/docs/types/plugins.DynamicPathLinePluginType.PluginData.html +1 -1
  330. package/docs/types/plugins.DynamicPathLinePluginType.ServerData.html +1 -1
  331. package/docs/variables/react.FiveCanvas.html +1 -1
  332. package/docs/variables/react.useFiveScene.html +1 -1
  333. package/docs/variables/vue.FiveCanvas.html +1 -1
  334. package/docs/variables/vue.FiveProvider.html +1 -1
  335. package/five/application/analysis.d.ts +40 -0
  336. package/five/application/controllers.d.ts +41 -0
  337. package/five/application/events-legacy.d.ts +454 -0
  338. package/five/application/events.d.ts +69 -0
  339. package/five/application/five.d.ts +518 -0
  340. package/five/application/fiveInitArgs.d.ts +176 -0
  341. package/five/application/fiveLoadOptions.d.ts +21 -0
  342. package/five/application/generateDefaultVideoElement.d.ts +2 -0
  343. package/five/application/getViewportScale.d.ts +2 -0
  344. package/five/application/initLights.d.ts +3 -0
  345. package/five/application/mode.d.ts +28 -0
  346. package/five/application/renderPoweredByRealsee.d.ts +3 -0
  347. package/five/assets/cardboard-png-data-url.d.ts +2 -0
  348. package/five/assets/gradient-png-data-url.d.ts +2 -0
  349. package/five/assets/loading-png-data-url.d.ts +2 -0
  350. package/five/assets/phone-png-data-url.d.ts +2 -0
  351. package/five/assets/realsee-pmg-data-url.d.ts +2 -0
  352. package/five/bvh/bvhMath.d.ts +33 -0
  353. package/five/bvh/bvhMesh.d.ts +7 -0
  354. package/five/bvh/bvhNode.d.ts +29 -0
  355. package/five/bvh/bvhObject.d.ts +18 -0
  356. package/five/bvh/bvhPoints.d.ts +6 -0
  357. package/five/bvh/index.d.ts +10 -0
  358. package/five/bvh/worker.d.ts +35 -0
  359. package/five/cardboard/helper.d.ts +2 -0
  360. package/five/cardboard/index.d.ts +13 -0
  361. package/five/cardboard/sensor.d.ts +158 -0
  362. package/five/certificates/hardware.d.ts +1 -0
  363. package/five/controllers/base.d.ts +166 -0
  364. package/five/controllers/events.d.ts +69 -0
  365. package/five/controllers/floorplan.d.ts +119 -0
  366. package/five/controllers/mapview.d.ts +138 -0
  367. package/five/controllers/model.d.ts +57 -0
  368. package/five/controllers/panorama.d.ts +143 -0
  369. package/five/controllers/panoramaLike.d.ts +87 -0
  370. package/five/controllers/topview.d.ts +42 -0
  371. package/five/controllers/vrPanorama.d.ts +56 -0
  372. package/five/controllers/xrPanorama.d.ts +81 -0
  373. package/five/core/camera.d.ts +65 -0
  374. package/five/core/internalWebGLRenderer.d.ts +14 -0
  375. package/five/core/panoVideo.d.ts +18 -0
  376. package/five/core/scene.d.ts +10 -0
  377. package/five/core/tiling.d.ts +43 -0
  378. package/five/declare.d.ts +2 -1
  379. package/five/gs/util/renderData.d.ts +32 -0
  380. package/five/gs/wasm/data.d.ts +20 -0
  381. package/five/gs/wasm/sort.d.ts +18 -0
  382. package/five/gs/worker/dataWorker.d.ts +1 -0
  383. package/five/gs/worker/sortWorker.d.ts +1 -0
  384. package/five/index.d.ts +57 -4582
  385. package/five/index.js +605 -92
  386. package/five/index.mjs +9661 -7537
  387. package/five/meshes/boundingMesh.d.ts +12 -0
  388. package/five/meshes/intersectMesh.d.ts +8 -0
  389. package/five/meshes/panoCircleMesh.d.ts +35 -0
  390. package/five/meshes/panoCircleMeshCustom.d.ts +40 -0
  391. package/five/meshes/panoCircleMeshSolid.d.ts +34 -0
  392. package/five/meshes/panoSphereMesh.d.ts +27 -0
  393. package/five/model/helpers/coordinate-transform.d.ts +3 -0
  394. package/five/model/helpers/ellipsoid-coordinates.d.ts +14 -0
  395. package/five/model/helpers/get-edges-by-sphere.d.ts +8 -0
  396. package/five/model/helpers/get-recommend-tile3d-parameters.d.ts +8 -0
  397. package/five/model/index.d.ts +70 -0
  398. package/five/model/intersection.d.ts +18 -0
  399. package/five/model/loaders/at3d.d.ts +12 -0
  400. package/five/model/loaders/b3dm.d.ts +9 -0
  401. package/five/model/loaders/dome.d.ts +22 -0
  402. package/five/model/loaders/domez.d.ts +11 -0
  403. package/five/model/loaders/fbx.d.ts +8 -0
  404. package/five/model/loaders/glTF-helpers/extensions/CESIUM_RTC.d.ts +9 -0
  405. package/five/model/loaders/glTF-helpers/extensions/EXT_meshopt_compression.d.ts +8 -0
  406. package/five/model/loaders/glTF-helpers/extensions/EXT_texture_webp.d.ts +11 -0
  407. package/five/model/loaders/glTF-helpers/extensions/KHR_animation_pointer.d.ts +6 -0
  408. package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +25 -0
  409. package/five/model/loaders/glTF-helpers/extensions/KHR_draco_mesh_compression.d.ts +11 -0
  410. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +9 -0
  411. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_clearcoat.d.ts +10 -0
  412. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_emissive_strength.d.ts +10 -0
  413. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_sheen.d.ts +10 -0
  414. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_transmission.d.ts +10 -0
  415. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_unlit.d.ts +10 -0
  416. package/five/model/loaders/glTF-helpers/extensions/KHR_mesh_quantization.d.ts +6 -0
  417. package/five/model/loaders/glTF-helpers/extensions/KHR_node_visibility.d.ts +10 -0
  418. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_basisu.d.ts +9 -0
  419. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_transform.d.ts +10 -0
  420. package/five/model/loaders/glTF-helpers/extensions/REALSEE_materials_lightmap.d.ts +7 -0
  421. package/five/model/loaders/glTF-helpers/extensions/base.d.ts +24 -0
  422. package/five/model/loaders/glTF-helpers/glTF.d.ts +713 -0
  423. package/five/model/loaders/glTF-helpers/index.d.ts +47 -0
  424. package/five/model/loaders/glTF-helpers/parser.d.ts +114 -0
  425. package/five/model/loaders/glTF-helpers/type.d.ts +14 -0
  426. package/five/model/loaders/gltf.d.ts +10 -0
  427. package/five/model/loaders/obj.d.ts +9 -0
  428. package/five/model/loaders/pbm.d.ts +26 -0
  429. package/five/model/loaders/ply.d.ts +24 -0
  430. package/five/model/loaders/pnts.d.ts +8 -0
  431. package/five/model/loaders/protobuf/dome.d.ts +540 -0
  432. package/five/model/loaders/protobuf/pbm.d.ts +203 -0
  433. package/five/model/loaders/shared.d.ts +16 -0
  434. package/five/model/loaders/splat.d.ts +8 -0
  435. package/five/model/loaders/spz.d.ts +14 -0
  436. package/five/model/loaders/tile3d-helpers/feature-table.d.ts +15 -0
  437. package/five/model/loaders/tile3d-helpers/gl-type.d.ts +20 -0
  438. package/five/model/loaders/tile3d-helpers/parse-gltf-array-buffer.d.ts +2 -0
  439. package/five/model/loaders/tile3d-helpers/parse-header.d.ts +2 -0
  440. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.d.ts +2 -0
  441. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.worker.d.ts +6 -0
  442. package/five/model/loaders/tile3d-helpers/parse-table.d.ts +3 -0
  443. package/five/model/loaders/tile3d-helpers/tile3d-type.d.ts +35 -0
  444. package/five/model/loaders/x3p.d.ts +22 -0
  445. package/five/model/materials/pbmMaterial.d.ts +87 -0
  446. package/five/model/materials/pbmMeshMaterial.d.ts +124 -0
  447. package/five/model/materials/pbmPointCloudMaterial.d.ts +72 -0
  448. package/five/model/model-scene.d.ts +172 -0
  449. package/five/model/model.d.ts +209 -0
  450. package/five/model/objects/pbmContainer.d.ts +28 -0
  451. package/five/model/objects/pbmGSObject.d.ts +40 -0
  452. package/five/model/objects/pbmGSRenderMesh.d.ts +32 -0
  453. package/five/model/objects/pbmGroup.d.ts +8 -0
  454. package/five/model/objects/pbmMesh.d.ts +10 -0
  455. package/five/model/objects/pbmPointCloud.d.ts +7 -0
  456. package/five/model/parameter.d.ts +136 -0
  457. package/five/model/shaders/pbm_gaussian_splatting/fragment.d.ts +2 -0
  458. package/five/model/shaders/pbm_gaussian_splatting/vertex.d.ts +2 -0
  459. package/five/model/shaders/pbm_mesh_basic/fragment.d.ts +2 -0
  460. package/five/model/shaders/pbm_mesh_basic/vertex.d.ts +2 -0
  461. package/five/model/shaders/pbm_mesh_none/fragment.d.ts +2 -0
  462. package/five/model/shaders/pbm_mesh_none/vertex.d.ts +2 -0
  463. package/five/model/shaders/pbm_mesh_phong/fragment.d.ts +2 -0
  464. package/five/model/shaders/pbm_mesh_phong/vertex.d.ts +2 -0
  465. package/five/model/shaders/pbm_mesh_standard/fragment.d.ts +2 -0
  466. package/five/model/shaders/pbm_mesh_standard/vertex.d.ts +2 -0
  467. package/five/model/shaders/pbm_pointcloud/fragment.d.ts +2 -0
  468. package/five/model/shaders/pbm_pointcloud/vertex.d.ts +2 -0
  469. package/five/model/tile3d/header.d.ts +88 -0
  470. package/five/model/tile3d/index.d.ts +214 -0
  471. package/five/model/tile3d/tile-cache.d.ts +18 -0
  472. package/five/model/tile3d/tile-content.d.ts +10 -0
  473. package/five/model/tile3d/tile-node.d.ts +24 -0
  474. package/five/model/tile3d/tile-request-scheduler.d.ts +17 -0
  475. package/five/model/tile3d/tile.d.ts +79 -0
  476. package/five/model/tile3d/tileset-base-traverser.d.ts +59 -0
  477. package/five/model/tile3d/tileset-most-detail-traverser.d.ts +14 -0
  478. package/five/model/tile3d/tileset-normal-traverser.d.ts +15 -0
  479. package/five/model/tile3d/tileset-skip-traverser.d.ts +60 -0
  480. package/five/model/tile3d/tileset.d.ts +69 -0
  481. package/five/model/tile3d/trajectory-content.d.ts +9 -0
  482. package/five/model/tile3d/trajectory-node.d.ts +15 -0
  483. package/five/model/tile3d/trajectory.d.ts +30 -0
  484. package/five/model/tile3d/types.d.ts +33 -0
  485. package/five/model/view-layer.d.ts +20 -0
  486. package/five/renderer/five-renderer.d.ts +17 -0
  487. package/five/renderer/index.d.ts +3 -0
  488. package/five/renderer/postprocessing/composer.d.ts +37 -0
  489. package/five/renderer/postprocessing/index.d.ts +7 -0
  490. package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +15 -0
  491. package/five/renderer/postprocessing/passes/eye-dome-lighting-pass.d.ts +14 -0
  492. package/five/renderer/postprocessing/passes/flowing-light-2d-pass.d.ts +36 -0
  493. package/five/renderer/postprocessing/passes/flowing-light-3d-pass.d.ts +36 -0
  494. package/five/renderer/postprocessing/passes/gaussian-blur-pass.d.ts +12 -0
  495. package/five/renderer/postprocessing/passes/pass.d.ts +38 -0
  496. package/five/renderer/scene-renderers/point-cloud-high-quality-scene-renderer.d.ts +11 -0
  497. package/five/renderer/scene-renderers/scene-renderer.d.ts +9 -0
  498. package/five/renderer/scene-renderers/ssaa-scene-renderer.d.ts +15 -0
  499. package/five/renderer/tools/full-screen-quad.d.ts +15 -0
  500. package/five/renderer/tools/render-full-screen-depth.d.ts +2 -0
  501. package/five/renderer/tools/render-full-screen.d.ts +2 -0
  502. package/five/texture/imageBitmap.d.ts +13 -0
  503. package/five/texture/initTexture.d.ts +3 -0
  504. package/five/texture/loader.d.ts +39 -0
  505. package/five/thirdparty/fflate.d.ts +1407 -0
  506. package/five/thirdparty/hammer.d.ts +259 -0
  507. package/five/thirdparty/jsrsasign.d.ts +768 -0
  508. package/five/thirdparty/meshopt_decoder.d.ts +15 -0
  509. package/five/three-version-check.d.ts +1 -0
  510. package/five/types/addableObject.d.ts +12 -0
  511. package/five/types/cube.d.ts +1 -0
  512. package/five/types/gestureInput.d.ts +24 -0
  513. package/five/types/imageOptions.d.ts +20 -0
  514. package/five/types/intersectMeshInterface.d.ts +8 -0
  515. package/five/types/movePanoEffect.d.ts +13 -0
  516. package/five/types/movePanoOptions.d.ts +35 -0
  517. package/five/types/panoCircleMeshInterface.d.ts +34 -0
  518. package/five/types/plugin.d.ts +25 -0
  519. package/five/types/pose.d.ts +17 -0
  520. package/five/types/state.d.ts +20 -0
  521. package/five/types/viewport.d.ts +22 -0
  522. package/five/utils/ajax.d.ts +66 -0
  523. package/five/utils/animationFrameLoop.d.ts +45 -0
  524. package/five/utils/array.d.ts +31 -0
  525. package/five/utils/asyncTaskQueue.d.ts +8 -0
  526. package/five/utils/bufferGeometry.d.ts +33 -0
  527. package/five/utils/calculateProgress.d.ts +39 -0
  528. package/five/utils/calculateThreeMouse.d.ts +13 -0
  529. package/five/utils/canplayVideo.d.ts +2 -0
  530. package/five/utils/clamp.d.ts +2 -0
  531. package/five/utils/clock.d.ts +17 -0
  532. package/five/utils/createSymbol.d.ts +5 -0
  533. package/five/utils/decodeText.d.ts +2 -0
  534. package/five/utils/deepEqual.d.ts +2 -0
  535. package/five/utils/deepFreeze.d.ts +2 -0
  536. package/five/utils/defineProperty.d.ts +9 -0
  537. package/five/utils/detector.d.ts +14 -0
  538. package/five/utils/distance.d.ts +10 -0
  539. package/five/utils/draco.d.ts +26 -0
  540. package/five/utils/easing.d.ts +63 -0
  541. package/five/utils/event.d.ts +149 -0
  542. package/five/utils/formatRad.d.ts +7 -0
  543. package/five/utils/imageSupport.d.ts +6 -0
  544. package/five/utils/imageURL.d.ts +42 -0
  545. package/five/utils/isEmptyObject.d.ts +2 -0
  546. package/five/utils/isNil.d.ts +6 -0
  547. package/five/utils/isNumber.d.ts +2 -0
  548. package/five/utils/isPowerOfTwo.d.ts +2 -0
  549. package/five/utils/isPromise.d.ts +2 -0
  550. package/five/utils/isSimilar.d.ts +6 -0
  551. package/five/utils/json.d.ts +7 -0
  552. package/five/utils/ktx2.d.ts +30 -0
  553. package/five/utils/lzma/index.d.ts +2 -0
  554. package/five/utils/lzma/lzma.d.ts +3 -0
  555. package/five/utils/lzma/lzmaWASM.d.ts +2 -0
  556. package/five/utils/lzma/lzmaWorker.d.ts +14 -0
  557. package/five/utils/memoryUsage.d.ts +29 -0
  558. package/five/utils/motion.d.ts +38 -0
  559. package/five/utils/noop.d.ts +6 -0
  560. package/five/utils/now.d.ts +7 -0
  561. package/five/utils/pano.d.ts +9 -0
  562. package/five/utils/pick.d.ts +3 -0
  563. package/five/utils/poseUtils.d.ts +5 -0
  564. package/five/utils/renderCubeTextureToCubeRenderTarget.d.ts +3 -0
  565. package/five/utils/renderDepth.d.ts +2 -0
  566. package/five/utils/renderTexturesToCubeRenderTarget.d.ts +10 -0
  567. package/five/utils/requestPermission.d.ts +3 -0
  568. package/five/utils/shaderContentFix.d.ts +7 -0
  569. package/five/utils/shaderMaterial.d.ts +20 -0
  570. package/five/utils/stateUtils.d.ts +5 -0
  571. package/five/utils/string-pattern.d.ts +8 -0
  572. package/five/utils/subscribe.d.ts +67 -0
  573. package/five/utils/tileCube.d.ts +19 -0
  574. package/five/utils/toFastProperties.d.ts +1 -0
  575. package/five/utils/typedCache.d.ts +10 -0
  576. package/five/utils/uniform.d.ts +15 -0
  577. package/five/utils/url.d.ts +35 -0
  578. package/five/utils/uuid.d.ts +5 -0
  579. package/five/utils/values.d.ts +2 -0
  580. package/five/utils/vectorCoordinates.d.ts +29 -0
  581. package/five/utils/volume.d.ts +111 -0
  582. package/five/utils/webglError.d.ts +7 -0
  583. package/five/utils/worker.d.ts +26 -0
  584. package/five/webxr/XRControllerModelFactory.d.ts +28 -0
  585. package/five/webxr/motionHelper.d.ts +68 -0
  586. package/five/webxr/xrButton.d.ts +4 -0
  587. package/five/webxr/xrController.d.ts +24 -0
  588. package/five/webxr/xrManager.d.ts +84 -0
  589. package/five/work/_ALLOW_HOST.d.ts +2 -0
  590. package/five/work/index.d.ts +6 -0
  591. package/five/work/keychain.d.ts +5 -0
  592. package/five/work/looseWorkType.d.ts +121 -0
  593. package/five/work/verify.d.ts +7 -0
  594. package/five/work/work.d.ts +236 -0
  595. package/five/work/workFetcher.d.ts +4 -0
  596. package/five/work/workJson.d.ts +3 -0
  597. package/five/work/workJsonType.d.ts +73 -0
  598. package/five/work/workObserverUtils.d.ts +36 -0
  599. package/five/work/workParser.d.ts +6 -0
  600. package/five/work/workResolvedObserver.d.ts +12 -0
  601. package/five/work/workVerify.d.ts +2 -0
  602. package/five/work/works.d.ts +10 -0
  603. package/gltf-loader/gltf-object.d.ts +17 -0
  604. package/gltf-loader/index.d.ts +60 -160
  605. package/gltf-loader/index.js +3 -3
  606. package/gltf-loader/index.mjs +3 -3
  607. package/gltf-loader/thirdparty/DDSLoader.d.ts +23 -0
  608. package/gltf-loader/thirdparty/DRACOLoader.d.ts +18 -0
  609. package/gltf-loader/thirdparty/GLTFLoader.d.ts +59 -0
  610. package/line/circle_png.d.ts +1 -0
  611. package/line/index.d.ts +19 -69
  612. package/line/index.js +3 -3
  613. package/line/index.mjs +3 -3
  614. package/line/utils/Line2.d.ts +7 -0
  615. package/line/utils/LineGeometry.d.ts +10 -0
  616. package/line/utils/LineMaterial.d.ts +20 -0
  617. package/line/utils/LineSegments2.d.ts +11 -0
  618. package/line/utils/LineSegmentsGeometry.d.ts +15 -0
  619. package/llms.txt +65 -0
  620. package/package.json +10 -1
  621. package/plugins/BackgroundPlugin/Controller.d.ts +20 -0
  622. package/plugins/BackgroundPlugin/index.d.ts +5 -0
  623. package/plugins/BackgroundPlugin/typings.d.ts +44 -0
  624. package/plugins/BasePlugin/index.d.ts +119 -0
  625. package/plugins/DynamicPathLinePlugin/Controller.d.ts +167 -0
  626. package/plugins/DynamicPathLinePlugin/index.d.ts +5 -0
  627. package/plugins/DynamicPathLinePlugin/line2/Line2.d.ts +7 -0
  628. package/plugins/DynamicPathLinePlugin/line2/LineGeometry.d.ts +10 -0
  629. package/plugins/DynamicPathLinePlugin/line2/LineMaterial.d.ts +17 -0
  630. package/plugins/DynamicPathLinePlugin/line2/LineSegments2.d.ts +11 -0
  631. package/plugins/DynamicPathLinePlugin/line2/LineSegmentsGeometry.d.ts +15 -0
  632. package/plugins/DynamicPathLinePlugin/typing.d.ts +129 -0
  633. package/plugins/DynamicPathLinePlugin/typings.d.ts +72 -0
  634. package/plugins/ItemMaskPlugin/Controller.d.ts +48 -0
  635. package/plugins/ItemMaskPlugin/index.d.ts +5 -0
  636. package/plugins/ItemMaskPlugin/typing.d.ts +58 -0
  637. package/plugins/OrientationPlugin/Controller.d.ts +82 -0
  638. package/plugins/OrientationPlugin/RoundedBoxGeometry.d.ts +11 -0
  639. package/plugins/OrientationPlugin/index.d.ts +6 -0
  640. package/plugins/OrientationPlugin/typing.d.ts +25 -0
  641. package/plugins/PanoAnimePlugin/Controller.d.ts +46 -0
  642. package/plugins/PanoAnimePlugin/index.d.ts +5 -0
  643. package/plugins/PanoAnimePlugin/typing.d.ts +37 -0
  644. package/plugins/PluginTemplate/Controller.d.ts +27 -0
  645. package/plugins/PluginTemplate/index.d.ts +5 -0
  646. package/plugins/PluginTemplate/typing.d.ts +21 -0
  647. package/plugins/TrajectoryPlugin/Controller.d.ts +85 -0
  648. package/plugins/TrajectoryPlugin/index.d.ts +6 -0
  649. package/plugins/TrajectoryPlugin/typing.d.ts +25 -0
  650. package/plugins/index.d.ts +9 -1078
  651. package/plugins/index.js +17 -17
  652. package/plugins/index.mjs +1518 -1370
  653. package/plugins/thirdParty/CSS3DRenderer.d.ts +32 -0
  654. package/plugins/thirdParty/OrbitControls.d.ts +78 -0
  655. package/plugins/utils/absoluteUrl.d.ts +5 -0
  656. package/plugins/utils/clamp.d.ts +2 -0
  657. package/plugins/utils/loadImage.d.ts +1 -0
  658. package/plugins/utils/motion.d.ts +38 -0
  659. package/plugins/utils/now.d.ts +6 -0
  660. package/plugins/utils/uuid.d.ts +5 -0
  661. package/react/canvas.d.ts +19 -0
  662. package/react/context.d.ts +11 -0
  663. package/react/createProvider.d.ts +95 -0
  664. package/react/createStore.d.ts +144 -0
  665. package/react/hooks/unsafe__useFiveInstance.d.ts +9 -0
  666. package/react/hooks/useFiveAction.d.ts +147 -0
  667. package/react/hooks/useFiveCameraDirection.d.ts +7 -0
  668. package/react/hooks/useFiveCameraRaycaster.d.ts +7 -0
  669. package/react/hooks/useFiveCurrentObserver.d.ts +11 -0
  670. package/react/hooks/useFiveCurrentState.d.ts +15 -0
  671. package/react/hooks/useFiveEventCallback.d.ts +12 -0
  672. package/react/hooks/useFiveFloor.d.ts +15 -0
  673. package/react/hooks/useFiveHelper.d.ts +14 -0
  674. package/react/hooks/useFiveModelBounding.d.ts +5 -0
  675. package/react/hooks/useFiveModelEffect.d.ts +14 -0
  676. package/react/hooks/useFiveModelIntersectRaycaster.d.ts +22 -0
  677. package/react/hooks/useFiveModelReadyState.d.ts +8 -0
  678. package/react/hooks/useFiveProject2d.d.ts +20 -0
  679. package/react/hooks/useFiveSceneEffect.d.ts +21 -0
  680. package/react/hooks/useFiveState.d.ts +6 -0
  681. package/react/hooks/useFiveWork.d.ts +29 -0
  682. package/react/index.d.ts +24 -830
  683. package/react/index.js +2 -2
  684. package/react/index.mjs +2 -2
  685. package/react/rendererPool.d.ts +7 -0
  686. package/react/withFive.d.ts +213 -0
  687. package/shader-lib/EvenessPlane/index.d.ts +10 -0
  688. package/shader-lib/PointCloudExpand/index.d.ts +59 -0
  689. package/shader-lib/PolygonCuter/index.d.ts +52 -0
  690. package/shader-lib/PolygonCuter/worker.d.ts +14 -0
  691. package/shader-lib/ShineModel/index.d.ts +7 -0
  692. package/shader-lib/SweepModel/index.d.ts +7 -0
  693. package/shader-lib/index.d.ts +5 -86
  694. package/shader-lib/index.js +2 -2
  695. package/shader-lib/index.mjs +2 -2
  696. package/sticker/geometry.d.ts +3 -0
  697. package/sticker/index.d.ts +68 -71
  698. package/sticker/index.js +3 -3
  699. package/sticker/index.mjs +3 -3
  700. package/umd/five-gltf-loader.js +3 -3
  701. package/umd/five-line.js +3 -3
  702. package/umd/five-plugins.js +16 -16
  703. package/umd/five-react.js +2 -2
  704. package/umd/five-shader-lib.js +2 -2
  705. package/umd/five-sticker.js +3 -3
  706. package/umd/five-vfx.js +2 -2
  707. package/umd/five-vue.js +2 -2
  708. package/umd/five.js +605 -92
  709. package/vfx/airflow/airflow.d.ts +18 -0
  710. package/vfx/airflow/fragment-shader.d.ts +2 -0
  711. package/vfx/airflow/vertex-shader.d.ts +2 -0
  712. package/vfx/common/scale-shader.d.ts +2 -0
  713. package/vfx/common/simplex-noise-shader.d.ts +2 -0
  714. package/vfx/frame/fragment-shader.d.ts +2 -0
  715. package/vfx/frame/frame.d.ts +22 -0
  716. package/vfx/frame/vertex-shader.d.ts +2 -0
  717. package/vfx/index.d.ts +7 -363
  718. package/vfx/index.js +2 -2
  719. package/vfx/index.mjs +2 -2
  720. package/vfx/particle/fragment-shader.d.ts +2 -0
  721. package/vfx/particle/instance.d.ts +36 -0
  722. package/vfx/particle/particle.d.ts +205 -0
  723. package/vfx/particle/utils.d.ts +11 -0
  724. package/vfx/particle/vertex-shader.d.ts +2 -0
  725. package/vfx/particle-gpu/fragment-shader.d.ts +2 -0
  726. package/vfx/particle-gpu/instance.d.ts +36 -0
  727. package/vfx/particle-gpu/particle.d.ts +95 -0
  728. package/vfx/particle-gpu/utils.d.ts +11 -0
  729. package/vfx/particle-gpu/vertex-shader.d.ts +2 -0
  730. package/vfx/spotLight/fragment-shader.d.ts +2 -0
  731. package/vfx/spotLight/spotLight.d.ts +15 -0
  732. package/vfx/spotLight/vertex-shader.d.ts +2 -0
  733. package/vue/context.d.ts +7 -0
  734. package/vue/hooks/FiveCanvas.d.ts +36 -0
  735. package/vue/hooks/FiveProvider.d.ts +35 -0
  736. package/vue/hooks/unsafe__useFiveInject.d.ts +9 -0
  737. package/vue/hooks/useFiveAction.d.ts +178 -0
  738. package/vue/hooks/useFiveCameraDirection.d.ts +8 -0
  739. package/vue/hooks/useFiveCameraRaycaster.d.ts +8 -0
  740. package/vue/hooks/useFiveCurrentObserver.d.ts +12 -0
  741. package/vue/hooks/useFiveCurrentState.d.ts +16 -0
  742. package/vue/hooks/useFiveEventCallback.d.ts +11 -0
  743. package/vue/hooks/useFiveFloor.d.ts +16 -0
  744. package/vue/hooks/useFiveHelper.d.ts +15 -0
  745. package/vue/hooks/useFiveModel.d.ts +7 -0
  746. package/vue/hooks/useFiveModelBounding.d.ts +7 -0
  747. package/vue/hooks/useFiveModelIntersectRaycaster.d.ts +23 -0
  748. package/vue/hooks/useFiveModelReadyState.d.ts +9 -0
  749. package/vue/hooks/useFiveProject2d.d.ts +26 -0
  750. package/vue/hooks/useFiveScene.d.ts +6 -0
  751. package/vue/hooks/useFiveState.d.ts +16 -0
  752. package/vue/hooks/useFiveWork.d.ts +30 -0
  753. package/vue/index.d.ts +23 -467
  754. package/vue/index.js +2 -2
  755. package/vue/index.mjs +2 -2
  756. package/vue/rendererPool.d.ts +10 -0
  757. package/work-downloader/components/model-3d-tile.d.ts +2 -0
  758. package/work-downloader/components/model.d.ts +3 -0
  759. package/work-downloader/components/observer.d.ts +7 -0
  760. package/work-downloader/download.d.ts +16 -0
  761. package/work-downloader/index.d.ts +2 -33
  762. package/work-downloader/index.js +2 -2
  763. package/work-downloader/index.mjs +2 -2
  764. package/work-downloader/type.d.ts +28 -0
  765. package/work-downloader/utils/download-to-file.d.ts +1 -0
  766. package/work-downloader/utils/image-processing.d.ts +7 -0
  767. package/work-downloader/utils/join-url.d.ts +2 -0
  768. package/work-downloader/utils/log.d.ts +1 -0
  769. package/work-downloader/utils/relative-url.d.ts +1 -0
  770. package/docs/documents/coordinate.html +0 -9
  771. package/docs/documents/five.FivePlugin.plugins.html +0 -77
  772. package/docs/documents/five.Pose.coordinate.html +0 -9
  773. package/docs/documents/plugins.html +0 -77
  774. package/docs/documents/react-component.html +0 -32
  775. package/docs/media/coordinate.jpg +0 -0
package/docs/index.html CHANGED
@@ -1,210 +1,138 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>如视 Five SDK</title><meta name="description" content="Documentation for 如视 Five SDK"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script><script async src="assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="index.html" class="title">如视 Five SDK</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>如视 Five SDK</h1></div><div class="tsd-panel tsd-typography"><h1 id="fivejs" class="tsd-anchor-link">Five.js<a href="#fivejs" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h1><p><a href="https://www.npmjs.com/package/@realsee/five"><img src="https://img.shields.io/npm/v/@realsee/five.svg?style=flat-square&amp;logo=npm&amp;label=npm%20install%20@realsee/five" alt="npm version"></a></p>
2
- <p>贝壳如视三维渲染框架</p>
3
- <h2 id="什么是five" class="tsd-anchor-link">什么是<strong>Five</strong><a href="#什么是five" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p><strong>Five</strong>是 <a href="https://realsee.com">贝壳如视(realsee.com)</a> 提供的在浏览器中运行的三维空间渲染 Javascript SDK。您可以通过<a href="https://developers.realsee.com">如视开发者中心</a>的数据服务,并结合<strong>Five</strong>,制作丰富多彩的三维空间应用。</p>
4
- <p>并且<strong>Five</strong>提供了一系列的方法、事件、生命周期函数。您可以方便地基于<strong>Five</strong>进行二次开发,并结合到您自身的项目中,为您的项目添砖加瓦。</p>
5
- <p><strong>Five</strong>通过 <a href="https://www.typescriptlang.org/">TypeScript</a> 编写,保证开发的质量以及编程体验,推荐通过 <a href="https://code.visualstudio.com">Visual Studio Code</a>、<a href="https://www.jetbrains.com/webstorm/">WebStorm</a> 等现代源代码编辑器,您将可以体验到友好的代码提示以及自动补全。</p>
6
- <p><strong>Five</strong>还提供了完善的 <a href="https://reactjs.org/docs/hooks-intro.html">React Hooks API</a> ,可以方便的通过 <a href="https://reactjs.org">React</a> 开发复杂的响应式数据应用。当然直接使用<strong>Five</strong>开发也是没有问题的。</p>
7
- <h2 id="安装five" class="tsd-anchor-link">安装<strong>Five</strong><a href="#安装five" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p><strong>Five</strong>提供通过 <a href="https://www.npmjs.com">npm</a> 的方式安装。<strong>Five</strong>基于 <a href="https://threejs.org">Three.js</a>, 所以同时您需要安装相关依赖。</p>
8
- <p>目前依赖的<strong>three</strong>版本为 115 ~ 117 的版本</p>
9
- <pre><code class="shell"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">install</span><span class="hl-1"> </span><span class="hl-2">@realsee/five</span><span class="hl-1"> </span><span class="hl-2">three@0.117.1</span>
10
- </code><button type="button">Copy</button></pre>
11
-
12
- <p>如果您使用<strong>React Hooks API</strong>,那么也请同时安装<strong>React</strong>的相关依赖。</p>
13
- <pre><code class="shell"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">install</span><span class="hl-1"> </span><span class="hl-2">@realsee/five</span><span class="hl-1"> </span><span class="hl-2">three@0.117.1</span><span class="hl-1"> </span><span class="hl-2">react</span><span class="hl-1"> </span><span class="hl-2">react-dom</span><span class="hl-1"> </span><span class="hl-2">@types/react</span><span class="hl-1"> </span><span class="hl-2">@types/react-dom</span>
14
- </code><button type="button">Copy</button></pre>
15
-
16
- <p>接下来便可以在您的项目使用<strong>Five</strong>了。</p>
17
- <pre><code class="typescript"><span class="hl-3">import</span><span class="hl-1"> { </span><span class="hl-4">Five</span><span class="hl-1"> } </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;@realsee/five&quot;</span><span class="hl-1">;</span><br/><span class="hl-5">// 如果您使用 React Hoos API</span><br/><span class="hl-3">import</span><span class="hl-1"> { </span><span class="hl-4">useFiveState</span><span class="hl-1"> } </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;@realsee/five/react&quot;</span><span class="hl-1">;</span><br/>
18
- </code><button type="button">Copy</button></pre>
19
-
20
- <h2 id="浏览器兼容性" class="tsd-anchor-link">浏览器兼容性<a href="#浏览器兼容性" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><table>
21
- <thead>
22
- <tr>
23
- <th style="text-align:center">Safari</th>
24
- <th style="text-align:center">Safari on iOS</th>
25
- <th style="text-align:right">Chrome</th>
26
- <th style="text-align:center">Chrome for Android</th>
27
- <th style="text-align:center">Edge</th>
28
- <th style="text-align:center">Firefox</th>
29
- </tr>
30
- </thead>
31
- <tbody>
32
- <tr>
33
- <td style="text-align:center">&gt;= 9</td>
34
- <td style="text-align:center">&gt;= 9</td>
35
- <td style="text-align:right">&gt;= 49</td>
36
- <td style="text-align:center">&gt;= 93</td>
37
- <td style="text-align:center">&gt;= 13</td>
38
- <td style="text-align:center">&gt;= 45</td>
39
- </tr>
40
- </tbody>
41
- </table>
42
- <h2 id="快速上手" class="tsd-anchor-link">快速上手<a href="#快速上手" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p><strong>Five</strong>提供了快速上手体验的项目生成工具,您可以通过他熟悉<strong>Five</strong>的功能以及尝试基于<strong>Five</strong>开发功能。</p>
43
- <ol>
44
- <li>先创建一个文件夹<code>five-quick-start</code>, 作为项目根目录并且使用 <code>npm init</code> 命令初始化一个工程。</li>
45
- </ol>
46
- <pre><code class="shell"><span class="hl-0">mkdir</span><span class="hl-1"> </span><span class="hl-2">five-quick-start</span><span class="hl-1"> &amp;&amp; </span><span class="hl-0">cd</span><span class="hl-1"> </span><span class="hl-2">five-quick-start</span><span class="hl-1"> &amp;&amp; </span><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">init</span><span class="hl-1"> </span><span class="hl-6">-y</span>
47
- </code><button type="button">Copy</button></pre>
48
-
49
- <ol start="2">
50
- <li>安装<strong>Five</strong></li>
51
- </ol>
52
- <pre><code class="shell"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">install</span><span class="hl-1"> </span><span class="hl-2">@realsee/five</span>
53
- </code><button type="button">Copy</button></pre>
54
-
55
- <ol start="3">
56
- <li>通过<strong>Five</strong>的内置的<code>five-quick-start-init</code>脚本来快速补完当前项目</li>
57
- </ol>
58
- <pre><code class="shell"><span class="hl-0">npx</span><span class="hl-1"> </span><span class="hl-2">five-quick-start-init</span>
59
- </code><button type="button">Copy</button></pre>
60
-
61
- <p>项目的文件结构如下</p>
62
- <pre><code><span class="hl-1">.</span><br/><span class="hl-1">├── </span><span class="hl-7">README</span><span class="hl-1">.</span><span class="hl-4">md</span><br/><span class="hl-1">├── </span><span class="hl-4">assets</span><span class="hl-1"> </span><span class="hl-4">静态文件</span><span class="hl-1">(</span><span class="hl-4">测试数据</span><span class="hl-1">)</span><br/><span class="hl-1">│ ├── </span><span class="hl-4">data0</span><span class="hl-1">.</span><span class="hl-4">json</span><br/><span class="hl-1">│ └── </span><span class="hl-4">data1</span><span class="hl-1">.</span><span class="hl-4">json</span><br/><span class="hl-1">├── </span><span class="hl-4">index</span><span class="hl-1">.</span><span class="hl-4">html</span><span class="hl-1"> </span><span class="hl-4">页面模版</span><br/><span class="hl-1">├── </span><span class="hl-4">index</span><span class="hl-1">.</span><span class="hl-4">tsx</span><span class="hl-1"> </span><span class="hl-4">逻辑代码</span><br/><span class="hl-1">├── </span><span class="hl-4">package</span><span class="hl-1">.</span><span class="hl-4">json</span><span class="hl-1"> </span><span class="hl-4">npm</span><span class="hl-1"> </span><span class="hl-4">包管理描述</span><br/><span class="hl-1">├── </span><span class="hl-4">tsconfig</span><span class="hl-1">.</span><span class="hl-4">json</span><span class="hl-1"> </span><span class="hl-4">typescript</span><span class="hl-1"> </span><span class="hl-4">配置</span><br/><span class="hl-1">├── </span><span class="hl-4">webpack</span><span class="hl-1">.</span><span class="hl-4">config</span><span class="hl-1">.</span><span class="hl-4">js</span><span class="hl-1"> </span><span class="hl-4">webpack</span><span class="hl-1"> </span><span class="hl-4">开发环境配置</span><br/><span class="hl-1">└── </span><span class="hl-4">webpack</span><span class="hl-1">.</span><span class="hl-4">production</span><span class="hl-1">.</span><span class="hl-4">js</span><span class="hl-1"> </span><span class="hl-4">webpack</span><span class="hl-1"> </span><span class="hl-4">生产配置</span>
63
- </code><button>Copy</button></pre>
64
-
65
- <p>通<strong>npm script</strong>运行测试环境</p>
66
- <pre><code class="shell"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">run</span><span class="hl-1"> </span><span class="hl-2">dev</span>
67
- </code><button type="button">Copy</button></pre>
68
-
69
- <p>默认将会在 <code>port: 3000</code> 开启 <code>webpack dev server</code>。您也可以在 <code>webpack.config.js</code> 中修改配置。</p>
70
- <ol start="4">
71
- <li>现在可以打来浏览器 <code>http://0.0.0.0:3000</code> 来看看项目初始化的效果了。您可以修改代码来体验一下如何使用<strong>Five</strong>来二次开发。</li>
72
- </ol>
73
- <h2 id="如何使用five" class="tsd-anchor-link">如何使用<strong>Five</strong><a href="#如何使用five" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p><strong>Five</strong>的简单使用样例:</p>
74
- <pre><code class="ts"><span class="hl-3">import</span><span class="hl-1"> { </span><span class="hl-4">Five</span><span class="hl-1"> } </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;@realsee/five&quot;</span><span class="hl-1">;</span><br/><br/><span class="hl-5">// 构造函数的具体参数见文档</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">five</span><span class="hl-1"> = </span><span class="hl-6">new</span><span class="hl-1"> </span><span class="hl-0">Five</span><span class="hl-1">();</span><br/><br/><span class="hl-5">// 将渲染视图的 canvas 添加到 DOM 中</span><br/><span class="hl-4">five</span><span class="hl-1">.</span><span class="hl-0">appendTo</span><span class="hl-1">(</span><span class="hl-4">document</span><span class="hl-1">.</span><span class="hl-0">getElementById</span><span class="hl-1">(</span><span class="hl-2">&#39;app&#39;</span><span class="hl-1">)!);</span><br/><br/><span class="hl-5">// 如果显示区域需要变动,在变动时请调用 refresh 重置显示参数</span><br/><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-0">addEventListener</span><span class="hl-1">(</span><span class="hl-2">&#39;resize&#39;</span><span class="hl-1">, () </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-4">five</span><span class="hl-1">.</span><span class="hl-0">refresh</span><span class="hl-1">());</span><br/><br/><span class="hl-5">// 获取三维空间的 Work 数据,加载进来</span><br/><span class="hl-5">// Work 数据可以通过如视开发者中心获取</span><br/><span class="hl-0">fetch</span><span class="hl-1">(</span><span class="hl-2">`./work.json`</span><span class="hl-1">)</span><br/><span class="hl-1"> .</span><span class="hl-0">then</span><span class="hl-1">(</span><span class="hl-4">res</span><span class="hl-1"> </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-4">res</span><span class="hl-1">.</span><span class="hl-0">json</span><span class="hl-1">())</span><br/><span class="hl-1"> .</span><span class="hl-0">then</span><span class="hl-1">(</span><span class="hl-4">work</span><span class="hl-1"> </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-4">five</span><span class="hl-1">.</span><span class="hl-0">load</span><span class="hl-1">(</span><span class="hl-4">work</span><span class="hl-1">));</span>
75
- </code><button type="button">Copy</button></pre>
76
-
77
- <p>其他的 Five API 待补充</p>
78
- <h2 id="在react框架中使用five" class="tsd-anchor-link">在<strong>React</strong>框架中使用<strong>Five</strong><a href="#在react框架中使用five" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>在<strong>React</strong>框架中使用<strong>Five</strong>的简单使用样例:</p>
79
- <pre><code class="tsx"><span class="hl-3">import</span><span class="hl-1"> </span><span class="hl-6">*</span><span class="hl-1"> </span><span class="hl-3">as</span><span class="hl-1"> </span><span class="hl-4">React</span><span class="hl-1"> </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;react&quot;</span><span class="hl-1">;</span><br/><span class="hl-3">import</span><span class="hl-1"> </span><span class="hl-6">*</span><span class="hl-1"> </span><span class="hl-3">as</span><span class="hl-1"> </span><span class="hl-4">ReactDOM</span><span class="hl-1"> </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;react-dom&quot;</span><span class="hl-1">;</span><br/><span class="hl-3">import</span><span class="hl-1"> {</span><span class="hl-4">Five</span><span class="hl-1">, </span><span class="hl-4">Work</span><span class="hl-1">, </span><span class="hl-4">parseWork</span><span class="hl-1">} </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;@realsee/five&quot;</span><span class="hl-1">;</span><br/><span class="hl-3">import</span><span class="hl-1"> {</span><span class="hl-4">createFiveProvider</span><span class="hl-1">, </span><span class="hl-4">FiveCanvas</span><span class="hl-1">} </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">&quot;@realsee/five/react&quot;</span><span class="hl-1">;</span><br/><br/><span class="hl-5">// 创建 Provider, 参数与 new Five 参数类似</span><br/><span class="hl-5">// 构造函数的具体参数见文档</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">FiveProvider</span><span class="hl-1"> = </span><span class="hl-0">createFiveProvider</span><span class="hl-1">();</span><br/><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-0">App</span><span class="hl-1">: </span><span class="hl-8">React</span><span class="hl-1">.</span><span class="hl-8">FC</span><span class="hl-1"> = () </span><span class="hl-6">=&gt;</span><span class="hl-1"> {</span><br/><br/><span class="hl-1"> </span><span class="hl-5">// 声明 State: Work</span><br/><span class="hl-1"> </span><span class="hl-6">const</span><span class="hl-1"> [</span><span class="hl-7">work</span><span class="hl-1">, </span><span class="hl-7">setWork</span><span class="hl-1">] = </span><span class="hl-4">React</span><span class="hl-1">.</span><span class="hl-0">useState</span><span class="hl-1">&lt;</span><span class="hl-8">Work</span><span class="hl-1"> | </span><span class="hl-8">null</span><span class="hl-1">&gt;(</span><span class="hl-6">null</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-5">// 声明 State: Size&lt;{width, height}&gt;</span><br/><span class="hl-1"> </span><span class="hl-6">const</span><span class="hl-1"> [</span><span class="hl-7">size</span><span class="hl-1">, </span><span class="hl-7">setSize</span><span class="hl-1">] = </span><span class="hl-4">React</span><span class="hl-1">.</span><span class="hl-0">useState</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">width:</span><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-4">innerWidth</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">height:</span><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-4">innerHeight</span><br/><span class="hl-1"> })</span><br/><br/><span class="hl-1"> </span><span class="hl-5">// 获取三维空间的 Work 数据,加载进来</span><br/><span class="hl-1"> </span><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">loadWork</span><span class="hl-1"> = </span><span class="hl-4">React</span><span class="hl-1">.</span><span class="hl-0">useCallback</span><span class="hl-1">((</span><span class="hl-4">url</span><span class="hl-1">: </span><span class="hl-8">string</span><span class="hl-1">) </span><span class="hl-6">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">fetch</span><span class="hl-1">(</span><span class="hl-4">url</span><span class="hl-1">)</span><br/><span class="hl-1"> .</span><span class="hl-0">then</span><span class="hl-1">(</span><span class="hl-4">res</span><span class="hl-1"> </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-4">res</span><span class="hl-1">.</span><span class="hl-0">json</span><span class="hl-1">())</span><br/><span class="hl-1"> .</span><span class="hl-0">then</span><span class="hl-1">(</span><span class="hl-4">data</span><span class="hl-1"> </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-0">setWork</span><span class="hl-1">(</span><span class="hl-0">parseWork</span><span class="hl-1">(</span><span class="hl-4">data</span><span class="hl-1">)));</span><br/><span class="hl-1"> }, []);</span><br/><br/><span class="hl-1"> </span><span class="hl-4">React</span><span class="hl-1">.</span><span class="hl-0">useEffect</span><span class="hl-1">(() </span><span class="hl-6">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">loadWork</span><span class="hl-1">(</span><span class="hl-2">&quot;./data0.json&quot;</span><span class="hl-1">);</span><br/><span class="hl-1"> }, []);</span><br/><br/><span class="hl-1"> </span><span class="hl-5">// 如果显示区域需要变动,在变动时请调用 FiveCanvas 的 size</span><br/><span class="hl-1"> </span><span class="hl-4">React</span><span class="hl-1">.</span><span class="hl-0">useEffect</span><span class="hl-1">(() </span><span class="hl-6">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-0">onResize</span><span class="hl-1"> = () </span><span class="hl-6">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">setSize</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">width:</span><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-4">innerWidth</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">height:</span><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-4">innerHeight</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-0">addEventListener</span><span class="hl-1">(</span><span class="hl-2">&quot;resize&quot;</span><span class="hl-1">, </span><span class="hl-4">onResize</span><span class="hl-1">, </span><span class="hl-6">false</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">return</span><span class="hl-1"> () </span><span class="hl-6">=&gt;</span><span class="hl-1"> </span><span class="hl-4">window</span><span class="hl-1">.</span><span class="hl-0">removeEventListener</span><span class="hl-1">(</span><span class="hl-2">&quot;resize&quot;</span><span class="hl-1">, </span><span class="hl-4">onResize</span><span class="hl-1">, </span><span class="hl-6">false</span><span class="hl-1">);</span><br/><span class="hl-1"> });</span><br/><br/><span class="hl-1"> </span><span class="hl-3">if</span><span class="hl-1"> (</span><span class="hl-4">work</span><span class="hl-1">) {</span><br/><span class="hl-1"> {</span><span class="hl-5">/*</span><br/><span class="hl-5"> 在 FiveProvider 内承载一个 Five 实例,</span><br/><span class="hl-5"> 在他内部的组件可以使用 Five React Hook API 来获取/设置/操作 他</span><br/><span class="hl-5"> 一个页面中也可以有多个 FiveProvider</span><br/><span class="hl-5"> */</span><span class="hl-1">}</span><br/><span class="hl-1"> </span><span class="hl-3">return</span><span class="hl-1"> </span><span class="hl-9">&lt;</span><span class="hl-8">FiveProvider</span><span class="hl-1"> </span><span class="hl-10">initialWork</span><span class="hl-1">=</span><span class="hl-6">{</span><span class="hl-4">work</span><span class="hl-6">}</span><span class="hl-9">&gt;</span><br/><span class="hl-1"> </span><span class="hl-6">{</span><span class="hl-5">/*</span><br/><span class="hl-5"> 将渲染视图的 canvas 添加到 DOM 中</span><br/><span class="hl-5"> FiveCanvas 需要出现在 FiveProvider 内,他将渲染 FiveProvider 的视图</span><br/><span class="hl-5"> 这样的设计可以实现不同的 DOM 层级结构</span><br/><span class="hl-5"> 在 FiveProvider 内的其他组件也可以使用 Five React Hook API 来获取/设置/操作 他外部的 FiveProvider</span><br/><span class="hl-5"> */</span><span class="hl-6">}</span><br/><span class="hl-1"> </span><span class="hl-9">&lt;</span><span class="hl-8">FiveCanvas</span><span class="hl-1"> </span><span class="hl-10">width</span><span class="hl-1">=</span><span class="hl-6">{</span><span class="hl-4">size</span><span class="hl-11">.</span><span class="hl-4">width</span><span class="hl-6">}</span><span class="hl-1"> </span><span class="hl-10">height</span><span class="hl-1">=</span><span class="hl-6">{</span><span class="hl-4">size</span><span class="hl-11">.</span><span class="hl-4">height</span><span class="hl-6">}</span><span class="hl-9">/&gt;</span><br/><span class="hl-1"> </span><span class="hl-9">&lt;/</span><span class="hl-8">FiveProvider</span><span class="hl-9">&gt;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-3">return</span><span class="hl-1"> </span><span class="hl-6">null</span><span class="hl-1">;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-4">ReactDOM</span><span class="hl-1">.</span><span class="hl-0">render</span><span class="hl-1">(</span><span class="hl-9">&lt;</span><span class="hl-8">App</span><span class="hl-9">&gt;&lt;/</span><span class="hl-8">App</span><span class="hl-9">&gt;</span><span class="hl-1">, </span><span class="hl-4">document</span><span class="hl-1">.</span><span class="hl-0">getElementById</span><span class="hl-1">(</span><span class="hl-2">&quot;app&quot;</span><span class="hl-1">));</span>
80
- </code><button type="button">Copy</button></pre>
81
-
82
- <p>其他的<strong>Five React Hook API</strong>文档建设中...</p>
83
- <h2 id="five-api文档" class="tsd-anchor-link"><strong>Five API</strong>文档<a href="#five-api文档" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>欢迎查看 <a href="https://unpkg.com/@realsee/five/docs/index.html">Five API 文档</a> 。</p>
84
- <p>该文档由 <a href="https://typedoc.org/">TypeDoc</a> 生成,您可以详细查看 api 使用方式,调用参数,数据结构。</p>
85
- <h2 id="相关名词解释" class="tsd-anchor-link">相关名词解释<a href="#相关名词解释" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><h3 id="什么是work" class="tsd-anchor-link">什么是<strong>Work</strong><a href="#什么是work" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><strong>Work</strong>是<a href="https://developers.realsee.com">如视开发者中心</a> 提供的对于一个三维空间的描述。
86
- 是通过如视硬件设备(<a href="https://realsee.com/website/product/hardware">如视扫描仪</a> 、<a href="https://realsee.com/website/product/lite">如视<strong>Lite</strong>全景相机</a> 、<a href="https://realsee.com/website/mobile">如视VR App</a> )扫描并处理之后用于三维空间展示的数据。</p>
87
- <p><strong>Work</strong>以<code>JSON</code>作为数据格式<strong>Five</strong>框架可以解析<strong>Work</strong>数据并展示。一个<strong>Five</strong>实例每次可以载入并展示一个<strong>Work</strong>。并且也可以在不同的<strong>Work</strong>之间动态切换。</p>
88
- <p><strong>Work</strong>的数据样例如下</p>
89
- <pre><code class="json"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;initial&quot;</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;mode&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;Panorama&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;pano_index&quot;</span><span class="hl-1">: </span><span class="hl-13">6</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;longitude&quot;</span><span class="hl-1">: </span><span class="hl-13">2.6869287662553916</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;latitude&quot;</span><span class="hl-1">: </span><span class="hl-13">0</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;fov&quot;</span><span class="hl-1">: </span><span class="hl-13">95</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;model&quot;</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;file_url&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">model</span><span class="hl-14">\/</span><span class="hl-2">auto3d-DJaa08PIzN4JYluXQ1j2VS.at3d&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;material_textures&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_0.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_1.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_2.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_3.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_4.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_5.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_6.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_7.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_8.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">materials</span><span class="hl-14">\/</span><span class="hl-2">texture_9.jpg&quot;</span><br/><span class="hl-1"> ]</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;panorama&quot;</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;list&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;up&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_u.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;down&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_d.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;left&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_l.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;right&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_r.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;front&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_f.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;back&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">0</span><span class="hl-14">\/</span><span class="hl-2">2257f0f0b29d5b00ff01934ce51aaa35</span><span class="hl-14">\/</span><span class="hl-2">0_b.jpg&quot;</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;up&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_u.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;down&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_d.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;left&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_l.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;right&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_r.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;front&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_f.jpg&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;back&quot;</span><span class="hl-1">: </span><span class="hl-2">&quot;https:</span><span class="hl-14">\/\/</span><span class="hl-2">vrlab-public.ljcdn.com</span><span class="hl-14">\/</span><span class="hl-2">release</span><span class="hl-14">\/</span><span class="hl-2">auto3dhd</span><span class="hl-14">\/</span><span class="hl-2">a62e1ebf7d013f7df117551a14af79fc</span><span class="hl-14">\/</span><span class="hl-2">images</span><span class="hl-14">\/</span><span class="hl-2">cube_2048</span><span class="hl-14">\/</span><span class="hl-2">1</span><span class="hl-14">\/</span><span class="hl-2">ecb554bb1c122fa90186d176ccfecde4</span><span class="hl-14">\/</span><span class="hl-2">1_b.jpg&quot;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;observers&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;visible_nodes&quot;</span><span class="hl-1">: [ </span><span class="hl-13">1</span><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;accessible_nodes&quot;</span><span class="hl-1">: [ </span><span class="hl-13">1</span><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;quaternion&quot;</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;w&quot;</span><span class="hl-1">: </span><span class="hl-13">0.45076583925142194</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;x&quot;</span><span class="hl-1">: </span><span class="hl-13">0.010070951976936936</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;y&quot;</span><span class="hl-1">: </span><span class="hl-13">-0.8925839597148215</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;z&quot;</span><span class="hl-1">: </span><span class="hl-13">-0.0016154299986102319</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;standing_position&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> </span><span class="hl-13">-6.956049919128418</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">-1.3924440682333898</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">1.6591600179672241</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;position&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> </span><span class="hl-13">-6.956049919128418</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">-0.10312400013208389</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">1.6591600179672241</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;floor_index&quot;</span><span class="hl-1">: </span><span class="hl-13">0</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;visible_nodes&quot;</span><span class="hl-1">: [ </span><span class="hl-13">0</span><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;accessible_nodes&quot;</span><span class="hl-1">: [ </span><span class="hl-13">0</span><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;index&quot;</span><span class="hl-1">: </span><span class="hl-13">1</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;quaternion&quot;</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;w&quot;</span><span class="hl-1">: </span><span class="hl-13">-0.9884643083591809</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;x&quot;</span><span class="hl-1">: </span><span class="hl-13">-0.0038900979633806664</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;y&quot;</span><span class="hl-1">: </span><span class="hl-13">0.1512670435365699</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;z&quot;</span><span class="hl-1">: </span><span class="hl-13">-0.006439990839033269</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;standing_position&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> </span><span class="hl-13">-6.176340103149414</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">-1.380554749576384</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">2.179759979248047</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;position&quot;</span><span class="hl-1">: [</span><br/><span class="hl-1"> </span><span class="hl-13">-6.176340103149414</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">-0.10025200247764587</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-13">2.179759979248047</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-12">&quot;floor_index&quot;</span><span class="hl-1">: </span><span class="hl-13">0</span><span class="hl-1">,</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ]</span><br/><span class="hl-1">}</span>
90
- </code><button type="button">Copy</button></pre>
91
-
92
- <p>Work 的数据说明</p>
1
+ <!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>如视 Five SDK</title><meta name="description" content="Documentation for 如视 Five SDK"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script><script async src="assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="index.html" class="title">如视 Five SDK</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>如视 Five SDK</h1></div><div class="tsd-panel tsd-typography"><h1 id="five-sdk-documentation" class="tsd-anchor-link">Five SDK Documentation<a href="#five-sdk-documentation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h1>
2
+ <p><a href="https://www.npmjs.com/package/@realsee/five"><img src="https://img.shields.io/npm/v/@realsee/five.svg?style=flat-square&amp;logo=npm&amp;label=npm%20install%20@realsee/five" alt="npm version"></a></p>
3
+ <ul>
4
+ <li><strong>Summary</strong>: Five SDK 的文档索引与阅读指南,旨在帮助开发者与 AI 助手快速定位所需信息。</li>
5
+ <li><strong>Audience</strong>: 开发者、AI 辅助编程工具。</li>
6
+ </ul>
7
+ <h2 id="context-for-ai-agents" class="tsd-anchor-link">Context for AI Agents<a href="#context-for-ai-agents" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
8
+ <p><strong>Five</strong> 是贝壳如视 (Realsee) 提供的三维空间渲染 SDK。</p>
9
+ <h3 id="1-documentation-maintenance-文档维护" class="tsd-anchor-link">1. Documentation Maintenance (文档维护)<a href="#1-documentation-maintenance-文档维护" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
10
+ <div class="tsd-alert tsd-alert-important"><div class="tsd-alert-title"><svg width="16" height="16" viewBox="0 0 16 16" aria-hidden="true"><use href="assets/icons.svg#icon-alertImportant"></use></svg><span>Important</span></div><p>
11
+ Before writing or updating any documentation, YOU MUST READ <a href="documents/ai-doc-guidelines.html">AI Documentation Guidelines</a>.
12
+ 在书写文档时,务必遵循 <a href="documents/ai-doc-guidelines.html">AI Documentation Guidelines</a> 中的规范。</p>
13
+ </div>
14
+ <h3 id="2-application-development-strategy-应用开发建议" class="tsd-anchor-link">2. Application Development Strategy (应用开发建议)<a href="#2-application-development-strategy-应用开发建议" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
15
+ <p>当协助用户编写代码或构建 Five 应用时,请遵循以下阅读与检索策略:</p>
93
16
  <ul>
94
- <li>
95
- <p><code>initial</code>: 初始化数据,是一个 <code>State</code> 数据。描述<strong>Work</strong>被加载初始状态的位姿,也叫做VR的初始视角</p>
17
+ <li><strong>Initialization (初始化)</strong>:
96
18
  <ul>
97
- <li>mode: 模态</li>
98
- <li>pano_index: 初始化点位</li>
99
- <li>longitude: 相机的水平角</li>
100
- <li>latitude: 相机的偏航角</li>
101
- <li>fov: 相机垂直方向的可视角度</li>
19
+ <li>阅读 <a href="documents/quick-start.html">Quick Start</a> 掌握最小化启动流程。</li>
20
+ <li>查阅 <a href="documents/features_parameter.html">Parameter</a> 获取 <code>new Five(config)</code> 的完整配置项(如 canvas 尺寸、资源路径、纹理压缩设置)。</li>
102
21
  </ul>
103
22
  </li>
104
- <li>
105
- <p><code>model</code>: 三维模型</p>
23
+ <li><strong>Data Handling (数据加载)</strong>:
106
24
  <ul>
107
- <li>file_url: 三维模型的资源地址,文件为 <code>.at3d</code> 为如视定制的模型格式</li>
108
- <li>material_textures: 三维模型的贴图资源地址</li>
25
+ <li>核心 VR 数据:深入理解 <a href="documents/features_work.html">Work</a> 结构,它是 Five 渲染的基础。</li>
26
+ <li>外部模型:参考 <a href="documents/features_load-external-model.html">Load External Model</a> 加载 GLTF/OBJ 等格式。</li>
27
+ <li>多场景/沙盘:参考 <a href="documents/features_multi-work.html">Multi-Work (Sandbox)</a> 处理复杂场景切换。</li>
109
28
  </ul>
110
29
  </li>
111
- <li>
112
- <p><code>panorama</code>: 全景彩色信息</p>
113
- <ul>
114
- <li>list:
30
+ <li><strong>Interaction &amp; Logic (交互逻辑)</strong>:
115
31
  <ul>
116
- <li>up / down / left / right / front / back: 全景彩色信息以 <a href="https://en.wikipedia.org/wiki/Cube_mapping">cubemap</a> 方式存储和使用。</li>
32
+ <li>事件监听:查阅 <a href="documents/features_event.html">Event</a> 处理用户点击 (Tap)、手势 (Gesture) 及状态变更 (StateChange)。</li>
33
+ <li>空间操作:使用 <a href="documents/features_raycast.html">Raycast</a> 实现物体拾取,使用 <a href="documents/features_screen-project.html">Screen &amp; Space Projection</a> 实现 3D 标签挂载。</li>
34
+ <li>动画控制:参考 <a href="documents/features_camera-animation.html">Camera Animation</a> 和 <a href="documents/features_move-pano-effect.html">Move Pano Effect</a> 实现平滑运镜。</li>
117
35
  </ul>
118
36
  </li>
37
+ <li><strong>State Management (状态管理)</strong>:
38
+ <ul>
39
+ <li>保存/恢复场景:<strong>必须</strong> 深刻理解 <a href="documents/features_state.html">State</a>。它是 Five 的核心快照机制,包含 Pose、Mode 和 PanoIndex。不要尝试手动管理零散的相机参数,应统一使用 State。</li>
119
40
  </ul>
120
41
  </li>
121
- <li>
122
- <p><code>observers</code>: 采集点信息</p>
42
+ <li><strong>Coding Standards (代码规范)</strong>:
123
43
  <ul>
124
- <li>visible_nodes: 采集点之间的可见性列表</li>
125
- <li>accessible_nodes: 采集点之间的连通性列表</li>
126
- <li>quaternion: 采集点与模型坐标的旋转偏移量</li>
127
- <li>standing_position: 采集点地面坐标</li>
128
- <li>position: 采集点坐标</li>
129
- <li>floor_index: 采集点楼层</li>
44
+ <li>优先使用 TypeScript 类型提示。</li>
45
+ <li>确保从 <code>@realsee/five</code> 导入核心类与类型 (e.g., <code>import { Five, Mode, Work, State } from &quot;@realsee/five&quot;</code>).</li>
130
46
  </ul>
131
47
  </li>
132
48
  </ul>
133
- <h3 id="什么是-five-state" class="tsd-anchor-link">什么是 Five State<a href="#什么是-five-state" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><strong>State</strong>是<strong>Five</strong>框架用于描述状态的数据结构。他包含了模态、位于的采集点位、相机的方向、相机可视角度的信息。
134
- 您可以使用<strong>State</strong>来操作<strong>Five</strong>或者获取<strong>Five</strong>当前的状态。</p>
135
- <pre><code class="ts"><span class="hl-6">interface</span><span class="hl-1"> </span><span class="hl-8">State</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;mode&quot;</span><span class="hl-1">: </span><span class="hl-8">Five</span><span class="hl-1">.</span><span class="hl-8">Mode</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;panoIndex&quot;</span><span class="hl-1">: </span><span class="hl-8">number</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;longitude&quot;</span><span class="hl-1">: </span><span class="hl-8">number</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;latitude&quot;</span><span class="hl-1">: </span><span class="hl-8">number</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;fov&quot;</span><span class="hl-1">: </span><span class="hl-8">number</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;distanace&quot;</span><span class="hl-1">: </span><span class="hl-8">number</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">&quot;offset&quot;</span><span class="hl-1">: </span><span class="hl-8">THREE</span><span class="hl-1">.</span><span class="hl-8">Vector3</span><span class="hl-1">,</span><br/><span class="hl-1">}</span>
136
- </code><button type="button">Copy</button></pre>
137
-
138
- <p><strong>State</strong>的数据描述</p>
49
+ <h3 id="3-general-retrieval-通用检索" class="tsd-anchor-link">3. General Retrieval (通用检索)<a href="#3-general-retrieval-通用检索" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
139
50
  <ul>
140
- <li>
141
- <p><code>mode</code>: 当前的模态
142
- Five 常用有 5 种模态,可以使用 <code>Five.Mode</code> 获得</p>
51
+ <li><strong>API Signatures</strong>: <a href="documents/api.html">API Reference</a> 是最权威的接口定义来源,包含方法的参数与返回值。</li>
52
+ <li><strong>Terminology</strong>: 遇到不确定的术语 (e.g., Pose vs State, Observer) 时,务必查阅 <a href="documents/glossary.html">Glossary</a>。</li>
53
+ <li><strong>Core Relationships</strong>: 理解 <a href="documents/features_five.html">Five</a> (渲染器) 与 <a href="documents/features_work.html">Work</a> (数据) 的分离设计。</li>
54
+ </ul>
55
+ <h2 id="documentation-map" class="tsd-anchor-link">Documentation Map<a href="#documentation-map" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
56
+ <h3 id="1-essential-reference-必读速查" class="tsd-anchor-link">1. Essential Reference (必读/速查)<a href="#1-essential-reference-必读速查" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
57
+ <p>最常用的入口文档。</p>
143
58
  <ul>
144
- <li>Panorama: 全景游走模态,该模态下视图将在采集点间游走,手势操作可以旋转/放大视角/切换采集点,适合查看采集的全景信息。</li>
145
- <li>Floorplan: 空间总览模态, 该模态下视图以模型为中心,手势操作可以旋转/放大模型/切换楼层,适合查看模型的整体效果。</li>
146
- <li>Topview: 户型图模态,该模态下视图以模型为中心,垂直俯视模型,手势操作可以平移/放大模型/切换楼层,适合查看模型平面结构。</li>
147
- <li>Model: 模型游走模态,该模态下视图将在模型中自由游走,手势操作可以旋转/放大视角/位移,适合查看模型的细节,做一些定位操作。</li>
148
- <li>Mapview: 地图模态, 该模态下视图将类似三维地图,手势操作可以旋转/放大视角/位移,适合查看模型的细节。适合展示小区,工厂等较大的模型。</li>
149
- <li>VRPanorama: VR 眼镜模态,该模态下可以使用 <a href="https://arvr.google.com/cardboard/">Cardboard 眼镜</a> 或者他的第三方衍生产品,实现 VR 虚拟显示效果。</li>
150
- <li>XRPanorama: XR 眼镜模态,该模态下可以使用头戴显示设备比如 Pico, Meta Quest 等,实现沉浸式体验。</li>
59
+ <li><a href="documents/intro.html">Intro</a>: Five SDK 简介与能力概览。</li>
60
+ <li><a href="documents/quick-start.html">Quick Start</a>: 快速集成指南。</li>
61
+ <li><a href="documents/api.html">API Reference</a>: <strong>核心 API 索引</strong> (Five 类, State, Events, Methods)。</li>
62
+ <li><a href="documents/glossary.html">Glossary</a>: <strong>术语表</strong> (Work, Observer, Pose, etc.)。</li>
151
63
  </ul>
152
- </li>
153
- <li>
154
- <p><code>panoIndex</code>: 采集点位</p>
155
- </li>
156
- <li>
157
- <p><code>longitude</code> / <code>latitude</code>: 相机的水平角 / 相机的偏航角(弧度),我们使用类似经纬度的方式描述相机位置。</p>
158
- </li>
159
- <li>
160
- <p><code>fov</code>: 相机垂直方向的可视角度 (角度)</p>
161
- </li>
162
- <li>
163
- <p><code>distance</code>: 相机距 offset 的距离</p>
164
- </li>
165
- <li>
166
- <p><code>offset</code>: 相机看向的目标</p>
167
- </li>
64
+ <h3 id="2-core-concepts-核心概念" class="tsd-anchor-link">2. Core Concepts (核心概念)<a href="#2-core-concepts-核心概念" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
65
+ <p>基础架构与生命周期管理。</p>
66
+ <ul>
67
+ <li><a href="documents/features_five.html">Five</a>: 核心类 <code>Five</code>,管理渲染循环与全局状态。</li>
68
+ <li><a href="documents/features_work.html">Work</a>: 数据载体,描述三维空间的数据结构 (VR 看房数据)。</li>
69
+ <li><a href="documents/features_pano-uv.html">Panorama UV</a>: 全景图 UV 与空间方向转换工具。</li>
70
+ <li><a href="documents/features_mode.html">Mode</a>: 五种核心浏览模式 (Panorama, Floorplan, Topview, Model, Map)。</li>
71
+ <li><a href="documents/features_state.html">State</a>: 状态管理 (Pose, Mode, PanoIndex),用于复原场景。</li>
72
+ <li><a href="documents/features_coordinate-system.html">Coordinate System</a>: 坐标系定义 (右手坐标系, Y轴向上)。</li>
73
+ </ul>
74
+ <h3 id="3-data-resource-数据与资源" class="tsd-anchor-link">3. Data &amp; Resource (数据与资源)<a href="#3-data-resource-数据与资源" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
75
+ <p>数据加载与资源管理配置。</p>
76
+ <ul>
77
+ <li><a href="documents/features_load-external-model.html">Load External Model</a>: 加载外部 3D 模型 (GLTF, OBJ 等)。</li>
78
+ <li><a href="documents/features_load-progress.html">Load Progress</a>: 监控模型与全景图的加载进度 (Loaded/Refined)。</li>
79
+ <li><a href="documents/features_multi-work.html">Multi-Work (Sandbox)</a>: 多 Work 加载与沙盘场景管理。</li>
80
+ <li><a href="documents/features_request-proxy.html">Request Proxy</a>: 请求拦截与代理 (CDN 替换、鉴权)。</li>
81
+ <li><a href="documents/features_image-options.html">Image Options</a>: 图片资源配置 (CDN, 格式, 尺寸)。</li>
168
82
  </ul>
169
- <h3 id="模型坐标的转换说明" class="tsd-anchor-link">模型坐标的转换说明<a href="#模型坐标的转换说明" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><blockquote>
170
- <p>目前涉及到的模型类型 at3d / domez / 3d-tile(b3dm, pnts, glb)</p>
171
- </blockquote>
172
- <h4 id="枚举说明" class="tsd-anchor-link">枚举说明<a href="#枚举说明" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><ul>
173
- <li><code>world</code>: five.scene 场景下的坐标。属于 view 下的绝对坐标。坐标的上方向是 Y 轴,单位米。</li>
174
- <li><code>local</code>: 单个模型的相对坐标。坐标的上方向是 Y 轴,单位米。 单个模型受到 <code>work.transform</code> 的影响会产生一定的位姿变化进行项目拼接(比如沙盘项目)。这种情况下,会与 <code>world</code> 有一定偏转。</li>
175
- <li><code>enu</code>: 模型描述坐标(East-North-Up)。坐标的上方向是 Z 轴,单位米。需要在算法模型输入/输出时使用这个坐标系。</li>
176
- <li><code>ecef</code>: 模型在地球的坐标系(Earth-centered, Earth-fixed)。坐标的上方向是 Z 轴并且固定是北,单位米。</li>
177
- <li><code>lla</code>: 模型在地球的经纬高度 (Latitude-Longitude-Altitude)。 经纬度单位是弧度,高度单位是米。</li>
178
- </ul>
179
- <h4 id="数据来源" class="tsd-anchor-link">数据来源<a href="#数据来源" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>转换:</p>
180
- <ul>
181
- <li><code>local</code> 与 <code>world</code> 的转换依赖 <code>work.transform</code></li>
182
- <li><code>local</code> 与 <code>enu</code> 的转换是固定的 yUp zUp</li>
183
- <li><code>enu</code> 与 <code>ecef</code> 依赖 <code>tileset.json</code> 中 <code>rootMeta.coordinate.pose_ecef_to_enu</code> / <code>rootMeta.coordinate.pose_enu_to_ecef</code>。 如果缺损,则使用 <code>a=6378137.0;invf=298.257223563</code> 的椭球近似计算</li>
184
- <li><code>lla</code> 通过 <code>a=6378137.0;invf=298.257223563</code> 的椭球近似计算</li>
185
- </ul>
186
- <p>椭球近似计算: (<code>enu</code> + <code>lla</code>) 与 <code>ecef</code> 可以相互推导。</p>
187
- <h4 id="转换关系" class="tsd-anchor-link">转换关系<a href="#转换关系" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><ul>
188
- <li>在 five 环境下,通过 viewLayer 对象,即 five.models[number].viewLayer[number].scene 转化。提供对应方法。
189
- <ul>
190
- <li><code>localToWorld(vector: THREE.Vector3): THREE.Vector3</code></li>
191
- <li><code>worldToLocal(vector: THREE.Vector3): THREE.Vector3</code></li>
192
- <li><code>localToEnu(vector: THREE.Vector3): THREE.Vector3</code></li>
193
- <li><code>enuToLocal(vector: THREE.Vector3): THREE.Vector3</code></li>
194
- <li><code>localToEcef(vector: THREE.Vector3): THREE.Vector3</code></li>
195
- <li><code>ecefToLocal(vector: THREE.Vector3): THREE.Vector3</code></li>
196
- <li><code>localToLla(vector: THREE.Vector3): THREE.Vector3</code></li>
197
- <li><code>llaToLocal(vector: THREE.Vector3): THREE.Vector3</code></li>
198
- <li><code>worldToEnu(vector: THREE.Vector3): THREE.Vector3</code></li>
199
- <li><code>enuToWorld(vector: THREE.Vector3): THREE.Vector3</code></li>
200
- <li><code>worldToEcef(vector: THREE.Vector3): THREE.Vector3</code></li>
201
- <li><code>ecefToWorld(vector: THREE.Vector3): THREE.Vector3</code></li>
202
- <li><code>worldToLla(vector: THREE.Vector3): THREE.Vector3</code></li>
203
- <li><code>llaToWorld(vector: THREE.Vector3): THREE.Vector3</code></li>
83
+ <h3 id="4-rendering-visuals-渲染与视觉" class="tsd-anchor-link">4. Rendering &amp; Visuals (渲染与视觉)<a href="#4-rendering-visuals-渲染与视觉" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
84
+ <p>画面表现与渲染管线配置。</p>
85
+ <ul>
86
+ <li><a href="documents/features_pano-tile.html">Pano Tile</a>: 全景瓦片渲染机制(高分辨率分片加载)。</li>
87
+ <li><a href="documents/features_model.html">Model</a>: 内置模型渲染 (Mesh/Geometry)。</li>
88
+ <li><a href="documents/features_postprocessing.html">Postprocessing</a>: 后处理效果 (Pass, EffectComposer)。</li>
89
+ <li><a href="documents/features_flowing-light-2d-pass.html">Flowing Light 2D Pass</a>: 屏幕空间流光特效(InstancedMesh 优化)。</li>
90
+ <li><a href="documents/features_flowing-light-3d-pass.html">Flowing Light 3D Pass</a>: 3D 世界坐标流光特效(InstancedMesh 优化)。</li>
91
+ <li><a href="documents/features_gaussian-blur-pass.html">Gaussian Blur Pass</a>: 高斯模糊特效。</li>
92
+ <li><a href="documents/features_material.html">Material</a>: 材质参数配置 (透明度、点云大小、顶点标记)。</li>
93
+ <li><a href="documents/features_get-screen-pixels.html">Get Screen Pixels</a>: 获取屏幕像素 (放大镜/截图)。</li>
94
+ <li><a href="documents/features_move-pano-effect.html">Move Pano Effect</a>: 全景点位切换的过渡效果。</li>
95
+ <li><a href="documents/features_clipper.html">Clipper</a>: 模型裁切功能 (房屋剖面)。</li>
96
+ <li><a href="documents/features_3dtile.html">3D Tile</a>: 大场景 3D Tile 渲染策略。</li>
97
+ </ul>
98
+ <h3 id="5-interaction-control-交互与控制" class="tsd-anchor-link">5. Interaction &amp; Control (交互与控制)<a href="#5-interaction-control-交互与控制" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
99
+ <p>用户输入与相机控制。</p>
100
+ <ul>
101
+ <li><a href="documents/features_event.html">Event</a>: 事件系统 (Tap, Gesture, StateChange)。</li>
102
+ <li><a href="documents/features_gesture.html">Gesture</a>: 手势交互详解。</li>
103
+ <li><a href="documents/features_screen-project.html">Screen &amp; Space Projection</a>: 屏幕坐标与空间坐标转换 (标签/射线)。</li>
104
+ <li><a href="documents/features_raycast.html">Raycast</a>: 射线检测 (点击拾取物体)。</li>
105
+ <li><a href="documents/features_camera-animation.html">Camera Animation</a>: 相机动画控制 API。</li>
106
+ </ul>
107
+ <h3 id="6-advanced-extensions-进阶与扩展" class="tsd-anchor-link">6. Advanced &amp; Extensions (进阶与扩展)<a href="#6-advanced-extensions-进阶与扩展" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
108
+ <p>复杂配置与功能扩展。</p>
109
+ <ul>
110
+ <li><a href="documents/features_plugin.html">Plugin</a>: 插件开发指南。</li>
111
+ <li><a href="documents/features_view-layer.html">ViewLayer</a>: 视图层。</li>
112
+ <li><a href="documents/features_parameter.html">Parameter</a>: Five 初始化详细参数配置。</li>
113
+ </ul>
114
+ <h3 id="7-meta-support-其他" class="tsd-anchor-link">7. Meta &amp; Support (其他)<a href="#7-meta-support-其他" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
115
+ <ul>
116
+ <li><a href="documents/support.html">Support</a>: 浏览器兼容性。</li>
117
+ <li><a href="documents/ai-doc-guidelines.html">AI Documentation Guidelines</a>: AI 文档编写与维护规范 (必读)。</li>
118
+ <li>Release Notes: 版本更新记录。
119
+ <ul>
120
+ <li><a href="documents/release_notes_6.8.html">6.8</a></li>
121
+ <li><a href="documents/release_notes_6.7.html">6.7</a></li>
122
+ <li><a href="documents/release_notes_6.6.html">6.6</a></li>
204
123
  </ul>
205
124
  </li>
206
125
  </ul>
207
- <p>这些函数均为直接修改传入 <code>vector</code>。 如果要保持原先的数据,请实现 <code>vector.clone()</code>。</p>
208
- <h4 id="位置拾取" class="tsd-anchor-link">位置拾取<a href="#位置拾取" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>通过 <code>intersectRaycaster</code> 方法得到的 <code>Intersection</code> 在 <code>world</code> 坐标系下, 并返回对应的 <code>model</code> 与 <code>viewLayer</code>。</p>
209
- <h4 id="与算法数据对接" class="tsd-anchor-link">与算法数据对接<a href="#与算法数据对接" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>目前约定为,算法的模型输入输出均使用 <code>enu</code> 坐标系。</p>
210
- </div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#fivejs"><span>Five.js</span></a><ul><li><a href="#什么是five"><span>什么是<wbr/>Five</span></a></li><li><a href="#安装five"><span>安装<wbr/>Five</span></a></li><li><a href="#浏览器兼容性"><span>浏览器兼容性</span></a></li><li><a href="#快速上手"><span>快速上手</span></a></li><li><a href="#如何使用five"><span>如何使用<wbr/>Five</span></a></li><li><a href="#在react框架中使用five"><span>在<wbr/>React框架中使用<wbr/>Five</span></a></li><li><a href="#five-api文档"><span>Five <wbr/>API文档</span></a></li><li><a href="#相关名词解释"><span>相关名词解释</span></a></li><li><ul><li><a href="#什么是work"><span>什么是<wbr/>Work</span></a></li><li><a href="#什么是-five-state"><span>什么是 <wbr/>Five <wbr/>State</span></a></li><li><a href="#模型坐标的转换说明"><span>模型坐标的转换说明</span></a></li><li><ul><li><a href="#枚举说明"><span>枚举说明</span></a></li><li><a href="#数据来源"><span>数据来源</span></a></li><li><a href="#转换关系"><span>转换关系</span></a></li><li><a href="#位置拾取"><span>位置拾取</span></a></li><li><a href="#与算法数据对接"><span>与算法数据对接</span></a></li></ul></li></ul></li></ul></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="modules.html">如视 Five SDK</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
126
+ <h2 id="terminology-summary" class="tsd-anchor-link">Terminology Summary<a href="#terminology-summary" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
127
+ <ul>
128
+ <li><strong>Work</strong>: 包含全景图、模型、户型数据的 JSON 对象。</li>
129
+ <li><strong>Observer</strong>: 观察点,通常对应一个全景拍摄点位。</li>
130
+ <li><strong>PanoIndex</strong>: 全景点位的索引下标。</li>
131
+ <li><strong>Pose</strong>: 相机位姿 (Longitude, Latitude, Fov)。</li>
132
+ <li><strong>Mode</strong>: 浏览模式 (Panorama, Model, etc.)。</li>
133
+ </ul>
134
+ <hr>
135
+ <pre><code class="yaml"><span class="hl-0">tags</span><span class="hl-1">: [</span><span class="hl-2">index</span><span class="hl-1">, </span><span class="hl-2">readme</span><span class="hl-1">, </span><span class="hl-2">guide</span><span class="hl-1">, </span><span class="hl-2">map</span><span class="hl-1">]</span>
136
+ </code><button type="button">Copy</button></pre>
137
+
138
+ </div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#five-sdk-documentation"><span>Five <wbr/>SDK <wbr/>Documentation</span></a><ul><li><a href="#context-for-ai-agents"><span>Context for <wbr/>AI <wbr/>Agents</span></a></li><li><ul><li><a href="#1-documentation-maintenance-文档维护"><span>1. <wbr/>Documentation <wbr/>Maintenance (文档维护)</span></a></li><li><a href="#2-application-development-strategy-应用开发建议"><span>2. <wbr/>Application <wbr/>Development <wbr/>Strategy (应用开发建议)</span></a></li><li><a href="#3-general-retrieval-通用检索"><span>3. <wbr/>General <wbr/>Retrieval (通用检索)</span></a></li></ul></li><li><a href="#documentation-map"><span>Documentation <wbr/>Map</span></a></li><li><ul><li><a href="#1-essential-reference-必读速查"><span>1. <wbr/>Essential <wbr/>Reference (必读/速查)</span></a></li><li><a href="#2-core-concepts-核心概念"><span>2. <wbr/>Core <wbr/>Concepts (核心概念)</span></a></li><li><a href="#3-data-resource-数据与资源"><span>3. <wbr/>Data &amp; <wbr/>Resource (数据与资源)</span></a></li><li><a href="#4-rendering-visuals-渲染与视觉"><span>4. <wbr/>Rendering &amp; <wbr/>Visuals (渲染与视觉)</span></a></li><li><a href="#5-interaction-control-交互与控制"><span>5. <wbr/>Interaction &amp; <wbr/>Control (交互与控制)</span></a></li><li><a href="#6-advanced-extensions-进阶与扩展"><span>6. <wbr/>Advanced &amp; <wbr/>Extensions (进阶与扩展)</span></a></li><li><a href="#7-meta-support-其他"><span>7. <wbr/>Meta &amp; <wbr/>Support (其他)</span></a></li></ul></li><li><a href="#terminology-summary"><span>Terminology <wbr/>Summary</span></a></li></ul></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="modules.html">如视 Five SDK</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>