@realsee/dnalogel 2.3.9-alpha.7 → 2.4.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/CSS3DRenderPlugin/utils/positionToVector3.d.ts +2 -2
- package/dist/PanoMeasurePlugin/Controller/BaseController.d.ts +5 -5
- package/dist/PanoMeasurePlugin/Controller/EditController.d.ts +5 -6
- package/dist/PanoMeasurePlugin/Controller/MixedController.d.ts +7 -9
- package/dist/PanoMeasurePlugin/Controller/ViewController.d.ts +6 -10
- package/dist/PanoMeasurePlugin/Controller/WatchController.d.ts +3 -3
- package/dist/PanoMeasurePlugin/Controller/index.d.ts +27 -9
- package/dist/PanoMeasurePlugin/Model/index.d.ts +17 -17
- package/dist/PanoMeasurePlugin/Model/line.d.ts +6 -4
- package/dist/PanoMeasurePlugin/Model/point.d.ts +2 -4
- package/dist/PanoMeasurePlugin/Model/polyline.d.ts +37 -12
- package/dist/PanoMeasurePlugin/Modules/GuideController.d.ts +2 -0
- package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +29 -16
- package/dist/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +3 -4
- package/dist/PanoMeasurePlugin/Modules/UIController/index.d.ts +1 -2
- package/dist/PanoMeasurePlugin/index.d.ts +6 -2
- package/dist/PanoMeasurePlugin/typings/data.d.ts +6 -16
- package/dist/PanoMeasurePlugin/typings/event.type.d.ts +18 -14
- package/dist/PanoMeasurePlugin/typings/index.d.ts +4 -2
- package/dist/PanoMeasurePlugin/utils/distanceDom.d.ts +5 -3
- package/dist/PanoTagPlugin/Assets/Icon.d.ts +2 -3
- package/dist/PanoTagPlugin/controller/TagCacheController.d.ts +2 -1
- package/dist/PanoTagPlugin/controller/TagComputer.d.ts +22 -19
- package/dist/PanoTagPlugin/controller/index.d.ts +14 -25
- package/dist/PanoTagPlugin/index.d.ts +1 -1
- package/dist/PanoTagPlugin/typings/controller.d.ts +17 -23
- package/dist/PanoTagPlugin/typings/index.d.ts +1 -5
- package/dist/PanoTagPlugin/typings/tag.d.ts +247 -0
- package/dist/PanoTagPlugin/utils/actionAfterFiveModelLoad.d.ts +0 -1
- package/dist/index.cjs.js +112 -110
- package/dist/index.js +7139 -8277
- package/dist/index.umd.js +108 -106
- package/docs/assets/search.js +1 -1
- package/docs/classes/CSS3DRender.html +31 -31
- package/docs/classes/CruisePluginController.html +24 -24
- package/docs/classes/Magnifier.html +90 -40
- package/docs/classes/ModelRoomLabelController.html +11 -11
- package/docs/classes/Object3DHelperController.html +24 -24
- package/docs/classes/PaintBrush.html +15 -15
- package/docs/classes/PanoMeasurePluginLine.html +318 -0
- package/docs/classes/PanoMeasurePluginModel.html +275 -0
- package/docs/classes/PanoMeasurePluginPoint.html +160 -0
- package/docs/classes/PanoMeasurePluginPolyline.html +306 -0
- package/docs/classes/PanoTagPluginController.html +176 -223
- package/docs/classes/Util.BetterTween.html +8 -8
- package/docs/classes/Util.FivePointSelector.html +12 -12
- package/docs/classes/Util.Interval.html +12 -12
- package/docs/classes/Util.Magnifier.html +17 -17
- package/docs/classes/Util.PointDomHelper.html +11 -11
- package/docs/classes/Util.PointHelper.html +11 -11
- package/docs/classes/Util.Rectangle.html +13 -13
- package/docs/enums/CameraMovementEffect.html +7 -7
- package/docs/enums/ContentType.html +35 -75
- package/docs/enums/DIRECTION.html +9 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/DimensionType.html +15 -19
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/LinkType.html +67 -0
- package/docs/enums/PaintBrushTypeEnum.html +8 -8
- package/docs/enums/PointType.html +15 -19
- package/docs/enums/Rotation.html +8 -8
- package/docs/functions/CSS3DRenderPlugin.html +21 -42
- package/docs/functions/CameraMovementPlugin.html +21 -42
- package/docs/functions/CruisePlugin.html +21 -42
- package/docs/functions/GuideLinePlugin.html +22 -43
- package/docs/functions/ItemLabelPlugin.html +21 -42
- package/docs/functions/MapviewFloorplanPlugin.html +21 -42
- package/docs/functions/ModelChassisCompassPlugin.html +21 -42
- package/docs/functions/ModelEntryDoorGuidePlugin.html +21 -42
- package/docs/functions/ModelFloorplanPlugin.html +21 -42
- package/docs/functions/ModelItemLabelPlugin.html +21 -42
- package/docs/functions/ModelRoomLabelPlugin.html +21 -42
- package/docs/functions/ModelTVVideoPlugin.html +21 -42
- package/docs/functions/ModelViewPlugin.html +21 -42
- package/docs/functions/Object3DHelperPlugin.html +21 -42
- package/docs/functions/PanoCompassPlugin.html +21 -42
- package/docs/functions/PanoCursorRaycasterPlugin.html +21 -42
- package/docs/functions/PanoDoorLabelPlugin.html +21 -42
- package/docs/functions/PanoFloorplanRadarPlugin.html +21 -42
- package/docs/functions/PanoMeasurePlugin.html +21 -42
- package/docs/functions/PanoRulerPlugin.html +21 -42
- package/docs/functions/PanoRulerProPlugin.html +21 -42
- package/docs/functions/PanoSpatialTagPlugin.html +21 -42
- package/docs/functions/PanoTagPlugin.html +31 -48
- package/docs/functions/TopviewFloorplanPlugin.html +21 -42
- package/docs/functions/Util.getCoordsFromClient.html +5 -5
- package/docs/functions/Util.getCoordsFromElement.html +5 -5
- package/docs/functions/Util.getFrameTime.html +5 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
- package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
- package/docs/functions/Util.isNil.html +5 -5
- package/docs/functions/Util.nextFrame.html +5 -5
- package/docs/functions/Util.notNil.html +5 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
- package/docs/functions/Util.tweenProgress.html +5 -5
- package/docs/functions/pluginFlag.html +22 -43
- package/docs/index.html +21 -42
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
- package/docs/interfaces/ContentTypeMap.html +212 -0
- package/docs/interfaces/FloorplanBounding.html +8 -8
- package/docs/interfaces/FloorplanData.html +10 -10
- package/docs/interfaces/FloorplanEntrance.html +11 -11
- package/docs/interfaces/FloorplanExtraObject.html +10 -10
- package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
- package/docs/interfaces/FloorplanFloorData.html +9 -9
- package/docs/interfaces/FloorplanImagePosition.html +7 -7
- package/docs/interfaces/FloorplanObserver.html +9 -9
- package/docs/interfaces/FloorplanOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanPosition.html +7 -7
- package/docs/interfaces/FloorplanRoomItem.html +13 -13
- package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
- package/docs/interfaces/FloorplanServerBounding.html +8 -8
- package/docs/interfaces/FloorplanServerComputedData.html +10 -10
- package/docs/interfaces/FloorplanServerData.html +7 -7
- package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
- package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
- package/docs/interfaces/FloorplanServerEntrance.html +11 -11
- package/docs/interfaces/FloorplanServerFloorData.html +9 -9
- package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
- package/docs/interfaces/FloorplanServerObserver.html +9 -9
- package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanServerPosition.html +7 -7
- package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
- package/docs/interfaces/ItemLabelPluginData.html +6 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
- package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
- package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
- package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
- package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
- package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
- package/docs/interfaces/ModelViewPluginExportType.html +11 -11
- package/docs/interfaces/Object3DHelperState.html +8 -8
- package/docs/interfaces/PaintBrushAction.html +12 -12
- package/docs/interfaces/PaintBrushConfigs.html +12 -12
- package/docs/interfaces/PaintBrushState.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +22 -43
- package/docs/interfaces/PanoMeasureParameterType.html +24 -14
- package/docs/interfaces/{PointJson.html → PanoMeasurePluginLineJson.html} +24 -24
- package/docs/interfaces/{OpenParameter.html → PanoMeasurePluginOpenParameter.html} +15 -15
- package/docs/interfaces/{LineJson.html → PanoMeasurePluginPointJson.html} +18 -18
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +80 -0
- package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
- package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
- package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
- package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
- package/docs/interfaces/PanoRulerProPluginState.html +8 -8
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +22 -43
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +22 -43
- package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
- package/docs/interfaces/Point.html +8 -8
- package/docs/interfaces/Room.html +9 -9
- package/docs/interfaces/RoomInfo.html +7 -7
- package/docs/interfaces/RoomLabel.html +14 -14
- package/docs/interfaces/RoomRules.html +22 -43
- package/docs/interfaces/Rooms.html +22 -43
- package/docs/interfaces/Scissor.html +9 -9
- package/docs/interfaces/TagConfig.html +19 -15
- package/docs/interfaces/Tags.html +12 -14
- package/docs/interfaces/Util.MagnifierParameter.html +11 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
- package/docs/modules/Util.html +5 -5
- package/docs/modules.html +37 -79
- package/docs/types/ArrayPosition.html +23 -44
- package/docs/types/CSS3DRenderExportType.html +22 -43
- package/docs/types/CSS3DRenderPluginExportType.html +22 -43
- package/docs/types/CSS3DRenderPluginParameterType.html +22 -43
- package/docs/types/Color.html +22 -43
- package/docs/types/ContentTypeConfigKey.html +23 -44
- package/docs/types/{PanoIndex.html → ContentTypeConfigKeyArray.html} +25 -46
- package/docs/types/Create3DDomContainerReturnType.html +22 -43
- package/docs/types/Create3DElementReturnType.html +22 -43
- package/docs/types/CruisePluginExportType.html +22 -43
- package/docs/types/Direction-1.html +22 -43
- package/docs/types/Direction4.html +22 -43
- package/docs/types/FloorplanRuleLabels.html +22 -43
- package/docs/types/FloorplanServerRuleLabels.html +22 -43
- package/docs/types/GuideLinePluginExportType.html +22 -43
- package/docs/types/HelperEventMap.html +22 -43
- package/docs/types/MapviewFloorplanPluginParameterType.html +22 -43
- package/docs/types/MapviewFloorplanPluginReturnType.html +22 -43
- package/docs/types/MediaData.html +22 -43
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +22 -43
- package/docs/types/ModelFloorplanPluginParameterType.html +22 -43
- package/docs/types/ModelFloorplanPluginReturnType.html +22 -43
- package/docs/types/ModelRoomLabelPluginParameters.html +22 -43
- package/docs/types/ModelRoomLabelPluginReturnType.html +22 -43
- package/docs/types/MoveArgs.html +22 -43
- package/docs/types/MoveOpts.html +22 -43
- package/docs/types/Object3DHelperEventMap.html +22 -43
- package/docs/types/ObjectFit.html +22 -43
- package/docs/types/PaintBrushEventMap.html +22 -43
- package/docs/types/PanoCompassPluginData.html +22 -43
- package/docs/types/PanoCompassPluginExportType.html +22 -43
- package/docs/types/PanoCompassPluginParameterType.html +22 -43
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +22 -43
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +22 -43
- package/docs/types/PanoMeasurePluginEvent.html +22 -43
- package/docs/types/PanoMeasureReturnType.html +22 -43
- package/docs/types/PanoSpatialTagPluginId.html +22 -43
- package/docs/types/PanoTagPluginExportInterface.html +22 -43
- package/docs/types/PanoTagPluginParamsInterface.html +22 -43
- package/docs/types/PlaneTag.html +27 -46
- package/docs/types/PointTag.html +31 -46
- package/docs/types/Position.html +22 -43
- package/docs/types/RotateArgs.html +22 -43
- package/docs/types/RotateOpts.html +22 -43
- package/docs/types/RuleLabelsKey.html +22 -43
- package/docs/types/RuleLabelsValue.html +22 -43
- package/docs/types/Tag.html +30 -47
- package/docs/types/Tag2D.html +28 -48
- package/docs/types/Tag3D.html +28 -48
- package/docs/types/TagId.html +22 -43
- package/docs/types/TopviewFloorplanPluginParameterType.html +22 -43
- package/docs/types/TopviewFloorplanPluginReturnType.html +22 -43
- package/docs/variables/FLOOR_TYPE_MAP.html +22 -43
- package/docs/variables/PLUGIN.html +22 -43
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +22 -43
- package/docs/variables/ROOM_TYPE_MAP.html +22 -43
- package/docs/variables/VERSION.html +22 -43
- package/docs/variables/itemLabelPluginServerParams.html +22 -43
- package/docs/variables/modelItemLabelPluginServerParams.html +22 -43
- package/docs/variables/modelRoomLabelPluginServerParams.html +22 -43
- package/libs/CSS3DRenderPlugin/CSS3DRender.js +1 -1
- package/libs/CSS3DRenderPlugin/Controller.js +2 -2
- package/libs/CSS3DRenderPlugin/utils/createResizeObserver.js +1 -1
- package/libs/CSS3DRenderPlugin/utils/generateBehindFiveElement.js +1 -1
- package/libs/CSS3DRenderPlugin/utils/getAllCSS3DObject.js +4 -4
- package/libs/CSS3DRenderPlugin/utils/index.js +0 -12
- package/libs/CSS3DRenderPlugin/utils/positionToVector3.d.ts +2 -2
- package/libs/CSS3DRenderPlugin/utils/positionToVector3.js +3 -4
- package/libs/CSS3DRenderPlugin/utils/random.js +1 -6
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DGroup.js +2 -3
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DObject.js +1 -2
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DRenderer.js +4 -6
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DScene.js +1 -1
- package/libs/CSS3DRenderPlugin/utils/three/OpacityMesh.js +6 -6
- package/libs/CSS3DRenderPlugin/utils/waitFiveModelLoaded.js +13 -13
- package/libs/CruisePlugin/Controller.js +2 -2
- package/libs/CruisePlugin/utils/coordinatesAngle.js +2 -3
- package/libs/CruisePlugin/utils/linerValue.js +4 -4
- package/libs/GuideLinePlugin/Controller.js +1 -1
- package/libs/GuideLinePlugin/utils/getLineGeometries.js +1 -1
- package/libs/Object3DHelperPlugin/Controller.js +36 -38
- package/libs/PanoCompassPlugin/Controller.js +3 -8
- package/libs/PanoMeasurePlugin/Controller/BaseController.d.ts +5 -5
- package/libs/PanoMeasurePlugin/Controller/BaseController.js +18 -28
- package/libs/PanoMeasurePlugin/Controller/EditController.d.ts +5 -6
- package/libs/PanoMeasurePlugin/Controller/EditController.js +57 -70
- package/libs/PanoMeasurePlugin/Controller/MixedController.d.ts +7 -9
- package/libs/PanoMeasurePlugin/Controller/MixedController.js +43 -54
- package/libs/PanoMeasurePlugin/Controller/ViewController.d.ts +6 -10
- package/libs/PanoMeasurePlugin/Controller/ViewController.js +43 -84
- package/libs/PanoMeasurePlugin/Controller/WatchController.d.ts +3 -3
- package/libs/PanoMeasurePlugin/Controller/WatchController.js +51 -68
- package/libs/PanoMeasurePlugin/Controller/index.d.ts +27 -9
- package/libs/PanoMeasurePlugin/Controller/index.js +118 -130
- package/libs/PanoMeasurePlugin/Model/index.d.ts +17 -17
- package/libs/PanoMeasurePlugin/Model/index.js +47 -77
- package/libs/PanoMeasurePlugin/Model/line.d.ts +6 -4
- package/libs/PanoMeasurePlugin/Model/line.js +29 -29
- package/libs/PanoMeasurePlugin/Model/point.d.ts +2 -4
- package/libs/PanoMeasurePlugin/Model/point.js +7 -7
- package/libs/PanoMeasurePlugin/Model/polyline.d.ts +37 -12
- package/libs/PanoMeasurePlugin/Model/polyline.js +90 -37
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +1 -1
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +1 -1
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +1 -1
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/index.js +5 -5
- package/libs/PanoMeasurePlugin/Modules/FiveHelper.js +3 -3
- package/libs/PanoMeasurePlugin/Modules/GuideController.d.ts +2 -0
- package/libs/PanoMeasurePlugin/Modules/GuideController.js +16 -11
- package/libs/PanoMeasurePlugin/Modules/Magnifier.d.ts +29 -16
- package/libs/PanoMeasurePlugin/Modules/Magnifier.js +114 -63
- package/libs/PanoMeasurePlugin/Modules/UIController/HTML.js +3 -3
- package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +5 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +3 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +21 -21
- package/libs/PanoMeasurePlugin/Modules/UIController/index.d.ts +1 -2
- package/libs/PanoMeasurePlugin/Modules/UIController/index.js +24 -24
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +2 -2
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.js +5 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/style.js +18 -26
- package/libs/PanoMeasurePlugin/Modules/rangePiece/html.js +3 -4
- package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +5 -8
- package/libs/PanoMeasurePlugin/index.d.ts +6 -2
- package/libs/PanoMeasurePlugin/index.js +33 -29
- package/libs/PanoMeasurePlugin/typings/data.d.ts +6 -16
- package/libs/PanoMeasurePlugin/typings/event.type.d.ts +18 -14
- package/libs/PanoMeasurePlugin/typings/index.d.ts +4 -2
- package/libs/PanoMeasurePlugin/utils/calculateThreeMouse.js +1 -1
- package/libs/PanoMeasurePlugin/utils/constants.js +16 -15
- package/libs/PanoMeasurePlugin/utils/distanceDom.d.ts +5 -3
- package/libs/PanoMeasurePlugin/utils/distanceDom.js +65 -41
- package/libs/PanoMeasurePlugin/utils/findClosestPoint.js +6 -7
- package/libs/PanoMeasurePlugin/utils/isNDCPointInScreen.js +3 -3
- package/libs/PanoMeasurePlugin/utils/line.js +0 -1
- package/libs/PanoMeasurePlugin/utils/math.js +1 -2
- package/libs/PanoMeasurePlugin/utils/ndc2Screen.js +2 -2
- package/libs/PanoSpatialTagPlugin/Components/origins.js +2 -3
- package/libs/PanoSpatialTagPlugin/Components/tag.js +2 -3
- package/libs/PanoSpatialTagPlugin/Plugin.js +2 -2
- package/libs/PanoTagPlugin/Assets/Icon.d.ts +2 -3
- package/libs/PanoTagPlugin/Assets/Icon.js +3 -4
- package/libs/PanoTagPlugin/Components/Common/Arrow.js +11 -11
- package/libs/PanoTagPlugin/Components/Common/Audio.js +140 -103
- package/libs/PanoTagPlugin/Components/Common/Line/Polyline.js +30 -30
- package/libs/PanoTagPlugin/Components/Common/Line/Straight.js +59 -95
- package/libs/PanoTagPlugin/Components/Common/Media.js +249 -275
- package/libs/PanoTagPlugin/Components/Common/MediaItem.js +79 -143
- package/libs/PanoTagPlugin/Components/Common/MultiLineText.js +170 -0
- package/libs/PanoTagPlugin/Components/Common/Point/CustomPoint.js +50 -0
- package/libs/PanoTagPlugin/Components/Common/Point/DefaultPoint.js +50 -0
- package/libs/PanoTagPlugin/Components/Common/Point/PointSwitch.js +166 -0
- package/libs/PanoTagPlugin/Components/Common/Shadow.js +10 -11
- package/libs/PanoTagPlugin/Components/Common/Text.js +130 -0
- package/libs/PanoTagPlugin/Components/Tag/AudioTag.js +131 -0
- package/libs/PanoTagPlugin/Components/Tag/CustomTag.js +22 -22
- package/libs/PanoTagPlugin/Components/Tag/ImageTextTag.js +131 -126
- package/libs/PanoTagPlugin/Components/Tag/LinkTag.js +97 -75
- package/libs/PanoTagPlugin/Components/Tag/MarketingTag.js +143 -166
- package/libs/PanoTagPlugin/Components/Tag/MediaPlane.js +45 -75
- package/libs/PanoTagPlugin/Components/Tag/TextTag.js +122 -0
- package/libs/PanoTagPlugin/Components/Tag/index.js +157 -265
- package/libs/PanoTagPlugin/Components/TagContainer.js +109 -165
- package/libs/PanoTagPlugin/Components/TagWrapper.js +152 -0
- package/libs/PanoTagPlugin/controller/TagCacheController.d.ts +2 -1
- package/libs/PanoTagPlugin/controller/TagCacheController.js +2 -3
- package/libs/PanoTagPlugin/controller/TagComputer.d.ts +22 -19
- package/libs/PanoTagPlugin/controller/TagComputer.js +151 -186
- package/libs/PanoTagPlugin/controller/index.d.ts +14 -25
- package/libs/PanoTagPlugin/controller/index.js +170 -266
- package/libs/PanoTagPlugin/index.d.ts +1 -1
- package/libs/PanoTagPlugin/index.js +35 -52
- package/libs/PanoTagPlugin/tag.config.js +16 -31
- package/libs/PanoTagPlugin/typings/controller.d.ts +17 -23
- package/libs/PanoTagPlugin/typings/index.d.ts +1 -5
- package/libs/PanoTagPlugin/typings/index.js +1 -7
- package/libs/PanoTagPlugin/typings/tag.d.ts +247 -0
- package/libs/PanoTagPlugin/typings/tag.js +7 -0
- package/libs/PanoTagPlugin/utils/actionAfterFiveModelLoad.d.ts +0 -1
- package/libs/PanoTagPlugin/utils/actionAfterFiveModelLoad.js +1 -7
- package/libs/PanoTagPlugin/utils/constants.js +1 -2
- package/libs/PanoTagPlugin/utils/doUtil.js +6 -6
- package/libs/PanoTagPlugin/utils/index.js +0 -36
- package/libs/PanoTagPlugin/utils/search.js +9 -27
- package/libs/PanoTagPlugin/utils/tagPosition.js +2 -2
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +1 -1
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/CurrentFloor.js +6 -10
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/ExtraObjects.js +20 -20
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +74 -83
- package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +1 -1
- package/libs/index.js +120 -129
- package/libs/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.js +39 -29
- package/libs/vendor/svelte/internal/index.js +338 -382
- package/package.json +3 -3
- package/dist/PanoTagPlugin/typings/tag/Tag.d.ts +0 -53
- package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +0 -88
- package/dist/PanoTagPlugin/typings/tag/TagData.d.ts +0 -155
- package/dist/PanoTagPlugin/typings/tag/Utils.d.ts +0 -53
- package/dist/PanoTagPlugin/utils/audio/SharedAudio.d.ts +0 -16
- package/dist/PanoTagPlugin/utils/color.d.ts +0 -7
- package/dist/PanoTagPlugin/utils/getImageInfo.d.ts +0 -16
- package/dist/PanoTagPlugin/utils/px2rem.d.ts +0 -1
- package/dist/PanoTagPlugin/utils/tag/format.d.ts +0 -2
- package/dist/PanoTagPlugin/utils/tag/tagCheck.d.ts +0 -7
- package/dist/PanoTagPlugin/utils/timeToString.d.ts +0 -1
- package/dist/shared-utils/audio.d.ts +0 -31
- package/docs/interfaces/AddTagConfig.html +0 -64
- package/docs/interfaces/EventMap.html +0 -298
- package/docs/interfaces/MinMax.html +0 -71
- package/docs/interfaces/State.html +0 -89
- package/docs/interfaces/TagCache.html +0 -92
- package/docs/interfaces/TagIconUrl.html +0 -91
- package/docs/interfaces/TemporaryState.html +0 -64
- package/docs/types/AudioAppearance.html +0 -251
- package/docs/types/AudioTagTypeConfigKey.html +0 -251
- package/docs/types/ContentTypeConfigKeySplit.html +0 -251
- package/docs/types/ContentTypeMap.html +0 -251
- package/docs/types/LoadTagConfig.html +0 -251
- package/docs/types/MediaStore.html +0 -251
- package/docs/types/PlaneTagElement.html +0 -256
- package/docs/types/Point2DElement.html +0 -256
- package/docs/types/Point2DTag.html +0 -258
- package/docs/types/Point3DElement.html +0 -256
- package/docs/types/Point3DTag.html +0 -258
- package/docs/types/PointTagElement.html +0 -256
- package/docs/types/StickType.html +0 -251
- package/docs/types/TagContentType.html +0 -251
- package/docs/types/TagDimensionType.html +0 -251
- package/docs/types/TagElement.html +0 -258
- package/docs/types/TagEvents.html +0 -286
- package/docs/types/TagHooks.html +0 -251
- package/docs/types/TagIconSize.html +0 -254
- package/docs/types/TagPointType.html +0 -254
- package/docs/types/WorkCode.html +0 -251
- package/libs/GuideLinePlugin/utils/getPoint.d.ts +0 -3
- package/libs/GuideLinePlugin/utils/getPoint.js +0 -18
- 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/PanoTagPlugin/Components/Common/Icon/Icon.js +0 -198
- package/libs/PanoTagPlugin/Components/Common/Icon/audioIcon.js +0 -108
- package/libs/PanoTagPlugin/Components/Common/TagPoint.js +0 -81
- package/libs/PanoTagPlugin/Components/Common/Text/FlyMText.js +0 -145
- package/libs/PanoTagPlugin/Components/Common/Text/FlyText.js +0 -195
- package/libs/PanoTagPlugin/Components/Common/Text/MText.js +0 -166
- package/libs/PanoTagPlugin/Components/Common/TextItem.js +0 -106
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js +0 -195
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js +0 -223
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/index.js +0 -125
- package/libs/PanoTagPlugin/Components/Tag/TextTag/TextPlaneTag.js +0 -102
- package/libs/PanoTagPlugin/Components/Tag/TextTag/TextTag.js +0 -134
- package/libs/PanoTagPlugin/Components/Tag/TextTag/index.js +0 -115
- package/libs/PanoTagPlugin/Components/TagItem.js +0 -254
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.d.ts +0 -4
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.js +0 -6
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.d.ts +0 -93
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.js +0 -5622
- package/libs/PanoTagPlugin/mocks/v1/mock-test3-realsee-cn-4zr0A5.js +0 -1325
- package/libs/PanoTagPlugin/mocks/v1/mock1.d.ts +0 -173
- package/libs/PanoTagPlugin/mocks/v1/mock1.js +0 -122
- package/libs/PanoTagPlugin/mocks/v1/mock2.d.ts +0 -233
- package/libs/PanoTagPlugin/mocks/v1/mock2.js +0 -296
- package/libs/PanoTagPlugin/mocks/v1/mock3.d.ts +0 -22
- package/libs/PanoTagPlugin/mocks/v1/mock3.js +0 -32
- package/libs/PanoTagPlugin/mocks/v1/mock4.d.ts +0 -56
- package/libs/PanoTagPlugin/mocks/v1/mock4.js +0 -60
- package/libs/PanoTagPlugin/mocks/v1/mock5.d.ts +0 -13
- package/libs/PanoTagPlugin/mocks/v1/mock5.js +0 -17
- package/libs/PanoTagPlugin/mocks/v1/mock6.d.ts +0 -16
- package/libs/PanoTagPlugin/mocks/v1/mock6.js +0 -27
- package/libs/PanoTagPlugin/mocks/v1/mock7.d.ts +0 -22
- package/libs/PanoTagPlugin/mocks/v1/mock7.js +0 -228
- package/libs/PanoTagPlugin/typings/tag/Tag.d.ts +0 -53
- package/libs/PanoTagPlugin/typings/tag/Tag.js +0 -4
- package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +0 -88
- package/libs/PanoTagPlugin/typings/tag/TagConfig.js +0 -1
- package/libs/PanoTagPlugin/typings/tag/TagData.d.ts +0 -155
- package/libs/PanoTagPlugin/typings/tag/TagData.js +0 -4
- package/libs/PanoTagPlugin/typings/tag/Utils.d.ts +0 -53
- package/libs/PanoTagPlugin/typings/tag/Utils.js +0 -5
- package/libs/PanoTagPlugin/utils/audio/SharedAudio.d.ts +0 -16
- package/libs/PanoTagPlugin/utils/audio/SharedAudio.js +0 -107
- package/libs/PanoTagPlugin/utils/color.d.ts +0 -7
- package/libs/PanoTagPlugin/utils/color.js +0 -17
- package/libs/PanoTagPlugin/utils/getImageInfo.d.ts +0 -16
- package/libs/PanoTagPlugin/utils/getImageInfo.js +0 -51
- package/libs/PanoTagPlugin/utils/px2rem.d.ts +0 -1
- package/libs/PanoTagPlugin/utils/px2rem.js +0 -6
- package/libs/PanoTagPlugin/utils/tag/format.d.ts +0 -2
- package/libs/PanoTagPlugin/utils/tag/format.js +0 -18
- package/libs/PanoTagPlugin/utils/tag/tagCheck.d.ts +0 -7
- package/libs/PanoTagPlugin/utils/tag/tagCheck.js +0 -26
- package/libs/PanoTagPlugin/utils/timeToString.d.ts +0 -1
- package/libs/PanoTagPlugin/utils/timeToString.js +0 -7
- package/libs/shared-utils/audio.d.ts +0 -31
- package/libs/shared-utils/audio.js +0 -81
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
var r = Object.defineProperty;
|
|
2
|
-
var
|
|
3
|
-
var e = (s,
|
|
4
|
-
import { uuid as m } from "../../shared-utils/uuid.js";
|
|
5
|
-
import { Polyline as p } from "./polyline.js";
|
|
6
|
-
import { createLineMesh as l } from "../utils/line.js";
|
|
7
|
-
import { Subscribe as u } from "@realsee/five";
|
|
8
|
-
import { createDistanceItem as d } from "../utils/distanceDom.js";
|
|
9
|
-
import "@realsee/five/line";
|
|
10
|
-
import "../utils/constants.js";
|
|
2
|
+
var u = (s, t, i) => t in s ? r(s, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : s[t] = i;
|
|
3
|
+
var e = (s, t, i) => (u(s, typeof t != "symbol" ? t + "" : t, i), i);
|
|
11
4
|
import "three";
|
|
12
|
-
import "
|
|
13
|
-
|
|
14
|
-
|
|
5
|
+
import { uuid as c } from "../../shared-utils/uuid.js";
|
|
6
|
+
import { createLineMesh as h } from "../utils/line.js";
|
|
7
|
+
import { Subscribe as d } from "@realsee/five";
|
|
8
|
+
import { createDistanceItem as m } from "../utils/distanceDom.js";
|
|
9
|
+
class l {
|
|
10
|
+
constructor(t, i, o) {
|
|
15
11
|
e(this, "id");
|
|
16
12
|
e(this, "selected", !1);
|
|
13
|
+
e(this, "text");
|
|
17
14
|
e(this, "type", "line");
|
|
18
15
|
e(this, "model");
|
|
19
16
|
e(this, "mesh");
|
|
@@ -22,39 +19,42 @@ class n {
|
|
|
22
19
|
e(this, "hook");
|
|
23
20
|
e(this, "distanceItem");
|
|
24
21
|
e(this, "polyline");
|
|
25
|
-
|
|
22
|
+
var n;
|
|
23
|
+
if (this.id = c(), this.model = o, t.id === i.id)
|
|
26
24
|
throw new Error("\u65E0\u6548\u7684\u7EBF\u6BB5, \u4E00\u4E2A\u70B9\u65E0\u6CD5\u6784\u6210\u7EBF\u6BB5");
|
|
27
|
-
this.hook = new
|
|
25
|
+
typeof o.config.defaultText == "string" && (this.text = o.config.defaultText), this.hook = new d(), this.points = [t, i], this.mesh = h(this, "normal"), this.lightMesh = h(this, "light"), this.distanceItem = m({
|
|
28
26
|
line: this,
|
|
29
27
|
clickCallback: () => this.hook.emit("selected", this),
|
|
30
|
-
userDistanceItem: this.model.
|
|
31
|
-
}),
|
|
28
|
+
userDistanceItem: (n = this.model.config) != null && n.userDistanceItemCreator ? this.model.config.userDistanceItemCreator() : void 0
|
|
29
|
+
}), t.lines.push(this), i.lines.push(this);
|
|
32
30
|
}
|
|
33
31
|
clear() {
|
|
34
32
|
this.selected = !1, this.polyline = void 0;
|
|
35
33
|
}
|
|
34
|
+
isEmpty() {
|
|
35
|
+
return this.points.length === 0;
|
|
36
|
+
}
|
|
36
37
|
getPolyline() {
|
|
37
38
|
if (this.polyline)
|
|
38
39
|
return this.polyline;
|
|
39
|
-
const
|
|
40
|
-
if (
|
|
41
|
-
return
|
|
42
|
-
const t = new p();
|
|
43
|
-
return t.push(this), t;
|
|
40
|
+
const t = this.model.polylines.find((i) => i.lines.includes(this));
|
|
41
|
+
if (t)
|
|
42
|
+
return this.polyline = t, t;
|
|
44
43
|
}
|
|
45
|
-
findAnotherPoint(
|
|
46
|
-
return this.points.find(({ id:
|
|
44
|
+
findAnotherPoint(t) {
|
|
45
|
+
return this.points.find(({ id: i }) => i !== t.id);
|
|
47
46
|
}
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
setText(t) {
|
|
48
|
+
this.text = t, this.hook.emit("textChanged", t);
|
|
50
49
|
}
|
|
51
|
-
|
|
52
|
-
return { id: this.id, points: this.points.map((
|
|
50
|
+
toJson() {
|
|
51
|
+
return { id: this.id, points: this.points.map((t) => t.toJson()), text: this.text };
|
|
53
52
|
}
|
|
54
53
|
clone() {
|
|
55
|
-
|
|
54
|
+
const t = new l(this.points[0].clone(), this.points[1].clone(), this.model);
|
|
55
|
+
return t.text = this.text, t;
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
export {
|
|
59
|
-
|
|
59
|
+
l as Line
|
|
60
60
|
};
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import type Line from './line';
|
|
2
|
-
import type {
|
|
2
|
+
import type { PointJson } from '../typings/data';
|
|
3
3
|
import { Vector3 } from 'three';
|
|
4
|
-
declare type IPointData = PluginData['points'][0];
|
|
5
4
|
export default class Point {
|
|
6
5
|
id: string;
|
|
7
6
|
lines: Line[];
|
|
8
7
|
position: Vector3;
|
|
9
8
|
readonly type = "point";
|
|
10
9
|
constructor(position: Vector3 | number[]);
|
|
11
|
-
toJson():
|
|
10
|
+
toJson(): PointJson;
|
|
12
11
|
addLine(line: Line): void;
|
|
13
12
|
removeLine(line: Line): void;
|
|
14
13
|
clone(): Point;
|
|
15
14
|
}
|
|
16
|
-
export {};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
var
|
|
2
|
-
var p = (
|
|
3
|
-
var s = (
|
|
1
|
+
var e = Object.defineProperty;
|
|
2
|
+
var p = (o, i, t) => i in o ? e(o, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[i] = t;
|
|
3
|
+
var s = (o, i, t) => (p(o, typeof i != "symbol" ? i + "" : i, t), t);
|
|
4
4
|
import { Vector3 as n } from "three";
|
|
5
5
|
import { uuid as h } from "../../shared-utils/uuid.js";
|
|
6
6
|
import { removeArrayItem as m } from "../../shared-utils/removeArrayItem.js";
|
|
7
|
-
class
|
|
7
|
+
class r {
|
|
8
8
|
constructor(i) {
|
|
9
9
|
s(this, "id");
|
|
10
10
|
s(this, "lines");
|
|
@@ -13,7 +13,7 @@ class e {
|
|
|
13
13
|
this.id = h(), this.lines = [], this.position = new n(), i instanceof n ? this.position.copy(i) : this.position.fromArray(i);
|
|
14
14
|
}
|
|
15
15
|
toJson() {
|
|
16
|
-
return { id: this.id,
|
|
16
|
+
return { id: this.id, position: this.position.toArray() };
|
|
17
17
|
}
|
|
18
18
|
addLine(i) {
|
|
19
19
|
this.lines.push(i);
|
|
@@ -22,9 +22,9 @@ class e {
|
|
|
22
22
|
m(i, this.lines);
|
|
23
23
|
}
|
|
24
24
|
clone() {
|
|
25
|
-
return new
|
|
25
|
+
return new r(this.position);
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
export {
|
|
29
|
-
|
|
29
|
+
r as Point
|
|
30
30
|
};
|
|
@@ -1,16 +1,41 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import type { PolylineJson } from '../typings/data';
|
|
2
|
+
import Line from './line';
|
|
3
|
+
import Point from './point';
|
|
4
|
+
import { Subscribe } from '@realsee/five';
|
|
5
|
+
import { Model } from '.';
|
|
6
|
+
export declare type PolylineEventMap = {
|
|
7
|
+
/** 新增线条
|
|
8
|
+
* @param line 被创建的线条
|
|
9
|
+
*/
|
|
10
|
+
lineAdded: (line: Line) => void;
|
|
11
|
+
/** 删除线条
|
|
12
|
+
* @param lines 被删除的线条数组
|
|
13
|
+
*/
|
|
14
|
+
lineRemoved: (lines: Line) => void;
|
|
15
|
+
};
|
|
4
16
|
export declare class Polyline {
|
|
5
|
-
|
|
17
|
+
id: string;
|
|
18
|
+
lines: Line[];
|
|
6
19
|
points: Point[];
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
};
|
|
20
|
+
visiblePanoIndexes?: number[];
|
|
21
|
+
readonly model: Model;
|
|
22
|
+
readonly type = "polyline";
|
|
23
|
+
readonly hook: Subscribe<PolylineEventMap>;
|
|
24
|
+
constructor(config: {
|
|
25
|
+
model: Model;
|
|
26
|
+
});
|
|
27
|
+
addLine(line: Line): void;
|
|
28
|
+
removeLine(line: Line): void;
|
|
29
|
+
isLastLine(line: Line): boolean;
|
|
30
|
+
getLastLine(): Line;
|
|
31
|
+
clear(): void;
|
|
32
|
+
/** 是否产生重叠 */
|
|
33
|
+
overlapWith(item: Point | Line | Polyline): boolean;
|
|
34
|
+
includes(item: Point | Line): boolean;
|
|
35
|
+
isEmpty(): boolean;
|
|
36
|
+
getLastPoint(): Point;
|
|
14
37
|
toJson(): PolylineJson;
|
|
15
|
-
|
|
38
|
+
getPointByID(id: string): Point;
|
|
39
|
+
fromJson(data: PolylineJson): this;
|
|
40
|
+
replace(polyline: Polyline): void;
|
|
16
41
|
}
|
|
@@ -1,47 +1,100 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
1
|
+
var a = Object.defineProperty;
|
|
2
|
+
var P = (r, i, t) => i in r ? a(r, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[i] = t;
|
|
3
|
+
var s = (r, i, t) => (P(r, typeof i != "symbol" ? i + "" : i, t), t);
|
|
4
|
+
import { Line as E } from "./line.js";
|
|
5
|
+
import { Point as B } from "./point.js";
|
|
6
|
+
import { uuid as g } from "../../shared-utils/uuid.js";
|
|
7
|
+
import { Subscribe as m } from "@realsee/five";
|
|
8
|
+
class A {
|
|
9
|
+
constructor(i) {
|
|
10
|
+
s(this, "id", g());
|
|
11
|
+
s(this, "lines", []);
|
|
12
|
+
s(this, "points", []);
|
|
13
|
+
s(this, "visiblePanoIndexes");
|
|
14
|
+
s(this, "model");
|
|
15
|
+
s(this, "type", "polyline");
|
|
16
|
+
s(this, "hook", new m());
|
|
17
|
+
this.model = i.model;
|
|
18
|
+
}
|
|
19
|
+
addLine(i) {
|
|
20
|
+
if (this.includes(i)) {
|
|
21
|
+
console.error(new Error("\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0\u7EBF\u6BB5"));
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const t = this.getLastPoint(), h = t && i.findAnotherPoint(t);
|
|
25
|
+
t ? t && h ? (this.lines.push(i), this.points.push(...i.points), this.hook.emit("lineAdded", i)) : console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u65E0\u6CD5\u4E0E\u5F53\u524D\u6298\u7EBF\u8FDB\u884C\u8FDE\u63A5")) : (this.lines.push(i), this.points.push(...i.points), this.hook.emit("lineAdded", i));
|
|
26
|
+
}
|
|
27
|
+
removeLine(i) {
|
|
28
|
+
if (this.lines.length !== 0) {
|
|
29
|
+
if (!this.isLastLine(i)) {
|
|
30
|
+
console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u4E0D\u662F\u5F53\u524D\u6298\u7EBF\u7684\u6700\u540E\u4E00\u6BB5"));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
this.lines.pop(), this.lines.length === 0 ? this.points.slice(0, this.points.length) : this.points.pop(), this.hook.emit("lineRemoved", i);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
isLastLine(i) {
|
|
37
|
+
const t = this.getLastLine();
|
|
38
|
+
return t ? i.id === t.id : !1;
|
|
39
|
+
}
|
|
40
|
+
getLastLine() {
|
|
41
|
+
return this.lines.slice(-1)[0];
|
|
42
|
+
}
|
|
43
|
+
clear() {
|
|
44
|
+
this.lines.slice(0, this.lines.length), this.points.slice(0, this.points.length);
|
|
45
|
+
}
|
|
46
|
+
overlapWith(i) {
|
|
47
|
+
return i.type === "point" ? this.includes(i) : i.type === "line" ? i.points.some((t) => this.includes(t)) : i.type === "polyline" ? i.points.some((t) => this.includes(t)) : !0;
|
|
48
|
+
}
|
|
49
|
+
includes(i) {
|
|
50
|
+
return i.type === "point" ? this.points.find(({ id: t }) => t === i.id) !== void 0 : i.type === "line" ? this.lines.find(({ id: t }) => t === i.id) !== void 0 : !1;
|
|
51
|
+
}
|
|
52
|
+
isEmpty() {
|
|
53
|
+
return this.points.length === 0;
|
|
54
|
+
}
|
|
55
|
+
getLastPoint() {
|
|
56
|
+
return this.points.slice(-1)[0];
|
|
29
57
|
}
|
|
30
58
|
toJson() {
|
|
31
59
|
return {
|
|
32
60
|
id: this.id,
|
|
33
|
-
lines: this.lines.map((
|
|
34
|
-
|
|
61
|
+
lines: this.lines.map((i) => i.toJson()),
|
|
62
|
+
visiblePanoIndexes: this.visiblePanoIndexes
|
|
35
63
|
};
|
|
36
64
|
}
|
|
37
|
-
|
|
38
|
-
return {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
65
|
+
getPointByID(i) {
|
|
66
|
+
return this.points.find(({ id: t }) => t === i);
|
|
67
|
+
}
|
|
68
|
+
fromJson(i) {
|
|
69
|
+
this.clear(), this.id = i.id;
|
|
70
|
+
const { getPoint: t, getAllPoints: h } = f(), d = i.lines.map((e) => {
|
|
71
|
+
const [l, p] = e.points, n = t(l), u = t(p);
|
|
72
|
+
if (!n || !u)
|
|
73
|
+
throw new Error("\u7EBF\u4E0A\u7684\u70B9\u4E0D\u5B58\u5728");
|
|
74
|
+
const o = new E(n, u, this.model);
|
|
75
|
+
return o.id = e.id, o.text = e.text, o;
|
|
76
|
+
}), c = h();
|
|
77
|
+
this.points.push(...c), this.lines.push(...d), this.visiblePanoIndexes = i.visiblePanoIndexes;
|
|
78
|
+
function f() {
|
|
79
|
+
const e = /* @__PURE__ */ new Map();
|
|
80
|
+
function l(n) {
|
|
81
|
+
const u = e.get(n.id);
|
|
82
|
+
if (u)
|
|
83
|
+
return u;
|
|
84
|
+
const o = new B(n.position);
|
|
85
|
+
return o.id = n.id, e.set(n.id, o), o;
|
|
86
|
+
}
|
|
87
|
+
function p() {
|
|
88
|
+
return Array.from(e.values());
|
|
89
|
+
}
|
|
90
|
+
return { getPoint: l, getAllPoints: p };
|
|
91
|
+
}
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
replace(i) {
|
|
95
|
+
this.id = i.id, this.clear(), this.lines.push(...i.lines), this.points.push(...i.points);
|
|
43
96
|
}
|
|
44
97
|
}
|
|
45
98
|
export {
|
|
46
|
-
|
|
99
|
+
A as Polyline
|
|
47
100
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
const I = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxMC43MDYlIiB5MT0iNDIuNzQ0JSIgeDI9Ijg5LjA2NCUiIHkyPSI1Ny4yMDglIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii4zMDgiIG9mZnNldD0iNDkuNTY5JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iLS4yNSIgeT0iLS4yNSIgd2lkdGg9IjU3LjUiIGhlaWdodD0iMjMuNSIgcng9IjExLjI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDEpIiBmaWxsPSIjMkMyQzJDIiBzdHJva2U9InVybCgjcHJlZml4X19hKSIgc3Ryb2tlLXdpZHRoPSIuNSIgZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsLW9wYWNpdHk9Ii4zMDMiLz48L3N2Zz4=";
|
|
2
2
|
export {
|
|
3
|
-
I as
|
|
3
|
+
I as image
|
|
4
4
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
const e = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMMAAABUCAYAAAA/HINRAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAw6ADAAQAAAABAAAAVAAAAAA6J+OeAAA2+UlEQVR4Ac2de8y16VXW9/vNodM50hqjHMIfQqESi4SDJk1opCaUiolGzBRoQ9KoQIsW5C9ixUxCWxsIhzQRpB4wSIkdIVZ7mkC0pgQSEAzhYApF/8AKakIK05lOp3N4vX7Xva611/Ps/X7fN22neLf7ude61nVda93P3nve4/d9F4f/D9YP//Tln3n66cOLLm49fOHhUo/D4QWXl4fna7/n6cvD3RcXh7uF355RVfNiV+0gzoH4WsVgWXsueLDJwRIZu1cFyd1LBXLH+x4UNgZ2aT80oTAvVObMLNTiG8xne7p4y85X84qfntakP3uteHVdeLDQoQYrmQBFNZ95ygvy/aYW/QW1FGsn7/q1w8eVP8JDGPsfXF4cPnjtcPitpy8Ov3Xx9OHX3/zai//Rvf+YAub9tK8feeflZ18+cfhq3a2X6sb8pcPTh8/xndMkyn2z9eboJyOvKO4zsXdiLWKeDK+6+6TGa19FYeEVQI8LPSOX9NLavzhtF42Svf5cbg/5WYZBnYPzpY+biaAXxCKy14qn99RTY8cYr8wVjD043uS7NTWuc4lmhUs3xGg4E+usHtzV44U3OwtZv/G5z3iB6+KH4mj1PHxIz+N/FuF9T996+Jnv/TsXH1L507rqmM9+z594z+W9j378cP9Tl4dXqelLdJMuuDm8ILlhTz91OKh2dm2eBHH8gtPeOKcgR82l8uzGqWn5CVGd/Yb6JdnwWlNeRfE2a8F7pgL2szRvFgJqP9EDnDlv9646ed+nkmBrXvQ2X8Xopy63MRrn0cQLUy3DurBH5wK1oQnmHVxvklv14KP6LbxhtGvuS/3v/Yp/4q57Dw8+8KqLhze6Zylh7md1/dN3XH6RzvxdavR1Tz19uJNmTz6pF37913Nzo+qmeeMi0awT5wnO0CVZqRLnA+wwtQhr3/inVlxujuu7OUJj/4T0GWrnu/GC4wFWN0t2mPuvsq8n+qtqwrFmbTQL2mB5dZ/jebycBa8zenQnz1mI43xI4fKmuHbL4XDbrUun9KMa9qf1RnnzP/7Wi/9WLZ6VjXGelfWj77z8Un1a8Ho9/roOeY3/6j+lNwEfBbgXvknsdPdFu6YB76V4psHhbPCRWJ9TneNVj02fGGtvfD9L1bCmXfMq75ZzFtV60J3fRl+akxfN1A8rPEebnsWzUahhZg9bpYY+Mb7EWVfhqk/eJo62OG6f817ht9Gnf2lqfH8KexsfOXhj6KWjyzuke+P3/d2L/zpafsrC9P2UGf6Td1/+6VueOvyQRn8FnwLxEeAJvQlYuS++EXQWsMEgCc+NYs8LJFhyqKxw8rlpsPhUm/a0aFzsWz3hsvYYM6b/Iuha5ODszMbaY+R49CKBO/Bo5vmMhRcD5eDVajNr/F0vXveJfrUNvAYLtww2+oGd+AOUb88KVPMF8x5x6md6mlK4tj4bPW67bX20gKN79HZt3/F933bxv8k/VYuen5L14IOXt/zB7YfXadAHNPy9vAGe1NcB+xtBs2DcRx+6JgheqbeJNZ9Aq/OVtm8Xi1Nl1/cvtk0OcWfq/nWXiK8375x19uxYgfVj/tTYp77HKK7rId+Mvg0iKv9xgD7bGb85SxwmZsmux0ldQrC6fb61eLU2xrXfSA/Nbwp9GqX1sHwf+Io/dXjL/fdf6JX2ya/M+Uk5/ei/u/y8i1sOb9dHgi/jo8ETGo2d5ZuhLjlo9ryqnDOF7pBvkkKnJEOnzOusPrXaF3El8UQ3X/ihtp+AnqXiGstU68GdrcvUgnQ+5x7n6HNBnhxyrdYnHgN03wTRVx7YRtEnSV4abFnW6NJagirOWcwtUrjQ4CSH00n1aWzk8c1zcVY/rOy506N97nPW1xeq/4rSV3zf6y7+u/t9Ehf5fHLrrf/h8n4d8K163JePBtMxh1+v8OP9yo3b3AwJm18mJ3nMS7jRK3HOpU429Zu4KBPDuvUkWq5f4ZUndDHX9cTPhqrJY9aIr9KP8bea0ch65bF3SQl5vMH2Pc0D14NjbepVjDepP/284vx5TkvW9y7erSc4c/7r6dsTMy3PukJfmfFWfYS4Qz990rdl/0jgt+jTJj59+oRXHfOZ6x+8vLzlD999eMvlU4fXcsM+/sT6aMATzMpN9l4nyU1KzTyzERyfIONF3nCF7V9A5/xbv2xJj/6aZe9ZZXPsD51etc8ncmLWMaeWNy4QtK7Sr6Kvm3DORMG5my3u9G9vE3UR76x+SX3t+p475z/HrzO1XhzH+3Oi3Z3fkLCzzxlFrUimv/HRt2/DwCyuy536KEEPfXbyw3/hTx5e94l+2lRHmtY3jn/sfZd3PPHI4af0naKv5esCvlXKnKz9oc5huZnh+rBlEJ/o9jcyeO/cBCXxOtFTM1kXEcMzFLINQEZ9x82zdla/pFs9XsEVEHebSqYX1LN5ic7q+VSUutZeu8dar2DGFs+zUmRNTCn+eS5O9NTRsDoYobDWQFESL2umbOqHaMBn9bfrC+zb9V0n/dzi3XffefibD7z64mPxvtm9buXN0g8HvRE+Q2+Ed+u7RS/Op0UZ9NwhcZ5PlGO6RpR63fwupV44PqzptZDCpr60bPar4Jx2eu5niz6fKpzoReifIme2OgBaFmm+02UspmjN0KWw+J/Dy7ZFzUGuZL644mN7CfnJ96yDn+jLZ/8mMHf4o+tZKGq5f+1X6U0Ml5nGACfzh1z7CRefwYk+nzYp/4Wnnjp87Q/9/Ys/HLQbhpzrple9Ed6vH5u/6PGP10+MNdUcDLP98LNBcwnqrhpL4cyN2uiHDnyjLWKsKHacWgFs1b5JGwy+gD5L3ank7PMFhpZlzyTKw3eRvIITfRWmJ9QTPby6R3P++Ja9t2hLchazTpfr6lVkLlZ7Ftb5Kq9rmXnThb1nLR66nDU8lwYRPP4Nl1lwNDPmDcEX1/L+9SfuOrzkh15982+IOqLHuO6lPjX6j3ojvHj/RuhBd4PlwBgT1znW8CXyQcYUzncH7pvWBmtU0qPpDqsSaOaz96L5us8BJ2b/8JV0TiDTyW1a8dyzeK4Vnrj1k6MinvbN0AgqDs7e5ejZtdjMc3a8uDw40dtLSWvEKdpRvPOcGrjxsmDqU7yeXhw/vxbXHNGxszJf4e4vmHTOAhWMX+/gDaH1C/fcc/jLN/spk2Q3Xnyx/NSjh5/ijcAXymd/h8iTrYPFkUOycqMrXWCuAo1Ln0MuYHlRix7c3NLOuNqvCgW4RaCWFYy8Y/FaXxrXI6JYuLcZF4cZPadqVT76jwGm3tIit55W5dHzRV/c2qrz2qA0DX09QmoNeEDtMzZc9cwAxmw9C5qIimtdBogesHjWm7Qu6DNrOHkCkHRvJ3VfkZYfYetJxoLypD4tfEyfuYj/4o/oa1t+BjYoV4Y39Wb4yHv0XSN9seyvEfj8EztNk4G8C0yebnmC++YhE8m59vC956DZi9scBZTQ56Z0XDVVejbPF3HpWg9Ry3oHR91o3/NhGm4syRNjkTNu9BB4oIek1T4BFnzUl4GlgxPdxo86fO37vp7vKv2SjKF2eurSRs7Zur9qLOdFYMv5XaM+AuvJ5yptjX8cgF7ibfRDR9/Zq2fb3ID1TZ3HH/ecX/tL/+fwlmFxZTgtzpL+2XsuX6Gf7/0b3gg8WL4RQ9k3hoPUIRezDmVRkPMcHxLvI83R3g9wj6G5kd71mvlELwM8KHf/CpJP/+kliXsHO/GGoDVxcwGrIT1mnVJW8MwB3nriIoZXaW/Bve/OP88b3lGoSITg2alPL/M1RGMMVLqr/NtrEBqz4fFcOWDOSXnPPYeF/xx9l4mH/hv+9T/w967/cwjGuXL964cuP//xJw+/rF+vvu9j+vSIwdLkGAysnOawHdfBnScW3yGmmaR6wOt3ffmytR9x8ATxLY9Kw9poAecsTSocy56NopLZG2ifg7HAM1IH0bfx4CxZa+OxBjgW7Vn6Te80Gz0CHdXbec95+bwSTG/i/Jd4g3vI5Z5eV+lh5bmM34kXHD3wco0g59nV4iXYq73KwPPUUGx33eEf0P2Rvpb48jd/28XvlOxku/LTJL5O0NcHb9d09/EFs6ekmZY3BlXMo+D1Iqgh4LFyI000cNSTmo6BAg4VeXTZ4WY1BplHDWB95YZ0qZKl0WU3OPXYTT3WMRDesYWnl+6Prh49AHok8csOpjW15PTa8MEo1Oq45mXz7JVDy7xArOQYTX3weCSHQ+zZpp5Yj6zEOUNy6vHybCNvHAyimm/0ZTJ50Ka3ZdKFE4/mKCD+qD5d0re379PXEm+/3tcPV74ZHn3X4dvl86V+I5Q7wxJy01gZYuZFXQRdfROiRxNsHgK2CtSK2k1yE6G4vwjB3D8C7Q65ZCDtCXOj4sOe+Y8kQD2GLvPjk74KvVrfgAIPse0LZn14lUz9jKHRC1pms4TLOJ9bVb/WV26pDUqiOPNnb41qkYGlbjk1ilNfY7W+xsLEeprXwmvygMHcA37xwqlWhS5eOL4XSjIfpNYVadOfPpB0+Zj+g643xJf+0v/16xr0ZHWfWdGnR5+pnyx/QI97/VV5inY+NtjBTuegAJ3TaejBGyocoPkWt4SsF5xIDI7E+pzqHK96bPq08+i/n0UcNFjTburJuyVJLYfJd34bfXH8RIYvj40+Od4qDFrP4tko1DCzh2WpoU+MHXHWVbjqk7eJoy2O2+e8V/ht9Olfmhr/yvNPLa1nPqw2OLzn6tOl2245PHz77YcXvulbLn4fbK6zHxn0W6c/qHfRvXyd4MHokC6oiSkwfIWp550q2MN0LmJbKGgc/Th9x+hHjQPPQ1d7k9DE2/pKrJcHy/rayeF1r70eQi36sNLb1rpMPZzU29OiY4/UgRnWeidbzl6/eWG7ueW5/e1VtjI7zmL7OkD3lwc23admqVFO9VVovXJi68vbG6Za4A658CDXflaPQGs/i/UUoq8QKCsaU2oOapkF3D41D/0/tn5B4159lPjB+Mx92Cz4X73r8sueujj88hN6I/DdIx8iLLtXE5opp1Tw5sBpMm/CHkP3TPTNr4adl/Gm1+DMvn6yUtO+ySHuTOf5b3TeTf8zM7V1+mewm+BCKVkHnZ/Td7Mqot9hJ/mResPn0r3P+WWW7OLsXj7rHDYYDRXO+5cy2Ik+xa18q4cjYfSW6PIc/TDuOfwO0+Xhy7//2y9+ZVqcfmS4dni9frjW30bF0MPYbTsweMHT8/hOLzTvYtI+cPl2Poxmv2nsfuFNPVjwKRixb4o03U+1+UYwFQ83H3bJVSO8QRvbQITX3MqtD0hyvSVeqNA6ThA9uR7zXG0bLhRi5hhYDgRkeNbaZAXRhdvtBQRrSYoCHNK3ivZRktdEtKm3RwVn9fhWD/z6sRdPU2Jp/LMHwlsOr9/Ty3LB//I9l1+kqX9d30W6dvZnCsPch5La+3C9MqcTg4dbQeeFX6lP/Xr6+GNaJ5t+m7goE8Pa84yhXL/C6+TNhH5o7Zd8d6/gXaVHUi03frGKL5yJ5f7GOzx21pwtPfZYeOnvXzKsZMNtA1v74ll0SQnQegJ5PBM9ElY0+7MGX6x1DeZ9N7P1HlAfGfRnIO64zaO96Ptfd/xLBjYfGfSXOf0D2V7j17JPVh0SfDabPHCe4Lxru1Yn6ZtUQ3WdAH/0Cnlsn2WAY31Tixd6cayvfud4mc097LouaNPfT9yoEfrM2jNbfEKLfg2wZknNfhCyFMenIWGzB/FO0kDmdL1Ik89szocBuRe1CrOTztj6wjwn8SA4rkJg71yET70QYyd6cPFbT1CJrVNY8lUq7JzXxPzc7Py6LnO+Q6ofwl3T/3i996ojHQ78vUb6MuH39VHhTn7/yM9WmkMnhq294L5BBcNqzEldepCZSxTc+tlr8PLEnvOzXuLr6iW0NZfRE7/0z7n2WNdd0OUqPfVaU5P7lHvmOeGdmcVwC5ZZznelXs+oZ8dyp937VUvzZuxO81zxmVj557k40VO30Qy2WGt2XieyNqoz1U0bsM+QWVo/CN2rsFHyUOT8gSD9GYiP3n15+MwHXrf+Xqb+yPDxi8PX6/eP7tTvga81HRJrT0jAnDWrNTwhfleWxbltPsGtx1RJbUtW/nuP+aTTy/33enIeWalPTDXrbbCIPRtpcTf+ez08CLWmPtTYZ+9DhoB2xpVOiHijhxOw4nnfqbmumu+rcuvRLGi1BNQDLmFmg9b6ivG3r3K4tiIALyyB9cKyzFViXJd4dR2MpIjmkRtsGKRnPTufGZAWzyke5Wu8OI/rP/iC7/zItcPXF8TfZ7aWPkV6FRo+x/PKIDMvrLYethRn3whz6Om7iWtg+8acXY8TPcJwFGY8goZLy+Z6FTYvGHy0Wk8inqlcKqa/MaAEij0XeRmkTyjsLk+9sJjBbz8Rc06waF3f64cHvKTRO8cjRTcqXrCVZpQ1Z4y0e4Yd12V8S9v3u+ajTYpwJm+UjnPBCUl7z68YOKXgyb0nwbgWvMA9vwDru7DIpPwVRvylFfpLy14VD9P0KdLn6Luov6t3y4U/RUoD7fHBlAOTd4OJRQNpxDnwlfqYDk0auY9wPKwPt3p4uwqTrmhrZvIAs1fF2SZnQ1fSOUHNFF12z7nKx/tE8Sp9eW30wdhZvuk1f/UtaA3VyUrnGZbBwnOAaQ8399dc5WkbLfv0nJrpdaJP8Xp6cdzf4uoTHTurzuzBduefs0C1pHSxOYeD8ZcJ6Adwl7deHj73e1938SF/ZHjy4vAymV7wKVJevJC5xyzfCCXJj8GqLxLEnb4E1qvc+iEDNC6tD0atiMxCGH1zS180ZxychxcFtEVoHHiIOhbW+llfbqtYuLcZF4cZPadqVT72GgNMvaVFbn3NCNzzRV/c2qrz2nr+6EVqPVjY4IknHqzqaMNjto1XCoPTN7AwU4pnffzpKTxHOjZRgT5Vbz3ckA0uo0ArO16nLjNvuMOD75jqxwgXT99yeBkOfjPoa4WXIuBDx1xgPGxajs4hKSho7QwNPlae4AxFqW/sGb2lY1jry8+60ucGgjnWHpl3cPzZa230A3MYffbUa8c8XrEkTwwtZ8wcYNZAQg+g1T4BFnzUlwHlcKfORvErb7B9X883erRXYd5S177RV++UOVvra17nRWDL+T0r+hFYTz5XaenrMAPQK1gFKSGn7+zVs21IZSAuFi5VMPX+rqlwfbr0Urz9ZtBf6voS3ggZOs3ij08WmG+EAnjh0tX6QXZNnAFtOHjxYHnI2g3o0t4jNlaGxNbrAkTsEoEeUy/kBLMerpb1ilsvrEquc0meG7rRS0jue1MK948oLsUBtr7w6LKnHlk33+ldB2ti+Qpz/4HbY3B7voFBz1wn+vLyjNLEj7Cxug9Q259krJwxZ0LfB0AfbgcBlmfrC3afcQO6r/R7C2rRE/On4vSr3S/B6uJfvefy81T8Hb5W4G/CY4W8iXFVw+7ZwcAQaF1Xj254OQxm8fLDYw5OibXxXtBxgPhKG0v2rKkFc16acIK3PgbindVPYcXwIusg+jYenOGRHudms2fpw7M0zUaPQMN6M/85r9yK6U3sF5eMNjjG1SS9rtJDzXMZvxMvOGXpGqY5z64WL8Fe7VUGnufcbMLKNqP7D/7wtYM+Knz+NRl/Meb+c82Q9SDP6jguKrisC9CAre3BymCjB5MuelL0BhSgdQ5k0nGHlpXafgDrMRg9ysbS6LIbLD4xoeePXnlzVewY8pnV/VWjr3tnAPRokmcH05pacnpt+GAUanVc8/fslUPLvECs5BhNffB4JIdD7NmmnliPrMQ5Q3Lq8aI288bhUFB9oy+TybOey1howolH91eQ2O2TZBfIp0rX9E64vHb44mvKXwjRfzcqYj0yOD1nM8dgFLQyxMzTZzHKq0B4hPZXEr25KlArajc5N0sw6yMo/WpgR3tkttwoKhu9geKz4SdRdOYKI48OGmszvwFAgqPewuhXqcy2+r0XvTxDDdL9az6s3Kr6tb5y6pnXEvziVXtrlEcG1jyb1JxTj7cerSeGq4v1xLXwmjxgMPeAX7xwyPHOsr4TBSJYW1jrymjTnz5LYna8Wi8N/0iOSU8dXsib4gu6CF6TpImbYyVh9SNbBuJusIJdn5eaqLkK3KZ6OSlOIBt3ssx6purTZYIk7DTqZopZyg0Xzjlz1kUoSfn0TS1+eldqbfRp7Vr0Mg1OEL17iUit9UqIJ2fGaOyd5mjrQQ2t9U64bL02uTywscaFrVdm7f7Vs3O80VXPCj2PY86hIPySdw4ntYgyP0LOZT1ErdbPxJXjpfWC0LPSY+qNBSgifwkcnxXpF/e+gH9E5AVLvq4xgcvD2iQhpqBiwkwRPVQ/QaM5XC8Fk9fxDrd36eeB8QB2qTRwWfaqxPoF95OPDwte91W80S/K4lUcnXm6TD1zpN6e6IrnMA0G7vmVR4NHYmjHm1v+5cGG1vqhcVlgZsFikQYmkvVpPvThb/QGh155z1kemQMq83sOLm60+NOz9Qi0+sw1i/UUoq8QKCsaU3IWFTMLuH1qHvc3sBxaL6xme8E1fWh4fv76eGgu4CiSNwwIeGRV7EMJcw9h5GVspm+Mi0s4LRBRAjMFPbGT4pcnmYffGJS+dO6F3uQVQI9dDp8dmucvUrjuP7EyiI5S7sW5Wc9hQxKpB8tsrtt4zUROzT1n/+LUdjxruAi10M1zBFvFHr+aCFWPeIY7zxHMel3sT+IhF9qzlpfHrjnwnv4kV/rfjJ7WbnD0df81St+33Af33gywRve5mWX9SOH512Sq31VaiwYYbHTJi5QhUMCLdjms6xwMZOatL9/Oh5H7jzze7hd86sGCh7zbc7bup3puVlPxcPNhl1w192/ydQIRNyNVbn3mJLneEi9UaB0niJ5cj3mutg0XCjFzDCwHAjI8a22ygujC7fYCgrUkRQEO6VtF+yjJayLa1NujgrN6fKsHfv3Yi6cpMXMU1r7K13vhcPc1TXk3f5iH5ReH9ggMquZyNYfjELAw80gr3+iFOw+XnUf1bA9hrVe5ceK5zukLY/PKbA0s7zlX2kfCnv7M1tIiUpsavJpfJp2Xfnq0HhCv6+jpA7/1S7K6TD1I5ZMf754HGryaC5l7EGiVRTe0vnBiVrzCNa4kOXsG3ujB6WvC2omvq0dTi/bxA0Lb+pEbh6AV755HGPWcv0Koi7Lmu5t/XPGuemd0UwtNHRcJGIzVzVbaVw9dwzZIUN3RE7YRcRb+elC/ipP6Rt9DLVvruYCnRo+Kczb3AK9lui7GdZlSKD6zdtfh7QyizwE2evwmgN6mXNaiHg415ymSE5cHNXN2WJX7xRI/07rYNrGjvIk5G3QenpM4+sRVCOy9BFMvuk1O9ODit56gElunsOSrVNg5r4n5udn5db3ORnsWNP9y6uXhrmucNk+sD6GqhXXY1BB2XLU0qPTsk2BNHSI8vOhbcN9w6mDGqSvonkg2Bqvu+VVjnegLc5G4PJNn/nh0vfpmDvh4u55Ee+tHPQfILD1UcZB7MUti7fuzOYeAUa1wDKXBqIfHHm5j4rUndQoZYHqA6dH6UZtY9KO8TKPHX+uk54Lbv/UEnRx13dNmJYZa3OzHyjpWcGg+ZvydrFZ5/sLlzfBobsrmxVciN0msPaFvGEOlGbuKMbbuzMUDlKjnw1RJbUuF11X6wukFJ56tJ+CRVQXzgmm33gYLjI+z0m/8pyd6iL5Y0XOQhRr77H3IECZ52ZiyL2/0+EOo3sTzvpO7jp84rkdTMvujH/XMRq31FeNv33P6wjZ6YVnupSS+8eq6CoxiQnjkBhsGOTlLY8xnBqTFc4pHCuDFYc/zb4reB/wE+pE0pdir4r4p5IU1rYOl2ujLqPUxnprE7JrO6cQUn+jxCWfJQI56Yup6sPnwxZ/zzZuCxKs0G33mEmGjx6AbHPtUq1j0k4e/a0WwfJBzTnoA+8Fl9seEBX7cnEZvXPWeNXPCLx0cVlJ2aAE8Q4rgtTKb08xV+0YvQstdOOZzho5F7vkVo40+eHLvSWouNniBe34B1ndhCZK2fAGP3Kp/k+2RW0Y1zbk7nCMDgzuvxu48sXJuffFuqI9pzWB9YfHCw/3DZcc/F7R77Ahl1OMNV82S0mDD2mMuA7KUNF1BZlrFpTWteO11Iz2m4mzuU2Hd0GbqXzh7QWso9NS02HLfDOiy4RYnmL2SIJBBWZF57c8aDTtc5L2mvoq2J6610Qu3f5lQa1NqaHSZuPVFm15Q3caXo83EPQtALfT6RVVaPMKnSR9eHVc1TwqZB9HuQZQkPwZL4ysD6LHRl8B6lVs/ZIDGpfXBqBURL8Lom1v6ojmr9qtCAW0RqGUFI+9YvNaXxvWIKBbubcbFYUbPqVqVj/5jgKm3tMitp1V59HzRF7e26rw2KE1DX4+QWgMeUPuMDVc9M4AxW8+CJqLiWpcBogcsnvUmrQv6zBpOngAk3dtJ3Vek5UfYepKxTCld5txwh0dkxfswv47xQb6lxPKTucKVg+lhcjk6p6qgoLXLIzllVp7gDBUsfuF7z5DZo0eklRvqGee8xDKIzDuGeszzbPQYanU9+uyrfDyPTMPFmkWemDxnzBzhmIQeQKt9Aiz4qC8DyuFO3cYPEnzt+76eb/Ror8K8pa59o6/eKXO21jOMlvMisOX8rlEfgfXkc5W2xj8OQC/xNvqho+/s1bOdHGCZ4ONSBVPvWHW//i/1PhDzt0kQZOg0i78HU50F5huBph4u1JCuGVh1BBs9eQEK7Qc9g6UGljlmbCx6+ru4ehC7VMZTDw3yxIiToyNu/aKj6oUty7OWtvUSWm+DxXMtogWJVHrl1FPOubODx9vSELW7/6yDmbQu9hW20VPCY3Bd32GmoYXK5czyjKWDSNhY3Qdk7b/zyBkthEc9B0AffgcBlmfrC3af6IV1X+n3FtSiJ9a/IX24Rf+uj8Lf5ifQH6AIyEIcsgGa8KCg5Z4mVWJAcdU9CMSsvX7vBU9YDlA22xniBTX9lmzNgx6OLt6Vmze4uQkbPTx0Wunb+gUvgkjWF5Yz4hW/YNnxtXcFwfus1NEPz+bsalAyX/Rlu9RKqLce33osQtVKFK/Mnn3ipg6P9t71YR64DGC9LvGbHtFTS5zDtx4D9Pj5sjZCewMraT08rfQLqfUKiHlYQ65HvNDy9QK/jqRf2PsA3036Nb87eDOEPNjd2I7Iy6yGHrAb9WCLehwcIks621cPw8QK0Dat6t3f4nVpDDKPeKGv3JAuVbIwuuwGpx67qcc6BsI7tvD04vnRayGzdOpTmDux1tSS02ujB6NQq+Oal82zVw4t89ZInWM09ZOHR3I4xJ5t+NmbS6145QzJKcfLs428cTCI6rvRl8nkQZvelo1549EcBYl9D5JkF8ibga8V9P9fM/zj7738kP6U22c/pn/UIQ1WtAbc3BAVbFyEHDJ8D9TJ0nsiidDRsDVKOkZTxt6KPOvEmQU6qySdtHYhx7oKG27qA+ywuD3rfs7Ssm3mC34jfRrtfDdecDzAMrVkh1GJleORTK+TmgCsWZMX+cTcYD/nkm6fS7wKn3rik+csxHE+pNGlHKxpFHazwMna6MukJJ7Ns4g8/e95rv+6yf/15tdefA4fDyi+n3eI42LmHenmFDQEQ/WCp8cGW1BTOoA79YrdxpcSFSeQjTtZTj3TkLgCL1x2htoPVv3jwY3JzbNHJOXjJ5BC+UQX26lPa9eilzS471OE5Ukt/eOVHqZMvgCnA7MeolbrnRjq/yKvTPpotRNaQ1HJ9Mqsk29a9EtiUc8vLGcFgxp9ZMk3XiXK/JnFeoharZ+JK8dL6wVljvSbemMBingb/97b5eH9uPktoJ8zvA+iv5AuMlweTpOgYKWgYsJMkSFMU7FzxXC9Ji5gcjoWDj/5PDAezJXZ4MTb/Eqsh6xlfe3k8OKN0UYPoZZ7KEbP8qbL1MNJvT2LnDx1YEysd3KcA0744a1Dlr+brxno6dmGxmWBm14mDUwkeN1n6N1zrzc49Mp7zvL25ubL1yEXHuU3Z2p9ee9nKaujvqyK7i0at6g5KGSWtHd/4e7fxmvOfADQ/j60eTM8JPPL2/T31luEo4TeMCBwF+2sin0ope4hjNx6k0QrrNLIVgpXEVatJ3ayKFPvw1ffVS09PQSYi55imbZ31V0aHp5/x3X/idU87l/WOci5Wc9h7stFq9vLt6wXXoXoqbnn7F+ceLgULGDp5jlokPkZoKluoqL2xqYeYa3WKyd27+gLM1hersOrfPrTLOc88b8ZvUTRx3c/n880+m8OiF4P/hVQfb1wee3pw0PM4TfDN7zs4n8q/vlb+RaTDNIAAolzn+44RJXWTTHxeJmDmTcMc4j4dl7+8T1njE3zay7naIcej/2C5ydx8Pa5PWrWpiVHL9PG9w1mLiK85lZufUCS6y3xQoXWcYLoyfXo+zI9w4VCzBwDy4GADM/a9Im+eNC6vRLyjTTF8OirmOX+SvIaiTb1xTpebbXXq9x6CfH04yhb0TQlxqcwfPmr6ZX//Bu/za//9WYoj7flK+sIjNOIwFOtIRyWeWm9zQEnbr/S24e4hoove+sRhz+Ngu/15OjDzWwNLO95rrSPxNbhq5gwczLb1OCVeePReemnR+sB8bqOnj7wW78kq83Ug1Q++fHueaDBq7mQuQeBVll0Q+sLJ2bFK1zjSpKzZ+CNHpy+Jqyd+Lp6NLVoHz8gtK0fuXEIWvHueYRRz/kJ+dlC/XzhbUq9/JGBSB8qflLbY7frUyULXR4XTVX35dhslAk9dA27KdUg6AnbaJLw14P6VZzUN/oeatlazwU8NfpUnLO5B3gt03UxrsuUQvEN1u46vJ1B9DnARo/fBNDblMta1MOh5jxFcuLyoGbODqtyv1jiZ1oX2yZ2lDcxZ4POw3MSR5+4CoG9l2DqRbfJiR5c/NYTVGLrFJZ8lQo75zUxPzc7v67X2fi7khQ+dseTft0zzfEjw6v+ysXDMnkHnyq5cx3WxqZKXFjuUBo0rAAsOLIejLh8vMGtPDh7n4G6ku6p2oyRuo94V+rRQKyFfs7WcXl0vfp6vjJgcx2vwlpfkOerA0BpvYOW4eCk4JWWpxPKMRi4sSVdZhiMerTs4TYmXntSp5ABpgeYHq0ftYlFP8rLNHr8tU56Lrj9W0/QyVHXPW1WYqjFzX6srGMFh+Zjxr/OxptB4TvybzOg748MJPop3Jv0BcXT+kccygFUy25rT+gbJqibUa5GCq9cfgGVqOfDVEltS4vXGZfNC1AEOPFsPQGPrCpMLSVumG9aceNjWWEb/+mJ3iZmL0n1IQnVeuXZ+5AhTDKxFqV9eaOnDsEDrDhPvlDX+qziEFtfpu1FMOqZDVrrK8YfjNqJvrAUrReWRc4yrku8Frp88TQhPHKDDYOcnKUx5jMD0uI57WEL1/Zc/UMlmuFpvfjfZE5dNm+Gb3rZxW8IeKffDBkkHcgLq63zGM4nJNi8qcZafPTL3XUpdXY9TvSYhKMw4xE0XFo216sw54suO7YYmMqlYvobA0qg2HORl4G30gi1xuWpT6Fk7SdizgmGzg8ue/3woJw0eucqtDeDFbExqxp2OfOf6IvbePLMVftGL05my/1JPmfoWMWeXzHc8IMn954ks2iHFxhfe2u3vgsL51/tEf2db3rNxW8Mi+1HBgr6IvoNGPHPg3LANlaSht0ADA7CWq6NuPXCmpsAPTELEz2cF5aaD6ayc3ipKzyaklSJuh5F6/niB882xSNnbbDoAatn61Vjps6LEn369rwUtIITtL7A3Cc0fsCPIHry6uteMVVCzoMVj5UtHGn8ysbzGIvQ4jN61acncebHa7MEgBnnIq25g7TRi+P2XEaf6A2Doy8/68svXpWu3uKBh4eHlzDeCPTRz9beUGhvm48MoN/w1Re/rO3f8m2n/KEfTH0oCKx2X6mvcPTg4FmJrRc4SqEcfaXN8CGiRxM9yfSYcbVfvhTgFoFaVjDyjsVrfWlcj4hi4d5mXBxm9JyqVfnoPwaYekuL3HpalUfPF31xa6vOa4PSNPT1CKk14AG1z9hw1TMDGLP1LGgiKq51GSB6wOJZb9K6oM+s4eQJQNK9ndR9RVp+hK0nGcuU0mXOcPlu6V369QvhP/XGb/XrfCh3XzOkcvsth+/QT6MfvmN9OFmHL0c2N1SQJt4FJo9PnuAMBd439ozeOpsvB+tXuHSlz02h7lh7ZJmNYVw/px+Yw+izp1475vESxWvOBpAzZg4waxCgB9BqnwALPurLgHK4U2ej+JU32L6v5xs92qswb6lr3+ird8qcrfU1r/MisOX8nhX9CKwnn6u09HWYAegVrIKUkNN39urZNqQyEBcLlxTcfRcOh4f1w7Zvd7S7nHxkoK6PDr+nv1npe/jO0m16YJiFsW+EAgbpwUTqwYrsmjgbPXkBCvtJ8CHjPfW72J7R0586nmtbvcq4ZysPeBMjTm59+WQobOZKnidko5cBec6Gzt4Rxag4wNYXHl321CPLTD4rvUrvOp5NLF9h7j/wJTpye75z+uk/PRR7Rg8Aac3SWN0HJO1PMlbO6HmEY9UHqLOZ7oKjvuDZ+kLdZ9yA7luzQeMzHX5soGZveOBv6fV9Zp19M8B7zssPPyjhr/KVt0k1mHsSE+SBoOoehDwrnOjJEw9ODlClkwM3FX2tWDOHdbp4V+4bNrj4g80b6by8rFPc+l0T68Mt8vTLubPT2u0rCO5Zp354Ngcts1aNLfNFX7aLoYR669HWYxGqVqJ4wWFln7ipw6O9xe+4/GwjsfW6xG96REMtcQ7YegzQeyguKya3N/nUQ9BKv5Bar4CYX9G+505Tf/VLnnf4AUdnLle+Ge6/uHhK/6LJ/TJ6+M47pMS1JvJWQw/YQ/Vg1Wx/cDyih4LegAK0zoFMOu7QslIzGUFxra88PapkaXTZDU69AM8vUXTNFa9jC08v3V8l9PaIEXokybODaU0tOb02fDAKtTqu+dk8e+XQMi8QKzlGUx88HsnhEHu2qSfWIytxzpCcerw828gbB4Oo5ht9mUwetOltmXThxKM5Cojv0adH4jysF/v9999/Uf8kD+rtuvLNAO2VX33xQf2jh6/h0yX/kILGwrlprAwx8x5kUdYTVCA86wn0iN5UFagVtZvkJsIhRhPM+gi0O+SCP0t7QseVbPTFM59L6aMzVxh5dOFu5o/WQ2z74ml9hJVM/Yyh0QvaupQeoOaj5FbVr/WVU8+8luBnw+PeGuGRgTXPJqrZYIt7lIjGLNajq4VX9xmYe0gfi3CqVeSeJRzfCyWZD1LrirTpr958wayvgfkLVV/zhm+9+GAbnwmu+2aA/+qvvfhJbW99jj5d4rf8enE3OGgDKwA+WYAiNleBeSGzFyeQyZ0sxxycLBJXZkJMo25mRvePBzd03lRYlqAnzozlE11sp74kW708ghNEv8xr/iLEa3Jm7Hn6YofN+VtPqTxP9BlcO6E18JUgKZkDtK2HrNU5MYAEeFTYejDq4Ze8c/ipRZT5M4v1ELVaPxNXjpfWC8o56MGn+P5Wql6/b3qtX8dH0Znohm8GNHd8zeG1+nt5HsKcX/N2x5qY5h64puiDQuPG5DSKi+KgcfSD03HaVG0eWKV1wwmqR7ytr4StrZWQ48OC170UF3zEFm2jBzJPl6mnx/Qtqcnpkbpr0RdxchKHlwGsryHZ6Mkj56/Q4KaXScf54Ftf+NTjgelGb3CLUfec5eENUy1wh1x4lN/0bD0CrT6z+K2nEH2FQFnRmFJzUMss+vedD3fzdcIth4f+/PMPr43uevtNvRn4+uGO+w5/QwP8Il8/3MobQsuHYic5c2gfzEUINegKLaqzHvWqzZs29T78ODQ2uRFzdzt4CmqD2jfcPkZWL+eD6/5Tb8Oht9kyODfrOWxI1pMFIN+ytlnmip5aZoPguM5f29IHC1jceY7WO5AXO8tN1t6YUnplDmiszJfYs0efOrkeeLlePuQ8ehXeuYL2vxm9+Jkvvq1Xje8c3ac3gn488It/Qq/b632dMGe4qTcDgvtffPHYLXcdXq7wN/k8jI8QDOJDQxhrDgY88xwCsfUxyA4f0chJWRv+1MM9w7eoLvRlju6P3y63B0202i45+ombdcUF38mt3PoYk1xviRcqtI4TRE+uxzxX24YLhZg5BpYDARmetTZZQXThdnsBwVqSogCH9K2ifZTkNRFt6u1RwVk9vtUDv34I543wGXdDOPym/tHzl3/n/RePldUNt7K8Ia8Jb/u5y+c99ejhvfrrNf7iYx8/HB7XY67ctGCd04nBu7CCzgtv/lX59fTxx3TcrJaMZqGc9IM8eSEC7/CTN9OOY6toNM/N6kfLrQbDWnjVLQ3kudG69gmcP6PGG2P+uvb5wkszn2U3gPW6sFf7pUckwJoyuJG+aK3ZtWo8PHa+yeNvoV4efvGJuw8vf/MrLz486zeKb/ojQ4xe+ZUXH77j3sNX6VuuD/HFCV9HZPkmaurcvOB51vom+a51dQXcRD04NI/5glyEY31Tixf60ro/SWoYVJzZ3AO8lum6GNdlSqHkicxs8dnrc4CNHr8JpM/AqIdDD+cxJycuPjVzdliVff+nn2ldbJvYUd7EnA06D/qwMlvHVYit9xJMvcX4hTi9hAV2vRJbpyA+udPCznndpU/feSPoN68fet7zDl/1TN8IzFlHInxm68HLy1s++t7DD0v1zU/pL2F6VB+M+K/IHDSOe8z5uEE+bA4akXZ4vrFVSyl+8bmuHh+EXEZPQ/G1AciYf8e9rn5Jt3q8giuo9gurJOdoWgsWkvMhOqvnX5lhdq291x5r/fQCZM2znsNEwT/PBRTfsnCp6+HVwRZrjUjTq1Tn9UM0bDd6fqB2n36O4D+Hc3F464vuO7z2Zr9GSO/sdSuTPvP9xx+6/Ea9CX5EB7yXNwT/yPT+iZm5Y9/JY69g7F3K6QWc6I9SRyf60rLZr4LpMy2CxyfPTPT5VCG81orAP53a/AjAi0TZ+tDOcEwe54x24t2mis3BV0leqLTdzImv3jSzbg6XWtYrtm7MsakXTt+e5Rnoz3ldhc2zwZnn6VmF863+e/mBmn7fSG+K1zzwt2/87dP0PLdzrk96/dg7L1+gf0f3QU31JU8+qY8SH9MLgP9qac2DODdKQY+6qz587oCwqZmx9UPnvC8Ea8WKHh2nVgBbtW/SBoMvoPvXnUrOPl9gaFn2TKI8fBfJKzjRV2F6Qj3Rw6t7NOePb9l7i7YkZzHrdLmuXkXmYrVnYZ2v8rqWmTdd2HvW4qHLWcNzaRDB49+wQP7s8t36Jg5vBqW/eu3y8IoHvvnit8v6E97qiJ+wvoUPPnh5y6P3HL5T0323Hvd8TF9Y88jiUBzOh+qgDjum8OGr3jdCdeuHDl/SoynJwBJrd09yCxTU2ufAE9vQlXROUDOVVW+ec5WXV852lb68YmB9MHZWHcCzVd+C1lCdrHSeYRnU7OU37eHmRWmu8qJFuuABTg3waG9xU1MUZ8600Yvj/tXNvOhiNM58p94EfK2qb5t+RLrv+bP3HH7gE/20qFr2xjk+petf/MzlZ1178vAWGX8dB3v8Cf2pa/21lfubkTvY51bQ8ZyocKCuE9Syb92sYHPf99088SKe1U9/zKoxXG5YlxUk7j4bQtWLxDbLrcEzRornmnhTht+cbeoSb/S7AWxT2OTFk50ytf19w5/auiwO6Tyg61DQs1OvFS27a7M4OVXn51t8s6beOD+tN8Prrvrt05I/4405npX1E++9/IonLw//UDfir6rBNb4F+7g+heLTqNzY/fn3N508a1OrO+v6uMv7Gzvk55+QSVCjTQ/yNK/aSM2dOfGJPgaa0bOapMvMwWpNvaXRq259zho99WBwhk+FvXX/cNgjmBjwDjd1h00OJY9RQdeiybzVZ+8XmucZXP74AN8ure9YPq2vz97Fn8T8R6+++C/D6lMWcoZndf3zd13+OR3g9fqi/6/pC8nn8rUEnz7pByIHvgvF4mZwA31DjRwvfWOP0MmTdTN6+9dp957keGz6A2jVtplvepmDXo+8yS2sy9QHN5ekGsIBO7eCz3Lr0ZUovL1HcO+788/zhtd6jEUInp369DJf3MaG7ir/9hqEYHxXiK8F+F04/mSa7uljqv17HfSN+gJ582eW3ftTeGGcT8t68Gcv73vkicM36necXqmb/GJ9h+OC77LwkcJvDMW8OfjOB/eTm3P2xUWxVocJ6uaiBRr32orc8NafI6m40Q/vs/qYjT16Q3v96JnSkK4XlQD32h3A/NJvZomR+MaVBzrnDeY6l2hW2PceDgs/nofEKxp6AemVcedsifNcxi87L36+IOYP3vgXQWUi7qVeB7+g18Pb7rzv8JPfdf/FH6Xvs7nXMZ/NFqfeP/6zl5+rN8HX6NdqX6on4yu1fxZ3lJvKG4SPHuzk3LS8QXDKTTQOgVXPglMueVYmbuJWn55+sukDZ+gTMouX/Og7V+YB29eM9YWgeqxwwz+nbf7smaG0G6689TOv8/MBmJBlXuHz/NGz54W7FEeNZW66Kg7Tz+ZrpthHTx88eehzfe+8CcKr/fdE+zk9/tPh1sNDD3zTxe+2/tMUMMcf+/K3Zq8dvlgvuhfqyfhC3aXP10eQ5+lzxLt1c+7SkHcJv/3sEzWnF1n/r8sqON9hq1L1Jmxk9vGTRF0Bvc+ts7i4JesX34YXr51vYPqY7wFG1zY9YieaKm36xS817VizJm96rSoEPa6Y0+MNUcKNp0D9l//jem4fFf6ontdHFH9Yz+3v6I3xW3qjfkDfGv2173719f+sQc/zLAb/D0EI6cG68deIAAAAAElFTkSuQmCC";
|
|
2
2
|
export {
|
|
3
|
-
e as
|
|
3
|
+
e as image
|
|
4
4
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
var v = Object.defineProperty;
|
|
2
2
|
var g = (o, e, t) => e in o ? v(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
|
|
3
3
|
var n = (o, e, t) => (g(o, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
-
import f from "./_Assets/delete.svg.js";
|
|
5
|
-
import m from "./_Assets/delete_bg.png.js";
|
|
6
|
-
import k from "./_Assets/delete_hover_bg.png.js";
|
|
4
|
+
import { svg as f } from "./_Assets/delete.svg.js";
|
|
5
|
+
import { image as m } from "./_Assets/delete_bg.png.js";
|
|
6
|
+
import { image as k } from "./_Assets/delete_hover_bg.png.js";
|
|
7
7
|
class D {
|
|
8
8
|
constructor(e, t) {
|
|
9
9
|
n(this, "visible", !1);
|
|
@@ -60,9 +60,9 @@ class D {
|
|
|
60
60
|
return this.visible = !1, this.masking.style.pointerEvents = "none", this.container.style.opacity = "0", this.container.style.top = "10px", this.container.style.pointerEvents = "none", this;
|
|
61
61
|
}
|
|
62
62
|
show() {
|
|
63
|
-
return this.visible = !0, this.masking.style.pointerEvents = "auto", this.container.style.opacity = "1", this.container.style.top = "0", this.container.style.pointerEvents = "auto", this;
|
|
63
|
+
return console.trace("\u{1F436} ~ show"), this.visible = !0, this.masking.style.pointerEvents = "auto", this.container.style.opacity = "1", this.container.style.top = "0", this.container.style.pointerEvents = "auto", this;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
export {
|
|
67
|
-
D as
|
|
67
|
+
D as DeleteDom
|
|
68
68
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var r = Object.defineProperty;
|
|
2
2
|
var f = (o, e, t) => e in o ? r(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
|
|
3
3
|
var i = (o, e, t) => (f(o, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
-
import { Vector3 as
|
|
4
|
+
import { Vector3 as c } from "three";
|
|
5
5
|
class u {
|
|
6
6
|
constructor(e) {
|
|
7
7
|
i(this, "edges", []);
|
|
@@ -18,11 +18,11 @@ class u {
|
|
|
18
18
|
return null;
|
|
19
19
|
let t = 1 / 0, s;
|
|
20
20
|
return this.edges.forEach((l) => {
|
|
21
|
-
const d = l.closestPointToPoint(e.point, !0, new
|
|
21
|
+
const d = l.closestPointToPoint(e.point, !0, new c()), n = d.distanceTo(e.point);
|
|
22
22
|
n < t && (s = d, t = n);
|
|
23
23
|
}), t > 0.1 ? null : s || null;
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
export {
|
|
27
|
-
u as
|
|
27
|
+
u as FiveHelper
|
|
28
28
|
};
|
|
@@ -11,6 +11,8 @@ export declare class GuideController {
|
|
|
11
11
|
private textDom;
|
|
12
12
|
private container;
|
|
13
13
|
private hasAnchor;
|
|
14
|
+
/** 是否曾经切换到 Watch 模式过 */
|
|
15
|
+
private hasChangedToWatch;
|
|
14
16
|
private _params;
|
|
15
17
|
constructor(measureController: MeasureController, params: GuideControllerParams);
|
|
16
18
|
dispose(): void;
|
|
@@ -1,30 +1,35 @@
|
|
|
1
1
|
var s = Object.defineProperty;
|
|
2
|
-
var o = (
|
|
3
|
-
var u = (
|
|
2
|
+
var o = (i, t, e) => t in i ? s(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
|
|
3
|
+
var u = (i, t, e) => (o(i, typeof t != "symbol" ? t + "" : t, e), e);
|
|
4
4
|
class h {
|
|
5
5
|
constructor(t, e) {
|
|
6
6
|
u(this, "measureController");
|
|
7
7
|
u(this, "textDom", document.createElement("span"));
|
|
8
8
|
u(this, "container", document.createElement("div"));
|
|
9
9
|
u(this, "hasAnchor", !1);
|
|
10
|
+
u(this, "hasChangedToWatch", !1);
|
|
10
11
|
u(this, "_params");
|
|
11
12
|
u(this, "onModelChange", (t) => {
|
|
12
13
|
var e;
|
|
14
|
+
if (t === "View") {
|
|
15
|
+
this.hide();
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
13
18
|
if (t === "Watch") {
|
|
14
|
-
this.textDom.innerText = "";
|
|
19
|
+
this.hasChangedToWatch ? (this.textDom.innerText = "", this.hide()) : (this.show(), this.hasChangedToWatch = !0);
|
|
15
20
|
return;
|
|
16
21
|
}
|
|
17
|
-
this.textDom.innerText = (e = this._params.firstPointTip) != null ? e : "\u8BF7\u9009\u62E9\u7B2C\u4E00\u4E2A\u6D4B\u91CF\u70B9\uFF0CEsc\u6216\u5355\u51FB\u9F20\u6807\u53F3\u952E\u53EF\u53D6\u6D88\u9009\u62E9";
|
|
22
|
+
t === "Edit" && (this.textDom.innerText = (e = this._params.firstPointTip) != null ? e : "\u8BF7\u9009\u62E9\u7B2C\u4E00\u4E2A\u6D4B\u91CF\u70B9\uFF0CEsc\u6216\u5355\u51FB\u9F20\u6807\u53F3\u952E\u53EF\u53D6\u6D88\u9009\u62E9", this.show());
|
|
18
23
|
});
|
|
19
24
|
u(this, "anchorChange", (t) => {
|
|
20
|
-
var e,
|
|
21
|
-
!this.hasAnchor && !!t ? (this.hasAnchor = !0, this.textDom.innerText = (e = this._params.nextPointTip) != null ? e : "\u9009\u62E9\u4E0B\u4E00\u4E2A\u6D4B\u91CF\u70B9\uFF0CEsc\u6216\u5355\u51FB\u9F20\u6807\u53F3\u952E\u53D6\u6D88\u9009\u62E9") : t || (this.hasAnchor = !1, this.textDom.innerText = (
|
|
25
|
+
var e, n;
|
|
26
|
+
!this.hasAnchor && !!t ? (this.hasAnchor = !0, this.textDom.innerText = (e = this._params.nextPointTip) != null ? e : "\u9009\u62E9\u4E0B\u4E00\u4E2A\u6D4B\u91CF\u70B9\uFF0CEsc\u6216\u5355\u51FB\u9F20\u6807\u53F3\u952E\u53D6\u6D88\u9009\u62E9") : t || (this.hasAnchor = !1, this.textDom.innerText = (n = this._params.firstPointTip) != null ? n : "\u8BF7\u9009\u62E9\u7B2C\u4E00\u4E2A\u6D4B\u91CF\u70B9\uFF0CEsc\u6216\u5355\u51FB\u9F20\u6807\u53F3\u952E\u53EF\u53D6\u6D88\u9009\u62E9");
|
|
22
27
|
});
|
|
23
28
|
u(this, "onEditedLineChange", (t) => {
|
|
24
29
|
var e;
|
|
25
|
-
t.length === 1 && (this.textDom.innerText = (e = this._params.endTip) != null ? e : "\u53EF\u4EE5\u8FDE\u7EED\u9009\u62E9\u6D4B\u91CF\u70B9\uFF0C\u6216\u70B9\u51FB\u4E0B\u65B9\u201C\u7ED3\u675F\u201D\u6309\u94AE\u5B8C\u6210\u6D4B\u91CF\uFF08Esc\u53D6\u6D88\uFF0CCommand+S\u4FDD\u5B58\uFF09");
|
|
30
|
+
t.lines.length === 1 && (this.textDom.innerText = (e = this._params.endTip) != null ? e : "\u53EF\u4EE5\u8FDE\u7EED\u9009\u62E9\u6D4B\u91CF\u70B9\uFF0C\u6216\u70B9\u51FB\u4E0B\u65B9\u201C\u7ED3\u675F\u201D\u6309\u94AE\u5B8C\u6210\u6D4B\u91CF\uFF08Esc\u53D6\u6D88\uFF0CCommand+S\u4FDD\u5B58\uFF09");
|
|
26
31
|
});
|
|
27
|
-
this._params = e, this.initDom(), e.container.append(this.container), this.measureController = t, t.hook.on("modeChange", this.onModelChange), t.hook.on("anchorChange", this.anchorChange), t.hook.on("
|
|
32
|
+
this._params = e, this.initDom(), e.container.append(this.container), this.measureController = t, t.hook.on("modeChange", this.onModelChange), t.hook.on("anchorChange", this.anchorChange), t.hook.on("editedPolylineChange", this.onEditedLineChange);
|
|
28
33
|
}
|
|
29
34
|
dispose() {
|
|
30
35
|
this.hide(), this.container.remove();
|
|
@@ -33,12 +38,12 @@ class h {
|
|
|
33
38
|
return this.container.style.opacity = "1", this.container.style.transform = "translate(0, 0)", this;
|
|
34
39
|
}
|
|
35
40
|
hide() {
|
|
36
|
-
return this.container.style.opacity = "0", this.container.style.transform = "translate(0, -10px)", this.measureController.hook.off("modeChange", this.onModelChange), this.measureController.hook.off("anchorChange", this.anchorChange), this.measureController.hook.off("
|
|
41
|
+
return this.container.style.opacity = "0", this.container.style.transform = "translate(0, -10px)", this.measureController.hook.off("modeChange", this.onModelChange), this.measureController.hook.off("anchorChange", this.anchorChange), this.measureController.hook.off("editedPolylineChange", this.onEditedLineChange), this;
|
|
37
42
|
}
|
|
38
43
|
initDom() {
|
|
39
|
-
var
|
|
44
|
+
var n;
|
|
40
45
|
const t = this.container, e = this.textDom;
|
|
41
|
-
t.classList.add("fpm__guide-container"), t.style.position = "absolute", t.style.top = "0px", t.style.left = "0px", t.style.width = "100%", t.style.height = "110px", t.style.display = "flex", t.style.alignItems = "center", t.style.justifyContent = "center", t.style.transform = "translate(0, -10px)", t.style.background = "linear-gradient(180deg, rgba(0,0,0,0.40) 0%, rgba(0,0,0,0.00) 100%)", t.style.transition = "opacity 500ms ease-in-out, transform 500ms ease-in-out", t.style.opacity = "0", e.classList.add("fpm__guide-text"), e.style.color = "#fff", e.style.fontSize = "20px", e.innerText = (
|
|
46
|
+
t.classList.add("fpm__guide-container"), t.style.position = "absolute", t.style.top = "0px", t.style.left = "0px", t.style.width = "100%", t.style.height = "110px", t.style.display = "flex", t.style.alignItems = "center", t.style.justifyContent = "center", t.style.transform = "translate(0, -10px)", t.style.background = "linear-gradient(180deg, rgba(0,0,0,0.40) 0%, rgba(0,0,0,0.00) 100%)", t.style.transition = "opacity 500ms ease-in-out, transform 500ms ease-in-out", t.style.opacity = "0", e.classList.add("fpm__guide-text"), e.style.color = "#fff", e.style.fontSize = "20px", e.innerText = (n = this._params.startTip) != null ? n : "\u70B9\u51FB\u4E0B\u65B9\u201C\u5F00\u59CB\u201D\u6309\u94AE\u5F00\u59CB\u6D4B\u8DDD", t.appendChild(e);
|
|
42
47
|
}
|
|
43
48
|
}
|
|
44
49
|
export {
|
|
@@ -3,11 +3,7 @@ import Hammer from 'hammerjs';
|
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
import { Subscribe, SubscribeEventMap } from '@realsee/five';
|
|
5
5
|
interface MagnifierEvent extends SubscribeEventMap {
|
|
6
|
-
wantsPanGesture: (
|
|
7
|
-
deltaX: number;
|
|
8
|
-
deltaY: number;
|
|
9
|
-
srcEvent: typeof Hammer['Input'];
|
|
10
|
-
}) => boolean;
|
|
6
|
+
wantsPanGesture: (event: typeof Hammer['Input']) => boolean;
|
|
11
7
|
}
|
|
12
8
|
/** 放大镜配置参数 */
|
|
13
9
|
export interface MagnifierParameter {
|
|
@@ -24,36 +20,53 @@ export interface MagnifierParameter {
|
|
|
24
20
|
top: string;
|
|
25
21
|
};
|
|
26
22
|
}
|
|
23
|
+
export interface MagnifierState {
|
|
24
|
+
enabled: boolean;
|
|
25
|
+
}
|
|
27
26
|
export default class Magnifier {
|
|
28
27
|
width: number;
|
|
29
28
|
height: number;
|
|
30
|
-
|
|
29
|
+
containerDom?: Element;
|
|
31
30
|
hooks: Subscribe<MagnifierEvent>;
|
|
32
|
-
|
|
31
|
+
canvas: HTMLCanvasElement;
|
|
33
32
|
private five;
|
|
34
33
|
private scale;
|
|
35
|
-
private wrapper?;
|
|
36
34
|
private config;
|
|
37
35
|
private offset;
|
|
38
|
-
private canvas;
|
|
39
36
|
private context;
|
|
40
37
|
private renderCenter;
|
|
41
|
-
private lastPanEvent?;
|
|
42
38
|
private hammer?;
|
|
39
|
+
private state;
|
|
40
|
+
private offsetRange?;
|
|
41
|
+
private isPanning;
|
|
43
42
|
constructor(five: Five, options: MagnifierParameter);
|
|
44
43
|
dispose(): void;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
/** 清除放大镜渲染内容 */
|
|
48
|
-
clear(): void;
|
|
44
|
+
enable(): this;
|
|
45
|
+
disable(): this;
|
|
49
46
|
/** 把放大镜放到某一个容器中 */
|
|
50
|
-
appendTo(element: Element):
|
|
47
|
+
appendTo(element: Element): this;
|
|
48
|
+
/** 清除放大镜渲染内容 */
|
|
49
|
+
clear(): this;
|
|
51
50
|
/** 放大传入点位周围的内容 */
|
|
52
51
|
renderWithPoint(point: THREE.Vector3): void;
|
|
52
|
+
/** 放大传入点位周围的内容 */
|
|
53
|
+
renderWithScreenPoint(point: {
|
|
54
|
+
x: number;
|
|
55
|
+
y: number;
|
|
56
|
+
}): void;
|
|
57
|
+
resetOffset(): void;
|
|
58
|
+
getCurrentState(): MagnifierState;
|
|
59
|
+
protected getRenderCenter(): THREE.Vector3 | {
|
|
60
|
+
x: number;
|
|
61
|
+
y: number;
|
|
62
|
+
};
|
|
63
|
+
private _appendTo;
|
|
53
64
|
private autoFixPCPosition;
|
|
54
65
|
private render;
|
|
55
66
|
private initStyle;
|
|
67
|
+
private getPanOffset;
|
|
68
|
+
private onPanstart;
|
|
56
69
|
private onPan;
|
|
57
|
-
private
|
|
70
|
+
private onPanend;
|
|
58
71
|
}
|
|
59
72
|
export {};
|