@realsee/dnalogel 3.20.6 → 3.21.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/dist/Object3DHelperPlugin/Controller.d.ts +25 -18
- package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +1 -0
- package/dist/PanoMeasurePlugin/Model/area.d.ts +2 -1
- package/dist/PanoMeasurePlugin/Model/line.d.ts +1 -1
- package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +2 -55
- package/dist/PanoMeasurePlugin/utils/line.d.ts +1 -1
- package/dist/Sculpt/Meshes/Area.d.ts +30 -0
- package/dist/Sculpt/Meshes/Box.d.ts +35 -0
- package/dist/Sculpt/Meshes/Circle.d.ts +26 -0
- package/dist/Sculpt/Meshes/CircleWithEdge.d.ts +11 -0
- package/dist/Sculpt/Meshes/Cylinder.d.ts +34 -0
- package/dist/Sculpt/Meshes/Line.d.ts +27 -0
- package/dist/Sculpt/Meshes/LineWithDots.d.ts +30 -0
- package/dist/Sculpt/Meshes/Point.d.ts +22 -0
- package/dist/Sculpt/Meshes/Polygon.d.ts +31 -0
- package/dist/Sculpt/Meshes/Polyline.d.ts +34 -0
- package/dist/Sculpt/Meshes/Prism.d.ts +31 -0
- package/dist/Sculpt/Meshes/Rectangle.d.ts +24 -0
- package/dist/Sculpt/Meshes/RectangleWithEdge.d.ts +20 -0
- package/dist/Sculpt/Modules/Cursor.d.ts +13 -0
- package/dist/Sculpt/Modules/Global.d.ts +20 -0
- package/dist/Sculpt/Objects/Base/Editor.d.ts +21 -0
- package/dist/Sculpt/Objects/Base/index.d.ts +60 -0
- package/dist/Sculpt/Objects/Box/Editor.d.ts +5 -0
- package/dist/Sculpt/Objects/Box/index.d.ts +28 -0
- package/dist/Sculpt/Objects/Circle/Editor.d.ts +5 -0
- package/dist/Sculpt/Objects/Circle/index.d.ts +28 -0
- package/dist/Sculpt/Objects/Cylinder/Editor.d.ts +5 -0
- package/dist/Sculpt/Objects/Cylinder/index.d.ts +30 -0
- package/dist/Sculpt/Objects/Point/Editor.d.ts +8 -0
- package/dist/Sculpt/Objects/Point/index.d.ts +35 -0
- package/dist/Sculpt/Objects/Polygon/Editor.d.ts +8 -0
- package/dist/Sculpt/Objects/Polygon/index.d.ts +28 -0
- package/dist/Sculpt/Objects/Polyline/Editor.d.ts +25 -0
- package/dist/Sculpt/Objects/Polyline/index.d.ts +31 -0
- package/dist/Sculpt/Objects/Prism/Editor.d.ts +5 -0
- package/dist/Sculpt/Objects/Prism/index.d.ts +28 -0
- package/dist/Sculpt/Objects/Rectangle/Editor.d.ts +5 -0
- package/dist/Sculpt/Objects/Rectangle/index.d.ts +29 -0
- package/dist/Sculpt/index.d.ts +184 -0
- package/dist/Sculpt/typings/index.d.ts +16 -0
- package/dist/Sculpt/typings/utils.type.d.ts +12 -0
- package/dist/Sculpt/utils/color.d.ts +40 -0
- package/dist/Sculpt/utils/data.d.ts +7 -0
- package/dist/Sculpt/utils/getBetterNormal.d.ts +2 -0
- package/dist/Sculpt/utils/radiusToSegments.d.ts +1 -0
- package/dist/Sculpt/utils/three/ColoredMesh.d.ts +17 -0
- package/dist/Sculpt/utils/three/RectangleGeometry.d.ts +6 -0
- package/dist/Sculpt/utils/three/rayOnLine.d.ts +5 -0
- package/dist/index.cjs.js +70 -70
- package/dist/index.d.ts +1 -0
- package/dist/index.js +11554 -9325
- package/dist/index.umd.js +63 -63
- package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +13 -5
- package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +17 -6
- package/dist/shared-utils/Object3DHelper/Controller/RotateController.d.ts +0 -1
- package/dist/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +14 -7
- package/dist/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +4 -2
- package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +3 -2
- package/dist/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +12 -3
- package/dist/shared-utils/Object3DHelper/typings/Hooks.d.ts +1 -0
- package/dist/shared-utils/Object3DHelper/typings/index.d.ts +11 -0
- package/dist/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +2 -0
- package/dist/shared-utils/createLine/index.d.ts +2 -2
- package/dist/shared-utils/five/FiveDomEvents.d.ts +50 -13
- package/dist/shared-utils/five/FiveLine.d.ts +8 -0
- package/dist/shared-utils/five/getPosition.d.ts +14 -0
- package/dist/shared-utils/five/getRaycasterByNdcPosition.d.ts +6 -0
- package/dist/shared-utils/positionToVector3.d.ts +1 -0
- package/dist/shared-utils/three/IObject3D.d.ts +4 -0
- package/dist/shared-utils/three/Magnifier.d.ts +33 -19
- package/dist/shared-utils/three/PointSelector.d.ts +25 -11
- package/dist/shared-utils/three/PointSelectorHelper.d.ts +2 -0
- package/{libs/PanoMeasurePlugin/utils → dist/shared-utils/three}/geometryUtil.d.ts +1 -1
- package/dist/shared-utils/three/getIntersect.d.ts +16 -2
- package/dist/shared-utils/three/getNormal.d.ts +1 -1
- package/dist/shared-utils/three/recurveFindObject.d.ts +2 -0
- package/dist/shared-utils/three/vector3ToArray.d.ts +3 -0
- package/docs/assets/search.js +1 -1
- package/docs/classes/AreaMakerPluginType.AreaMakerController.html +9 -4
- package/docs/classes/AreaMakerPluginType.AreaMakerItem.html +9 -4
- package/docs/classes/CSS3DRender.html +10 -5
- package/docs/classes/GuideLineItem.GuideLineItem.html +10 -5
- package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +10 -5
- package/docs/classes/ModelRoomLabelController.html +10 -5
- package/docs/classes/MoveController.html +10 -5
- package/docs/classes/Object3DHelperController.html +26 -39
- package/docs/classes/PaintBrush.html +10 -5
- package/docs/classes/PanoMeasurePluginLine.html +12 -7
- package/docs/classes/PanoMeasurePluginModel.html +10 -5
- package/docs/classes/PanoMeasurePluginPoint.html +10 -5
- package/docs/classes/PanoMeasurePluginPolyline.html +10 -5
- package/docs/classes/PanoTagPluginController.html +10 -5
- package/docs/classes/Sculpt.html +847 -0
- package/docs/classes/Util.BetterTween.html +10 -5
- package/docs/classes/Util.Interval.html +10 -5
- package/docs/classes/Util.LineSegments.html +10 -5
- package/docs/classes/Util.Magnifier.html +82 -58
- package/docs/classes/Util.Object3D.html +10 -5
- package/docs/classes/Util.PointDomHelper.html +10 -5
- package/docs/classes/Util.PointHelper.html +10 -5
- package/docs/classes/Util.PointSelectorHelper.html +23 -18
- package/docs/classes/Util.Rectangle.html +10 -5
- package/docs/classes/WalkController.html +10 -5
- package/docs/enums/CameraMovementEffect.html +10 -5
- package/docs/enums/ContentType.html +10 -5
- package/docs/enums/DIRECTION.html +10 -5
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +10 -5
- package/docs/enums/DimensionType.html +10 -5
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +10 -5
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +10 -5
- package/docs/enums/PaintBrushTypeEnum.html +10 -5
- package/docs/enums/PointType.html +10 -5
- package/docs/enums/Rotation.html +10 -5
- package/docs/functions/AreaMakerPlugin.html +10 -5
- package/docs/functions/CSS3DRenderPlugin.html +10 -5
- package/docs/functions/CameraMovementPlugin.html +10 -5
- package/docs/functions/CruisePlugin.html +10 -5
- package/docs/functions/CurrentPanoImagePlugin.html +10 -5
- package/docs/functions/GuideLinePlugin.html +10 -5
- package/docs/functions/ItemLabelPlugin.html +10 -5
- package/docs/functions/MapviewFloorplanPlugin.html +10 -5
- package/docs/functions/ModelChassisCompassPlugin.html +10 -5
- package/docs/functions/ModelEntryDoorGuidePlugin.html +10 -5
- package/docs/functions/ModelFloorplanPlugin.html +10 -5
- package/docs/functions/ModelItemLabelPlugin.html +10 -5
- package/docs/functions/ModelRoomLabelPlugin.html +10 -5
- package/docs/functions/ModelTVVideoPlugin.html +10 -5
- package/docs/functions/ModelViewPlugin.html +10 -5
- package/docs/functions/MovePlugin.html +10 -5
- package/docs/functions/Object3DHelperPlugin.html +10 -5
- package/docs/functions/PanoCompassPlugin.html +10 -5
- package/docs/functions/PanoCursorRaycasterPlugin.html +10 -5
- package/docs/functions/PanoDoorLabelPlugin.html +10 -5
- package/docs/functions/PanoFloorplanRadarPlugin.html +10 -5
- package/docs/functions/PanoMeasurePlugin.html +10 -5
- package/docs/functions/PanoRulerPlugin.html +10 -5
- package/docs/functions/PanoRulerProPlugin.html +10 -5
- package/docs/functions/PanoSpatialTagPlugin.html +10 -5
- package/docs/functions/PanoTagPlugin.html +10 -5
- package/docs/functions/PanoVideoPlugin.html +10 -5
- package/docs/functions/PipelinePlugin.html +10 -5
- package/docs/functions/TopviewFloorplanPlugin.html +10 -5
- package/docs/functions/Util.absoluteUrl.html +10 -5
- package/docs/functions/Util.checkFiveModelLoaded.html +10 -5
- package/docs/functions/Util.equal.html +10 -5
- package/docs/functions/Util.getCoordsFromClient.html +10 -5
- package/docs/functions/Util.getCoordsFromElement.html +10 -5
- package/docs/functions/Util.getFrameTime.html +10 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +17 -7
- package/docs/functions/Util.getRaycasterFromFivePointer.html +10 -5
- package/docs/functions/Util.isAbsoluteURL.html +10 -5
- package/docs/functions/Util.isModelLike.html +10 -5
- package/docs/functions/Util.isNil.html +10 -5
- package/docs/functions/Util.isPanoramaLike.html +10 -5
- package/docs/functions/Util.nextFrame.html +10 -5
- package/docs/functions/Util.notNil.html +10 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +10 -5
- package/docs/functions/Util.tweenProgress.html +10 -5
- package/docs/functions/Util.uuid.html +10 -5
- package/docs/functions/pluginFlag.html +10 -5
- package/docs/index.html +11 -6
- package/docs/interfaces/AddTagConfig.html +10 -5
- package/docs/interfaces/AreaMakerPluginType.AnimeOptions.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.Config.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.EventMap.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.Params.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItem.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItemV1.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.ServerDataV1.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.ServerDataV2.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.ShowHideOptions.html +9 -4
- package/docs/interfaces/AreaMakerPluginType.State.html +9 -4
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +10 -5
- package/docs/interfaces/CSS3DRenderPluginState.html +10 -5
- package/docs/interfaces/CameraMovementPluginExportType.html +10 -5
- package/docs/interfaces/CruisePluginTypes.Config.html +9 -4
- package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +9 -4
- package/docs/interfaces/CruisePluginTypes.EventMap.html +9 -4
- package/docs/interfaces/CruisePluginTypes.MoveAction.html +9 -4
- package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +9 -4
- package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +9 -4
- package/docs/interfaces/CruisePluginTypes.PluginData.html +9 -4
- package/docs/interfaces/CruisePluginTypes.PluginServerData.html +9 -4
- package/docs/interfaces/CruisePluginTypes.PluginState.html +9 -4
- package/docs/interfaces/CurrentPanoImagePluginType.Config.html +10 -5
- package/docs/interfaces/CurrentPanoImagePluginType.EventMap.html +10 -5
- package/docs/interfaces/CurrentPanoImagePluginType.Params.html +10 -5
- package/docs/interfaces/CurrentPanoImagePluginType.ShowHideOptions.html +10 -5
- package/docs/interfaces/CurrentPanoImagePluginType.State.html +10 -5
- package/docs/interfaces/EventMap.html +10 -5
- package/docs/interfaces/FloorplanBounding.html +10 -5
- package/docs/interfaces/FloorplanData.html +10 -5
- package/docs/interfaces/FloorplanEntrance.html +10 -5
- package/docs/interfaces/FloorplanExtraObject.html +10 -5
- package/docs/interfaces/FloorplanExtraObject3D.html +10 -5
- package/docs/interfaces/FloorplanFloorData.html +10 -5
- package/docs/interfaces/FloorplanImagePosition.html +10 -5
- package/docs/interfaces/FloorplanObserver.html +10 -5
- package/docs/interfaces/FloorplanOutlineItem.html +10 -5
- package/docs/interfaces/FloorplanPosition.html +10 -5
- package/docs/interfaces/FloorplanRoomItem.html +10 -5
- package/docs/interfaces/FloorplanRoomLabelItem.html +10 -5
- package/docs/interfaces/FloorplanServerBounding.html +10 -5
- package/docs/interfaces/FloorplanServerComputedData.html +10 -5
- package/docs/interfaces/FloorplanServerData.html +10 -5
- package/docs/interfaces/FloorplanServerDoorItem.html +10 -5
- package/docs/interfaces/FloorplanServerDoorPosition.html +10 -5
- package/docs/interfaces/FloorplanServerEntrance.html +10 -5
- package/docs/interfaces/FloorplanServerFloorData.html +10 -5
- package/docs/interfaces/FloorplanServerImagePosition.html +10 -5
- package/docs/interfaces/FloorplanServerObserver.html +10 -5
- package/docs/interfaces/FloorplanServerOutlineItem.html +10 -5
- package/docs/interfaces/FloorplanServerPosition.html +10 -5
- package/docs/interfaces/FloorplanServerRoomItem.html +10 -5
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +10 -5
- package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +10 -5
- package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +9 -4
- package/docs/interfaces/GuideLinePluginType.EventMap.html +9 -4
- package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +9 -4
- package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +9 -4
- package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +9 -4
- package/docs/interfaces/GuideLinePluginType.GuideLineMeshStyle.html +9 -4
- package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +9 -4
- package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +9 -4
- package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +9 -4
- package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +9 -4
- package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +9 -4
- package/docs/interfaces/GuideLinePluginType.PluginServerData.html +9 -4
- package/docs/interfaces/GuideLinePluginType.PluginState.html +9 -4
- package/docs/interfaces/GuideLinePluginType.Route.html +9 -4
- package/docs/interfaces/GuideLinePluginType.RouteConfig.html +9 -4
- package/docs/interfaces/HelperOffset.html +10 -5
- package/docs/interfaces/ImagePlaneGroup.html +10 -5
- package/docs/interfaces/ItemLabelPluginData.html +10 -5
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +10 -5
- package/docs/interfaces/ItemLabelPluginParametersType.html +10 -5
- package/docs/interfaces/MinMax.html +10 -5
- package/docs/interfaces/ModelChassisCompassPluginData.html +10 -5
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +10 -5
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +10 -5
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +10 -5
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +10 -5
- package/docs/interfaces/ModelItemLabelPluginData.html +10 -5
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +10 -5
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +10 -5
- package/docs/interfaces/ModelRoomLabelPluginData.html +10 -5
- package/docs/interfaces/ModelTVVideoPluginData.html +10 -5
- package/docs/interfaces/ModelTVVideoPluginExportType.html +10 -5
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +10 -5
- package/docs/interfaces/ModelViewPluginExportType.html +10 -5
- package/docs/interfaces/Object3DHelperState.html +14 -9
- package/docs/interfaces/ObjectHelperControllers.html +16 -11
- package/docs/interfaces/PaintBrushAction.html +10 -5
- package/docs/interfaces/PaintBrushConfigs.html +10 -5
- package/docs/interfaces/PaintBrushState.html +10 -5
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -5
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +10 -5
- package/docs/interfaces/PanoMeasureParameterType.html +10 -5
- package/docs/interfaces/PanoMeasurePluginLineJson.html +10 -5
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +10 -5
- package/docs/interfaces/PanoMeasurePluginPointJson.html +10 -5
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +10 -5
- package/docs/interfaces/PanoRulerPluginExportType.html +10 -5
- package/docs/interfaces/PanoRulerPluginOptions.html +10 -5
- package/docs/interfaces/PanoRulerPluginParameterType.html +10 -5
- package/docs/interfaces/PanoRulerProPluginExportType.html +10 -5
- package/docs/interfaces/PanoRulerProPluginOptions.html +10 -5
- package/docs/interfaces/PanoRulerProPluginParameterType.html +10 -5
- package/docs/interfaces/PanoRulerProPluginState.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginData.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +10 -5
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.LoadParams.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +10 -5
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +10 -5
- package/docs/interfaces/Point.html +10 -5
- package/docs/interfaces/Room.html +10 -5
- package/docs/interfaces/RoomInfo.html +10 -5
- package/docs/interfaces/RoomLabel.html +10 -5
- package/docs/interfaces/RoomRules.html +10 -5
- package/docs/interfaces/Rooms.html +10 -5
- package/docs/interfaces/Scissor.html +10 -5
- package/docs/interfaces/State.html +10 -5
- package/docs/interfaces/TagCacheInterface.html +10 -5
- package/docs/interfaces/TagConfig.html +12 -7
- package/docs/interfaces/TagGLTFObjectGroup.html +10 -5
- package/docs/interfaces/TagIconUrl.html +10 -5
- package/docs/interfaces/TagObjectGroup.html +10 -5
- package/docs/interfaces/TagStyle.html +10 -5
- package/docs/interfaces/Tags.html +10 -5
- package/docs/interfaces/TemporaryState.html +10 -5
- package/docs/interfaces/Util.MagnifierParameter.html +32 -22
- package/docs/interfaces/Util.MouseGroupParameter.html +10 -5
- package/docs/interfaces/Util.PointIntersection.html +19 -7
- package/docs/modules/AreaMakerPluginType.html +9 -4
- package/docs/modules/CruisePluginTypes.html +9 -4
- package/docs/modules/CurrentPanoImagePluginType.html +10 -5
- package/docs/modules/GuideLineItem.html +10 -5
- package/docs/modules/GuideLineModeItem.html +10 -5
- package/docs/modules/GuideLinePluginType.html +9 -4
- package/docs/modules/PanoVideoPluginType.html +10 -5
- package/docs/modules/Util.html +10 -5
- package/docs/modules.html +22 -9
- package/docs/types/AddObject3DHelperConfig.html +310 -0
- package/docs/types/AreaMakerPluginType.AreaMakerItemEventMap.html +9 -4
- package/docs/types/AreaMakerPluginType.ItemRenderer.html +9 -4
- package/docs/types/AreaMakerPluginType.PluginData.html +9 -4
- package/docs/types/AreaMakerPluginType.ServerData.html +9 -4
- package/docs/types/ArrayPosition.html +10 -5
- package/docs/types/AudioAppearance.html +10 -5
- package/docs/types/AudioTagTypeConfigKey.html +10 -5
- package/docs/types/CSS3DRenderExportType.html +10 -5
- package/docs/types/CSS3DRenderPluginExportType.html +10 -5
- package/docs/types/CSS3DRenderPluginParameterType.html +10 -5
- package/docs/types/ClassFunctionParameters.html +10 -5
- package/docs/types/Color.html +10 -5
- package/docs/types/ContentTypeConfigKey.html +10 -5
- package/docs/types/ContentTypeConfigKeySplit.html +10 -5
- package/docs/types/ContentTypeMap.html +10 -5
- package/docs/types/Create3DDomContainerReturnType.html +10 -5
- package/docs/types/Create3DElementReturnType.html +10 -5
- package/docs/types/CruisePluginExportType.html +10 -5
- package/docs/types/CruisePluginTypes.CruiseData.html +9 -4
- package/docs/types/CruisePluginTypes.MoveEffect.html +9 -4
- package/docs/types/CurrentPanoImagePluginExportType.html +10 -5
- package/docs/types/DeprecatedMediaPlaneProperty.html +10 -5
- package/docs/types/DeprecatedTagProperty.html +10 -5
- package/docs/types/Direction-1.html +10 -5
- package/docs/types/Direction4.html +10 -5
- package/docs/types/ElementRenderer.html +10 -5
- package/docs/types/FloorplanRuleLabels.html +10 -5
- package/docs/types/FloorplanServerRuleLabels.html +10 -5
- package/docs/types/GuideLinePluginExportType.html +10 -5
- package/docs/types/GuideLinePluginType.GuideLineItem.html +9 -4
- package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +9 -4
- package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +9 -4
- package/docs/types/GuideLinePluginType.GuideLineStyle.html +9 -4
- package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +9 -4
- package/docs/types/GuideLinePluginType.PathItem.html +9 -4
- package/docs/types/GuideLinePluginType.PluginData.html +9 -4
- package/docs/types/HelperEventMap.html +10 -5
- package/docs/types/InternalHelperEventMap.html +22 -9
- package/docs/types/LoadTagConfig.html +10 -5
- package/docs/types/MapviewFloorplanPluginParameterType.html +10 -5
- package/docs/types/MapviewFloorplanPluginReturnType.html +10 -5
- package/docs/types/MediaData.html +10 -5
- package/docs/types/MediaStore.html +10 -5
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +10 -5
- package/docs/types/ModelFloorplanPluginParameterType.html +10 -5
- package/docs/types/ModelFloorplanPluginReturnType.html +10 -5
- package/docs/types/ModelId.html +10 -5
- package/docs/types/ModelRoomLabelPluginParameters.html +10 -5
- package/docs/types/ModelRoomLabelPluginReturnType.html +10 -5
- package/docs/types/MoveArgs.html +10 -5
- package/docs/types/MoveOpts.html +10 -5
- package/docs/types/Object3DHelperEventMap.html +11 -6
- package/docs/types/ObjectFit.html +10 -5
- package/docs/types/PaintBrushEventMap.html +10 -5
- package/docs/types/PanoCompassPluginData.html +10 -5
- package/docs/types/PanoCompassPluginExportType.html +10 -5
- package/docs/types/PanoCompassPluginParameterType.html +10 -5
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +10 -5
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +10 -5
- package/docs/types/PanoIndex.html +10 -5
- package/docs/types/PanoMeasurePluginEvent.html +10 -5
- package/docs/types/PanoMeasureReturnType.html +10 -5
- package/docs/types/PanoSpatialTagPluginId.html +10 -5
- package/docs/types/PanoTagPluginExportInterface.html +10 -5
- package/docs/types/PanoTagPluginParamsInterface.html +10 -5
- package/docs/types/PanoVideoPluginParameterType.html +10 -5
- package/docs/types/PanoVideoPluginReturnType.html +10 -5
- package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +10 -5
- package/docs/types/PipelinePluginParameterType.html +10 -5
- package/docs/types/PipelinePluginReturnType.html +10 -5
- package/docs/types/PlaneTag.html +10 -5
- package/docs/types/Point2DTag.html +10 -5
- package/docs/types/Point3DTag.html +10 -5
- package/docs/types/PointTag.html +10 -5
- package/docs/types/PointTagInstance.html +10 -5
- package/docs/types/Position.html +10 -5
- package/docs/types/PositionFrom.html +297 -0
- package/docs/types/RotateArgs.html +10 -5
- package/docs/types/RotateOpts.html +10 -5
- package/docs/types/RuleLabelsKey.html +10 -5
- package/docs/types/RuleLabelsValue.html +10 -5
- package/docs/types/ScaleCallback.html +309 -0
- package/docs/types/ScalePosition.html +298 -0
- package/docs/types/StickType.html +10 -5
- package/docs/types/Tag.html +10 -5
- package/docs/types/Tag2D.html +10 -5
- package/docs/types/Tag3D.html +10 -5
- package/docs/types/TagConfigByKey.html +10 -5
- package/docs/types/TagContentType.html +10 -5
- package/docs/types/TagContentTypeMapping.html +10 -5
- package/docs/types/TagDimensionType.html +10 -5
- package/docs/types/TagElement.html +10 -5
- package/docs/types/TagEvents.html +10 -5
- package/docs/types/TagGLTFObject.html +10 -5
- package/docs/types/TagHooks.html +10 -5
- package/docs/types/TagId.html +10 -5
- package/docs/types/TagInstance.html +10 -5
- package/docs/types/TagPointType.html +10 -5
- package/docs/types/TagRendererMap.html +10 -5
- package/docs/types/TopviewFloorplanPluginParameterType.html +10 -5
- package/docs/types/TopviewFloorplanPluginReturnType.html +10 -5
- package/docs/types/WorkCode.html +10 -5
- package/docs/variables/FLOOR_TYPE_MAP.html +10 -5
- package/docs/variables/PLUGIN.html +11 -6
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +10 -5
- package/docs/variables/ROOM_TYPE_MAP.html +10 -5
- package/docs/variables/defaultGlobalConfig.html +10 -5
- package/docs/variables/itemLabelPluginServerParams.html +10 -5
- package/docs/variables/modelItemLabelPluginServerParams.html +10 -5
- package/docs/variables/modelRoomLabelPluginServerParams.html +10 -5
- package/libs/GuideLinePlugin/Controller.js +15 -15
- package/libs/Object3DHelperPlugin/Controller.d.ts +25 -18
- package/libs/Object3DHelperPlugin/Controller.js +91 -91
- package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +1 -0
- package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +22 -18
- package/libs/Object3DHelperPlugin/index.js +8 -6
- package/libs/PanoCursorRaycasterPlugin/index.js +9 -8
- package/libs/PanoMeasurePlugin/Components/Controller0.js +5 -5
- package/libs/PanoMeasurePlugin/Components/Controller1.js +5 -5
- package/libs/PanoMeasurePlugin/Controller/BaseController.js +3 -2
- package/libs/PanoMeasurePlugin/Controller/EditController.js +6 -6
- package/libs/PanoMeasurePlugin/Controller/MixedController.js +10 -9
- package/libs/PanoMeasurePlugin/Controller/ViewController.js +3 -2
- package/libs/PanoMeasurePlugin/Controller/WatchController.js +5 -4
- package/libs/PanoMeasurePlugin/Controller/index.js +8 -7
- package/libs/PanoMeasurePlugin/Model/area.d.ts +2 -1
- package/libs/PanoMeasurePlugin/Model/area.js +16 -8
- package/libs/PanoMeasurePlugin/Model/index.js +3 -2
- package/libs/PanoMeasurePlugin/Model/line.d.ts +1 -1
- package/libs/PanoMeasurePlugin/Model/line.js +1 -0
- package/libs/PanoMeasurePlugin/Model/polygon.js +1 -1
- package/libs/PanoMeasurePlugin/Model/polyline.js +26 -25
- package/libs/PanoMeasurePlugin/Modules/Magnifier.d.ts +2 -55
- package/libs/PanoMeasurePlugin/Modules/Magnifier.js +22 -156
- package/libs/PanoMeasurePlugin/Modules/UIController/index.js +5 -5
- package/libs/PanoMeasurePlugin/index.js +13 -13
- package/libs/PanoMeasurePlugin/utils/dom/areaDom.js +1 -1
- package/libs/PanoMeasurePlugin/utils/line.d.ts +1 -1
- package/libs/PanoMeasurePlugin/utils/line.js +5 -4
- package/libs/PanoTagPlugin/controller/TagRender.js +18 -13
- package/libs/PanoTagPlugin/utils/model/mediaPlane.js +20 -10
- package/libs/Sculpt/Meshes/Area.d.ts +30 -0
- package/libs/Sculpt/Meshes/Area.js +56 -0
- package/libs/Sculpt/Meshes/Box.d.ts +35 -0
- package/libs/Sculpt/Meshes/Box.js +88 -0
- package/libs/Sculpt/Meshes/Circle.d.ts +26 -0
- package/libs/Sculpt/Meshes/Circle.js +42 -0
- package/libs/Sculpt/Meshes/CircleWithEdge.d.ts +11 -0
- package/libs/Sculpt/Meshes/CircleWithEdge.js +41 -0
- package/libs/Sculpt/Meshes/Cylinder.d.ts +34 -0
- package/libs/Sculpt/Meshes/Cylinder.js +88 -0
- package/libs/Sculpt/Meshes/Line.d.ts +27 -0
- package/libs/Sculpt/Meshes/Line.js +108 -0
- package/libs/Sculpt/Meshes/LineWithDots.d.ts +30 -0
- package/libs/Sculpt/Meshes/LineWithDots.js +70 -0
- package/libs/Sculpt/Meshes/Point.d.ts +22 -0
- package/libs/Sculpt/Meshes/Point.js +74 -0
- package/libs/Sculpt/Meshes/Polygon.d.ts +31 -0
- package/libs/Sculpt/Meshes/Polygon.js +52 -0
- package/libs/Sculpt/Meshes/Polyline.d.ts +34 -0
- package/libs/Sculpt/Meshes/Polyline.js +105 -0
- package/libs/Sculpt/Meshes/Prism.d.ts +31 -0
- package/libs/Sculpt/Meshes/Prism.js +78 -0
- package/libs/Sculpt/Meshes/Rectangle.d.ts +24 -0
- package/libs/Sculpt/Meshes/Rectangle.js +49 -0
- package/libs/Sculpt/Meshes/RectangleWithEdge.d.ts +20 -0
- package/libs/Sculpt/Meshes/RectangleWithEdge.js +49 -0
- package/libs/Sculpt/Modules/Cursor.d.ts +13 -0
- package/libs/Sculpt/Modules/Cursor.js +37 -0
- package/libs/Sculpt/Modules/Global.d.ts +20 -0
- package/libs/Sculpt/Modules/Global.js +45 -0
- package/libs/Sculpt/Objects/Base/Editor.d.ts +21 -0
- package/libs/Sculpt/Objects/Base/Editor.js +52 -0
- package/libs/Sculpt/Objects/Base/index.d.ts +60 -0
- package/libs/Sculpt/Objects/Base/index.js +77 -0
- package/libs/Sculpt/Objects/Box/Editor.d.ts +5 -0
- package/libs/Sculpt/Objects/Box/Editor.js +44 -0
- package/libs/Sculpt/Objects/Box/index.d.ts +28 -0
- package/libs/Sculpt/Objects/Box/index.js +107 -0
- package/libs/Sculpt/Objects/Circle/Editor.d.ts +5 -0
- package/libs/Sculpt/Objects/Circle/Editor.js +9 -0
- package/libs/Sculpt/Objects/Circle/index.d.ts +28 -0
- package/libs/Sculpt/Objects/Circle/index.js +114 -0
- package/libs/Sculpt/Objects/Cylinder/Editor.d.ts +5 -0
- package/libs/Sculpt/Objects/Cylinder/Editor.js +41 -0
- package/libs/Sculpt/Objects/Cylinder/index.d.ts +30 -0
- package/libs/Sculpt/Objects/Cylinder/index.js +100 -0
- package/libs/Sculpt/Objects/Point/Editor.d.ts +8 -0
- package/libs/Sculpt/Objects/Point/Editor.js +25 -0
- package/libs/Sculpt/Objects/Point/index.d.ts +35 -0
- package/libs/Sculpt/Objects/Point/index.js +92 -0
- package/libs/Sculpt/Objects/Polygon/Editor.d.ts +8 -0
- package/libs/Sculpt/Objects/Polygon/Editor.js +23 -0
- package/libs/Sculpt/Objects/Polygon/index.d.ts +28 -0
- package/libs/Sculpt/Objects/Polygon/index.js +113 -0
- package/libs/Sculpt/Objects/Polyline/Editor.d.ts +25 -0
- package/libs/Sculpt/Objects/Polyline/Editor.js +68 -0
- package/libs/Sculpt/Objects/Polyline/index.d.ts +31 -0
- package/libs/Sculpt/Objects/Polyline/index.js +96 -0
- package/libs/Sculpt/Objects/Prism/Editor.d.ts +5 -0
- package/libs/Sculpt/Objects/Prism/Editor.js +44 -0
- package/libs/Sculpt/Objects/Prism/index.d.ts +28 -0
- package/libs/Sculpt/Objects/Prism/index.js +105 -0
- package/libs/Sculpt/Objects/Rectangle/Editor.d.ts +5 -0
- package/libs/Sculpt/Objects/Rectangle/Editor.js +9 -0
- package/libs/Sculpt/Objects/Rectangle/index.d.ts +29 -0
- package/libs/Sculpt/Objects/Rectangle/index.js +105 -0
- package/libs/Sculpt/index.d.ts +184 -0
- package/libs/Sculpt/index.js +209 -0
- package/libs/Sculpt/typings/index.d.ts +16 -0
- package/libs/Sculpt/typings/utils.type.d.ts +12 -0
- package/libs/Sculpt/utils/color.d.ts +40 -0
- package/libs/Sculpt/utils/color.js +7 -0
- package/libs/Sculpt/utils/data.d.ts +7 -0
- package/libs/Sculpt/utils/getBetterNormal.d.ts +2 -0
- package/libs/Sculpt/utils/getBetterNormal.js +8 -0
- package/libs/Sculpt/utils/radiusToSegments.d.ts +1 -0
- package/libs/Sculpt/utils/radiusToSegments.js +6 -0
- package/libs/Sculpt/utils/three/ColoredMesh.d.ts +17 -0
- package/libs/Sculpt/utils/three/ColoredMesh.js +58 -0
- package/libs/Sculpt/utils/three/RectangleGeometry.d.ts +6 -0
- package/libs/Sculpt/utils/three/RectangleGeometry.js +19 -0
- package/libs/Sculpt/utils/three/rayOnLine.d.ts +5 -0
- package/libs/Sculpt/utils/three/rayOnLine.js +8 -0
- package/libs/base/BasePlugin.js +1 -1
- package/libs/index.d.ts +1 -0
- package/libs/index.js +173 -127
- package/libs/shared-utils/Object3DHelper/Base/BaseController.d.ts +13 -5
- package/libs/shared-utils/Object3DHelper/Base/BaseController.js +95 -80
- package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +17 -6
- package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +40 -35
- package/libs/shared-utils/Object3DHelper/Controller/MoveController.js +9 -9
- package/libs/shared-utils/Object3DHelper/Controller/RotateController.d.ts +0 -1
- package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +54 -53
- package/libs/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +14 -7
- package/libs/shared-utils/Object3DHelper/Controller/ScaleController.js +49 -15
- package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +4 -2
- package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +16 -12
- package/libs/shared-utils/Object3DHelper/Helper/Objects/ArrowGroup.js +8 -5
- package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +3 -2
- package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +21 -12
- package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +12 -3
- package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.js +38 -5
- package/libs/shared-utils/Object3DHelper/typings/Hooks.d.ts +1 -0
- package/libs/shared-utils/Object3DHelper/typings/index.d.ts +11 -0
- package/libs/shared-utils/Object3DHelper/utils/boundingBox.js +22 -21
- package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +2 -0
- package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.js +7 -0
- package/libs/shared-utils/Subscribe.js +1 -1
- package/libs/shared-utils/createLine/index.d.ts +2 -2
- package/libs/shared-utils/createLine/index.js +5 -5
- package/libs/shared-utils/five/FiveDomEvents.d.ts +50 -13
- package/libs/shared-utils/five/FiveDomEvents.js +135 -90
- package/libs/shared-utils/five/FiveLine.d.ts +8 -0
- package/libs/shared-utils/five/FiveLine.js +15 -0
- package/libs/shared-utils/five/getPosition.d.ts +14 -0
- package/libs/shared-utils/five/getPosition.js +45 -0
- package/libs/shared-utils/five/getRaycasterByNdcPosition.d.ts +6 -0
- package/libs/shared-utils/five/getRaycasterByNdcPosition.js +8 -0
- package/libs/shared-utils/logger.js +1 -1
- package/libs/shared-utils/positionToVector3.d.ts +1 -0
- package/libs/shared-utils/positionToVector3.js +7 -4
- package/libs/shared-utils/three/IObject3D.d.ts +4 -0
- package/libs/shared-utils/three/IObject3D.js +22 -9
- package/libs/shared-utils/three/Magnifier.d.ts +33 -19
- package/libs/shared-utils/three/Magnifier.js +112 -70
- package/libs/shared-utils/three/PointSelector.d.ts +25 -11
- package/libs/shared-utils/three/PointSelector.js +70 -78
- package/libs/shared-utils/three/PointSelectorHelper.d.ts +2 -0
- package/libs/shared-utils/three/PointSelectorHelper.js +14 -14
- package/libs/shared-utils/three/generatePolygonGeometry.js +15 -0
- package/{dist/PanoMeasurePlugin/utils → libs/shared-utils/three}/geometryUtil.d.ts +1 -1
- package/libs/shared-utils/three/geometryUtil.js +37 -0
- package/libs/shared-utils/three/getIntersect.d.ts +16 -2
- package/libs/shared-utils/three/getIntersect.js +20 -5
- package/libs/shared-utils/three/getNormal.d.ts +1 -1
- package/libs/shared-utils/three/getNormal.js +8 -7
- package/libs/shared-utils/three/recurveFindObject.d.ts +2 -0
- package/libs/shared-utils/three/recurveFindObject.js +6 -0
- package/libs/shared-utils/three/vector3ToArray.d.ts +3 -0
- package/libs/shared-utils/three/vector3ToArray.js +6 -0
- package/libs/vendor/hotkeys-js/dist/hotkeys.esm.js +372 -0
- package/package.json +4 -3
- package/dist/shared-utils/getIntersectionFromEvent.d.ts +0 -4
- package/docs/classes/Magnifier.html +0 -485
- package/libs/PanoMeasurePlugin/utils/generatePolygonGeometry.js +0 -13
- package/libs/PanoMeasurePlugin/utils/geometryUtil.js +0 -39
- package/libs/shared-utils/getIntersectionFromEvent.d.ts +0 -4
- package/libs/shared-utils/getIntersectionFromEvent.js +0 -9
- /package/dist/{PanoMeasurePlugin/utils → shared-utils/three}/generatePolygonGeometry.d.ts +0 -0
- /package/libs/{PanoMeasurePlugin/utils → shared-utils/three}/generatePolygonGeometry.d.ts +0 -0
|
@@ -21,8 +21,8 @@ import * as I from "three";
|
|
|
21
21
|
import { Vector3 as w } from "three";
|
|
22
22
|
import { centerPoint as b } from "../../../shared-utils/three/centerPoint.js";
|
|
23
23
|
import { loadPicture as x } from "../../../shared-utils/three/loadTexture.js";
|
|
24
|
-
import { QuadrangleGeometry as
|
|
25
|
-
import { getVideoTexture as
|
|
24
|
+
import { QuadrangleGeometry as H, QuadrangleMesh as P } from "../../../shared-utils/three/Quadrangle.js";
|
|
25
|
+
import { getVideoTexture as V } from "../../../shared-utils/three/loadVideoTexture.js";
|
|
26
26
|
import { Image_Play_Icon_With_Text as L, Image_Play_Icon as T } from "../../Assets/Icon.js";
|
|
27
27
|
import { getPositionsByObjectFit as g } from "../../../shared-utils/three/getPositionsByObjectFit.js";
|
|
28
28
|
import { FragmentTransparencyMaterial as R } from "../../../shared-utils/three/FragmentTransparencyMaterial.js";
|
|
@@ -68,7 +68,7 @@ class $ extends C {
|
|
|
68
68
|
(p = t == null ? void 0 : t.objectFit) != null ? p : "contain",
|
|
69
69
|
a,
|
|
70
70
|
s.image.width / s.image.height
|
|
71
|
-
), l = b(...d), m = d.map((y) => y.clone().sub(l)), f = new
|
|
71
|
+
), l = b(...d), m = d.map((y) => y.clone().sub(l)), f = new H(m);
|
|
72
72
|
this.position.copy(l), this.geometry = f, this.material = M;
|
|
73
73
|
}).catch((s) => {
|
|
74
74
|
console.error(`Imageplane error ${s == null ? void 0 : s.message}`);
|
|
@@ -175,9 +175,14 @@ class q extends C {
|
|
|
175
175
|
}))();
|
|
176
176
|
if (!e)
|
|
177
177
|
return;
|
|
178
|
-
this.domEvents.addAutoBindEventListener(
|
|
179
|
-
|
|
180
|
-
|
|
178
|
+
this.domEvents.addAutoBindEventListener(
|
|
179
|
+
e,
|
|
180
|
+
"click",
|
|
181
|
+
() => {
|
|
182
|
+
!this.videoInstance.paused && this.videoInstance.muted ? this.videoInstance.muted = !1 : this.pause();
|
|
183
|
+
},
|
|
184
|
+
{ noEmitWhenHide: !0 }
|
|
185
|
+
);
|
|
181
186
|
const i = e.material.map.image;
|
|
182
187
|
return i.addEventListener("playing", () => {
|
|
183
188
|
this.coverMesh || this.remove(this.buttonMesh), this.render();
|
|
@@ -195,9 +200,14 @@ class q extends C {
|
|
|
195
200
|
if (this.buttonMesh)
|
|
196
201
|
return this.buttonMesh;
|
|
197
202
|
const i = (f = (m = this.videoMesh) == null ? void 0 : m.geometry.points[0].distanceTo(this.videoMesh.geometry.points[3])) != null ? f : 1 / 0, t = (y = (p = this.coverMesh) == null ? void 0 : p.geometry.points[0].distanceTo(this.coverMesh.geometry.points[3])) != null ? y : 1 / 0, n = this.cornerPoints[0].distanceTo(this.cornerPoints[3]), o = Math.min(i, t, n) / n * 0.3, { texture: s, transparent: u } = yield this.getImageTexture(this.buttonSrc), M = g("contain", this.cornerPoints, s.image.width / s.image.height), d = new P(M, new R(s));
|
|
198
|
-
d.position.copy(new w(0, 0, 0)), d.name = "buttonMesh", d.scale.set(o, o, o), this.domEvents.addAutoBindEventListener(
|
|
199
|
-
|
|
200
|
-
|
|
203
|
+
d.position.copy(new w(0, 0, 0)), d.name = "buttonMesh", d.scale.set(o, o, o), this.domEvents.addAutoBindEventListener(
|
|
204
|
+
d,
|
|
205
|
+
"click",
|
|
206
|
+
() => {
|
|
207
|
+
this.play();
|
|
208
|
+
},
|
|
209
|
+
{ noEmitWhenHide: !0 }
|
|
210
|
+
);
|
|
201
211
|
const l = E(M, 5e-4);
|
|
202
212
|
return d.position.add(l), d;
|
|
203
213
|
}))();
|
|
@@ -217,7 +227,7 @@ class q extends C {
|
|
|
217
227
|
var t, n;
|
|
218
228
|
if ((t = this.videoTextureMap) != null && t.has(e))
|
|
219
229
|
return this.videoTextureMap.get(e);
|
|
220
|
-
const i =
|
|
230
|
+
const i = V(e);
|
|
221
231
|
return (n = this.videoTextureMap) == null || n.set(e, i), i;
|
|
222
232
|
}
|
|
223
233
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { LineStyle } from '../utils/color';
|
|
2
|
+
import { type AnyPositions } from '../../shared-utils/positionToVector3';
|
|
3
|
+
import { PolylineWithDotsMesh } from './Polyline';
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
import PolygonMesh from './Polygon';
|
|
6
|
+
import type { PointsData } from '../utils/data';
|
|
7
|
+
import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
|
|
8
|
+
export type AreaStyle = ColoredMeshStyle & LineStyle;
|
|
9
|
+
export type AreaData = PointsData;
|
|
10
|
+
export declare class AreaMesh extends PolylineWithDotsMesh {
|
|
11
|
+
name: string;
|
|
12
|
+
polygon: PolygonMesh;
|
|
13
|
+
get color(): THREE.Color;
|
|
14
|
+
get opacity(): number;
|
|
15
|
+
/** 多边形前三个点组成的平面,用来使得后面加的点也落在这个平面上 */
|
|
16
|
+
private planeHelper;
|
|
17
|
+
private planeHelperNeedUpdate;
|
|
18
|
+
constructor(params?: Partial<AreaStyle & AreaData>);
|
|
19
|
+
setStyle(params: Partial<AreaStyle>): void;
|
|
20
|
+
setPoints(points: AnyPositions, autoClosed?: boolean): void;
|
|
21
|
+
getGeometryInfo(): {
|
|
22
|
+
center: THREE.Vector3;
|
|
23
|
+
area: number;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* @description: 获取一个点投影在当前平面上的点
|
|
27
|
+
*/
|
|
28
|
+
projectPoint(point: THREE.Vector3): THREE.Vector3;
|
|
29
|
+
private updatePlaneHelper;
|
|
30
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
var y = Object.defineProperty;
|
|
2
|
+
var r = Object.getOwnPropertySymbols;
|
|
3
|
+
var u = Object.prototype.hasOwnProperty, c = Object.prototype.propertyIsEnumerable;
|
|
4
|
+
var i = (o, t, e) => t in o ? y(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e, p = (o, t) => {
|
|
5
|
+
for (var e in t || (t = {}))
|
|
6
|
+
u.call(t, e) && i(o, e, t[e]);
|
|
7
|
+
if (r)
|
|
8
|
+
for (var e of r(t))
|
|
9
|
+
c.call(t, e) && i(o, e, t[e]);
|
|
10
|
+
return o;
|
|
11
|
+
};
|
|
12
|
+
var l = (o, t, e) => (i(o, typeof t != "symbol" ? t + "" : t, e), e);
|
|
13
|
+
import { anyPositionToVector3 as g } from "../../shared-utils/positionToVector3.js";
|
|
14
|
+
import { PolylineWithDotsMesh as a } from "./Polyline.js";
|
|
15
|
+
import * as h from "three";
|
|
16
|
+
import { PolygonMesh as d } from "./Polygon.js";
|
|
17
|
+
class N extends a {
|
|
18
|
+
constructor(e) {
|
|
19
|
+
super();
|
|
20
|
+
l(this, "name", "AreaMesh");
|
|
21
|
+
l(this, "polygon");
|
|
22
|
+
/** 多边形前三个点组成的平面,用来使得后面加的点也落在这个平面上 */
|
|
23
|
+
l(this, "planeHelper");
|
|
24
|
+
l(this, "planeHelperNeedUpdate", !0);
|
|
25
|
+
this.add(this.polygon = new d(e)), e != null && e.points && this.setPoints(e.points), e && this.setStyle(e);
|
|
26
|
+
}
|
|
27
|
+
get color() {
|
|
28
|
+
return this.polygon.color;
|
|
29
|
+
}
|
|
30
|
+
get opacity() {
|
|
31
|
+
return this.polygon.opacity;
|
|
32
|
+
}
|
|
33
|
+
setStyle(e) {
|
|
34
|
+
var s;
|
|
35
|
+
super.setStyle(p({ color: e.lineColor }, e)), (s = this.polygon) == null || s.setStyle(e);
|
|
36
|
+
}
|
|
37
|
+
setPoints(e, s = !0) {
|
|
38
|
+
const n = e.map(g);
|
|
39
|
+
s && n.length >= 3 && !n[0].equals(n.at(-1)) && n.push(n[0]), super.setPoints(n), this.polygon.setPoints(n), this.planeHelperNeedUpdate = !0;
|
|
40
|
+
}
|
|
41
|
+
getGeometryInfo() {
|
|
42
|
+
return this.polygon.getGeometryInfo();
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* @description: 获取一个点投影在当前平面上的点
|
|
46
|
+
*/
|
|
47
|
+
projectPoint(e) {
|
|
48
|
+
return e && (this.planeHelperNeedUpdate && this.updatePlaneHelper(), this.planeHelper ? this.planeHelper.projectPoint(e, new h.Vector3()) : e);
|
|
49
|
+
}
|
|
50
|
+
updatePlaneHelper() {
|
|
51
|
+
this.points.length >= 3 ? this.planeHelper = new h.Plane().setFromCoplanarPoints(this.points[0], this.points[1], this.points[2]) : this.planeHelper = null, this.planeHelperNeedUpdate = !1;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
N as AreaMesh
|
|
56
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { IObject3D } from '../../shared-utils/three/IObject3D';
|
|
2
|
+
import { type AnyPositions, type AnyPosition } from '../../shared-utils/positionToVector3';
|
|
3
|
+
import type * as THREE from 'three';
|
|
4
|
+
import type { LineStyle } from '../utils/color';
|
|
5
|
+
import { RectangleWithEdgeMesh } from './RectangleWithEdge';
|
|
6
|
+
import { RectangleMesh } from './Rectangle';
|
|
7
|
+
import type { PointsData } from '../utils/data';
|
|
8
|
+
import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
|
|
9
|
+
export type BoxStyle = ColoredMeshStyle & LineStyle;
|
|
10
|
+
export type BoxData = PointsData & {
|
|
11
|
+
heightPoint: AnyPosition;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* @description: Box
|
|
15
|
+
*/
|
|
16
|
+
export declare class BoxMesh extends IObject3D {
|
|
17
|
+
name: string;
|
|
18
|
+
get planes(): RectangleMesh[];
|
|
19
|
+
bottomPlane: RectangleWithEdgeMesh;
|
|
20
|
+
topPlane: RectangleWithEdgeMesh;
|
|
21
|
+
heightPoint: THREE.Vector3;
|
|
22
|
+
protected edgePlanes: RectangleWithEdgeMesh[];
|
|
23
|
+
get color(): THREE.Color;
|
|
24
|
+
get lineColor(): THREE.Color;
|
|
25
|
+
get lineWidth(): number;
|
|
26
|
+
get occlusionVisibility(): boolean;
|
|
27
|
+
constructor(params?: Partial<BoxStyle & BoxData>);
|
|
28
|
+
setPoints(params: Partial<BoxData>): void;
|
|
29
|
+
setBottomPoints(points: AnyPositions): void;
|
|
30
|
+
setTopHeightPoint(point: AnyPosition): void;
|
|
31
|
+
setEdgePlanes(): void;
|
|
32
|
+
setStyle(style: Partial<BoxStyle>): void;
|
|
33
|
+
highlight(): void;
|
|
34
|
+
unhighlight(): void;
|
|
35
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
var p = Object.defineProperty;
|
|
2
|
+
var a = (e, o, t) => o in e ? p(e, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[o] = t;
|
|
3
|
+
var n = (e, o, t) => (a(e, typeof o != "symbol" ? o + "" : o, t), t);
|
|
4
|
+
import { IObject3D as d } from "../../shared-utils/three/IObject3D.js";
|
|
5
|
+
import { anyPositionToVector3 as c } from "../../shared-utils/positionToVector3.js";
|
|
6
|
+
import "hammerjs";
|
|
7
|
+
import "three";
|
|
8
|
+
import "@realsee/five";
|
|
9
|
+
import "../../vendor/@tweenjs/tween/dist/tween.esm.js.js";
|
|
10
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
|
|
11
|
+
import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
12
|
+
import { notNil as r } from "../../shared-utils/isNil.js";
|
|
13
|
+
import { RectangleWithEdgeMesh as P } from "./RectangleWithEdge.js";
|
|
14
|
+
import { RectangleMesh as m } from "./Rectangle.js";
|
|
15
|
+
class T extends d {
|
|
16
|
+
constructor(t) {
|
|
17
|
+
super();
|
|
18
|
+
n(this, "name", "BoxMesh");
|
|
19
|
+
n(this, "bottomPlane");
|
|
20
|
+
n(this, "topPlane");
|
|
21
|
+
n(this, "heightPoint");
|
|
22
|
+
n(this, "edgePlanes", []);
|
|
23
|
+
this.bottomPlane = new P(t), this.topPlane = new P(t), this.add(this.bottomPlane), t != null && t.points && this.setPoints(t);
|
|
24
|
+
}
|
|
25
|
+
get planes() {
|
|
26
|
+
return this.children.filter((t) => t instanceof m);
|
|
27
|
+
}
|
|
28
|
+
get color() {
|
|
29
|
+
var t;
|
|
30
|
+
return (t = this.bottomPlane) == null ? void 0 : t.color;
|
|
31
|
+
}
|
|
32
|
+
get lineColor() {
|
|
33
|
+
var t;
|
|
34
|
+
return (t = this.bottomPlane) == null ? void 0 : t.lineColor;
|
|
35
|
+
}
|
|
36
|
+
get lineWidth() {
|
|
37
|
+
var t;
|
|
38
|
+
return (t = this.bottomPlane) == null ? void 0 : t.lineWidth;
|
|
39
|
+
}
|
|
40
|
+
get occlusionVisibility() {
|
|
41
|
+
var t;
|
|
42
|
+
return (t = this.bottomPlane) == null ? void 0 : t.occlusionVisibility;
|
|
43
|
+
}
|
|
44
|
+
setPoints(t) {
|
|
45
|
+
r(t.heightPoint) && this.setTopHeightPoint(t.heightPoint), r(t.points) && this.setBottomPoints(t.points);
|
|
46
|
+
}
|
|
47
|
+
setBottomPoints(t) {
|
|
48
|
+
const i = t.map(c).filter(r);
|
|
49
|
+
if (i.length < 3) {
|
|
50
|
+
console.error("Invalid position");
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
this.bottomPlane.setPoints(i), this.heightPoint && this.setTopHeightPoint(this.heightPoint);
|
|
54
|
+
}
|
|
55
|
+
setTopHeightPoint(t) {
|
|
56
|
+
if (!this.bottomPlane.points.length)
|
|
57
|
+
return;
|
|
58
|
+
const i = c(t);
|
|
59
|
+
this.heightPoint = i, this.addIfNotExists(this.topPlane);
|
|
60
|
+
const h = this.bottomPlane.projectPoint(i), s = i.clone().sub(h), l = this.bottomPlane.points.map((g) => g.clone().add(s));
|
|
61
|
+
this.topPlane.setPoints(l), this.up.copy(s.clone().normalize()), this.setEdgePlanes();
|
|
62
|
+
}
|
|
63
|
+
setEdgePlanes() {
|
|
64
|
+
for (let t = 0; t < 4; t++) {
|
|
65
|
+
let i = this.edgePlanes[t];
|
|
66
|
+
i || (this.edgePlanes[t] = new P({
|
|
67
|
+
color: this.color,
|
|
68
|
+
lineColor: this.lineColor,
|
|
69
|
+
lineWidth: this.lineWidth,
|
|
70
|
+
occlusionVisibility: this.occlusionVisibility
|
|
71
|
+
}), i = this.edgePlanes[t]);
|
|
72
|
+
const h = this.topPlane.sortedPoint, s = this.bottomPlane.sortedPoint, l = t === 3 ? 0 : t + 1;
|
|
73
|
+
i.setPoints([h[t], s[l], s[t]]), this.addIfNotExists(i);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
setStyle(t) {
|
|
77
|
+
this.planes.forEach((i) => i.setStyle(t));
|
|
78
|
+
}
|
|
79
|
+
highlight() {
|
|
80
|
+
this.planes.forEach((t) => t.highlight());
|
|
81
|
+
}
|
|
82
|
+
unhighlight() {
|
|
83
|
+
this.planes.forEach((t) => t.unhighlight());
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
export {
|
|
87
|
+
T as BoxMesh
|
|
88
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import { type OcclusionStyle } from '../utils/color';
|
|
3
|
+
import ColoredMesh, { type ColoredMeshStyle } from '../utils/three/ColoredMesh';
|
|
4
|
+
import { type AnyPosition } from '../../shared-utils/positionToVector3';
|
|
5
|
+
export type CircleStyle = ColoredMeshStyle & OcclusionStyle;
|
|
6
|
+
export type CircleData = {
|
|
7
|
+
center: AnyPosition;
|
|
8
|
+
normal: AnyPosition;
|
|
9
|
+
radius: number;
|
|
10
|
+
};
|
|
11
|
+
type Params = Partial<CircleStyle & CircleData>;
|
|
12
|
+
export declare class CircleMesh extends ColoredMesh {
|
|
13
|
+
get center(): THREE.Vector3;
|
|
14
|
+
get normal(): THREE.Vector3;
|
|
15
|
+
private set normal(value);
|
|
16
|
+
get radius(): number;
|
|
17
|
+
meshFont: THREE.Mesh<THREE.CircleGeometry, THREE.MeshBasicMaterial>;
|
|
18
|
+
private _normal;
|
|
19
|
+
private opacityBeforeHighlight;
|
|
20
|
+
private highlighted;
|
|
21
|
+
constructor(params?: Params);
|
|
22
|
+
setPoints(params: CircleData): void;
|
|
23
|
+
highlight(): void;
|
|
24
|
+
unhighlight(): void;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var g = Object.defineProperty;
|
|
2
|
+
var c = (i, e, t) => e in i ? g(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
|
|
3
|
+
var o = (i, e, t) => (c(i, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
+
import * as d from "three";
|
|
5
|
+
import { DEFAULT_HIGHLIGHT_OPACITY as u } from "../utils/color.js";
|
|
6
|
+
import { radiusToSegments as y } from "../utils/radiusToSegments.js";
|
|
7
|
+
import { ColoredMesh as f } from "../utils/three/ColoredMesh.js";
|
|
8
|
+
import { anyPositionToVector3 as s } from "../../shared-utils/positionToVector3.js";
|
|
9
|
+
class P extends f {
|
|
10
|
+
constructor(t) {
|
|
11
|
+
super(t);
|
|
12
|
+
o(this, "_normal");
|
|
13
|
+
o(this, "opacityBeforeHighlight");
|
|
14
|
+
o(this, "highlighted", !1);
|
|
15
|
+
t != null && t.center && (t != null && t.normal) && (t != null && t.radius) && this.setPoints(t);
|
|
16
|
+
}
|
|
17
|
+
get center() {
|
|
18
|
+
return this.position.clone();
|
|
19
|
+
}
|
|
20
|
+
get normal() {
|
|
21
|
+
return this._normal;
|
|
22
|
+
}
|
|
23
|
+
set normal(t) {
|
|
24
|
+
this._normal = t;
|
|
25
|
+
}
|
|
26
|
+
get radius() {
|
|
27
|
+
return this.meshFont.geometry.parameters.radius;
|
|
28
|
+
}
|
|
29
|
+
setPoints(t) {
|
|
30
|
+
const h = s(t.center), n = s(t.normal), r = t.radius, l = y(r);
|
|
31
|
+
this.geometry = new d.CircleGeometry(r, l), this.position.copy(h), this.lookAt(n.clone().add(h)), this.normal = n.clone().normalize(), this.needsRender = !0;
|
|
32
|
+
}
|
|
33
|
+
highlight() {
|
|
34
|
+
this.highlighted || (this.highlighted = !0, this.opacityBeforeHighlight = this.opacity, this.setStyle({ opacity: this.opacity * u }), this.needsRender = !0);
|
|
35
|
+
}
|
|
36
|
+
unhighlight() {
|
|
37
|
+
this.highlighted && (this.highlighted = !1, this.setStyle({ opacity: this.opacityBeforeHighlight }), this.needsRender = !0);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export {
|
|
41
|
+
P as CircleMesh
|
|
42
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { LineStyle } from '../utils/color';
|
|
2
|
+
import { CircleMesh, type CircleData, type CircleStyle } from './Circle';
|
|
3
|
+
export type CircleWithEdgeMeshStyle = CircleStyle & LineStyle;
|
|
4
|
+
export declare class CircleWithEdgeMesh extends CircleMesh {
|
|
5
|
+
private edgeLine;
|
|
6
|
+
constructor(params?: Partial<CircleWithEdgeMeshStyle & CircleData>);
|
|
7
|
+
setPoints(...params: Parameters<InstanceType<typeof CircleMesh>['setPoints']>): void;
|
|
8
|
+
setStyle(style: Partial<CircleWithEdgeMeshStyle>): void;
|
|
9
|
+
highlight(): void;
|
|
10
|
+
unhighlight(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
var c = Object.defineProperty;
|
|
2
|
+
var r = Object.getOwnPropertySymbols;
|
|
3
|
+
var u = Object.prototype.hasOwnProperty, L = Object.prototype.propertyIsEnumerable;
|
|
4
|
+
var P = (i, s, e) => s in i ? c(i, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[s] = e;
|
|
5
|
+
var l = (i, s) => {
|
|
6
|
+
var e = {};
|
|
7
|
+
for (var t in i)
|
|
8
|
+
u.call(i, t) && s.indexOf(t) < 0 && (e[t] = i[t]);
|
|
9
|
+
if (i != null && r)
|
|
10
|
+
for (var t of r(i))
|
|
11
|
+
s.indexOf(t) < 0 && L.call(i, t) && (e[t] = i[t]);
|
|
12
|
+
return e;
|
|
13
|
+
};
|
|
14
|
+
var d = (i, s, e) => (P(i, typeof s != "symbol" ? s + "" : s, e), e);
|
|
15
|
+
import { CircleMesh as p } from "./Circle.js";
|
|
16
|
+
import { LineMesh as y } from "./Line.js";
|
|
17
|
+
class S extends p {
|
|
18
|
+
constructor(e) {
|
|
19
|
+
const o = e != null ? e : {}, { normal: t, radius: h, center: n } = o, g = l(o, ["normal", "radius", "center"]);
|
|
20
|
+
super(g);
|
|
21
|
+
d(this, "edgeLine");
|
|
22
|
+
this.edgeLine = new y(g), this.add(this.edgeLine), t && h && n && this.setPoints({ normal: t, radius: h, center: n });
|
|
23
|
+
}
|
|
24
|
+
setPoints(...e) {
|
|
25
|
+
super.setPoints(...e);
|
|
26
|
+
const t = this.meshFont.geometry.vertices.slice(1);
|
|
27
|
+
this.edgeLine.setPoints(t.concat(t[0]));
|
|
28
|
+
}
|
|
29
|
+
setStyle(e) {
|
|
30
|
+
super.setStyle(e), this.edgeLine.setStyle(e);
|
|
31
|
+
}
|
|
32
|
+
highlight() {
|
|
33
|
+
super.highlight(), this.edgeLine.highlight();
|
|
34
|
+
}
|
|
35
|
+
unhighlight() {
|
|
36
|
+
super.unhighlight(), this.edgeLine.unhighlight();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export {
|
|
40
|
+
S as CircleWithEdgeMesh
|
|
41
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { IObject3D } from '../../shared-utils/three/IObject3D';
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
import { CircleWithEdgeMesh, type CircleWithEdgeMeshStyle } from './CircleWithEdge';
|
|
4
|
+
import ColoredMesh from '../utils/three/ColoredMesh';
|
|
5
|
+
import { type AnyPosition } from '../../shared-utils/positionToVector3';
|
|
6
|
+
export type CylinderStyle = CircleWithEdgeMeshStyle;
|
|
7
|
+
export interface CylinderData {
|
|
8
|
+
bottomCenter: AnyPosition;
|
|
9
|
+
topCenter: AnyPosition;
|
|
10
|
+
radius: number;
|
|
11
|
+
}
|
|
12
|
+
type Params = Partial<CylinderStyle & CylinderData>;
|
|
13
|
+
export declare class CylinderMesh extends IObject3D {
|
|
14
|
+
get bottomCenter(): THREE.Vector3;
|
|
15
|
+
get topCenter(): THREE.Vector3;
|
|
16
|
+
get normal(): THREE.Vector3;
|
|
17
|
+
get radius(): number;
|
|
18
|
+
get color(): THREE.Color;
|
|
19
|
+
bottomCircle: CircleWithEdgeMesh;
|
|
20
|
+
topCircle: CircleWithEdgeMesh;
|
|
21
|
+
protected edgeMesh: ColoredMesh;
|
|
22
|
+
private opacityBeforeHighlight;
|
|
23
|
+
private highlighted;
|
|
24
|
+
private params;
|
|
25
|
+
constructor(params?: Params);
|
|
26
|
+
setPoints(params: CylinderData): void;
|
|
27
|
+
setTopCenter(center: THREE.Vector3): void;
|
|
28
|
+
setBottomCenter(center: THREE.Vector3): void;
|
|
29
|
+
setStyle(style: CylinderStyle): void;
|
|
30
|
+
highlight(): void;
|
|
31
|
+
unhighlight(): void;
|
|
32
|
+
private setEdgeMesh;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
var u = Object.defineProperty;
|
|
2
|
+
var c = Object.getOwnPropertySymbols;
|
|
3
|
+
var p = Object.prototype.hasOwnProperty, b = Object.prototype.propertyIsEnumerable;
|
|
4
|
+
var n = (i, e, t) => e in i ? u(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t, l = (i, e) => {
|
|
5
|
+
for (var t in e || (e = {}))
|
|
6
|
+
p.call(e, t) && n(i, t, e[t]);
|
|
7
|
+
if (c)
|
|
8
|
+
for (var t of c(e))
|
|
9
|
+
b.call(e, t) && n(i, t, e[t]);
|
|
10
|
+
return i;
|
|
11
|
+
};
|
|
12
|
+
var o = (i, e, t) => (n(i, typeof e != "symbol" ? e + "" : e, t), t);
|
|
13
|
+
import { IObject3D as f } from "../../shared-utils/three/IObject3D.js";
|
|
14
|
+
import * as h from "three";
|
|
15
|
+
import "hammerjs";
|
|
16
|
+
import "@realsee/five";
|
|
17
|
+
import "../../vendor/@tweenjs/tween/dist/tween.esm.js.js";
|
|
18
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
|
|
19
|
+
import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
20
|
+
import { notNil as d } from "../../shared-utils/isNil.js";
|
|
21
|
+
import { CircleWithEdgeMesh as g } from "./CircleWithEdge.js";
|
|
22
|
+
import { radiusToSegments as M } from "../utils/radiusToSegments.js";
|
|
23
|
+
import { ColoredMesh as y } from "../utils/three/ColoredMesh.js";
|
|
24
|
+
import { anyPositionToVector3 as C } from "../../shared-utils/positionToVector3.js";
|
|
25
|
+
import { DEFAULT_HIGHLIGHT_OPACITY as a } from "../utils/color.js";
|
|
26
|
+
class q extends f {
|
|
27
|
+
constructor(t) {
|
|
28
|
+
super();
|
|
29
|
+
o(this, "bottomCircle");
|
|
30
|
+
o(this, "topCircle");
|
|
31
|
+
o(this, "edgeMesh");
|
|
32
|
+
o(this, "opacityBeforeHighlight");
|
|
33
|
+
o(this, "highlighted", !1);
|
|
34
|
+
o(this, "params");
|
|
35
|
+
this.params = t, this.bottomCircle = new g(t), this.bottomCircle.name = "bottomCircle", this.topCircle = new g(t), this.topCircle.name = "topCircle", this.edgeMesh = new y(t), t != null && t.bottomCenter && (t != null && t.topCenter) && (t != null && t.radius) && this.setPoints(t), this.addIfNotExists(this.bottomCircle);
|
|
36
|
+
}
|
|
37
|
+
get bottomCenter() {
|
|
38
|
+
return this.bottomCircle.center;
|
|
39
|
+
}
|
|
40
|
+
get topCenter() {
|
|
41
|
+
return this.topCircle.center;
|
|
42
|
+
}
|
|
43
|
+
get normal() {
|
|
44
|
+
return this.bottomCircle.normal;
|
|
45
|
+
}
|
|
46
|
+
get radius() {
|
|
47
|
+
return this.bottomCircle.radius;
|
|
48
|
+
}
|
|
49
|
+
get color() {
|
|
50
|
+
return this.bottomCircle.color;
|
|
51
|
+
}
|
|
52
|
+
setPoints(t) {
|
|
53
|
+
const r = C(t.topCenter), s = C(t.bottomCenter), m = r.clone().sub(s).normalize();
|
|
54
|
+
this.bottomCircle.setPoints({ center: s, normal: m, radius: t.radius }), this.setTopCenter(r), this.needsRender = !0;
|
|
55
|
+
}
|
|
56
|
+
setTopCenter(t) {
|
|
57
|
+
this.addIfNotExists(this.topCircle), this.topCircle.setPoints({ center: t, normal: this.normal, radius: this.radius }), this.setEdgeMesh();
|
|
58
|
+
}
|
|
59
|
+
setBottomCenter(t) {
|
|
60
|
+
this.addIfNotExists(this.bottomCircle), this.bottomCircle.setPoints({ center: t, normal: this.normal, radius: this.radius }), this.setEdgeMesh();
|
|
61
|
+
}
|
|
62
|
+
setStyle(t) {
|
|
63
|
+
this.params = l(l({}, this.params), t), d(t.color) && this.bottomCircle.setStyle({ color: t.color }), d(t.color) && this.topCircle.setStyle({ color: t.color });
|
|
64
|
+
}
|
|
65
|
+
highlight() {
|
|
66
|
+
this.highlighted || (this.highlighted = !0, this.opacityBeforeHighlight = this.edgeMesh.opacity, this.edgeMesh.setStyle({ opacity: this.edgeMesh.opacity * a }), this.bottomCircle.highlight(), this.topCircle.highlight(), this.needsRender = !0);
|
|
67
|
+
}
|
|
68
|
+
unhighlight() {
|
|
69
|
+
this.highlighted && (this.highlighted = !1, this.edgeMesh.setStyle({ opacity: this.opacityBeforeHighlight }), this.bottomCircle.unhighlight(), this.topCircle.unhighlight(), this.needsRender = !0);
|
|
70
|
+
}
|
|
71
|
+
setEdgeMesh() {
|
|
72
|
+
this.addIfNotExists(this.edgeMesh);
|
|
73
|
+
const t = this.topCircle.center, r = this.bottomCircle.center;
|
|
74
|
+
this.edgeMesh.geometry.dispose(), this.edgeMesh.geometry = new h.CylinderGeometry(
|
|
75
|
+
this.radius,
|
|
76
|
+
this.radius,
|
|
77
|
+
t.distanceTo(r),
|
|
78
|
+
M(this.radius),
|
|
79
|
+
1,
|
|
80
|
+
!0
|
|
81
|
+
);
|
|
82
|
+
const s = new h.Quaternion().setFromUnitVectors(new h.Vector3(0, 1, 0), this.normal.clone().normalize());
|
|
83
|
+
this.edgeMesh.position.copy(new h.Vector3().lerpVectors(r, t, 0.5)), this.edgeMesh.quaternion.copy(s);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
export {
|
|
87
|
+
q as CylinderMesh
|
|
88
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import { type OcclusionStyle, type LineStyle } from '../utils/color';
|
|
3
|
+
import { type AnyPositions } from '../../shared-utils/positionToVector3';
|
|
4
|
+
import { IObject3D } from '../../shared-utils/three/IObject3D';
|
|
5
|
+
import type { PointsData } from '../utils/data';
|
|
6
|
+
export type LineMeshStyle = LineStyle & {
|
|
7
|
+
dashed?: boolean;
|
|
8
|
+
} & OcclusionStyle;
|
|
9
|
+
export type LineData = PointsData;
|
|
10
|
+
export declare class LineMesh extends IObject3D {
|
|
11
|
+
name: string;
|
|
12
|
+
points: THREE.Vector3[];
|
|
13
|
+
get lineWidth(): number;
|
|
14
|
+
get color(): THREE.Color;
|
|
15
|
+
get dashed(): boolean;
|
|
16
|
+
get occlusionVisibility(): boolean;
|
|
17
|
+
protected highlighted: boolean;
|
|
18
|
+
private line;
|
|
19
|
+
private backLine;
|
|
20
|
+
private opacityBeforeHighlight;
|
|
21
|
+
constructor(params?: Partial<LineMeshStyle & LineData>);
|
|
22
|
+
setPoints(points: AnyPositions): void;
|
|
23
|
+
setResolution(width: number, height: number): void;
|
|
24
|
+
setStyle(params: Partial<LineMeshStyle>): void;
|
|
25
|
+
highlight(): void;
|
|
26
|
+
unhighlight(): void;
|
|
27
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
var k = Object.defineProperty;
|
|
2
|
+
var E = (h, o, e) => o in h ? k(h, o, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[o] = e;
|
|
3
|
+
var l = (h, o, e) => (E(h, typeof o != "symbol" ? o + "" : o, e), e);
|
|
4
|
+
import * as r from "three";
|
|
5
|
+
import { DEFAULT_LINE_COLOR as g, DEFAULT_LINE_WIDTH as w, DEFAULT_HIGHLIGHT_OPACITY as L } from "../utils/color.js";
|
|
6
|
+
import { LineGeometry as y, LineMaterial as a, THREE_Line2 as H } from "@realsee/five/line";
|
|
7
|
+
import { anyPositionToVector3 as C } from "../../shared-utils/positionToVector3.js";
|
|
8
|
+
import { IObject3D as D } from "../../shared-utils/three/IObject3D.js";
|
|
9
|
+
import "hammerjs";
|
|
10
|
+
import "@realsee/five";
|
|
11
|
+
import "../../vendor/@tweenjs/tween/dist/tween.esm.js.js";
|
|
12
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
|
|
13
|
+
import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
14
|
+
import { notNil as s } from "../../shared-utils/isNil.js";
|
|
15
|
+
class b extends a {
|
|
16
|
+
constructor(e) {
|
|
17
|
+
var t, i;
|
|
18
|
+
super(e);
|
|
19
|
+
l(this, "_three_color");
|
|
20
|
+
s(e == null ? void 0 : e.color) && (this.three_color = (t = e == null ? void 0 : e.color) != null ? t : 16777215), Object.keys(e).forEach((n) => {
|
|
21
|
+
["color", "dashed", "dashScale", "dashSize", "gapSize", "resolution"].includes(n) || n in this && (this[n] = e[n]);
|
|
22
|
+
}), this.setDashed((i = e == null ? void 0 : e.dashed) != null ? i : !1);
|
|
23
|
+
}
|
|
24
|
+
get three_color() {
|
|
25
|
+
return this._three_color;
|
|
26
|
+
}
|
|
27
|
+
set three_color(e) {
|
|
28
|
+
this._three_color = e, this.color = e;
|
|
29
|
+
}
|
|
30
|
+
setDashed(e) {
|
|
31
|
+
e ? this.defines.USE_DASH = "" : delete this.defines.USE_DASH, this.needsUpdate = !0;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
class _ extends H {
|
|
35
|
+
constructor(e, t) {
|
|
36
|
+
super(e, t);
|
|
37
|
+
l(this, "name", "Line3");
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
class P extends D {
|
|
41
|
+
constructor(e) {
|
|
42
|
+
var c, d, f, u;
|
|
43
|
+
super();
|
|
44
|
+
l(this, "name", "LineMesh");
|
|
45
|
+
l(this, "points");
|
|
46
|
+
l(this, "highlighted", !1);
|
|
47
|
+
l(this, "line");
|
|
48
|
+
l(this, "backLine");
|
|
49
|
+
l(this, "opacityBeforeHighlight");
|
|
50
|
+
const t = new y(), i = new b({
|
|
51
|
+
color: new r.Color((c = e == null ? void 0 : e.lineColor) != null ? c : g),
|
|
52
|
+
linewidth: (d = e == null ? void 0 : e.lineWidth) != null ? d : w,
|
|
53
|
+
dashScale: 40,
|
|
54
|
+
opacity: 1,
|
|
55
|
+
transparent: !0,
|
|
56
|
+
dashed: (f = e == null ? void 0 : e.dashed) != null ? f : !1
|
|
57
|
+
}), n = new b({
|
|
58
|
+
color: new r.Color((u = e == null ? void 0 : e.lineColor) != null ? u : g),
|
|
59
|
+
linewidth: i == null ? void 0 : i.linewidth,
|
|
60
|
+
dashScale: i.dashScale,
|
|
61
|
+
depthTest: !1,
|
|
62
|
+
depthWrite: !1,
|
|
63
|
+
transparent: !0,
|
|
64
|
+
opacity: 0.2,
|
|
65
|
+
dashed: i.dashed,
|
|
66
|
+
resolution: i.resolution
|
|
67
|
+
});
|
|
68
|
+
this.line = new _(t, i), this.backLine = new _(t, n), this.line.renderOrder = 1, this.backLine.renderOrder = 0, this.line.name = "lineFrontMaterial", this.backLine.name = "lineBackMaterial", e && this.setStyle(e), e != null && e.points && this.setPoints(e.points);
|
|
69
|
+
}
|
|
70
|
+
get lineWidth() {
|
|
71
|
+
return this.line.material.linewidth;
|
|
72
|
+
}
|
|
73
|
+
get color() {
|
|
74
|
+
return new r.Color(this.line.material.three_color);
|
|
75
|
+
}
|
|
76
|
+
get dashed() {
|
|
77
|
+
return this.line.material.dashed;
|
|
78
|
+
}
|
|
79
|
+
get occlusionVisibility() {
|
|
80
|
+
return this.backLine.visible;
|
|
81
|
+
}
|
|
82
|
+
setPoints(e) {
|
|
83
|
+
const t = e.map(C).filter(s);
|
|
84
|
+
if (this.points = t, t.length < 2)
|
|
85
|
+
return;
|
|
86
|
+
this.addIfNotExists(this.line, this.backLine);
|
|
87
|
+
const i = t.flatMap((n) => [n.x, n.y, n.z]);
|
|
88
|
+
i.length > 2 && (this.line.geometry.dispose(), this.line.geometry = new y(), this.backLine.geometry = this.line.geometry), this.line.geometry.setPositions(i), this.line.computeLineDistances(), this.needsRender = !0;
|
|
89
|
+
}
|
|
90
|
+
setResolution(e, t) {
|
|
91
|
+
const i = this.line.material.resolution;
|
|
92
|
+
(i.x !== e || i.y !== t) && (i.set(e, t), this.needsRender = !0);
|
|
93
|
+
const n = this.backLine.material.resolution;
|
|
94
|
+
(n.x !== e || n.y !== t) && (n.set(e, t), this.needsRender = !0);
|
|
95
|
+
}
|
|
96
|
+
setStyle(e) {
|
|
97
|
+
s(e.lineColor) && (this.line.material.three_color = new r.Color(e.lineColor), this.backLine.material.three_color = new r.Color(e.lineColor)), s(e.lineWidth) && (this.line.material.linewidth = e.lineWidth, this.backLine.material.linewidth = e.lineWidth), s(e.dashed) && (this.line.material.setDashed(e.dashed), this.backLine.material.setDashed(e.dashed)), s(e.occlusionVisibility) && (this.backLine.visible = e.occlusionVisibility), this.needsRender = !0;
|
|
98
|
+
}
|
|
99
|
+
highlight() {
|
|
100
|
+
this.highlighted || (this.highlighted = !0, this.opacityBeforeHighlight = this.line.material.opacity, this.line.material.opacity = this.opacityBeforeHighlight * L, this.backLine.material.opacity = this.backLine.material.opacity * L, this.needsRender = !0);
|
|
101
|
+
}
|
|
102
|
+
unhighlight() {
|
|
103
|
+
this.highlighted && (this.highlighted = !1, this.line.material.opacity = this.opacityBeforeHighlight, this.backLine.material.opacity = 0.2, this.needsRender = !0);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
export {
|
|
107
|
+
P as LineMesh
|
|
108
|
+
};
|