@realsee/dnalogel 2.1.1 → 2.1.2-alpha.1
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/README.md +3 -12
- package/components/index.js +242 -569
- package/dist/index.cjs.js +58 -73
- package/dist/index.es.js +7842 -12958
- package/dist/index.js +7842 -12958
- package/dist/index.umd.js +46 -61
- package/docs/assets/highlight.css +3 -3
- package/docs/assets/main.js +4 -2
- package/docs/assets/search.js +1 -1
- package/docs/assets/style.css +462 -619
- package/docs/classes/CruisePluginController.html +397 -23
- package/docs/classes/Magnifier.html +187 -9
- package/docs/classes/ModelRoomLabelController.html +149 -11
- package/docs/classes/Object3DHelperController.html +356 -0
- package/docs/classes/PaintBrush.html +260 -0
- package/docs/classes/PanoTagPluginController.html +940 -0
- package/docs/classes/Util.BetterTween.html +134 -0
- package/docs/classes/Util.FivePointSelector.html +144 -0
- package/docs/classes/Util.Interval.html +158 -0
- package/docs/classes/Util.Magnifier.html +196 -0
- package/docs/classes/Util.PointDomHelper.html +135 -0
- package/docs/classes/Util.PointHelper.html +127 -0
- package/docs/classes/Util.Rectangle.html +181 -0
- package/docs/enums/CameraMovementEffect.html +70 -3
- package/docs/enums/ContentType.html +116 -0
- package/docs/enums/DIRECTION.html +81 -1
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +81 -1
- package/docs/enums/DimensionType.html +67 -0
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +74 -1
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +81 -1
- package/docs/enums/LinkType.html +67 -0
- package/docs/enums/PaintBrushTypeEnum.html +74 -0
- package/docs/enums/PointType.html +67 -0
- package/docs/enums/Rotation.html +77 -3
- package/docs/functions/CSS3DRenderPlugin.html +233 -0
- package/docs/functions/CameraMovementPlugin.html +237 -0
- package/docs/functions/CruisePlugin.html +233 -0
- package/docs/functions/GuideLinePlugin.html +235 -0
- package/docs/functions/ItemLabelPlugin.html +235 -0
- package/docs/functions/MapviewFloorplanPlugin.html +235 -0
- package/docs/functions/ModelChassisCompassPlugin.html +237 -0
- package/docs/functions/ModelEntryDoorGuidePlugin.html +237 -0
- package/docs/functions/ModelFloorplanPlugin.html +235 -0
- package/docs/functions/ModelItemLabelPlugin.html +235 -0
- package/docs/functions/ModelRoomLabelPlugin.html +233 -0
- package/docs/functions/ModelTVVideoPlugin.html +235 -0
- package/docs/functions/ModelViewPlugin.html +237 -0
- package/docs/functions/Object3DHelperPlugin.html +233 -0
- package/docs/functions/PanoCompassPlugin.html +235 -0
- package/docs/functions/PanoCursorRaycasterPlugin.html +238 -0
- package/docs/functions/PanoDoorLabelPlugin.html +235 -0
- package/docs/functions/PanoFloorplanRadarPlugin.html +235 -0
- package/docs/functions/PanoMeasurePlugin.html +235 -0
- package/docs/functions/PanoRulerPlugin.html +237 -0
- package/docs/functions/PanoRulerProPlugin.html +237 -0
- package/docs/functions/PanoSpatialTagPlugin.html +237 -0
- package/docs/functions/PanoTagPlugin.html +249 -0
- package/docs/functions/TopviewFloorplanPlugin.html +235 -0
- package/docs/functions/Util.getCoordsFromClient.html +78 -0
- package/docs/functions/Util.getCoordsFromElement.html +78 -0
- package/docs/functions/Util.getFrameTime.html +70 -0
- package/docs/functions/Util.getIntersectFromRelativePosition.html +78 -0
- package/docs/functions/Util.getRaycasterFromFivePointer.html +78 -0
- package/docs/functions/Util.isNil.html +79 -0
- package/docs/functions/Util.nextFrame.html +73 -0
- package/docs/functions/Util.notNil.html +78 -0
- package/docs/functions/Util.requestAnimationFrameInterval.html +98 -0
- package/docs/functions/Util.tweenProgress.html +84 -0
- package/docs/functions/pluginFlag.html +233 -0
- package/docs/index.html +222 -9
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +205 -0
- package/docs/interfaces/CSS3DRenderPluginState.html +85 -0
- package/docs/interfaces/CameraMovementPluginExportType.html +111 -17
- package/docs/interfaces/ContentTypeMap.html +212 -0
- package/docs/interfaces/FloorplanBounding.html +89 -10
- package/docs/interfaces/FloorplanData.html +95 -3
- package/docs/interfaces/FloorplanEntrance.html +114 -15
- package/docs/interfaces/FloorplanExtraObject.html +108 -7
- package/docs/interfaces/FloorplanExtraObject3D.html +99 -3
- package/docs/interfaces/FloorplanFloorData.html +88 -3
- package/docs/interfaces/FloorplanImagePosition.html +74 -3
- package/docs/interfaces/FloorplanObserver.html +92 -5
- package/docs/interfaces/FloorplanOutlineItem.html +88 -3
- package/docs/interfaces/FloorplanPosition.html +74 -3
- package/docs/interfaces/FloorplanRoomItem.html +134 -17
- package/docs/interfaces/FloorplanRoomLabelItem.html +78 -7
- package/docs/interfaces/FloorplanServerBounding.html +89 -10
- package/docs/interfaces/FloorplanServerComputedData.html +92 -1
- package/docs/interfaces/FloorplanServerData.html +74 -3
- package/docs/interfaces/FloorplanServerDoorItem.html +92 -1
- package/docs/interfaces/FloorplanServerDoorPosition.html +78 -1
- package/docs/interfaces/FloorplanServerEntrance.html +114 -15
- package/docs/interfaces/FloorplanServerFloorData.html +88 -3
- package/docs/interfaces/FloorplanServerImagePosition.html +74 -3
- package/docs/interfaces/FloorplanServerObserver.html +92 -5
- package/docs/interfaces/FloorplanServerOutlineItem.html +88 -3
- package/docs/interfaces/FloorplanServerPosition.html +74 -3
- package/docs/interfaces/FloorplanServerRoomItem.html +145 -20
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +78 -7
- package/docs/interfaces/ItemLabelPluginData.html +64 -1
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +149 -1
- package/docs/interfaces/ItemLabelPluginParametersType.html +85 -1
- package/docs/interfaces/LineJson.html +71 -1
- package/docs/interfaces/ModelChassisCompassPluginData.html +71 -1
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +107 -1
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +71 -1
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +78 -1
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +115 -1
- package/docs/interfaces/ModelItemLabelPluginData.html +64 -1
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +149 -1
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +71 -1
- package/docs/interfaces/ModelRoomLabelPluginData.html +64 -1
- package/docs/interfaces/ModelTVVideoPluginData.html +85 -1
- package/docs/interfaces/ModelTVVideoPluginExportType.html +109 -1
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +64 -1
- package/docs/interfaces/ModelViewPluginExportType.html +129 -1
- package/docs/interfaces/Object3DHelperState.html +78 -0
- package/docs/interfaces/OpenParameter.html +74 -3
- package/docs/interfaces/PaintBrushAction.html +118 -0
- package/docs/interfaces/PaintBrushConfigs.html +122 -0
- package/docs/interfaces/PaintBrushState.html +99 -0
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +186 -11
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +227 -1
- package/docs/interfaces/PanoMeasureParameterType.html +128 -5
- package/docs/interfaces/PanoRulerPluginExportType.html +138 -1
- package/docs/interfaces/PanoRulerPluginOptions.html +87 -1
- package/docs/interfaces/PanoRulerPluginParameterType.html +78 -1
- package/docs/interfaces/PanoRulerProPluginExportType.html +114 -1
- package/docs/interfaces/PanoRulerProPluginOptions.html +84 -1
- package/docs/interfaces/PanoRulerProPluginParameterType.html +71 -1
- package/docs/interfaces/PanoRulerProPluginState.html +78 -1
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +241 -1
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +230 -1
- package/docs/interfaces/PanoSpatialTagPluginData.html +114 -1
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +96 -1
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +192 -1
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +92 -1
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +113 -1
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +99 -1
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +92 -1
- package/docs/interfaces/Point.html +78 -1
- package/docs/interfaces/PointJson.html +78 -1
- package/docs/interfaces/Room.html +85 -1
- package/docs/interfaces/RoomInfo.html +71 -1
- package/docs/interfaces/RoomLabel.html +141 -13
- package/docs/interfaces/RoomRules.html +230 -1
- package/docs/interfaces/Rooms.html +230 -1
- package/docs/interfaces/Scissor.html +100 -0
- package/docs/interfaces/TagConfig.html +120 -0
- package/docs/interfaces/Tags.html +89 -0
- package/docs/interfaces/Util.MagnifierParameter.html +116 -0
- package/docs/interfaces/Util.MouseGroupParameter.html +79 -0
- package/docs/modules/Util.html +91 -0
- package/docs/modules.html +425 -36
- package/docs/types/ArrayPosition.html +224 -0
- package/docs/types/CSS3DRenderExportType.html +224 -0
- package/docs/types/CSS3DRenderPluginExportType.html +224 -0
- package/docs/types/CSS3DRenderPluginParameterType.html +224 -0
- package/docs/types/Color.html +224 -0
- package/docs/types/ContentTypeConfigKey.html +224 -0
- package/docs/types/ContentTypeConfigKeyArray.html +224 -0
- package/docs/types/Create3DDomContainerReturnType.html +224 -0
- package/docs/types/Create3DElementReturnType.html +224 -0
- package/docs/types/CruisePluginExportType.html +224 -0
- package/docs/types/Direction-1.html +224 -0
- package/docs/types/Direction4.html +224 -0
- package/docs/types/FloorplanRuleLabels.html +226 -0
- package/docs/types/FloorplanServerRuleLabels.html +224 -0
- package/docs/types/GuideLinePluginExportType.html +224 -0
- package/docs/types/HelperEventMap.html +314 -0
- package/docs/types/MapviewFloorplanPluginParameterType.html +224 -0
- package/docs/types/MapviewFloorplanPluginReturnType.html +224 -0
- package/docs/types/MediaData.html +224 -0
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +224 -0
- package/docs/types/ModelFloorplanPluginParameterType.html +224 -0
- package/docs/types/ModelFloorplanPluginReturnType.html +224 -0
- package/docs/types/ModelRoomLabelPluginParameters.html +224 -0
- package/docs/types/ModelRoomLabelPluginReturnType.html +224 -0
- package/docs/types/MoveArgs.html +226 -0
- package/docs/types/MoveOpts.html +226 -0
- package/docs/types/Object3DHelperEventMap.html +317 -0
- package/docs/types/ObjectFit.html +224 -0
- package/docs/types/PaintBrushEventMap.html +255 -0
- package/docs/types/PanoCompassPluginData.html +224 -0
- package/docs/types/PanoCompassPluginExportType.html +224 -0
- package/docs/types/PanoCompassPluginParameterType.html +224 -0
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +224 -0
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +224 -0
- package/docs/types/PanoMeasurePluginEvent.html +224 -0
- package/docs/types/PanoMeasureReturnType.html +224 -0
- package/docs/types/PanoSpatialTagPluginId.html +224 -0
- package/docs/types/PanoTagPluginExportInterface.html +224 -0
- package/docs/types/PanoTagPluginParamsInterface.html +224 -0
- package/docs/types/PlaneTag.html +233 -0
- package/docs/types/PointTag.html +235 -0
- package/docs/types/Position.html +224 -0
- package/docs/types/RotateArgs.html +226 -0
- package/docs/types/RotateOpts.html +226 -0
- package/docs/types/RuleLabelsKey.html +224 -0
- package/docs/types/RuleLabelsValue.html +224 -0
- package/docs/types/Tag.html +235 -0
- package/docs/types/Tag2D.html +233 -0
- package/docs/types/Tag3D.html +233 -0
- package/docs/types/TagId.html +224 -0
- package/docs/types/TopviewFloorplanPluginParameterType.html +224 -0
- package/docs/types/TopviewFloorplanPluginReturnType.html +224 -0
- package/docs/variables/FLOOR_TYPE_MAP.html +226 -0
- package/docs/variables/PLUGIN.html +224 -0
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +226 -0
- package/docs/variables/ROOM_TYPE_MAP.html +226 -0
- package/docs/variables/VERSION.html +224 -0
- package/docs/variables/itemLabelPluginServerParams.html +231 -0
- package/docs/variables/modelItemLabelPluginServerParams.html +231 -0
- package/docs/variables/modelRoomLabelPluginServerParams.html +231 -0
- package/libs/CSS3DRenderPlugin/CSS3DRender.d.ts +2 -2
- package/libs/CSS3DRenderPlugin/CSS3DRender.js +1 -300
- package/libs/CSS3DRenderPlugin/Controller.d.ts +3 -3
- package/libs/CSS3DRenderPlugin/Controller.js +1 -81
- package/libs/CSS3DRenderPlugin/index.js +1 -14
- package/libs/CSS3DRenderPlugin/typing.js +1 -1
- package/libs/CSS3DRenderPlugin/utils/CSS3DObjectPlus.js +1 -67
- package/libs/CSS3DRenderPlugin/utils/centerPoint.js +1 -10
- package/libs/CSS3DRenderPlugin/utils/evenNumber.js +1 -7
- package/libs/CSS3DRenderPlugin/utils/index.js +1 -13
- package/libs/CSS3DRenderPlugin/utils/positionToVector3.js +1 -7
- package/libs/CSS3DRenderPlugin/utils/random.js +1 -6
- package/libs/CameraMovementPlugin/CameraMovementPlugin.js +1 -71
- package/libs/CameraMovementPlugin/index.js +1 -15
- package/libs/CameraMovementPlugin/typing.js +1 -5
- package/libs/CruisePlugin/Controller.js +1 -440
- package/libs/CruisePlugin/index.js +1 -27
- package/libs/CruisePlugin/utils/coordinatesAngle.js +1 -9
- package/libs/CruisePlugin/utils/coordinatesToVector.js +1 -12
- package/libs/CruisePlugin/utils/formatRad.js +1 -7
- package/libs/CruisePlugin/utils/linerValue.js +1 -7
- package/libs/CruisePlugin/utils/safeCall.js +1 -12
- package/libs/CruisePlugin/utils/sleep.js +1 -10
- package/libs/CruisePlugin/utils/vectorToCoordinates.js +1 -10
- package/libs/GuideLinePlugin/Controller.js +1 -112
- package/libs/GuideLinePlugin/index.js +1 -15
- package/libs/GuideLinePlugin/utils/getArrowMaterial.js +1 -13
- package/libs/GuideLinePlugin/utils/getLineGeometries.js +1 -118
- package/libs/GuideLinePlugin/utils/polyline-normals.d.ts +3 -0
- package/libs/ItemLabelPlugin/ItemLabelComponent.js +1 -254
- package/libs/ItemLabelPlugin/ItemLabelItem.js +2 -133
- package/libs/ItemLabelPlugin/Plugin.js +2 -85
- package/libs/ItemLabelPlugin/index.js +1 -25
- package/libs/ItemLabelPlugin/typings.js +1 -4
- package/libs/ItemLabelPlugin/utils/getLabelTransform.js +1 -4
- package/libs/ItemLabelPlugin/utils/getStrokeLength.js +1 -16
- package/libs/ItemLabelPlugin/utils/isImpacted.js +1 -10
- package/libs/ItemLabelPlugin/utils/parseData.js +1 -10
- package/libs/ItemLabelPlugin/utils/transform2RenderData.js +1 -11
- package/libs/ModelChassisCompassPlugin/Plugin.js +1 -55
- package/libs/ModelChassisCompassPlugin/index.js +1 -10
- package/libs/ModelEntryDoorGuidePlugin/Plugin.js +1 -66
- package/libs/ModelEntryDoorGuidePlugin/index.js +1 -11
- package/libs/ModelItemLabelPlugin/ItemLabelComponent.js +1 -196
- package/libs/ModelItemLabelPlugin/ItemLabelItem.js +2 -42
- package/libs/ModelItemLabelPlugin/ModelItemLabelPlugin.js +2 -79
- package/libs/ModelItemLabelPlugin/events.type.js +1 -1
- package/libs/ModelItemLabelPlugin/index.js +1 -21
- package/libs/ModelItemLabelPlugin/typings.js +1 -4
- package/libs/ModelItemLabelPlugin/utils/parseData.js +1 -9
- package/libs/ModelRoomLabelPlugin/Assets/roomLabelBg.js +1 -4
- package/libs/ModelRoomLabelPlugin/Controller.js +1 -64
- package/libs/ModelRoomLabelPlugin/RoomLabelItem.js +1 -45
- package/libs/ModelRoomLabelPlugin/RoomLabelItems.js +1 -151
- package/libs/ModelRoomLabelPlugin/index.js +1 -16
- package/libs/ModelRoomLabelPlugin/utils/parseData.js +1 -16
- package/libs/ModelTVVideoPlugin/Plugin.js +1 -157
- package/libs/ModelTVVideoPlugin/index.js +1 -19
- package/libs/ModelTVVideoPlugin/typings.js +1 -4
- package/libs/ModelTVVideoPlugin/utils/parseData.js +1 -20
- package/libs/ModelViewPlugin/Plugin.js +1 -96
- package/libs/ModelViewPlugin/index.js +1 -8
- package/libs/Object3DHelperPlugin/Controller.d.ts +1 -1
- package/libs/Object3DHelperPlugin/Controller.js +1 -137
- package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +1 -1
- package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +1 -35
- package/libs/Object3DHelperPlugin/index.js +1 -42
- package/libs/PanoCompassPlugin/Assets/roomInfoIcon.js +1 -4
- package/libs/PanoCompassPlugin/Controller.js +1 -205
- package/libs/PanoCompassPlugin/getRoomInfoInstance.js +1 -24
- package/libs/PanoCompassPlugin/index.js +1 -24
- package/libs/PanoCursorRaycasterPlugin/index.js +1 -60
- package/libs/PanoDoorLabelPlugin/BaseController.js +1 -50
- package/libs/PanoDoorLabelPlugin/Controller.js +1 -215
- package/libs/PanoDoorLabelPlugin/DoorLabelItem.js +1 -65
- package/libs/PanoDoorLabelPlugin/index.d.ts +1 -1
- package/libs/PanoDoorLabelPlugin/index.js +1 -15
- package/libs/PanoDoorLabelPlugin/utils.d.ts +2 -2
- package/libs/PanoDoorLabelPlugin/utils.js +1 -23
- package/libs/PanoMeasurePlugin/Controller/BaseController.js +1 -63
- package/libs/PanoMeasurePlugin/Controller/EditController.js +1 -114
- package/libs/PanoMeasurePlugin/Controller/MixedController.js +1 -138
- package/libs/PanoMeasurePlugin/Controller/ShortcutKeyController.js +1 -33
- package/libs/PanoMeasurePlugin/Controller/ViewController.js +1 -101
- package/libs/PanoMeasurePlugin/Controller/WatchController.js +1 -169
- package/libs/PanoMeasurePlugin/Controller/index.d.ts +1 -1
- package/libs/PanoMeasurePlugin/Controller/index.js +1 -167
- package/libs/PanoMeasurePlugin/Model/index.d.ts +4 -4
- package/libs/PanoMeasurePlugin/Model/index.js +1 -99
- package/libs/PanoMeasurePlugin/Model/line.d.ts +1 -1
- package/libs/PanoMeasurePlugin/Model/line.js +1 -60
- package/libs/PanoMeasurePlugin/Model/point.js +1 -30
- package/libs/PanoMeasurePlugin/Model/polyline.d.ts +2 -2
- package/libs/PanoMeasurePlugin/Model/polyline.js +1 -47
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +2 -5
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +1 -4
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +1 -4
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/index.js +3 -67
- package/libs/PanoMeasurePlugin/Modules/FiveHelper.js +1 -28
- package/libs/PanoMeasurePlugin/Modules/GuideController.js +1 -41
- package/libs/PanoMeasurePlugin/Modules/Magnifier.js +1 -103
- package/libs/PanoMeasurePlugin/Modules/UIController/HTML.js +8 -12
- package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +1 -50
- package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +1 -36
- package/libs/PanoMeasurePlugin/Modules/UIController/index.js +1 -48
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +3 -8
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.js +1 -39
- package/libs/PanoMeasurePlugin/Modules/UIController/style.js +1 -70
- package/libs/PanoMeasurePlugin/Modules/rangePiece/html.js +2 -7
- package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +1 -123
- package/libs/PanoMeasurePlugin/index.js +1 -60
- package/libs/PanoMeasurePlugin/utils/calculateThreeMouse.js +1 -12
- package/libs/PanoMeasurePlugin/utils/constants.js +1 -23
- package/libs/PanoMeasurePlugin/utils/distanceDom.js +1 -62
- package/libs/PanoMeasurePlugin/utils/findAssociatedLines.js +1 -13
- package/libs/PanoMeasurePlugin/utils/findClosestPoint.d.ts +1 -1
- package/libs/PanoMeasurePlugin/utils/findClosestPoint.js +1 -16
- package/libs/PanoMeasurePlugin/utils/getIntersectionFromEvent.js +1 -9
- package/libs/PanoMeasurePlugin/utils/getPointFromHammerEvent.js +1 -8
- package/libs/PanoMeasurePlugin/utils/ironbox.js +1 -4
- package/libs/PanoMeasurePlugin/utils/isNDCPointInScreen.js +1 -7
- package/libs/PanoMeasurePlugin/utils/line.js +1 -18
- package/libs/PanoMeasurePlugin/utils/math.js +1 -13
- package/libs/PanoMeasurePlugin/utils/mouseGroup.js +3 -33
- package/libs/PanoMeasurePlugin/utils/ndc2Screen.js +1 -8
- package/libs/PanoRulerPlugin/Plugin.js +3 -241
- package/libs/PanoRulerPlugin/index.js +1 -11
- package/libs/PanoRulerPlugin/style.js +2 -5
- package/libs/PanoRulerProPlugin/Controller.js +1 -74
- package/libs/PanoRulerProPlugin/RulerItem.js +1 -118
- package/libs/PanoRulerProPlugin/RulerItems.js +1 -181
- package/libs/PanoRulerProPlugin/index.js +1 -17
- package/libs/PanoSpatialTagPlugin/Components/origins.js +1 -82
- package/libs/PanoSpatialTagPlugin/Components/tag.js +1 -124
- package/libs/PanoSpatialTagPlugin/Plugin.js +1 -258
- package/libs/PanoSpatialTagPlugin/index.js +1 -24
- package/libs/PanoSpatialTagPlugin/store.d.ts +1 -1
- package/libs/PanoSpatialTagPlugin/store.js +1 -6
- package/libs/PanoSpatialTagPlugin/style.js +1 -11
- package/libs/PanoSpatialTagPlugin/typings.js +1 -1
- package/libs/PanoTagPlugin/Assets/Icon.js +1 -6
- package/libs/PanoTagPlugin/Components/Common/Arrow.js +1 -103
- package/libs/PanoTagPlugin/Components/Common/Audio.js +1 -163
- package/libs/PanoTagPlugin/Components/Common/Line/Polyline.js +1 -93
- package/libs/PanoTagPlugin/Components/Common/Line/Straight.js +1 -91
- package/libs/PanoTagPlugin/Components/Common/Media.js +1 -3438
- package/libs/PanoTagPlugin/Components/Common/MediaItem.js +1 -139
- package/libs/PanoTagPlugin/Components/Common/MultiLineText.js +1 -181
- package/libs/PanoTagPlugin/Components/Common/Point/CustomPoint.js +1 -52
- package/libs/PanoTagPlugin/Components/Common/Point/DefaultPoint.js +1 -52
- package/libs/PanoTagPlugin/Components/Common/Point/PointSwitch.js +1 -170
- package/libs/PanoTagPlugin/Components/Common/Shadow.js +15 -125
- package/libs/PanoTagPlugin/Components/Common/Text.js +1 -984
- package/libs/PanoTagPlugin/Components/Tag/AudioTag.js +1 -140
- package/libs/PanoTagPlugin/Components/Tag/CustomTag.js +1 -72
- package/libs/PanoTagPlugin/Components/Tag/ImageTextTag.js +1 -202
- package/libs/PanoTagPlugin/Components/Tag/LinkTag.js +1 -128
- package/libs/PanoTagPlugin/Components/Tag/MarketingTag.js +1 -231
- package/libs/PanoTagPlugin/Components/Tag/MediaPlane.js +1 -95
- package/libs/PanoTagPlugin/Components/Tag/TextTag.js +1 -134
- package/libs/PanoTagPlugin/Components/Tag/index.js +2 -308
- package/libs/PanoTagPlugin/Components/TagContainer.js +1 -187
- package/libs/PanoTagPlugin/Components/TagWrapper.js +1 -183
- package/libs/PanoTagPlugin/controller/TagCacheController.js +1 -32
- package/libs/PanoTagPlugin/controller/TagComputer.d.ts +5 -5
- package/libs/PanoTagPlugin/controller/TagComputer.js +1 -15
- package/libs/PanoTagPlugin/controller/index.js +1 -386
- package/libs/PanoTagPlugin/index.js +1 -71
- package/libs/PanoTagPlugin/tag.config.js +1 -44
- package/libs/PanoTagPlugin/typings/controller.js +1 -1
- package/libs/PanoTagPlugin/typings/index.js +1 -7
- package/libs/PanoTagPlugin/typings/tag.js +1 -7
- package/libs/PanoTagPlugin/utils/actionAfterFiveModelLoad.js +1 -6
- package/libs/PanoTagPlugin/utils/addDebugPoints.js +1 -27
- package/libs/PanoTagPlugin/utils/checkRange.d.ts +1 -1
- package/libs/PanoTagPlugin/utils/checkRange.js +1 -10
- package/libs/PanoTagPlugin/utils/constants.js +1 -8
- package/libs/PanoTagPlugin/utils/debounce.js +1 -12
- package/libs/PanoTagPlugin/utils/doUtil.js +1 -12
- package/libs/PanoTagPlugin/utils/index.js +1 -36
- package/libs/PanoTagPlugin/utils/noTypecheck.js +1 -4
- package/libs/PanoTagPlugin/utils/normalPositionToPositions.js +1 -13
- package/libs/PanoTagPlugin/utils/planeNormal.js +1 -11
- package/libs/PanoTagPlugin/utils/resizeObserver.js +1 -17
- package/libs/PanoTagPlugin/utils/search.js +1 -33
- package/libs/PanoTagPlugin/utils/tagPosition.js +1 -13
- package/libs/PanoTagPlugin/utils/throttle.js +1 -11
- package/libs/base/BasePlugin.js +1 -18
- package/libs/base/BasePluginWithData.js +1 -7
- package/libs/components/PaintBrush/Controller.d.ts +2 -2
- package/libs/components/PaintBrush/Controller.js +1 -309
- package/libs/components/PaintBrush/Subscribe.js +1 -47
- package/libs/components/PaintBrush/index.js +1 -52
- package/libs/components/PaintBrush/style.js +2 -5
- package/libs/components/PaintBrush/tween.js +1 -15
- package/libs/components/PaintBrush/typings.js +1 -4
- package/libs/components/PaintBrush/utils.d.ts +1 -1
- package/libs/components/PaintBrush/utils.js +1 -45
- package/libs/components/index.js +1 -13
- package/libs/env.d.ts +1 -0
- package/libs/floorplan/Assets/camera.js +1 -4
- package/libs/floorplan/Assets/compass.js +1 -4
- package/libs/floorplan/Assets/floorplanExtraObject.js +1 -4
- package/libs/floorplan/Components/BaseImage.js +1 -104
- package/libs/floorplan/Components/Camera.js +1 -62
- package/libs/floorplan/Components/Compass.js +1 -60
- package/libs/floorplan/Components/CurrentFloor.js +1 -255
- package/libs/floorplan/Components/Main.js +1 -282
- package/libs/floorplan/Components/Normalmage.js +1 -37
- package/libs/floorplan/Components/RoomHighlight/Room.js +1 -61
- package/libs/floorplan/Components/RoomHighlight/RoomHighlight.js +1 -122
- package/libs/floorplan/Components/RoomLabels/RoomLabel.js +1 -152
- package/libs/floorplan/Components/RoomLabels/RoomLabels.js +1 -174
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial.js +1 -184
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial_0.js +1 -37
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial_1.js +1 -39
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial_2.js +1 -37
- package/libs/floorplan/Components/RuleLabels/RuleItem.js +1 -134
- package/libs/floorplan/Components/RuleLabels/RuleLabels.js +1 -139
- package/libs/floorplan/Components/SvgImage.js +2 -39
- package/libs/floorplan/MapviewFloorplanPlugin/Controller.d.ts +1 -1
- package/libs/floorplan/MapviewFloorplanPlugin/Controller.js +1 -322
- package/libs/floorplan/MapviewFloorplanPlugin/index.js +1 -49
- package/libs/floorplan/ModelFloorplanPlugin/Controller.d.ts +1 -1
- package/libs/floorplan/ModelFloorplanPlugin/Controller.js +1 -318
- package/libs/floorplan/ModelFloorplanPlugin/index.js +1 -49
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +1 -84
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/CurrentFloor.js +1 -133
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/ExtraObjects.js +1 -72
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +1 -191
- package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +1 -146
- package/libs/floorplan/PanoFloorplanRadarPlugin/index.js +1 -26
- package/libs/floorplan/TopviewFloorplanPlugin/Controller.d.ts +1 -1
- package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +1 -265
- package/libs/floorplan/TopviewFloorplanPlugin/index.js +1 -46
- package/libs/floorplan/constant.js +1 -4
- package/libs/floorplan/index.js +1 -67
- package/libs/floorplan/typings/floorplanData.js +1 -1
- package/libs/floorplan/typings/floorplanServerData.js +1 -101
- package/libs/floorplan/utils/constant.js +1 -8
- package/libs/floorplan/utils/correctFiveState.js +1 -36
- package/libs/floorplan/utils/formatData.js +1 -82
- package/libs/floorplan/utils/formatPosition.js +1 -35
- package/libs/index.js +1 -330
- package/libs/shared-utils/Object3DHelper/Base/BaseController.js +1 -155
- package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +1 -53
- package/libs/shared-utils/Object3DHelper/Constants/color.js +1 -21
- package/libs/shared-utils/Object3DHelper/Controller/CSS3DScaleController.js +1 -29
- package/libs/shared-utils/Object3DHelper/Controller/MoveController.js +1 -74
- package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +1 -1
- package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.js +1 -117
- package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +1 -142
- package/libs/shared-utils/Object3DHelper/Helper/HTML/rectangleScaleDom.js +1 -81
- package/libs/shared-utils/Object3DHelper/Helper/HTML/tipsDom.js +1 -31
- package/libs/shared-utils/Object3DHelper/Helper/HTML/utils/createElement.js +1 -14
- package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +1 -31
- package/libs/shared-utils/Object3DHelper/Helper/Objects/ArrowGroup.js +1 -35
- package/libs/shared-utils/Object3DHelper/Helper/OutlineHelper.js +1 -103
- package/libs/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.js +1 -143
- package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +1 -137
- package/libs/shared-utils/Object3DHelper/Helper/index.js +1 -30
- package/libs/shared-utils/Object3DHelper/index.js +1 -140
- package/libs/shared-utils/Object3DHelper/typings/Direction.js +1 -1
- package/libs/shared-utils/Object3DHelper/typings/Hooks.js +1 -1
- package/libs/shared-utils/Object3DHelper/typings/Scissor.js +1 -1
- package/libs/shared-utils/Object3DHelper/typings/index.js +1 -1
- package/libs/shared-utils/Object3DHelper/utils/calculateThreeMouse.js +1 -11
- package/libs/shared-utils/Object3DHelper/utils/direction.js +1 -30
- package/libs/shared-utils/Object3DHelper/utils/filterNotColinearPoints.js +1 -18
- package/libs/shared-utils/Object3DHelper/utils/getMouseRaycaster.d.ts +1 -1
- package/libs/shared-utils/Object3DHelper/utils/getMouseRaycaster.js +1 -14
- package/libs/shared-utils/Object3DHelper/utils/getPoint.js +1 -18
- package/libs/shared-utils/Object3DHelper/utils/index.js +1 -29
- package/libs/shared-utils/Object3DHelper/utils/normalPositionToPositions.js +1 -13
- package/libs/shared-utils/Object3DHelper/utils/object3DBoundingPosition.js +1 -5
- package/libs/shared-utils/Object3DHelper/utils/threex/domevents/index.d.ts +34 -0
- package/libs/shared-utils/Object3DHelper/utils/threex/domevents/index.js +1 -191
- package/libs/shared-utils/Object3DHelper/utils/vectorIsEqual.js +1 -6
- package/libs/shared-utils/Subscribe.js +1 -50
- package/libs/shared-utils/animationFrame/BetterTween.js +1 -6
- package/libs/shared-utils/animationFrame/calculateProgress.js +1 -12
- package/libs/shared-utils/animationFrame/formatRad.js +1 -13
- package/libs/shared-utils/animationFrame/index.js +1 -51
- package/libs/shared-utils/animationFrame/tween.js +1 -30
- package/libs/shared-utils/changeModelCanvasOpacity.js +1 -12
- package/libs/shared-utils/createCanvasTextTexture.js +1 -11
- package/libs/shared-utils/createLine/index.js +1 -9
- package/libs/shared-utils/debounce.js +1 -11
- package/libs/shared-utils/equal.js +1 -54
- package/libs/shared-utils/filter.js +1 -30
- package/libs/shared-utils/five/changeMode.js +1 -21
- package/libs/shared-utils/getPxmm.js +1 -21
- package/libs/shared-utils/index.js +1 -45
- package/libs/shared-utils/isNil.js +1 -10
- package/libs/shared-utils/isTruelyObject.js +1 -6
- package/libs/shared-utils/math/Interval.js +1 -23
- package/libs/shared-utils/math/Rectangle.js +1 -23
- package/libs/shared-utils/math/index.js +1 -6
- package/libs/shared-utils/math/planimetry.d.ts +5 -5
- package/libs/shared-utils/math/planimetry.js +1 -135
- package/libs/shared-utils/math/rad2Deg.js +1 -6
- package/libs/shared-utils/nearlyEqual.js +1 -6
- package/libs/shared-utils/nextFrame.js +1 -6
- package/libs/shared-utils/noop.js +1 -5
- package/libs/shared-utils/object3d2LocalMatrix.js +1 -19
- package/libs/shared-utils/removeArrayItem.d.ts +1 -1
- package/libs/shared-utils/removeArrayItem.js +1 -8
- package/libs/shared-utils/tap.js +1 -6
- package/libs/shared-utils/three/Assets/index.js +1 -5
- package/libs/shared-utils/three/FivePointSelector.d.ts +1 -1
- package/libs/shared-utils/three/FivePointSelector.js +1 -63
- package/libs/shared-utils/three/Magnifier.d.ts +2 -2
- package/libs/shared-utils/three/Magnifier.js +1 -104
- package/libs/shared-utils/three/PointDomHelper.js +1 -68
- package/libs/shared-utils/three/PointHelper.js +3 -60
- package/libs/shared-utils/three/getCoords.js +1 -13
- package/libs/shared-utils/three/getIntersect.d.ts +1 -1
- package/libs/shared-utils/three/getIntersect.js +1 -8
- package/libs/shared-utils/three/getRaycaster.d.ts +1 -1
- package/libs/shared-utils/three/getRaycaster.js +1 -12
- package/libs/shared-utils/three/index.js +1 -33
- package/libs/shared-utils/three/loadTexture.js +1 -10
- package/libs/shared-utils/three/transformPositionToVector3.js +1 -5
- package/libs/shared-utils/three/transfromToMeshBasicMaterial.js +1 -13
- package/libs/shared-utils/throttle.js +1 -11
- package/libs/shared-utils/tinyEJSrender.js +14 -138
- package/libs/shared-utils/to.js +1 -11
- package/libs/shared-utils/uuid.js +1 -10
- package/libs/vendor/swiper/components-shared/get-changed-params.js +1 -0
- package/libs/vendor/swiper/components-shared/get-params.js +1 -0
- package/libs/vendor/swiper/components-shared/mount-swiper.js +1 -0
- package/libs/vendor/swiper/components-shared/params-list.js +1 -0
- package/libs/vendor/swiper/components-shared/update-swiper.js +1 -0
- package/libs/vendor/swiper/components-shared/utils.js +1 -0
- package/libs/vendor/swiper/svelte/swiper-slide.js +1 -0
- package/libs/vendor/swiper/svelte/swiper-svelte.js +1 -0
- package/libs/vendor/swiper/svelte/swiper.js +1 -0
- package/package.json +218 -31
- package/dist/style.css +0 -1
- package/docs/assets/icons.css +0 -1043
- package/docs/assets/icons.png +0 -0
- package/docs/assets/icons@2x.png +0 -0
- package/docs/assets/widgets.png +0 -0
- package/docs/assets/widgets@2x.png +0 -0
- package/docs/interfaces/CSS3DRenderPluginExportType.html +0 -4
- package/libs/CruisePlugin/typing.js +0 -1
- package/libs/GuideLinePlugin/typing.js +0 -1
- package/libs/GuideLinePlugin/utils/getPoint.d.ts +0 -3
- package/libs/GuideLinePlugin/utils/getPoint.js +0 -18
- package/libs/GuideLinePlugin/utils/polyline-normals.d.js +0 -1
- package/libs/ItemLabelPlugin/events.type.js +0 -1
- package/libs/ModelRoomLabelPlugin/typings.js +0 -1
- package/libs/Object3DHelperPlugin/mocks/addObject3D.d.ts +0 -2
- package/libs/Object3DHelperPlugin/mocks/addObject3D.js +0 -1377
- package/libs/Object3DHelperPlugin/mocks/objects.d.ts +0 -7
- package/libs/Object3DHelperPlugin/mocks/objects.js +0 -47
- package/libs/Object3DHelperPlugin/typings.js +0 -1
- package/libs/PanoCompassPlugin/typings.js +0 -1
- package/libs/PanoDoorLabelPlugin/typings.js +0 -1
- package/libs/PanoMeasurePlugin/typings/data.js +0 -1
- package/libs/PanoMeasurePlugin/typings/event.type.js +0 -1
- package/libs/PanoMeasurePlugin/typings/index.js +0 -1
- package/libs/PanoMeasurePlugin/typings/utils.type.d.ts +0 -1
- package/libs/PanoMeasurePlugin/typings/utils.type.js +0 -1
- package/libs/PanoMeasurePlugin/utils/clearGroup.d.ts +0 -2
- package/libs/PanoMeasurePlugin/utils/clearGroup.js +0 -6
- package/libs/PanoRulerPlugin/typings.js +0 -1
- package/libs/PanoRulerProPlugin/typings.js +0 -1
- package/libs/PanoTagPlugin/Components/Common/TextItem.js +0 -106
- package/libs/TagComputer.2bc444dc.js +0 -315
- package/libs/floorplan/MapviewFloorplanPlugin/typing.js +0 -1
- package/libs/floorplan/ModelFloorplanPlugin/typing.js +0 -1
- package/libs/floorplan/PanoFloorplanRadarPlugin/typing.js +0 -1
- package/libs/floorplan/TopviewFloorplanPlugin/style.d.ts +0 -1
- package/libs/floorplan/TopviewFloorplanPlugin/style.js +0 -11
- package/libs/floorplan/TopviewFloorplanPlugin/typing.js +0 -1
- package/libs/floorplan/typings/index.js +0 -1
- package/libs/floorplan/typings/utility.js +0 -1
- package/libs/hammer.b5b6115e.js +0 -882
- package/libs/index.164f1850.js +0 -641
- package/libs/index.5d5d1089.js +0 -34
- package/libs/index.6a0eead1.js +0 -12
- package/libs/index.ad783a2f.js +0 -31
- package/libs/index.dca207cb.js +0 -37
- package/libs/index.f2f85d71.js +0 -40
- package/libs/shared-utils/Object3DHelper/utils/finiteNumber.d.ts +0 -1
- package/libs/shared-utils/Object3DHelper/utils/finiteNumber.js +0 -6
- package/libs/shared-utils/Object3DHelper/utils/negateScale.d.ts +0 -2
- package/libs/shared-utils/Object3DHelper/utils/negateScale.js +0 -7
- package/libs/shared-utils/Object3DHelper/utils/threex/domevents/index.d.js +0 -4
- package/libs/shared-utils/Preloader.d.ts +0 -6
- package/libs/shared-utils/Preloader.js +0 -18
- package/libs/shared-utils/formatRad.d.ts +0 -7
- package/libs/shared-utils/formatRad.js +0 -7
- package/libs/shared-utils/getRandomColor.d.ts +0 -1
- package/libs/shared-utils/getRandomColor.js +0 -6
- package/libs/shared-utils/logger.d.ts +0 -16
- package/libs/shared-utils/logger.js +0 -27
- package/libs/shared-utils/math/evenNumber.d.ts +0 -3
- package/libs/shared-utils/math/evenNumber.js +0 -7
- package/libs/shared-utils/px2rem.d.ts +0 -1
- package/libs/shared-utils/px2rem.js +0 -6
- package/libs/shared-utils/three/getExtraModelLoader.d.ts +0 -6
- package/libs/shared-utils/three/getExtraModelLoader.js +0 -18
- package/libs/shared-utils/three/getNormal.d.ts +0 -2
- package/libs/shared-utils/three/getNormal.js +0 -7
- package/libs/shared-utils/three/getTextureLoader.d.ts +0 -6
- package/libs/shared-utils/three/getTextureLoader.js +0 -16
- package/libs/shared-utils/three/loadFbxObj.d.ts +0 -2
- package/libs/shared-utils/three/loadFbxObj.js +0 -16
- package/libs/shared-utils/vectorTocoordinates.d.ts +0 -7
- package/libs/shared-utils/vectorTocoordinates.js +0 -10
- package/libs/style.css +0 -1
- package/libs/tween.esm.bad2b2b4.js +0 -340
- package/libs/typings/math.type.js +0 -1
- package/libs/typings/utils.type.d.ts +0 -2
- package/libs/typings/utils.type.js +0 -1
|
@@ -1,138 +1 @@
|
|
|
1
|
-
var b =
|
|
2
|
-
var k = (h, n, e) => n in h ? b(h, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[n] = e;
|
|
3
|
-
var t = (h, n, e) => (k(h, typeof n != "symbol" ? n + "" : n, e), e);
|
|
4
|
-
import { Model as S } from "../Model/index.js";
|
|
5
|
-
import T from "../Model/line.js";
|
|
6
|
-
import D from "./BaseController.js";
|
|
7
|
-
import M from "../Modules/DeleteDom/index.js";
|
|
8
|
-
import { findAssociatedLines as G } from "../utils/findAssociatedLines.js";
|
|
9
|
-
import { Vector2 as m } from "three";
|
|
10
|
-
import v from "../utils/isNDCPointInScreen.js";
|
|
11
|
-
import { closestPointOnLine as N } from "../utils/math.js";
|
|
12
|
-
import "../Model/point.js";
|
|
13
|
-
import "../../shared-utils/uuid.js";
|
|
14
|
-
import "../../shared-utils/removeArrayItem.js";
|
|
15
|
-
import "@realsee/five";
|
|
16
|
-
import "../Model/polyline.js";
|
|
17
|
-
import "../utils/line.js";
|
|
18
|
-
import "@realsee/five/line";
|
|
19
|
-
import "../utils/constants.js";
|
|
20
|
-
import "../utils/distanceDom.js";
|
|
21
|
-
import "../utils/ironbox.js";
|
|
22
|
-
import "../Modules/DeleteDom/_Assets/delete.svg.js";
|
|
23
|
-
import "../Modules/DeleteDom/_Assets/delete_bg.png.js";
|
|
24
|
-
import "../Modules/DeleteDom/_Assets/delete_hover_bg.png.js";
|
|
25
|
-
class $ extends D {
|
|
26
|
-
constructor(e) {
|
|
27
|
-
super(e);
|
|
28
|
-
t(this, "state", "watching");
|
|
29
|
-
t(this, "model", new S(this.config));
|
|
30
|
-
t(this, "hasAppendDashed", !1);
|
|
31
|
-
t(this, "fiveElement");
|
|
32
|
-
t(this, "mobileStartPoint", null);
|
|
33
|
-
t(this, "mobileNowPoint", null);
|
|
34
|
-
t(this, "highlightedLines", []);
|
|
35
|
-
t(this, "deleteDom");
|
|
36
|
-
t(this, "onLineChanged", () => {
|
|
37
|
-
this.hook.emit(
|
|
38
|
-
"editedLineChange",
|
|
39
|
-
this.model.lines.map((e) => e.toCompletelyJson())
|
|
40
|
-
);
|
|
41
|
-
});
|
|
42
|
-
t(this, "onWantsTapGesture", (e) => {
|
|
43
|
-
if (this.state === "editing")
|
|
44
|
-
return !1;
|
|
45
|
-
const [i] = this.five.model.intersectRaycaster(e);
|
|
46
|
-
if (!i)
|
|
47
|
-
return;
|
|
48
|
-
const o = this.five.camera, p = i.point.clone().project(o), r = this.container.clientWidth, d = this.container.clientHeight, f = new m(p.x * r, p.y * d), g = this.model.lines.map((s) => {
|
|
49
|
-
const [a, L] = s.points, l = a.position.clone().project(o), c = L.position.clone().project(o);
|
|
50
|
-
if (!v(l) && !v(c))
|
|
51
|
-
return null;
|
|
52
|
-
const C = new m(l.x * r, l.y * d), w = new m(c.x * r, c.y * d);
|
|
53
|
-
return { id: s.id, points: [C, w] };
|
|
54
|
-
}).filter((s) => !!s);
|
|
55
|
-
if (g.length === 0)
|
|
56
|
-
return;
|
|
57
|
-
const u = g.map((s) => {
|
|
58
|
-
const a = N(f, s.points);
|
|
59
|
-
return { id: s.id, distance: a.distanceTo(f) };
|
|
60
|
-
}).sort((s, a) => s.distance - a.distance)[0];
|
|
61
|
-
if (u.distance > 20)
|
|
62
|
-
return;
|
|
63
|
-
const P = this.model.lines.find(({ id: s }) => s === u.id);
|
|
64
|
-
if (!!P)
|
|
65
|
-
return this.chooseLine(P), !1;
|
|
66
|
-
});
|
|
67
|
-
t(this, "onWantsToMoveToPano", () => this.state === "watching");
|
|
68
|
-
t(this, "onCameraUpdate", () => {
|
|
69
|
-
this.updateDistanceUI(), this.dashed.distanceItem.update(this.five);
|
|
70
|
-
});
|
|
71
|
-
t(this, "updateMobileDashed", () => {
|
|
72
|
-
!this.mobileStartPoint || !this.mobileNowPoint || (this.dashed.points[0].position.copy(this.mobileStartPoint.position), this.dashed.points[1].position.copy(this.mobileNowPoint.position), this.dashed.mesh.setPoints(this.mobileStartPoint.position, this.mobileNowPoint.position), this.dashed.distanceItem.update(this.five));
|
|
73
|
-
});
|
|
74
|
-
t(this, "updateMagnifier", (e) => {
|
|
75
|
-
this.magnifier.visible === !1 && this.magnifier.appendTo(this.container), requestAnimationFrame(() => this.magnifier.renderWithPoint(e.position)), this.five.needsRender = !0;
|
|
76
|
-
});
|
|
77
|
-
t(this, "onGetStartPoint", (e) => {
|
|
78
|
-
this.mobileStartPoint = e;
|
|
79
|
-
});
|
|
80
|
-
t(this, "onGetEndPoint", (e) => {
|
|
81
|
-
const i = this.mobileNowPoint;
|
|
82
|
-
if (this.removeLine(this.dashed), this.hasAppendDashed = !1, this.mobileStartPoint && i) {
|
|
83
|
-
const o = new T(this.mobileStartPoint, i, this.model);
|
|
84
|
-
o.distanceItem.appendTo(this.container), o.distanceItem.update(this.five), o.hook.on("selected", this.chooseLine), this.group.add(o.mesh), this.model.addLine(o);
|
|
85
|
-
}
|
|
86
|
-
this.mobileStartPoint = null, this.mobileNowPoint = null, this.five.needsRender = !0;
|
|
87
|
-
});
|
|
88
|
-
t(this, "onNowPointChange", (e) => {
|
|
89
|
-
if (this.state === "watching") {
|
|
90
|
-
this.mobileNowPoint = e, this.updateMagnifier(e);
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
this.hasAppendDashed || (this.dashed.distanceItem.appendTo(this.container), this.group.add(this.dashed.mesh), this.hasAppendDashed = !0), this.five.needsRender = !0, this.mobileNowPoint = e, this.updateMobileDashed(), this.updateMagnifier(e), this.five.needsRender = !0;
|
|
94
|
-
});
|
|
95
|
-
t(this, "onWillChangeState", (e, i) => {
|
|
96
|
-
this.state = i, this.state === "watching" ? this.five.helperVisible = !0 : this.five.helperVisible = !1;
|
|
97
|
-
});
|
|
98
|
-
t(this, "chooseLine", (e) => {
|
|
99
|
-
const i = G(e);
|
|
100
|
-
this.highlightLines(i), this.five.needsRender = !0, this.hook.emit(
|
|
101
|
-
"selectedChange",
|
|
102
|
-
i.map((o) => o.toCompletelyJson())
|
|
103
|
-
);
|
|
104
|
-
});
|
|
105
|
-
t(this, "deleteDomClickCallback", () => {
|
|
106
|
-
this.highlightedLines.forEach((e) => {
|
|
107
|
-
this.removeLine(e), this.model.removeLine(e);
|
|
108
|
-
}), this.highlightedLines = [], this.deleteDom.setLines([]).hide();
|
|
109
|
-
});
|
|
110
|
-
t(this, "cancelDeleteClickCallback", () => {
|
|
111
|
-
this.clearHighlightLines();
|
|
112
|
-
});
|
|
113
|
-
this.deleteDom = new M(this.five, {
|
|
114
|
-
onClick: this.deleteDomClickCallback,
|
|
115
|
-
cancelDelete: this.cancelDeleteClickCallback
|
|
116
|
-
}).appendTo(this.container), this.five.on("cameraUpdate", this.onCameraUpdate), this.five.on("wantsTapGesture", this.onWantsTapGesture), this.five.on("wantsToMoveToPano", this.onWantsToMoveToPano), this.model.hook.on("lineAdded", this.onLineChanged), this.model.hook.on("lineRemoved", this.onLineChanged), this.hook.on("getStartPoint", this.onGetStartPoint), this.hook.on("getEndPoint", this.onGetEndPoint), this.hook.on("nowPointChange", this.onNowPointChange), this.hook.on("willChangeState", this.onWillChangeState), this.five.refresh();
|
|
117
|
-
}
|
|
118
|
-
dispose() {
|
|
119
|
-
super.dispose(), this.group.remove(this.mouseGroup, this.dashed.mesh), this.five.off("cameraUpdate", this.onCameraUpdate), this.five.off("wantsTapGesture", this.onWantsTapGesture), this.five.off("wantsToMoveToPano", this.onWantsToMoveToPano), this.model.hook.off("lineAdded", this.onLineChanged), this.model.hook.off("lineRemoved", this.onLineChanged), this.hook.off("getStartPoint", this.onGetStartPoint), this.hook.off("getEndPoint", this.onGetEndPoint), this.hook.off("nowPointChange", this.onNowPointChange), this.hook.off("willChangeState", this.onWillChangeState), this.hook.emit("selectedChange", []), this.dashed.distanceItem.remove(), this.five.needsRender = !0;
|
|
120
|
-
}
|
|
121
|
-
highlightLine(e) {
|
|
122
|
-
e.selected || (e.selected = !0, this.group.add(e.lightMesh), e.distanceItem.highlight(), this.five.needsRender = !0);
|
|
123
|
-
}
|
|
124
|
-
clearHighlightLines() {
|
|
125
|
-
this.group.children.length !== 0 && (this.deleteDom.setLines([]).hide(), this.model.lines.forEach((e) => {
|
|
126
|
-
e.selected = !1, e.distanceItem.unHighlight(), this.group.remove(e.lightMesh);
|
|
127
|
-
}), this.highlightedLines = [], this.five.needsRender = !0);
|
|
128
|
-
}
|
|
129
|
-
getEditingLines() {
|
|
130
|
-
return this.model.lines;
|
|
131
|
-
}
|
|
132
|
-
highlightLines(e) {
|
|
133
|
-
this.clearHighlightLines(), this.highlightedLines = e, this.deleteDom.setLines(e).updatePosition().show(), e.forEach((i) => this.highlightLine(i));
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
export {
|
|
137
|
-
$ as default
|
|
138
|
-
};
|
|
1
|
+
"use strict";var M=Object.defineProperty;var D=(h,o,e)=>o in h?M(h,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):h[o]=e;var t=(h,o,e)=>(D(h,typeof o!="symbol"?o+"":o,e),e);const S=require("../Model/index.js"),b=require("../Model/line.js"),k=require("./BaseController.js"),T=require("../Modules/DeleteDom/index.js"),N=require("../utils/findAssociatedLines.js"),u=require("three"),C=require("../utils/isNDCPointInScreen.js"),_=require("../utils/math.js");class E extends k.BaseController{constructor(e){super(e);t(this,"state","watching");t(this,"model",new S.Model(this.config));t(this,"hasAppendDashed",!1);t(this,"fiveElement");t(this,"mobileStartPoint",null);t(this,"mobileNowPoint",null);t(this,"highlightedLines",[]);t(this,"deleteDom");t(this,"onLineChanged",()=>{this.hook.emit("editedLineChange",this.model.lines.map(e=>e.toCompletelyJson()))});t(this,"onWantsTapGesture",e=>{if(this.state==="editing")return!1;const[i]=this.five.model.intersectRaycaster(e);if(!i)return;const s=this.five.camera,g=i.point.clone().project(s),d=this.container.clientWidth,r=this.container.clientHeight,m=new u.Vector2(g.x*d,g.y*r),f=this.model.lines.map(n=>{const[a,L]=n.points,l=a.position.clone().project(s),c=L.position.clone().project(s);if(!C.isNDCPointInScreen(l)&&!C.isNDCPointInScreen(c))return null;const v=new u.Vector2(l.x*d,l.y*r),w=new u.Vector2(c.x*d,c.y*r);return{id:n.id,points:[v,w]}}).filter(n=>!!n);if(f.length===0)return;const p=f.map(n=>{const a=_.closestPointOnLine(m,n.points);return{id:n.id,distance:a.distanceTo(m)}}).sort((n,a)=>n.distance-a.distance)[0];if(p.distance>20)return;const P=this.model.lines.find(({id:n})=>n===p.id);if(!!P)return this.chooseLine(P),!1});t(this,"onWantsToMoveToPano",()=>this.state==="watching");t(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});t(this,"updateMobileDashed",()=>{!this.mobileStartPoint||!this.mobileNowPoint||(this.dashed.points[0].position.copy(this.mobileStartPoint.position),this.dashed.points[1].position.copy(this.mobileNowPoint.position),this.dashed.mesh.setPoints(this.mobileStartPoint.position,this.mobileNowPoint.position),this.dashed.distanceItem.update(this.five))});t(this,"updateMagnifier",e=>{this.magnifier.visible===!1&&this.magnifier.appendTo(this.container),requestAnimationFrame(()=>this.magnifier.renderWithPoint(e.position)),this.five.needsRender=!0});t(this,"onGetStartPoint",e=>{this.mobileStartPoint=e});t(this,"onGetEndPoint",e=>{const i=this.mobileNowPoint;if(this.removeLine(this.dashed),this.hasAppendDashed=!1,this.mobileStartPoint&&i){const s=new b.Line(this.mobileStartPoint,i,this.model);s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh),this.model.addLine(s)}this.mobileStartPoint=null,this.mobileNowPoint=null,this.five.needsRender=!0});t(this,"onNowPointChange",e=>{if(this.state==="watching"){this.mobileNowPoint=e,this.updateMagnifier(e);return}this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.hasAppendDashed=!0),this.five.needsRender=!0,this.mobileNowPoint=e,this.updateMobileDashed(),this.updateMagnifier(e),this.five.needsRender=!0});t(this,"onWillChangeState",(e,i)=>{this.state=i,this.state==="watching"?this.five.helperVisible=!0:this.five.helperVisible=!1});t(this,"chooseLine",e=>{const i=N.findAssociatedLines(e);this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(s=>s.toCompletelyJson()))});t(this,"deleteDomClickCallback",()=>{this.highlightedLines.forEach(e=>{this.removeLine(e),this.model.removeLine(e)}),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});t(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.deleteDom=new T.DeleteDom(this.five,{onClick:this.deleteDomClickCallback,cancelDelete:this.cancelDeleteClickCallback}).appendTo(this.container),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.model.hook.on("lineAdded",this.onLineChanged),this.model.hook.on("lineRemoved",this.onLineChanged),this.hook.on("getStartPoint",this.onGetStartPoint),this.hook.on("getEndPoint",this.onGetEndPoint),this.hook.on("nowPointChange",this.onNowPointChange),this.hook.on("willChangeState",this.onWillChangeState),this.five.refresh()}dispose(){super.dispose(),this.group.remove(this.mouseGroup,this.dashed.mesh),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.model.hook.off("lineAdded",this.onLineChanged),this.model.hook.off("lineRemoved",this.onLineChanged),this.hook.off("getStartPoint",this.onGetStartPoint),this.hook.off("getEndPoint",this.onGetEndPoint),this.hook.off("nowPointChange",this.onNowPointChange),this.hook.off("willChangeState",this.onWillChangeState),this.hook.emit("selectedChange",[]),this.dashed.distanceItem.remove(),this.five.needsRender=!0}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.lines.forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}getEditingLines(){return this.model.lines}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(i=>this.highlightLine(i))}}exports.MixedController=E;
|
|
@@ -1,33 +1 @@
|
|
|
1
|
-
var s
|
|
2
|
-
var i = (o, e, t) => e in o ? s(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
|
|
3
|
-
var n = (o, e, t) => (i(o, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
-
class a {
|
|
5
|
-
constructor(e, t) {
|
|
6
|
-
n(this, "five");
|
|
7
|
-
n(this, "measureController");
|
|
8
|
-
n(this, "onKeyDown", (e) => {
|
|
9
|
-
if (e.metaKey && e.code === "KeyS") {
|
|
10
|
-
this.measureController.save().changeMode("Watch"), e.preventDefault();
|
|
11
|
-
return;
|
|
12
|
-
}
|
|
13
|
-
if (e.code === "Escape")
|
|
14
|
-
return this.escape();
|
|
15
|
-
});
|
|
16
|
-
n(this, "onMouseDown", (e) => {
|
|
17
|
-
e.button === 2 && (e.preventDefault(), this.escape());
|
|
18
|
-
});
|
|
19
|
-
this.five = t, this.measureController = e;
|
|
20
|
-
const r = this.five.getElement();
|
|
21
|
-
!r || (document.body.addEventListener("keydown", this.onKeyDown), r.addEventListener("mousedown", this.onMouseDown));
|
|
22
|
-
}
|
|
23
|
-
dispose() {
|
|
24
|
-
const e = this.five.getElement();
|
|
25
|
-
!e || (document.body.removeEventListener("keydown", this.onKeyDown), e.removeEventListener("mousedown", this.onMouseDown));
|
|
26
|
-
}
|
|
27
|
-
escape() {
|
|
28
|
-
return this.measureController.getCurrentMode() === "Watch" ? this.measureController.disable() : this.measureController.changeMode("Watch");
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export {
|
|
32
|
-
a as ShortcutKeyController
|
|
33
|
-
};
|
|
1
|
+
"use strict";var s=Object.defineProperty;var i=(o,e,t)=>e in o?s(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var n=(o,e,t)=>(i(o,typeof e!="symbol"?e+"":e,t),t);class u{constructor(e,t){n(this,"five");n(this,"measureController");n(this,"onKeyDown",e=>{if(e.metaKey&&e.code==="KeyS"){this.measureController.save().changeMode("Watch"),e.preventDefault();return}if(e.code==="Escape")return this.escape()});n(this,"onMouseDown",e=>{e.button===2&&(e.preventDefault(),this.escape())});this.five=t,this.measureController=e;const r=this.five.getElement();!r||(document.body.addEventListener("keydown",this.onKeyDown),r.addEventListener("mousedown",this.onMouseDown))}dispose(){const e=this.five.getElement();!e||(document.body.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("mousedown",this.onMouseDown))}escape(){return this.measureController.getCurrentMode()==="Watch"?this.measureController.disable():this.measureController.changeMode("Watch")}}exports.ShortcutKeyController=u;
|
|
@@ -1,101 +1 @@
|
|
|
1
|
-
var P =
|
|
2
|
-
var y = (h, n, e) => n in h ? P(h, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[n] = e;
|
|
3
|
-
var o = (h, n, e) => (y(h, typeof n != "symbol" ? n + "" : n, e), e);
|
|
4
|
-
import { H } from "../../hammer.b5b6115e.js";
|
|
5
|
-
import { Vector2 as p } from "three";
|
|
6
|
-
import { closestPointOnLine as T } from "../utils/math.js";
|
|
7
|
-
import L from "../utils/isNDCPointInScreen.js";
|
|
8
|
-
import { findAssociatedLines as k } from "../utils/findAssociatedLines.js";
|
|
9
|
-
import E from "./BaseController.js";
|
|
10
|
-
import "../Model/line.js";
|
|
11
|
-
import "../../shared-utils/uuid.js";
|
|
12
|
-
import "../Model/polyline.js";
|
|
13
|
-
import "../utils/line.js";
|
|
14
|
-
import "@realsee/five/line";
|
|
15
|
-
import "../utils/constants.js";
|
|
16
|
-
import "@realsee/five";
|
|
17
|
-
import "../utils/distanceDom.js";
|
|
18
|
-
import "../Model/point.js";
|
|
19
|
-
import "../../shared-utils/removeArrayItem.js";
|
|
20
|
-
import "../utils/ironbox.js";
|
|
21
|
-
class K extends E {
|
|
22
|
-
constructor(e) {
|
|
23
|
-
super(e);
|
|
24
|
-
o(this, "type", "view");
|
|
25
|
-
o(this, "highlightedLines", []);
|
|
26
|
-
o(this, "hammer");
|
|
27
|
-
o(this, "wantsTapGesture", (e) => {
|
|
28
|
-
if (this.model.lines.length === 0)
|
|
29
|
-
return;
|
|
30
|
-
const [t] = this.five.model.intersectRaycaster(e);
|
|
31
|
-
if (!t)
|
|
32
|
-
return;
|
|
33
|
-
const i = this.five.camera, g = t.point.clone().project(i), c = this.container.clientWidth, a = this.container.clientHeight, f = new p(g.x * c, g.y * a), u = this.model.lines.map((s) => {
|
|
34
|
-
const [r, w] = s.points, m = r.position.clone().project(i), l = w.position.clone().project(i);
|
|
35
|
-
if (!L(m) && !L(l))
|
|
36
|
-
return null;
|
|
37
|
-
const C = new p(
|
|
38
|
-
m.x * c,
|
|
39
|
-
m.y * a
|
|
40
|
-
), R = new p(
|
|
41
|
-
l.x * c,
|
|
42
|
-
l.y * a
|
|
43
|
-
);
|
|
44
|
-
return { id: s.id, points: [C, R] };
|
|
45
|
-
}).filter((s) => !!s);
|
|
46
|
-
if (u.length === 0)
|
|
47
|
-
return;
|
|
48
|
-
const v = u.map((s) => {
|
|
49
|
-
const r = T(f, s.points);
|
|
50
|
-
return { id: s.id, distance: r.distanceTo(f) };
|
|
51
|
-
}).sort((s, r) => s.distance - r.distance)[0], d = v.distance > 20 ? void 0 : this.model.lines.find(({ id: s }) => s === v.id);
|
|
52
|
-
if (this.highlightedLines.length > 0 && !d)
|
|
53
|
-
return this.clearHighlightLines(), !1;
|
|
54
|
-
if (d)
|
|
55
|
-
return this.chooseLine(d), !1;
|
|
56
|
-
});
|
|
57
|
-
o(this, "chooseLine", (e) => {
|
|
58
|
-
const t = k(e);
|
|
59
|
-
this.highlightLines(t), this.five.needsRender = !0, this.hook.emit(
|
|
60
|
-
"selectedChange",
|
|
61
|
-
t.map((i) => i.toCompletelyJson())
|
|
62
|
-
);
|
|
63
|
-
});
|
|
64
|
-
o(this, "lineRemoved", (e) => {
|
|
65
|
-
this.removeLine(e), this.hook.emit(
|
|
66
|
-
"selectedChange",
|
|
67
|
-
this.model.lines.filter((t) => t.selected).map((t) => t.toCompletelyJson())
|
|
68
|
-
);
|
|
69
|
-
});
|
|
70
|
-
o(this, "onCameraUpdate", () => {
|
|
71
|
-
this.updateDistanceUI();
|
|
72
|
-
});
|
|
73
|
-
this.model.lines.forEach((i) => {
|
|
74
|
-
i.distanceItem.appendTo(this.container), i.distanceItem.update(this.five), i.hook.on("selected", this.chooseLine), this.group.add(i.mesh);
|
|
75
|
-
});
|
|
76
|
-
const t = this.five.getElement();
|
|
77
|
-
if (t) {
|
|
78
|
-
const i = new H(t);
|
|
79
|
-
this.hammer = i;
|
|
80
|
-
}
|
|
81
|
-
this.model.hook.on("lineRemoved", this.lineRemoved), this.five.on("cameraUpdate", this.onCameraUpdate), this.five.on("wantsTapGesture", this.wantsTapGesture), this.five.needsRender = !0;
|
|
82
|
-
}
|
|
83
|
-
dispose() {
|
|
84
|
-
var e;
|
|
85
|
-
super.dispose(), this.model.hook.off("lineRemoved", this.lineRemoved), this.five.off("cameraUpdate", this.onCameraUpdate), this.five.off("wantsTapGesture", this.wantsTapGesture), this.five.needsRender = !0, this.hook.emit("selectedChange", []), (e = this.hammer) == null || e.destroy();
|
|
86
|
-
}
|
|
87
|
-
highlightLine(e) {
|
|
88
|
-
e.selected || (e.selected = !0, this.group.add(e.lightMesh), e.distanceItem.highlight(), this.five.needsRender = !0);
|
|
89
|
-
}
|
|
90
|
-
clearHighlightLines() {
|
|
91
|
-
this.group.children.length !== 0 && (this.model.lines.forEach((e) => {
|
|
92
|
-
e.selected = !1, e.distanceItem.unHighlight(), this.group.remove(e.lightMesh);
|
|
93
|
-
}), this.highlightedLines = [], this.five.needsRender = !0);
|
|
94
|
-
}
|
|
95
|
-
highlightLines(e) {
|
|
96
|
-
this.clearHighlightLines(), this.highlightedLines = e, e.forEach((t) => this.highlightLine(t));
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
export {
|
|
100
|
-
K as default
|
|
101
|
-
};
|
|
1
|
+
"use strict";var R=Object.defineProperty;var _=(i,o,e)=>o in i?R(i,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[o]=e;var r=(i,o,e)=>(_(i,typeof o!="symbol"?o+"":o,e),e);const y=require("hammerjs"),m=require("three"),j=require("../utils/math.js"),v=require("../utils/isNDCPointInScreen.js"),H=require("../utils/findAssociatedLines.js"),I=require("./BaseController.js"),S=i=>i&&typeof i=="object"&&"default"in i?i:{default:i},T=S(y);class E extends I.BaseController{constructor(e){super(e);r(this,"type","view");r(this,"highlightedLines",[]);r(this,"hammer");r(this,"wantsTapGesture",e=>{if(this.model.lines.length===0)return;const[t]=this.five.model.intersectRaycaster(e);if(!t)return;const s=this.five.camera,g=t.point.clone().project(s),c=this.container.clientWidth,a=this.container.clientHeight,f=new m.Vector2(g.x*c,g.y*a),p=this.model.lines.map(n=>{const[h,P]=n.points,d=h.position.clone().project(s),u=P.position.clone().project(s);if(!v.isNDCPointInScreen(d)&&!v.isNDCPointInScreen(u))return null;const C=new m.Vector2(d.x*c,d.y*a),w=new m.Vector2(u.x*c,u.y*a);return{id:n.id,points:[C,w]}}).filter(n=>!!n);if(p.length===0)return;const L=p.map(n=>{const h=j.closestPointOnLine(f,n.points);return{id:n.id,distance:h.distanceTo(f)}}).sort((n,h)=>n.distance-h.distance)[0],l=L.distance>20?void 0:this.model.lines.find(({id:n})=>n===L.id);if(this.highlightedLines.length>0&&!l)return this.clearHighlightLines(),!1;if(l)return this.chooseLine(l),!1});r(this,"chooseLine",e=>{const t=H.findAssociatedLines(e);this.highlightLines(t),this.five.needsRender=!0,this.hook.emit("selectedChange",t.map(s=>s.toCompletelyJson()))});r(this,"lineRemoved",e=>{this.removeLine(e),this.hook.emit("selectedChange",this.model.lines.filter(t=>t.selected).map(t=>t.toCompletelyJson()))});r(this,"onCameraUpdate",()=>{this.updateDistanceUI()});this.model.lines.forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh)});const t=this.five.getElement();if(t){const s=new T.default(t);this.hammer=s}this.model.hook.on("lineRemoved",this.lineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.needsRender=!0}dispose(){var e;super.dispose(),this.model.hook.off("lineRemoved",this.lineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.model.lines.forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,e.forEach(t=>this.highlightLine(t))}}exports.ViewController=E;
|
|
@@ -1,169 +1 @@
|
|
|
1
|
-
var w =
|
|
2
|
-
var y = (a, h, e) => h in a ? w(a, h, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[h] = e;
|
|
3
|
-
var s = (a, h, e) => (y(a, typeof h != "symbol" ? h + "" : h, e), e);
|
|
4
|
-
import { H as E } from "../../hammer.b5b6115e.js";
|
|
5
|
-
import G from "../Modules/DeleteDom/index.js";
|
|
6
|
-
import L from "../utils/isNDCPointInScreen.js";
|
|
7
|
-
import R from "./BaseController.js";
|
|
8
|
-
import { Raycaster as H, Vector2 as f } from "three";
|
|
9
|
-
import { closestPointOnLine as T } from "../utils/math.js";
|
|
10
|
-
import { findClosestPoint as I } from "../utils/findClosestPoint.js";
|
|
11
|
-
import { findAssociatedLines as v } from "../utils/findAssociatedLines.js";
|
|
12
|
-
import { getPointFromHammerEvent as C } from "../utils/getPointFromHammerEvent.js";
|
|
13
|
-
import "../Modules/DeleteDom/_Assets/delete.svg.js";
|
|
14
|
-
import "../Modules/DeleteDom/_Assets/delete_bg.png.js";
|
|
15
|
-
import "../Modules/DeleteDom/_Assets/delete_hover_bg.png.js";
|
|
16
|
-
import "../Model/line.js";
|
|
17
|
-
import "../../shared-utils/uuid.js";
|
|
18
|
-
import "../Model/polyline.js";
|
|
19
|
-
import "../utils/line.js";
|
|
20
|
-
import "@realsee/five/line";
|
|
21
|
-
import "../utils/constants.js";
|
|
22
|
-
import "@realsee/five";
|
|
23
|
-
import "../utils/distanceDom.js";
|
|
24
|
-
import "../Model/point.js";
|
|
25
|
-
import "../../shared-utils/removeArrayItem.js";
|
|
26
|
-
import "../utils/ironbox.js";
|
|
27
|
-
import "../utils/ndc2Screen.js";
|
|
28
|
-
class oe extends R {
|
|
29
|
-
constructor(e) {
|
|
30
|
-
super(e);
|
|
31
|
-
s(this, "type", "watch");
|
|
32
|
-
s(this, "deleteDom");
|
|
33
|
-
s(this, "highlightedLines", []);
|
|
34
|
-
s(this, "fiveElement");
|
|
35
|
-
s(this, "editPointState");
|
|
36
|
-
s(this, "hammer");
|
|
37
|
-
s(this, "onPanStart", (e) => {
|
|
38
|
-
var r;
|
|
39
|
-
if (this.model.points.length === 0 || !this.fiveElement)
|
|
40
|
-
return;
|
|
41
|
-
const i = C(e).point, t = (r = I(this.five, this.model.points, i, 20)) == null ? void 0 : r.point;
|
|
42
|
-
if (!t) {
|
|
43
|
-
this.editPointState = void 0;
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
const o = {
|
|
47
|
-
point: t,
|
|
48
|
-
associatedLines: v(t.lines[0])
|
|
49
|
-
};
|
|
50
|
-
this.hook.emit("wantsDragLine", {
|
|
51
|
-
point: t.id,
|
|
52
|
-
lines: o.associatedLines.map(({ id: l }) => l)
|
|
53
|
-
}) || (this.editPointState = o, this.magnifier.appendTo(this.container), this.group.add(this.mouseGroup));
|
|
54
|
-
});
|
|
55
|
-
s(this, "onPanEnd", () => {
|
|
56
|
-
!this.editPointState || (this.editPointState.point.lines.forEach((e) => e.mesh.setMaterial({ dashed: !1 })), this.highlightLines(this.editPointState.associatedLines), this.editPointState = void 0, this.magnifier.remove(), this.group.remove(this.mouseGroup));
|
|
57
|
-
});
|
|
58
|
-
s(this, "onPan", (e) => {
|
|
59
|
-
if (!this.editPointState || !this.fiveElement)
|
|
60
|
-
return;
|
|
61
|
-
const i = C(e).ndcPoint, t = new H();
|
|
62
|
-
t.setFromCamera(i, this.five.camera);
|
|
63
|
-
const [o] = this.five.model.intersectRaycaster(t);
|
|
64
|
-
!o || this.onIntersectionUpdate(o);
|
|
65
|
-
});
|
|
66
|
-
s(this, "onIntersectionUpdate", (e, i) => {
|
|
67
|
-
if (!!this.editPointState) {
|
|
68
|
-
if (this.clearHighlightLines(), this.editPointState.point.position.copy(e.point), this.editPointState.point.lines.forEach((t) => {
|
|
69
|
-
t.mesh.setPoints(t.points[0].position.clone(), t.points[1].position.clone()), t.lightMesh.setPoints(t.points[0].position.clone(), t.points[1].position.clone()), t.mesh.setMaterial({ dashed: !0 });
|
|
70
|
-
}), this.updateDistanceUI(), this.magnifier.renderWithPoint(e.point), this.mouseGroup.position.copy(e.point), i)
|
|
71
|
-
this.mouseGroup.quaternion.copy(i.quaternion);
|
|
72
|
-
else if (e.face) {
|
|
73
|
-
const o = e.face.normal.clone().multiplyScalar(0.05), r = e.point.clone().add(o).clone().add(o);
|
|
74
|
-
this.mouseGroup.lookAt(r);
|
|
75
|
-
}
|
|
76
|
-
this.five.needsRender = !0, this.hook.emit(
|
|
77
|
-
"selectedChange",
|
|
78
|
-
this.editPointState.associatedLines.map((t) => t.toCompletelyJson())
|
|
79
|
-
);
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
s(this, "wantsPanGesture", () => {
|
|
83
|
-
if (this.editPointState)
|
|
84
|
-
return !1;
|
|
85
|
-
});
|
|
86
|
-
s(this, "wantsTapGesture", (e) => {
|
|
87
|
-
const [i] = this.five.model.intersectRaycaster(e);
|
|
88
|
-
if (!i)
|
|
89
|
-
return;
|
|
90
|
-
const t = this.five.camera, o = i.point.clone().project(t), c = this.container.clientWidth, r = this.container.clientHeight, l = new f(o.x * c, o.y * r), u = this.model.lines.map((n) => {
|
|
91
|
-
const [d, S] = n.points, m = d.position.clone().project(t), p = S.position.clone().project(t);
|
|
92
|
-
if (!L(m) && !L(p))
|
|
93
|
-
return null;
|
|
94
|
-
const k = new f(
|
|
95
|
-
m.x * c,
|
|
96
|
-
m.y * r
|
|
97
|
-
), D = new f(
|
|
98
|
-
p.x * c,
|
|
99
|
-
p.y * r
|
|
100
|
-
);
|
|
101
|
-
return { id: n.id, points: [k, D] };
|
|
102
|
-
}).filter((n) => !!n);
|
|
103
|
-
if (u.length === 0)
|
|
104
|
-
return;
|
|
105
|
-
const g = u.map((n) => {
|
|
106
|
-
const d = T(l, n.points);
|
|
107
|
-
return { id: n.id, distance: d.distanceTo(l) };
|
|
108
|
-
}).sort((n, d) => n.distance - d.distance)[0];
|
|
109
|
-
if (g.distance > 20)
|
|
110
|
-
return;
|
|
111
|
-
const P = this.model.lines.find(({ id: n }) => n === g.id);
|
|
112
|
-
if (!!P)
|
|
113
|
-
return this.chooseLine(P), !1;
|
|
114
|
-
});
|
|
115
|
-
s(this, "chooseLine", (e) => {
|
|
116
|
-
const i = v(e);
|
|
117
|
-
this.highlightLines(i), this.five.needsRender = !0, this.hook.emit(
|
|
118
|
-
"selectedChange",
|
|
119
|
-
i.map((t) => t.toCompletelyJson())
|
|
120
|
-
);
|
|
121
|
-
});
|
|
122
|
-
s(this, "lineRemoved", (e) => {
|
|
123
|
-
this.removeLine(e), this.hook.emit(
|
|
124
|
-
"selectedChange",
|
|
125
|
-
this.model.lines.filter((i) => i.selected).map((i) => i.toCompletelyJson())
|
|
126
|
-
);
|
|
127
|
-
});
|
|
128
|
-
s(this, "onCameraUpdate", () => {
|
|
129
|
-
this.updateDistanceUI(), this.highlightedLines.length > 0 && this.deleteDom.updatePosition();
|
|
130
|
-
});
|
|
131
|
-
s(this, "deleteDomClickCallback", () => {
|
|
132
|
-
this.highlightedLines[0].getPolyline().lines.slice().reverse().forEach((i) => this.model.removeLine(i)), this.highlightedLines = [], this.deleteDom.setLines([]).hide();
|
|
133
|
-
});
|
|
134
|
-
s(this, "cancelDeleteClickCallback", () => {
|
|
135
|
-
this.clearHighlightLines();
|
|
136
|
-
});
|
|
137
|
-
this.deleteDom = new G(this.five, {
|
|
138
|
-
onClick: this.deleteDomClickCallback,
|
|
139
|
-
cancelDelete: this.cancelDeleteClickCallback
|
|
140
|
-
}).appendTo(this.container), this.model.lines.forEach((t) => {
|
|
141
|
-
t.distanceItem.appendTo(this.container), t.distanceItem.update(this.five), t.hook.on("selected", this.chooseLine), this.group.add(t.mesh);
|
|
142
|
-
});
|
|
143
|
-
const i = this.five.getElement();
|
|
144
|
-
if (i) {
|
|
145
|
-
this.fiveElement = i;
|
|
146
|
-
const t = new E(i);
|
|
147
|
-
this.hammer = t, t.on("pan", this.onPan), t.on("panstart", this.onPanStart), t.on("panend", this.onPanEnd);
|
|
148
|
-
}
|
|
149
|
-
this.model.hook.on("lineRemoved", this.lineRemoved), this.five.on("cameraUpdate", this.onCameraUpdate), this.five.on("wantsTapGesture", this.wantsTapGesture), this.five.on("wantsPanGesture", this.wantsPanGesture), this.five.needsRender = !0;
|
|
150
|
-
}
|
|
151
|
-
dispose() {
|
|
152
|
-
var e;
|
|
153
|
-
super.dispose(), this.deleteDom.dispose(), this.model.hook.off("lineRemoved", this.lineRemoved), this.model.lines.forEach((i) => i.hook.off("selected", this.chooseLine)), this.five.off("cameraUpdate", this.onCameraUpdate), this.five.off("wantsPanGesture", this.wantsPanGesture), this.five.off("wantsTapGesture", this.wantsTapGesture), this.five.needsRender = !0, this.hook.emit("selectedChange", []), (e = this.hammer) == null || e.destroy();
|
|
154
|
-
}
|
|
155
|
-
highlightLine(e) {
|
|
156
|
-
e.selected || (e.selected = !0, this.group.add(e.lightMesh), e.distanceItem.highlight(), this.five.needsRender = !0);
|
|
157
|
-
}
|
|
158
|
-
clearHighlightLines() {
|
|
159
|
-
this.group.children.length !== 0 && (this.deleteDom.setLines([]).hide(), this.model.lines.forEach((e) => {
|
|
160
|
-
e.selected = !1, e.distanceItem.unHighlight(), this.group.remove(e.lightMesh);
|
|
161
|
-
}), this.highlightedLines = [], this.five.needsRender = !0);
|
|
162
|
-
}
|
|
163
|
-
highlightLines(e) {
|
|
164
|
-
this.clearHighlightLines(), this.highlightedLines = e, this.deleteDom.setLines(e).updatePosition().show(), e.forEach((i) => this.highlightLine(i));
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
export {
|
|
168
|
-
oe as default
|
|
169
|
-
};
|
|
1
|
+
"use strict";var k=Object.defineProperty;var w=(n,h,e)=>h in n?k(n,h,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[h]=e;var s=(n,h,e)=>(w(n,typeof h!="symbol"?h+"":h,e),e);const y=require("hammerjs"),_=require("../Modules/DeleteDom/index.js"),L=require("../utils/isNDCPointInScreen.js"),G=require("./BaseController.js"),m=require("three"),R=require("../utils/math.js"),H=require("../utils/findClosestPoint.js"),v=require("../utils/findAssociatedLines.js"),C=require("../utils/getPointFromHammerEvent.js"),M=n=>n&&typeof n=="object"&&"default"in n?n:{default:n},j=M(y);class I extends G.BaseController{constructor(e){super(e);s(this,"type","watch");s(this,"deleteDom");s(this,"highlightedLines",[]);s(this,"fiveElement");s(this,"editPointState");s(this,"hammer");s(this,"onPanStart",e=>{var r;if(this.model.points.length===0||!this.fiveElement)return;const i=C.getPointFromHammerEvent(e).point,t=(r=H.findClosestPoint(this.five,this.model.points,i,20))==null?void 0:r.point;if(!t){this.editPointState=void 0;return}const o={point:t,associatedLines:v.findAssociatedLines(t.lines[0])};this.hook.emit("wantsDragLine",{point:t.id,lines:o.associatedLines.map(({id:d})=>d)})||(this.editPointState=o,this.magnifier.appendTo(this.container),this.group.add(this.mouseGroup))});s(this,"onPanEnd",()=>{!this.editPointState||(this.editPointState.point.lines.forEach(e=>e.mesh.setMaterial({dashed:!1})),this.highlightLines(this.editPointState.associatedLines),this.editPointState=void 0,this.magnifier.remove(),this.group.remove(this.mouseGroup))});s(this,"onPan",e=>{if(!this.editPointState||!this.fiveElement)return;const i=C.getPointFromHammerEvent(e).ndcPoint,t=new m.Raycaster;t.setFromCamera(i,this.five.camera);const[o]=this.five.model.intersectRaycaster(t);!o||this.onIntersectionUpdate(o)});s(this,"onIntersectionUpdate",(e,i)=>{if(!!this.editPointState){if(this.clearHighlightLines(),this.editPointState.point.position.copy(e.point),this.editPointState.point.lines.forEach(t=>{t.mesh.setPoints(t.points[0].position.clone(),t.points[1].position.clone()),t.lightMesh.setPoints(t.points[0].position.clone(),t.points[1].position.clone()),t.mesh.setMaterial({dashed:!0})}),this.updateDistanceUI(),this.magnifier.renderWithPoint(e.point),this.mouseGroup.position.copy(e.point),i)this.mouseGroup.quaternion.copy(i.quaternion);else if(e.face){const o=e.face.normal.clone().multiplyScalar(.05),r=e.point.clone().add(o).clone().add(o);this.mouseGroup.lookAt(r)}this.five.needsRender=!0,this.hook.emit("selectedChange",this.editPointState.associatedLines.map(t=>t.toCompletelyJson()))}});s(this,"wantsPanGesture",()=>{if(this.editPointState)return!1});s(this,"wantsTapGesture",e=>{const[i]=this.five.model.intersectRaycaster(e);if(!i)return;const t=this.five.camera,o=i.point.clone().project(t),c=this.container.clientWidth,r=this.container.clientHeight,d=new m.Vector2(o.x*c,o.y*r),f=this.model.lines.map(a=>{const[l,D]=a.points,u=l.position.clone().project(t),p=D.position.clone().project(t);if(!L.isNDCPointInScreen(u)&&!L.isNDCPointInScreen(p))return null;const S=new m.Vector2(u.x*c,u.y*r),E=new m.Vector2(p.x*c,p.y*r);return{id:a.id,points:[S,E]}}).filter(a=>!!a);if(f.length===0)return;const g=f.map(a=>{const l=R.closestPointOnLine(d,a.points);return{id:a.id,distance:l.distanceTo(d)}}).sort((a,l)=>a.distance-l.distance)[0];if(g.distance>20)return;const P=this.model.lines.find(({id:a})=>a===g.id);if(!!P)return this.chooseLine(P),!1});s(this,"chooseLine",e=>{const i=v.findAssociatedLines(e);this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(t=>t.toCompletelyJson()))});s(this,"lineRemoved",e=>{this.removeLine(e),this.hook.emit("selectedChange",this.model.lines.filter(i=>i.selected).map(i=>i.toCompletelyJson()))});s(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.highlightedLines.length>0&&this.deleteDom.updatePosition()});s(this,"deleteDomClickCallback",()=>{this.highlightedLines[0].getPolyline().lines.slice().reverse().forEach(i=>this.model.removeLine(i)),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});s(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.deleteDom=new _.DeleteDom(this.five,{onClick:this.deleteDomClickCallback,cancelDelete:this.cancelDeleteClickCallback}).appendTo(this.container),this.model.lines.forEach(t=>{t.distanceItem.appendTo(this.container),t.distanceItem.update(this.five),t.hook.on("selected",this.chooseLine),this.group.add(t.mesh)});const i=this.five.getElement();if(i){this.fiveElement=i;const t=new j.default(i);this.hammer=t,t.on("pan",this.onPan),t.on("panstart",this.onPanStart),t.on("panend",this.onPanEnd)}this.model.hook.on("lineRemoved",this.lineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsPanGesture",this.wantsPanGesture),this.five.needsRender=!0}dispose(){var e;super.dispose(),this.deleteDom.dispose(),this.model.hook.off("lineRemoved",this.lineRemoved),this.model.lines.forEach(i=>i.hook.off("selected",this.chooseLine)),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.wantsPanGesture),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.lines.forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(i=>this.highlightLine(i))}}exports.WatchController=I;
|
|
@@ -51,7 +51,7 @@ export default class MeasureController {
|
|
|
51
51
|
/** 变更场景
|
|
52
52
|
* @description 如果从编辑场景改变到观看场景,不会自动保存,默认丢弃所有改动
|
|
53
53
|
*/
|
|
54
|
-
changeMode: (mode: Mode) => Error
|
|
54
|
+
changeMode: (mode: Mode) => Error;
|
|
55
55
|
/** 撤销编辑 */
|
|
56
56
|
revoke(): void;
|
|
57
57
|
removeLineByID(lineID: string): void;
|