@realsee/five 6.8.0-alpha.9 → 6.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS_READ_ME.md +6 -1
- package/AI_CONTEXT.md +6 -1
- package/README.md +10 -3
- package/ai_guides/README.md +29 -0
- package/ai_guides/api.md +92 -21
- package/ai_guides/features/3dtile.md +1 -1
- package/ai_guides/features/camera-animation.md +18 -1
- package/ai_guides/features/clipper.md +2 -2
- package/ai_guides/features/coordinate-system.md +20 -2
- package/ai_guides/features/event.md +106 -10
- package/ai_guides/features/five.md +17 -17
- package/ai_guides/features/flowing-light-2d-pass.md +11 -7
- package/ai_guides/features/flowing-light-3d-pass.md +12 -7
- package/ai_guides/features/gaussian-blur-pass.md +1 -1
- package/ai_guides/features/gesture.md +2 -1
- package/ai_guides/features/get-screen-pixels.md +2 -2
- package/ai_guides/features/image-options.md +2 -2
- package/ai_guides/features/load-external-model.md +6 -2
- package/ai_guides/features/load-progress.md +1 -1
- package/ai_guides/features/material.md +20 -12
- package/ai_guides/features/mode.md +1 -1
- package/ai_guides/features/model.md +1 -1
- package/ai_guides/features/move-pano-effect.md +1 -1
- package/ai_guides/features/multi-work.md +1 -1
- package/ai_guides/features/pano-filter.md +149 -0
- package/ai_guides/features/pano-tile.md +1 -1
- package/ai_guides/features/pano-uv.md +1 -1
- package/ai_guides/features/parameter.md +26 -2
- package/ai_guides/features/plugin.md +1 -1
- package/ai_guides/features/postprocessing.md +1 -1
- package/ai_guides/features/raycast.md +5 -2
- package/ai_guides/features/request-proxy.md +1 -1
- package/ai_guides/features/screen-project.md +2 -1
- package/ai_guides/features/state.md +23 -3
- package/ai_guides/features/view-layer.md +1 -1
- package/ai_guides/features/work.md +1 -1
- package/ai_guides/glossary.md +4 -4
- package/ai_guides/release_notes/6.8.md +190 -58
- package/ai_guides/template.md +11 -0
- package/docs/00_FOR_AI_AGENTS.md +3 -2
- package/docs/README.md +3 -2
- package/docs/assets/hierarchy.js +1 -1
- package/docs/assets/main.js +1 -1
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/five.AdaptiveLuminancePass.html +7 -6
- package/docs/classes/five.AnimationFrameLoop.html +1 -1
- package/docs/classes/five.BoundingMesh.html +2 -2
- package/docs/classes/five.Camera.html +3 -3
- package/docs/classes/five.EyeDomeLightingPass.html +1 -1
- package/docs/classes/five.Five.html +77 -76
- package/docs/classes/five.FivePass.html +1 -1
- package/docs/classes/five.Histogram.html +19 -0
- package/docs/classes/five.InternalWebGLRenderer.html +1 -1
- package/docs/classes/five.Model.html +8 -8
- package/docs/classes/five.ModelScene.html +1 -1
- package/docs/classes/five.NetworkSubscribe.html +5 -5
- package/docs/classes/five.PBMContainer.html +1 -1
- package/docs/classes/five.PBMCustomShader.html +42 -3
- package/docs/classes/five.PBMGSObject.html +5 -3
- package/docs/classes/five.PBMGroup.html +1 -1
- package/docs/classes/five.PBMMesh.html +1 -1
- package/docs/classes/five.PBMMeshMaterial.html +7 -7
- package/docs/classes/five.PBMPanoFilter.html +61 -0
- package/docs/classes/five.PBMPointCloud.html +1 -1
- package/docs/classes/five.PBMPointCloudMaterial.html +5 -6
- package/docs/classes/five.PBMSkinnedMesh.html +1 -1
- package/docs/classes/five.PBMUpdateable.html +41 -0
- package/docs/classes/five.PanoCircleMesh.html +1 -1
- package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
- package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
- package/docs/classes/five.Parameter.html +57 -55
- package/docs/classes/five.Scene.html +1 -1
- package/docs/classes/five.Subscribe.html +5 -5
- package/docs/classes/five.Tile.html +1 -1
- package/docs/classes/five.Tile3D.html +24 -24
- package/docs/classes/five.TileNode.html +1 -1
- package/docs/classes/five.Tileset.html +3 -2
- package/docs/classes/five.TrajectoryNode.html +1 -1
- package/docs/classes/five.Work.html +16 -16
- package/docs/classes/five.WorkResolvedObserver.html +22 -22
- package/docs/classes/gltf-loader.DDSLoader.html +1 -1
- package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
- package/docs/classes/gltf-loader.GLTFLoader.html +2 -2
- package/docs/classes/gltf-loader.GLTFObject.html +1 -1
- package/docs/classes/gltf-loader.GLTFParser.html +1 -1
- package/docs/classes/gltf-loader.THREEGLTFLoader.html +2 -2
- package/docs/classes/line.Line.html +1 -1
- package/docs/classes/line.LineGeometry.html +1 -1
- package/docs/classes/line.LineMaterial.html +1 -1
- package/docs/classes/line.LineSegmentsGeometry.html +1 -1
- package/docs/classes/line.THREE_Line2.html +1 -1
- package/docs/classes/line.THREE_LineSegments2.html +1 -1
- package/docs/classes/plugins.BasePlugin.Controller.html +1 -1
- package/docs/classes/plugins.CSS3DObject.html +9 -0
- package/docs/classes/plugins.CSS3DRenderer.html +4 -2
- package/docs/classes/plugins.CSS3DSprite.html +11 -0
- package/docs/classes/plugins.Object3DHelperController.html +43 -0
- package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
- package/docs/classes/sticker.Sticker.html +1 -1
- package/docs/classes/vfx.Airflow.html +1 -1
- package/docs/classes/vfx.Flame.html +1 -1
- package/docs/classes/vfx.Particle.html +6 -6
- package/docs/classes/vfx.ParticleGPU.html +3 -3
- package/docs/classes/vfx.SpotLight.html +1 -1
- package/docs/documents/README.html +122 -1
- package/docs/documents/api.html +163 -35
- package/docs/documents/features_3dtile.html +1 -1
- package/docs/documents/features_camera-animation.html +18 -2
- package/docs/documents/features_clipper.html +2 -2
- package/docs/documents/features_coordinate-system.html +52 -3
- package/docs/documents/features_event.html +44 -8
- package/docs/documents/features_five.html +17 -17
- package/docs/documents/features_flowing-light-2d-pass.html +19 -116
- package/docs/documents/features_flowing-light-3d-pass.html +22 -124
- package/docs/documents/features_gaussian-blur-pass.html +6 -6
- package/docs/documents/features_gesture.html +2 -1
- package/docs/documents/features_get-screen-pixels.html +2 -2
- package/docs/documents/features_image-options.html +2 -2
- package/docs/documents/features_load-external-model.html +6 -2
- package/docs/documents/features_load-progress.html +1 -1
- package/docs/documents/features_material.html +11 -4
- package/docs/documents/features_mode.html +1 -1
- package/docs/documents/features_model.html +1 -1
- package/docs/documents/features_move-pano-effect.html +1 -1
- package/docs/documents/features_multi-work.html +1 -1
- package/docs/documents/features_pano-filter.html +123 -0
- package/docs/documents/features_pano-tile.html +1 -1
- package/docs/documents/features_pano-uv.html +1 -1
- package/docs/documents/features_parameter.html +11 -3
- package/docs/documents/features_plugin.html +1 -1
- package/docs/documents/features_postprocessing.html +1 -1
- package/docs/documents/features_raycast.html +5 -2
- package/docs/documents/features_request-proxy.html +1 -1
- package/docs/documents/features_screen-project.html +2 -1
- package/docs/documents/features_state.html +9 -2
- package/docs/documents/features_view-layer.html +1 -1
- package/docs/documents/features_work.html +1 -1
- package/docs/documents/glossary.html +5 -5
- package/docs/documents/release_notes_6.8.html +164 -64
- package/docs/documents/template.html +9 -0
- package/docs/functions/five.createDebugBoundingMesh.html +1 -1
- package/docs/functions/five.parseWork.html +1 -1
- package/docs/functions/plugins.CSS3DPlugin.html +1 -0
- package/docs/functions/plugins.GaussianSplattingEntranceAnimationPlugin.html +1 -0
- package/docs/functions/plugins.Object3DHelperPlugin.html +1 -0
- package/docs/functions/react.useFiveCurrentObserver.html +2 -2
- package/docs/functions/react.useFiveFloor.html +2 -2
- package/docs/functions/react.useFiveProject2d.html +2 -2
- package/docs/functions/vue.useFiveCurrentObserver.html +2 -2
- package/docs/functions/vue.useFiveFloor.html +2 -2
- package/docs/functions/vue.useFiveWorks.html +2 -2
- package/docs/hierarchy.html +1 -1
- package/docs/index.html +122 -1
- package/docs/interfaces/five.AddableObject.html +1 -1
- package/docs/interfaces/five.AjaxOptions.html +1 -1
- package/docs/interfaces/five.BaseEvent.html +7 -2
- package/docs/interfaces/five.BaseExtendableEvent.html +11 -0
- package/docs/interfaces/five.EventCallback.html +58 -54
- package/docs/interfaces/five.FiveInitArgs.html +2 -2
- package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +9 -9
- package/docs/interfaces/five.GestureEvent.html +21 -2
- package/docs/interfaces/five.GesturePointer.html +20 -0
- package/docs/interfaces/five.ImageOptions.html +1 -1
- package/docs/interfaces/five.IntersectEvent.html +10 -2
- package/docs/interfaces/five.IntersectMesh.html +1 -1
- package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
- package/docs/interfaces/five.Intersection.html +1 -1
- package/docs/interfaces/five.LooseWorkObserver.html +2 -2
- package/docs/interfaces/five.LooseWorkPanorama.html +2 -2
- package/docs/interfaces/five.LooseWorkWithExtrinsics.html +6 -6
- package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +10 -10
- package/docs/interfaces/five.ModeChangeEvent.html +9 -2
- package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.ModelEvent.html +7 -2
- package/docs/interfaces/five.ModelSceneEvent.html +7 -2
- package/docs/interfaces/five.ModelTileEvent.html +7 -2
- package/docs/interfaces/five.MovePanoOptions.html +8 -8
- package/docs/interfaces/five.NetworkAbortError.html +1 -1
- package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
- package/docs/interfaces/five.NetworkOptions.html +1 -1
- package/docs/interfaces/five.NetworkProxyError.html +1 -1
- package/docs/interfaces/five.NetworkResourceEvent.html +7 -2
- package/docs/interfaces/five.NetworkResponseError.html +1 -1
- package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
- package/docs/interfaces/five.ObjectEvent.html +7 -2
- package/docs/interfaces/five.PBMClipperParameter.html +2 -2
- package/docs/interfaces/five.PBMCustomShaderInitArgs.html +2 -2
- package/docs/interfaces/five.PBMCustomShaderSlots.html +2 -2
- package/docs/interfaces/five.PBMMaterial.html +1 -1
- package/docs/interfaces/five.PBMMeshMaterialParameters.html +5 -3
- package/docs/interfaces/five.PBMPanoDepth.html +5 -5
- package/docs/interfaces/five.PBMPanoFilterValue.html +6 -0
- package/docs/interfaces/five.PBMPanoPicture.html +8 -6
- package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +2 -3
- package/docs/interfaces/five.PBMRefinedScreen.html +2 -2
- package/docs/interfaces/five.PanoCircleMeshInterface.html +2 -2
- package/docs/interfaces/five.PanoEvent.html +15 -2
- package/docs/interfaces/five.PanoPrepareEvent.html +15 -0
- package/docs/interfaces/five.PanoTextureEvent.html +11 -2
- package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.ParameterMaterialValue.html +40 -38
- package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
- package/docs/interfaces/five.ParameterValue.html +54 -52
- package/docs/interfaces/five.Pose.html +1 -1
- package/docs/interfaces/five.RenderEvent.html +7 -2
- package/docs/interfaces/five.ResolvedParameterValue.html +55 -54
- package/docs/interfaces/five.RgbaData.html +7 -0
- package/docs/interfaces/five.SplatData.html +2 -2
- package/docs/interfaces/five.State.html +1 -1
- package/docs/interfaces/five.StateEvent.html +9 -2
- package/docs/interfaces/five.TextureOptions.html +1 -1
- package/docs/interfaces/five.Tile3DOptions.html +2 -2
- package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
- package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.ViewLayer.html +24 -24
- package/docs/interfaces/five.WorkCubeImage.html +3 -2
- package/docs/interfaces/five.WorkImage.html +6 -5
- package/docs/interfaces/five.WorkInitial.html +8 -8
- package/docs/interfaces/five.WorkModel.html +8 -8
- package/docs/interfaces/five.WorkModelLayer.html +6 -6
- package/docs/interfaces/five.WorkObserver.html +29 -29
- package/docs/interfaces/five.WorkObserverJson.html +2 -2
- package/docs/interfaces/five.WorkObserverProto.html +26 -0
- package/docs/interfaces/five.WorkPanoramaJson.html +2 -2
- package/docs/interfaces/five.WorkTile.html +6 -5
- package/docs/interfaces/five.WorkVideo.html +4 -4
- package/docs/interfaces/five.WorksEvent.html +7 -2
- package/docs/interfaces/five.XRControllerEvent.html +10 -2
- package/docs/interfaces/five.XRControllerState.html +8 -0
- package/docs/interfaces/five.XRGestureEvent.html +13 -2
- package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.XRSessionEvent.html +9 -2
- package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
- package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
- package/docs/interfaces/plugins.BasePlugin.State.html +1 -1
- package/docs/interfaces/plugins.CSS3DPluginController.html +52 -0
- package/docs/interfaces/plugins.CSS3DPluginType.Config.html +2 -0
- package/docs/interfaces/plugins.CSS3DPluginType.CreateCSS3DObjectType.html +10 -0
- package/docs/interfaces/plugins.CSS3DPluginType.EventMap.html +10 -0
- package/docs/interfaces/plugins.CSS3DPluginType.Params.html +4 -0
- package/docs/interfaces/plugins.CSS3DPluginType.State.html +8 -0
- package/docs/interfaces/plugins.CSS3DRendererParameters.html +2 -0
- package/docs/interfaces/plugins.DynamicPathLinePluginController.html +3 -3
- package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
- package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationController.html +44 -0
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.BoundingAABB2D.html +3 -0
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.Config.html +8 -0
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.EventMap.html +10 -0
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.Keyframe.html +3 -0
- package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.State.html +8 -0
- package/docs/interfaces/plugins.ItemMaskController.html +1 -1
- package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
- package/docs/interfaces/plugins.ItemMaskPluginType.State.html +2 -2
- package/docs/interfaces/plugins.Object3DHelperPluginType.BaseController.html +30 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.BaseHelper.html +22 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.BoundingBoxController.html +30 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.HelperOffset.html +4 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.MoveController.html +36 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.MoveHelperAbstract.html +32 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelper.html +12 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelperPluginState.html +4 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelperState.html +4 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.ObjectHelperControllers.html +4 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.RotateController.html +36 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.RotateHelperAbstract.html +28 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Scissor.html +5 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Vector2Position.html +3 -0
- package/docs/interfaces/plugins.Object3DHelperPluginType.Vector3Position.html +4 -0
- package/docs/interfaces/plugins.OrientationPluginController.html +6 -6
- package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
- package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
- package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
- package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
- package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
- package/docs/interfaces/plugins.PlayingState.html +2 -2
- package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
- package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
- package/docs/interfaces/plugins.TrajectoryController.html +8 -8
- package/docs/interfaces/react.FiveInjectionTypes.html +21 -21
- package/docs/interfaces/sticker.IntersectionLike.html +2 -2
- package/docs/interfaces/vfx.ParticleArgs.html +4 -4
- package/docs/interfaces/vue.FiveActionVueCallbacks.html +3 -3
- package/docs/modules/five.html +1 -1
- package/docs/modules/plugins.CSS3DPluginType.html +1 -0
- package/docs/modules/plugins.GaussianSplattingEntranceAnimationPluginType.html +1 -0
- package/docs/modules/plugins.Object3DHelperPluginType.html +1 -0
- package/docs/modules/plugins.html +1 -1
- package/docs/modules.html +1 -1
- package/docs/types/five.ControllerEventTypes.html +30 -26
- package/docs/types/five.EasingFunction.html +1 -0
- package/docs/types/five.EventTypes.html +26 -26
- package/docs/types/five.LegacyEventType.html +7 -7
- package/docs/types/five.PBMAlphaMode.html +1 -1
- package/docs/types/five.PBMColorStyle.html +1 -1
- package/docs/types/five.PBMFloorStyle.html +1 -1
- package/docs/types/five.PBMMeshShaderType.html +1 -1
- package/docs/types/five.PBMPointBack.html +1 -1
- package/docs/types/five.PBMPointCloudShaderType.html +1 -1
- package/docs/types/five.PBMPointShape.html +1 -1
- package/docs/types/five.PBMPointSize.html +1 -1
- package/docs/types/five.PBMTransition.html +1 -1
- package/docs/types/five.ParseOptions.html +6 -6
- package/docs/types/five.Works.html +1 -1
- package/docs/types/plugins.BasePlugin.EventMap.html +1 -1
- package/docs/types/plugins.CSS3DPluginType.PluginData.html +1 -0
- package/docs/types/plugins.CSS3DPluginType.ServerData.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.AddObject3DHelperConfig.html +13 -0
- package/docs/types/plugins.Object3DHelperPluginType.Circle.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.Color.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.Direction.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.Direction4.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.HelperConfig.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.HelperEventMap.html +17 -0
- package/docs/types/plugins.Object3DHelperPluginType.InternalHelperEventMap.html +8 -0
- package/docs/types/plugins.Object3DHelperPluginType.Object3DHelperEventMap.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.Object3DHelperPluginEventMap.html +7 -0
- package/docs/types/plugins.Object3DHelperPluginType.PositionFrom.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.ScaleCallback.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.ScalePosition.html +4 -0
- package/docs/types/plugins.Object3DHelperPluginType.UseFaceNormalInterface.html +4 -0
- package/docs/types/plugins.Object3DHelperPluginType.Vector2WithArray.html +1 -0
- package/docs/types/plugins.Object3DHelperPluginType.Vector3WithArray.html +1 -0
- package/docs/variables/five.PROXY_CONTROLLER_EVENT_NAMES.html +1 -1
- package/five/application/events.d.ts +1 -1
- package/five/application/five.d.ts +6 -5
- package/five/bvh/bvhObject.d.ts +2 -2
- package/five/controllers/base.d.ts +1 -0
- package/five/controllers/events.d.ts +5 -1
- package/five/controllers/mapview.d.ts +1 -0
- package/five/controllers/model.d.ts +2 -2
- package/five/controllers/panorama.d.ts +3 -2
- package/five/controllers/xrPanorama.d.ts +1 -1
- package/five/core/camera.d.ts +1 -1
- package/five/gaussian-splatting/util/renderData.d.ts +66 -0
- package/five/index.d.ts +4 -1
- package/five/index.js +272 -782
- package/five/index.mjs +26894 -32056
- package/five/meshes/boundingMesh.d.ts +1 -0
- package/five/model/index.d.ts +2 -2
- package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +1 -1
- package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting.d.ts +26 -0
- package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +7 -5
- package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz_2.d.ts +13 -0
- package/five/model/loaders/glTF-helpers/extensions/base.d.ts +2 -1
- package/five/model/loaders/glTF-helpers/index.d.ts +4 -0
- package/five/model/loaders/glTF-helpers/parser.d.ts +2 -1
- package/five/model/loaders/spz.d.ts +2 -2
- package/five/model/materials/pbmMaterial.d.ts +54 -4
- package/five/model/materials/pbmMeshMaterial.d.ts +5 -3
- package/five/model/materials/pbmPointCloudMaterial.d.ts +0 -2
- package/five/model/objects/{pbmGSObject.d.ts → pbmGaussianSplattingObject.d.ts} +4 -1
- package/five/model/objects/pbmGaussianSplattingRenderMesh.d.ts +59 -0
- package/five/model/objects/pbmGaussianSplattingTestMesh.d.ts +7 -0
- package/five/model/parameter.d.ts +11 -6
- package/five/model/tile3d/index.d.ts +5 -3
- package/five/model/tile3d/tile-node.d.ts +2 -2
- package/five/model/tile3d/tileset.d.ts +1 -0
- package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +9 -7
- package/five/renderer/tools/render-cube-to-equirectangular.d.ts +7 -0
- package/five/renderer/tools/render-full-screen.d.ts +1 -1
- package/five/texture/histogram.d.ts +54 -0
- package/five/texture/loader.d.ts +1 -1
- package/five/texture/textureData.d.ts +11 -0
- package/five/thirdparty/hammer.d.ts +371 -255
- package/five/thirdparty/jsrsasign.d.ts +5 -20
- package/five/types/movePanoOptions.d.ts +4 -3
- package/five/utils/error.d.ts +1 -0
- package/five/utils/event.d.ts +98 -37
- package/five/utils/imageURL.d.ts +1 -1
- package/five/utils/memoryUsage.d.ts +2 -2
- package/five/utils/subscribe.d.ts +2 -2
- package/five/webxr/motionHelper.d.ts +1 -1
- package/five/work/index.d.ts +1 -0
- package/five/work/looseWorkType.d.ts +2 -2
- package/five/work/work.d.ts +5 -35
- package/five/work/workJsonType.d.ts +2 -2
- package/five/work/workObserverProto.d.ts +39 -0
- package/gltf-loader/index.js +9 -9
- package/gltf-loader/index.mjs +1351 -1451
- package/line/index.js +4 -4
- package/line/index.mjs +334 -513
- package/llms.txt +37 -1
- package/package.json +4 -4
- package/plugins/CSS3DPlugin/Controller.d.ts +64 -0
- package/plugins/CSS3DPlugin/index.d.ts +5 -0
- package/plugins/CSS3DPlugin/typing.d.ts +32 -0
- package/plugins/GaussianSplattingEntranceAnimationPlugin/Controller.d.ts +30 -0
- package/plugins/GaussianSplattingEntranceAnimationPlugin/index.d.ts +5 -0
- package/plugins/GaussianSplattingEntranceAnimationPlugin/typing.d.ts +28 -0
- package/plugins/Object3DHelperPlugin/Controller.d.ts +99 -0
- package/plugins/Object3DHelperPlugin/Controllers/BaseController.d.ts +142 -0
- package/plugins/Object3DHelperPlugin/Controllers/BoundingBoxController.d.ts +16 -0
- package/plugins/Object3DHelperPlugin/Controllers/MoveController.d.ts +66 -0
- package/plugins/Object3DHelperPlugin/Controllers/RotateController.d.ts +61 -0
- package/plugins/Object3DHelperPlugin/FiveControllerWrapper.d.ts +17 -0
- package/plugins/Object3DHelperPlugin/Helper/BaseHelper.d.ts +97 -0
- package/plugins/Object3DHelperPlugin/Helper/BoundingBoxHelper.d.ts +16 -0
- package/plugins/Object3DHelperPlugin/Helper/MoveHelper.d.ts +37 -0
- package/plugins/Object3DHelperPlugin/Helper/RotateHelper.d.ts +93 -0
- package/plugins/Object3DHelperPlugin/constant.d.ts +27 -0
- package/plugins/Object3DHelperPlugin/index.d.ts +6 -0
- package/plugins/Object3DHelperPlugin/typing.d.ts +143 -0
- package/plugins/Object3DHelperPlugin/utils/ArrowGroup.d.ts +22 -0
- package/plugins/Object3DHelperPlugin/utils/CenterHandle.d.ts +23 -0
- package/plugins/Object3DHelperPlugin/utils/PlaneHandle.d.ts +19 -0
- package/plugins/Object3DHelperPlugin/utils/calculateScaleByCamera.d.ts +5 -0
- package/plugins/Object3DHelperPlugin/utils/cameraHooks.d.ts +2 -0
- package/plugins/Object3DHelperPlugin/utils/direction.d.ts +14 -0
- package/plugins/Object3DHelperPlugin/utils/getMouseRaycaster.d.ts +5 -0
- package/plugins/Object3DHelperPlugin/utils/getOrthographicCameraDirection.d.ts +8 -0
- package/plugins/Object3DHelperPlugin/utils/setObjectQuaternion.d.ts +8 -0
- package/plugins/Object3DHelperPlugin/utils/solidGuide.d.ts +27 -0
- package/plugins/Object3DHelperPlugin/utils/tipsDom.d.ts +8 -0
- package/plugins/TrajectoryPlugin/Controller.d.ts +1 -1
- package/plugins/index.d.ts +4 -1
- package/plugins/index.js +35 -21
- package/plugins/index.mjs +5418 -4238
- package/plugins/thirdParty/CSS3DRenderer.d.ts +16 -3
- package/plugins/thirdParty/domevents.d.ts +36 -0
- package/plugins/utils/uuid.d.ts +1 -4
- package/react/context.d.ts +3 -2
- package/react/createProvider.d.ts +4 -4
- package/react/createStore.d.ts +3 -3
- package/react/hooks/useFiveProject2d.d.ts +1 -1
- package/react/index.js +3 -3
- package/react/index.mjs +572 -783
- package/react/rendererPool.d.ts +2 -2
- package/shader-lib/index.js +13 -14
- package/shader-lib/index.mjs +424 -824
- package/sticker/index.js +3 -3
- package/sticker/index.mjs +102 -142
- package/umd/five-gltf-loader.js +9 -9
- package/umd/five-line.js +4 -4
- package/umd/five-plugins.js +35 -21
- package/umd/five-react.js +3 -3
- package/umd/five-shader-lib.js +13 -14
- package/umd/five-sticker.js +3 -3
- package/umd/five-vfx.js +21 -21
- package/umd/five-vue.js +3 -3
- package/umd/five.js +267 -777
- package/vfx/index.js +21 -21
- package/vfx/index.mjs +454 -910
- package/vue/index.js +3 -3
- package/vue/index.mjs +309 -301
- package/vue/rendererPool.d.ts +5 -5
- package/work-downloader/index.js +3 -3
- package/work-downloader/index.mjs +339 -556
- package/five/gs/util/renderData.d.ts +0 -32
- package/five/model/objects/pbmGSRenderMesh.d.ts +0 -29
- package/five/work/workObserverUtils.d.ts +0 -36
- /package/five/assets/{realsee-pmg-data-url.d.ts → realsee-png-data-url.d.ts} +0 -0
- /package/five/{gs → gaussian-splatting}/wasm/data.d.ts +0 -0
- /package/five/{gs → gaussian-splatting}/wasm/sort.d.ts +0 -0
- /package/five/{gs → gaussian-splatting}/worker/dataWorker.d.ts +0 -0
- /package/five/{gs → gaussian-splatting}/worker/sortWorker.d.ts +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { Group, Mesh, Object3D } from 'three';
|
|
3
|
+
import { Vector3 } from 'three';
|
|
4
|
+
import type { Direction, PositionFrom } from '../typing';
|
|
5
|
+
import type { tipsDom } from '../utils/tipsDom';
|
|
6
|
+
export interface BaseHelperConfig {
|
|
7
|
+
onRender?: () => any;
|
|
8
|
+
/**
|
|
9
|
+
* @description: helper 初始位置来源
|
|
10
|
+
* @default 'objectPosition'
|
|
11
|
+
*/
|
|
12
|
+
positionFrom?: PositionFrom;
|
|
13
|
+
}
|
|
14
|
+
export declare abstract class BaseHelper<OriginObject3D extends Object3D = Object3D> extends THREE.Object3D {
|
|
15
|
+
protected originObject3D: OriginObject3D;
|
|
16
|
+
protected onRender: () => any;
|
|
17
|
+
private positionFrom;
|
|
18
|
+
removeChildren(): this;
|
|
19
|
+
add(...objects: Object3D[]): this;
|
|
20
|
+
addIfNotExists(...objects: Object3D[]): this;
|
|
21
|
+
remove(...objects: Object3D[]): this;
|
|
22
|
+
removeFromParent(): this;
|
|
23
|
+
get helperObject(): Object3D;
|
|
24
|
+
constructor(originObject3D: OriginObject3D, config?: BaseHelperConfig);
|
|
25
|
+
render(): void;
|
|
26
|
+
enable(): void;
|
|
27
|
+
disable(): void;
|
|
28
|
+
show(): void;
|
|
29
|
+
hide(): void;
|
|
30
|
+
raycasterIntersectObject(raycaster: THREE.Raycaster, intersection?: THREE.Intersection[]): THREE.Intersection[];
|
|
31
|
+
initialPosition(offset?: THREE.Vector3): void;
|
|
32
|
+
setScaleByCamera(camera: THREE.PerspectiveCamera | THREE.OrthographicCamera): void;
|
|
33
|
+
initQuaternion(config?: {
|
|
34
|
+
xAxis?: Vector3 | (() => Vector3);
|
|
35
|
+
yAxis?: Vector3 | (() => Vector3);
|
|
36
|
+
zAxis?: Vector3 | (() => Vector3);
|
|
37
|
+
}): void;
|
|
38
|
+
applyHelperScaleMatrix4(matrix: THREE.Matrix4, origin?: Vector3): void;
|
|
39
|
+
setHelperQuaternion(quaternion: THREE.Quaternion, origin?: Vector3): void;
|
|
40
|
+
applyHelperQuaternion(quaternion: THREE.Quaternion, origin?: Vector3): void;
|
|
41
|
+
dispose(): void;
|
|
42
|
+
}
|
|
43
|
+
export declare abstract class MoveHelperAbstract<OriginObject3D extends Object3D = Object3D> extends BaseHelper<OriginObject3D> {
|
|
44
|
+
abstract xArrow?: Object3D & {
|
|
45
|
+
arrow: Object3D;
|
|
46
|
+
line?: Object3D;
|
|
47
|
+
direction: Direction;
|
|
48
|
+
};
|
|
49
|
+
abstract yArrow?: Object3D & {
|
|
50
|
+
arrow: Object3D;
|
|
51
|
+
line?: Object3D;
|
|
52
|
+
direction: Direction;
|
|
53
|
+
};
|
|
54
|
+
abstract zArrow?: Object3D & {
|
|
55
|
+
arrow: Object3D;
|
|
56
|
+
line?: Object3D;
|
|
57
|
+
direction: Direction;
|
|
58
|
+
};
|
|
59
|
+
abstract centerHandle?: Object3D & {
|
|
60
|
+
direction: Direction;
|
|
61
|
+
};
|
|
62
|
+
abstract xyPlane?: Object3D & {
|
|
63
|
+
direction: Direction;
|
|
64
|
+
};
|
|
65
|
+
abstract xzPlane?: Object3D & {
|
|
66
|
+
direction: Direction;
|
|
67
|
+
};
|
|
68
|
+
abstract yzPlane?: Object3D & {
|
|
69
|
+
direction: Direction;
|
|
70
|
+
};
|
|
71
|
+
abstract moveTips?: {
|
|
72
|
+
element: HTMLElement;
|
|
73
|
+
show: () => void;
|
|
74
|
+
hide: () => void;
|
|
75
|
+
setLeftTop: (left: string, top: string) => void;
|
|
76
|
+
};
|
|
77
|
+
abstract showDraggingHelper(directions?: Direction[]): void;
|
|
78
|
+
abstract update(camera: THREE.Camera): void;
|
|
79
|
+
}
|
|
80
|
+
export declare abstract class BoundingBoxHelperAbstract<OriginObject3D extends Object3D = Object3D> extends BaseHelper<OriginObject3D> {
|
|
81
|
+
}
|
|
82
|
+
export type Circle = (Mesh | Group) & {
|
|
83
|
+
direction: Direction;
|
|
84
|
+
circle: Mesh;
|
|
85
|
+
angleSector?: Mesh & {
|
|
86
|
+
angleDirection: number;
|
|
87
|
+
baseAxes: Vector3;
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
export declare abstract class RotateHelperAbstract<OriginObject3D extends Object3D = Object3D> extends BaseHelper<OriginObject3D> {
|
|
91
|
+
abstract xCircle?: Circle;
|
|
92
|
+
abstract yCircle?: Circle;
|
|
93
|
+
abstract zCircle?: Circle;
|
|
94
|
+
abstract angleTips?: ReturnType<typeof tipsDom>;
|
|
95
|
+
abstract showDraggingHelper(directions: Direction[]): void;
|
|
96
|
+
abstract update(camera: THREE.Camera): void;
|
|
97
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import { BoundingBoxHelperAbstract } from './BaseHelper';
|
|
3
|
+
export declare class BoundingBoxHelper<T extends THREE.Object3D = THREE.Object3D> extends BoundingBoxHelperAbstract<T> {
|
|
4
|
+
name: string;
|
|
5
|
+
box: THREE.Mesh<THREE.BufferGeometry, THREE.MeshBasicMaterial>;
|
|
6
|
+
outline: THREE.LineSegments<THREE.BufferGeometry, THREE.LineBasicMaterial>;
|
|
7
|
+
private positionAttribute;
|
|
8
|
+
constructor(originObject: T);
|
|
9
|
+
initQuaternion(): void;
|
|
10
|
+
setHelperQuaternion(quaternion: THREE.Quaternion, origin: THREE.Vector3): void;
|
|
11
|
+
raycasterIntersectObject(raycaster: THREE.Raycaster, intersection: THREE.Intersection[]): THREE.Intersection[];
|
|
12
|
+
raycast(raycaster: THREE.Raycaster, intersects: THREE.Intersection[]): void;
|
|
13
|
+
update(): void;
|
|
14
|
+
private createOutline;
|
|
15
|
+
private createBox;
|
|
16
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Object3D } from 'three';
|
|
2
|
+
import type { Direction } from '../typing';
|
|
3
|
+
import { MoveHelperAbstract, type BaseHelperConfig } from './BaseHelper';
|
|
4
|
+
import { ArrowGroup } from '../utils/ArrowGroup';
|
|
5
|
+
import { CenterHandle } from '../utils/CenterHandle';
|
|
6
|
+
import { PlaneHandle } from '../utils/PlaneHandle';
|
|
7
|
+
import { Camera } from '@realsee/five';
|
|
8
|
+
import { tipsDom } from '../utils/tipsDom';
|
|
9
|
+
import * as THREE from 'three';
|
|
10
|
+
export declare class MoveHelper extends MoveHelperAbstract {
|
|
11
|
+
name: string;
|
|
12
|
+
xArrow?: ArrowGroup;
|
|
13
|
+
yArrow?: ArrowGroup;
|
|
14
|
+
zArrow?: ArrowGroup;
|
|
15
|
+
centerHandle?: CenterHandle;
|
|
16
|
+
xyPlane?: PlaneHandle;
|
|
17
|
+
xzPlane?: PlaneHandle;
|
|
18
|
+
yzPlane?: PlaneHandle;
|
|
19
|
+
moveTips?: ReturnType<typeof tipsDom>;
|
|
20
|
+
private container?;
|
|
21
|
+
constructor(originObject3D: Object3D, config?: {
|
|
22
|
+
container?: HTMLElement;
|
|
23
|
+
xArrowEnable?: boolean;
|
|
24
|
+
yArrowEnable?: boolean;
|
|
25
|
+
zArrowEnable?: boolean;
|
|
26
|
+
centerHandleEnable?: boolean;
|
|
27
|
+
xyPlaneEnable?: boolean;
|
|
28
|
+
xzPlaneEnable?: boolean;
|
|
29
|
+
yzPlaneEnable?: boolean;
|
|
30
|
+
moveTipsEnable?: boolean;
|
|
31
|
+
} & BaseHelperConfig);
|
|
32
|
+
update(camera: Camera): void;
|
|
33
|
+
show(): void;
|
|
34
|
+
setScaleByCamera(camera: THREE.PerspectiveCamera | THREE.OrthographicCamera): void;
|
|
35
|
+
showDraggingHelper(directions: Direction[]): void;
|
|
36
|
+
dispose(): void;
|
|
37
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { Object3D } from 'three';
|
|
3
|
+
import { RotateHelperAbstract, type BaseHelperConfig } from './BaseHelper';
|
|
4
|
+
import type { Color, Direction } from '../typing';
|
|
5
|
+
import { tipsDom } from '../utils/tipsDom';
|
|
6
|
+
export declare class RotateHelper extends RotateHelperAbstract {
|
|
7
|
+
name: string;
|
|
8
|
+
xCircle?: RotateCircleGroup;
|
|
9
|
+
yCircle?: RotateCircleGroup;
|
|
10
|
+
zCircle?: RotateCircleGroup;
|
|
11
|
+
children: RotateCircleGroup[];
|
|
12
|
+
angleTips?: ReturnType<typeof tipsDom>;
|
|
13
|
+
private container?;
|
|
14
|
+
constructor(originObject3D: Object3D, config?: {
|
|
15
|
+
container?: HTMLElement;
|
|
16
|
+
yzCircleEnable?: boolean;
|
|
17
|
+
xzCircleEnable?: boolean;
|
|
18
|
+
xyCircleEnable?: boolean;
|
|
19
|
+
angleTipsEnable?: boolean;
|
|
20
|
+
} & BaseHelperConfig);
|
|
21
|
+
hide(): void;
|
|
22
|
+
show(): void;
|
|
23
|
+
setScaleByCamera(camera: THREE.PerspectiveCamera | THREE.OrthographicCamera): void;
|
|
24
|
+
update(camera: THREE.Camera): void;
|
|
25
|
+
showDraggingHelper(directions: Direction[]): void;
|
|
26
|
+
dispose(): void;
|
|
27
|
+
}
|
|
28
|
+
declare class RotateCircleGroup extends THREE.Group {
|
|
29
|
+
direction: Direction;
|
|
30
|
+
/** 1/4 圆 */
|
|
31
|
+
circle: Circle;
|
|
32
|
+
/** 旋转过程中展示的背景圆环 */
|
|
33
|
+
ring: DashedRing;
|
|
34
|
+
/** 旋转过程中表示角度的扇形 */
|
|
35
|
+
angleSector: AngleSector;
|
|
36
|
+
constructor(options: {
|
|
37
|
+
direction: Direction;
|
|
38
|
+
color?: Color;
|
|
39
|
+
});
|
|
40
|
+
showCircle(): void;
|
|
41
|
+
showRing(): void;
|
|
42
|
+
hide(): void;
|
|
43
|
+
}
|
|
44
|
+
declare class Circle extends THREE.Mesh {
|
|
45
|
+
direction: Direction;
|
|
46
|
+
material: THREE.MeshBasicMaterial;
|
|
47
|
+
gapAngle: number;
|
|
48
|
+
geometry: THREE.RingGeometry;
|
|
49
|
+
constructor(options: {
|
|
50
|
+
direction: Direction;
|
|
51
|
+
color?: Color;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
declare class DashedRing extends THREE.Group {
|
|
55
|
+
direction: Readonly<Direction>;
|
|
56
|
+
constructor(options: {
|
|
57
|
+
direction: Direction;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
declare class AngleSector extends THREE.Mesh {
|
|
61
|
+
direction: Direction;
|
|
62
|
+
baseAxes: THREE.Vector3;
|
|
63
|
+
offsetAngle: (angle: number) => number;
|
|
64
|
+
angleDirection: 1 | -1;
|
|
65
|
+
material: THREE.MeshBasicMaterial;
|
|
66
|
+
constructor(options: {
|
|
67
|
+
direction: Direction;
|
|
68
|
+
color?: Color;
|
|
69
|
+
});
|
|
70
|
+
/**
|
|
71
|
+
* 设置扇形旋转方向为顺时针
|
|
72
|
+
*/
|
|
73
|
+
setClockwiseDirection(): void;
|
|
74
|
+
/**
|
|
75
|
+
* 设置扇形旋转方向为逆时针
|
|
76
|
+
*/
|
|
77
|
+
setCounterClockwiseDirection(): void;
|
|
78
|
+
/**
|
|
79
|
+
* 切换扇形旋转方向
|
|
80
|
+
*/
|
|
81
|
+
toggleDirection(): void;
|
|
82
|
+
/**
|
|
83
|
+
* 设置扇形的基础轴向
|
|
84
|
+
* @param axes 新的基础轴向向量
|
|
85
|
+
*/
|
|
86
|
+
setBaseAxes(axes: THREE.Vector3): void;
|
|
87
|
+
/**
|
|
88
|
+
* 获取当前旋转方向
|
|
89
|
+
* @returns 'clockwise' | 'counterclockwise'
|
|
90
|
+
*/
|
|
91
|
+
getDirection(): 'clockwise' | 'counterclockwise';
|
|
92
|
+
}
|
|
93
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
declare const AXES_COLOR: {
|
|
3
|
+
X: number;
|
|
4
|
+
Y: number;
|
|
5
|
+
Z: number;
|
|
6
|
+
};
|
|
7
|
+
declare class AXES_THREE_COLOR {
|
|
8
|
+
static get X(): THREE.Color;
|
|
9
|
+
static get Y(): THREE.Color;
|
|
10
|
+
static get Z(): THREE.Color;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Object3DHelper 渲染顺序常量
|
|
14
|
+
* 数值越大,渲染优先级越高
|
|
15
|
+
*/
|
|
16
|
+
export declare const RENDER_ORDER: {
|
|
17
|
+
readonly ROTATE_HELPER: 9992;
|
|
18
|
+
readonly MOVE_HELPER: 9993;
|
|
19
|
+
readonly SCALE_HELPER_LINE: 9994;
|
|
20
|
+
readonly SCALE_HELPER_SPHERE: 9995;
|
|
21
|
+
readonly MOVE_HELPER_ARROW: 10001;
|
|
22
|
+
readonly MOVE_HELPER_CENTER: 10002;
|
|
23
|
+
readonly DRAG_GUIDE_LINE: 10003;
|
|
24
|
+
readonly DRAG_FACE_PATCH: 10004;
|
|
25
|
+
};
|
|
26
|
+
export type RenderOrderType = (typeof RENDER_ORDER)[keyof typeof RENDER_ORDER];
|
|
27
|
+
export { AXES_COLOR, AXES_THREE_COLOR };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as Object3DHelperPluginType from './typing';
|
|
2
|
+
import type { Five } from '@realsee/five';
|
|
3
|
+
import { Controller } from './Controller';
|
|
4
|
+
export declare const Object3DHelperPlugin: (five: Five) => Controller;
|
|
5
|
+
export { Controller as Object3DHelperController };
|
|
6
|
+
export type { Object3DHelperPluginType };
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import type * as THREE from 'three';
|
|
2
|
+
import type { BaseHelper, MoveHelperAbstract, RotateHelperAbstract, Circle } from './Helper/BaseHelper';
|
|
3
|
+
import type { MoveController, UseFaceNormalInterface } from './Controllers/MoveController';
|
|
4
|
+
import type { Object3DHelper, AddObject3DHelperConfig } from './Controller';
|
|
5
|
+
import type { BaseController } from './Controllers/BaseController';
|
|
6
|
+
import type { RotateController } from './Controllers/RotateController';
|
|
7
|
+
import type { BoundingBoxController } from './Controllers/BoundingBoxController';
|
|
8
|
+
export interface Object3DHelperPluginState {
|
|
9
|
+
enabled: boolean;
|
|
10
|
+
visible: boolean;
|
|
11
|
+
disposed: boolean;
|
|
12
|
+
}
|
|
13
|
+
export type HelperConfig<T extends object = object> = boolean | ({
|
|
14
|
+
enable: boolean;
|
|
15
|
+
} & T);
|
|
16
|
+
export type Object3DHelperPluginEventMap = {
|
|
17
|
+
show: (options?: {
|
|
18
|
+
userAction?: boolean;
|
|
19
|
+
}) => void;
|
|
20
|
+
hide: (options?: {
|
|
21
|
+
userAction?: boolean;
|
|
22
|
+
}) => void;
|
|
23
|
+
enable: (options?: {
|
|
24
|
+
userAction?: boolean;
|
|
25
|
+
}) => void;
|
|
26
|
+
disable: (options?: {
|
|
27
|
+
userAction?: boolean;
|
|
28
|
+
}) => void;
|
|
29
|
+
dispose: () => void;
|
|
30
|
+
stateChange: (params: {
|
|
31
|
+
state: Object3DHelperPluginState;
|
|
32
|
+
prevState?: Object3DHelperPluginState;
|
|
33
|
+
}) => void;
|
|
34
|
+
};
|
|
35
|
+
export type Direction = 'x' | 'y' | 'z' | 'xy' | 'xz' | 'yz' | 'plane';
|
|
36
|
+
export type Direction4 = 'nesw' | 'nwse' | 'ns' | 'ew';
|
|
37
|
+
export interface Scissor {
|
|
38
|
+
left: number;
|
|
39
|
+
bottom: number;
|
|
40
|
+
width: number;
|
|
41
|
+
height: number;
|
|
42
|
+
}
|
|
43
|
+
export type HelperEventMap = {
|
|
44
|
+
wantToMove: (position: THREE.Vector3) => void;
|
|
45
|
+
moveBefore: (position: THREE.Vector3) => void;
|
|
46
|
+
wantToRotate: (quaternion: THREE.Quaternion) => void;
|
|
47
|
+
wantToScale: (scale: THREE.Vector3) => void;
|
|
48
|
+
move: (position: THREE.Vector3) => void;
|
|
49
|
+
rotate: (quaternion: THREE.Quaternion) => void;
|
|
50
|
+
scale: (scale: THREE.Vector3) => void;
|
|
51
|
+
moveStart: (direction?: Direction) => void;
|
|
52
|
+
rotateStart: (direction?: Direction) => void;
|
|
53
|
+
scaleStart: (direction?: Direction | Direction4) => void;
|
|
54
|
+
moveEnd: () => void;
|
|
55
|
+
rotateEnd: () => void;
|
|
56
|
+
scaleEnd: () => void;
|
|
57
|
+
moveByMouseEnable: () => void;
|
|
58
|
+
moveByMouseDisable: () => void;
|
|
59
|
+
updateOtherHelpers: (params: {
|
|
60
|
+
camera: THREE.Camera;
|
|
61
|
+
}) => void;
|
|
62
|
+
};
|
|
63
|
+
export type InternalHelperEventMap = {
|
|
64
|
+
initialHelperPosition: () => void;
|
|
65
|
+
setObjectPosition: (position: THREE.Vector3) => void;
|
|
66
|
+
setObjectRotate: (quaternion: THREE.Quaternion, origin?: THREE.Vector3) => void;
|
|
67
|
+
setObjectScale: (scale: THREE.Vector3) => void;
|
|
68
|
+
applyObjectPosition: (position: {
|
|
69
|
+
matrix: THREE.Matrix4;
|
|
70
|
+
}) => void;
|
|
71
|
+
applyObjectRotate: (rotate: {
|
|
72
|
+
quaternion: THREE.Quaternion;
|
|
73
|
+
origin: THREE.Vector3;
|
|
74
|
+
}) => void;
|
|
75
|
+
applyObjectScale: (scale: {
|
|
76
|
+
matrix: THREE.Matrix4;
|
|
77
|
+
origin?: THREE.Vector3;
|
|
78
|
+
}) => void;
|
|
79
|
+
};
|
|
80
|
+
export interface Object3DHelperState {
|
|
81
|
+
enabled: boolean;
|
|
82
|
+
visible: boolean;
|
|
83
|
+
disposed: boolean;
|
|
84
|
+
}
|
|
85
|
+
export type Object3DHelperEventMap = HelperEventMap & {
|
|
86
|
+
show: (options?: {
|
|
87
|
+
userAction?: boolean;
|
|
88
|
+
}) => void;
|
|
89
|
+
hide: (options?: {
|
|
90
|
+
userAction?: boolean;
|
|
91
|
+
}) => void;
|
|
92
|
+
enable: (options?: {
|
|
93
|
+
userAction?: boolean;
|
|
94
|
+
}) => void;
|
|
95
|
+
disable: (options?: {
|
|
96
|
+
userAction?: boolean;
|
|
97
|
+
}) => void;
|
|
98
|
+
dispose: () => void;
|
|
99
|
+
stateChange: (params: {
|
|
100
|
+
state: Object3DHelperState;
|
|
101
|
+
prevState?: Object3DHelperState;
|
|
102
|
+
}) => void;
|
|
103
|
+
};
|
|
104
|
+
export interface HelperOffset {
|
|
105
|
+
x: number | {
|
|
106
|
+
percents: number;
|
|
107
|
+
};
|
|
108
|
+
y: number | {
|
|
109
|
+
percents: number;
|
|
110
|
+
};
|
|
111
|
+
z: number | {
|
|
112
|
+
percents: number;
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
export type Color = THREE.Color | string | number;
|
|
116
|
+
export type PositionFrom = 'objectPosition' | 'boundingBox' | 'boundingSphere' | THREE.Vector3 | ((object: THREE.Object3D) => THREE.Vector3);
|
|
117
|
+
export interface ObjectHelperControllers {
|
|
118
|
+
moveController?: MoveController;
|
|
119
|
+
rotateController?: RotateController;
|
|
120
|
+
boundingBoxController?: BoundingBoxController;
|
|
121
|
+
}
|
|
122
|
+
export type ScaleCallback = (params: {
|
|
123
|
+
intersectPoint: THREE.Vector3;
|
|
124
|
+
scalePosition: ScalePosition;
|
|
125
|
+
offset: THREE.Vector3;
|
|
126
|
+
}) => any;
|
|
127
|
+
export type ScalePosition = {
|
|
128
|
+
id?: string;
|
|
129
|
+
handlePosition: THREE.Vector3;
|
|
130
|
+
basePosition: THREE.Vector3;
|
|
131
|
+
};
|
|
132
|
+
export interface Vector3Position {
|
|
133
|
+
x: number;
|
|
134
|
+
y: number;
|
|
135
|
+
z: number;
|
|
136
|
+
}
|
|
137
|
+
export type Vector3WithArray = [number, number, number];
|
|
138
|
+
export interface Vector2Position {
|
|
139
|
+
x: number;
|
|
140
|
+
y: number;
|
|
141
|
+
}
|
|
142
|
+
export type Vector2WithArray = [number, number];
|
|
143
|
+
export type { BaseController, BoundingBoxController, MoveController, UseFaceNormalInterface, RotateController, MoveHelperAbstract, RotateHelperAbstract, Circle, BaseHelper, Object3DHelper, AddObject3DHelperConfig, };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { Direction } from '../typing';
|
|
3
|
+
import { DirectionGroup, DirectionMesh } from './direction';
|
|
4
|
+
interface InstanceParameter {
|
|
5
|
+
direction: Direction;
|
|
6
|
+
color?: THREE.Color | string | number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* 箭头组:正方向有线段+箭头,反方向有箭头
|
|
10
|
+
* 参考 three.js TransformControls 的 gizmoTranslate
|
|
11
|
+
*/
|
|
12
|
+
export declare class ArrowGroup extends DirectionGroup {
|
|
13
|
+
line: DirectionMesh<THREE.Geometry, THREE.MeshBasicMaterial>;
|
|
14
|
+
arrow: DirectionMesh<THREE.ConeGeometry, THREE.MeshBasicMaterial>;
|
|
15
|
+
arrowNeg: DirectionMesh<THREE.ConeGeometry, THREE.MeshBasicMaterial>;
|
|
16
|
+
private lineHeight;
|
|
17
|
+
private arrowHeight;
|
|
18
|
+
name: string;
|
|
19
|
+
constructor(param: InstanceParameter);
|
|
20
|
+
private formatGeometries;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { Direction } from '../typing';
|
|
3
|
+
import { DirectionGroup } from '../utils/direction';
|
|
4
|
+
interface InstanceParameter {
|
|
5
|
+
color?: THREE.Color | string | number;
|
|
6
|
+
size?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class CenterHandle extends DirectionGroup {
|
|
9
|
+
cube: THREE.Mesh<THREE.BoxGeometry, THREE.MeshBasicMaterial[]> & {
|
|
10
|
+
direction: Direction;
|
|
11
|
+
};
|
|
12
|
+
name: string;
|
|
13
|
+
private faceMaterials;
|
|
14
|
+
private baseColor;
|
|
15
|
+
private faceNormals;
|
|
16
|
+
constructor(param?: InstanceParameter);
|
|
17
|
+
/**
|
|
18
|
+
* 更新各个面的颜色,根据与相机的角度动态调整
|
|
19
|
+
* @param camera 相机对象
|
|
20
|
+
*/
|
|
21
|
+
update(camera: THREE.Camera): void;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { Direction } from '../typing';
|
|
3
|
+
import { DirectionGroup } from './direction';
|
|
4
|
+
interface PlaneHandleParams {
|
|
5
|
+
direction: Direction;
|
|
6
|
+
color?: THREE.Color | string | number;
|
|
7
|
+
size?: number;
|
|
8
|
+
offset?: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 平面移动手柄,参考 three.js TransformControls 的 XY/XZ/YZ 平面手柄
|
|
12
|
+
* 一个小的半透明方块,位于两个轴的交汇处
|
|
13
|
+
*/
|
|
14
|
+
export declare class PlaneHandle extends DirectionGroup {
|
|
15
|
+
handle: THREE.Mesh<THREE.BoxGeometry, THREE.MeshBasicMaterial>;
|
|
16
|
+
name: string;
|
|
17
|
+
constructor(params: PlaneHandleParams);
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Direction } from '../typing';
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
export declare class DirectionGroup extends THREE.Group {
|
|
4
|
+
direction: Direction;
|
|
5
|
+
constructor(direction?: Direction);
|
|
6
|
+
}
|
|
7
|
+
export declare class DirectionLine<T extends THREE.Geometry, K extends THREE.Material> extends THREE.Line<T, K> {
|
|
8
|
+
direction: Direction;
|
|
9
|
+
constructor(geometry?: T, material?: K, direction?: Direction);
|
|
10
|
+
}
|
|
11
|
+
export declare class DirectionMesh<T extends THREE.Geometry, K extends THREE.Material> extends THREE.Mesh<T, K> {
|
|
12
|
+
direction: Direction;
|
|
13
|
+
constructor(geometry?: T, material?: K, direction?: Direction);
|
|
14
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
/**
|
|
3
|
+
* @description: 在指定中心点上,使用 quaternion 旋转物体。
|
|
4
|
+
* @param {THREE.Object3D} object 旋转对象
|
|
5
|
+
* @param {THREE.Quaternion} quaternion 旋转四元数
|
|
6
|
+
* @param {THREE.Vector3} rotateCenter 旋转中心
|
|
7
|
+
*/
|
|
8
|
+
export default function setObjectQuaternion(object: THREE.Object3D, quaternion: THREE.Quaternion, rotateCenter: THREE.Vector3): void;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
/** 将世界坐标投影为屏幕像素坐标 */
|
|
3
|
+
export declare function projectToScreen(camera: THREE.Camera, container: HTMLElement | null | undefined, point: THREE.Vector3): THREE.Vector2;
|
|
4
|
+
/** 估算某方向上线段的像素与世界长度的比例(世界单位/像素) */
|
|
5
|
+
export declare function computeWorldPerPixel(camera: THREE.Camera, container: HTMLElement | null | undefined, center: THREE.Vector3, direction: THREE.Vector3): number | undefined;
|
|
6
|
+
/** 计算直线长度:随相机距离/视口变化自适应,限制在可视范围内 */
|
|
7
|
+
export declare function computeGuideLength(camera: THREE.Camera, center: THREE.Vector3): number;
|
|
8
|
+
export type SolidGuideOptions = {
|
|
9
|
+
color?: number;
|
|
10
|
+
renderOrder?: number;
|
|
11
|
+
};
|
|
12
|
+
export declare class SolidGuideLine {
|
|
13
|
+
private camera;
|
|
14
|
+
private container;
|
|
15
|
+
private defaults;
|
|
16
|
+
constructor(camera: THREE.Camera, container: HTMLElement | null | undefined, defaults?: SolidGuideOptions);
|
|
17
|
+
/** 创建无限长直线(Line + LineBasicMaterial),穿过整个平面 */
|
|
18
|
+
createSolidLine(center: THREE.Vector3, direction: THREE.Vector3, options?: SolidGuideOptions): THREE.Line<THREE.BufferGeometry, THREE.LineBasicMaterial>;
|
|
19
|
+
/** 更新已创建的直线,使其始终穿过整个平面 */
|
|
20
|
+
updateSolidLine(line: THREE.Line<THREE.BufferGeometry, THREE.LineBasicMaterial>, center: THREE.Vector3, direction: THREE.Vector3, options?: SolidGuideOptions): void;
|
|
21
|
+
/** 计算"无限"直线的长度,确保穿过整个可视区域 */
|
|
22
|
+
private computeInfiniteLineLength;
|
|
23
|
+
/** 释放直线的几何与材质 */
|
|
24
|
+
dispose(line?: THREE.Line<THREE.BufferGeometry, THREE.LineBasicMaterial>): void;
|
|
25
|
+
/** 更新默认配置 */
|
|
26
|
+
updateDefaults(options: SolidGuideOptions): void;
|
|
27
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function createElement(style?: Partial<CSSStyleDeclaration>, tagName?: string): HTMLElement;
|
|
2
|
+
export declare function setStyle(element: HTMLElement, style?: Partial<CSSStyleDeclaration>): HTMLElement;
|
|
3
|
+
export declare function tipsDom(style?: Partial<CSSStyleDeclaration>): {
|
|
4
|
+
element: HTMLElement;
|
|
5
|
+
show: () => void;
|
|
6
|
+
hide: () => void;
|
|
7
|
+
setLeftTop: (left: string, top: string) => void;
|
|
8
|
+
};
|
|
@@ -54,7 +54,7 @@ export declare class Controller extends BasePlugin.Controller<PluginType.State,
|
|
|
54
54
|
findKeyFrameByLocation(location: number): number | {
|
|
55
55
|
keyframeIndex: number;
|
|
56
56
|
progress: number;
|
|
57
|
-
};
|
|
57
|
+
} | undefined;
|
|
58
58
|
/**
|
|
59
59
|
* 根据时间戳找到最近的 keyframe
|
|
60
60
|
* @returns keyframe 索引,如果找不到返回 undefined
|
package/plugins/index.d.ts
CHANGED
|
@@ -5,5 +5,8 @@ export * from './BackgroundPlugin';
|
|
|
5
5
|
export * from './TrajectoryPlugin';
|
|
6
6
|
export * from './PanoAnimePlugin';
|
|
7
7
|
export * from './DynamicPathLinePlugin';
|
|
8
|
-
export
|
|
8
|
+
export * from './CSS3DPlugin';
|
|
9
|
+
export * from './Object3DHelperPlugin';
|
|
10
|
+
export * from './GaussianSplattingEntranceAnimationPlugin';
|
|
11
|
+
export { CSS3DRenderer, CSS3DObject, CSS3DSprite, type CSS3DRendererParameters } from './thirdParty/CSS3DRenderer';
|
|
9
12
|
export { OrbitControls } from './thirdParty/OrbitControls';
|