@realsee/dnalogel 2.12.0 → 2.13.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/index.d.ts +0 -1
- package/{libs/PanoTagPlugin/controller/TagCacheController.d.ts → dist/PanoTagPlugin/controller/TagCache.d.ts} +7 -7
- package/dist/PanoTagPlugin/controller/TagComputer.d.ts +3 -36
- package/dist/PanoTagPlugin/controller/TagRender.d.ts +58 -0
- package/dist/PanoTagPlugin/controller/TagUtil.d.ts +56 -0
- package/dist/PanoTagPlugin/controller/index.d.ts +16 -72
- package/dist/PanoTagPlugin/typings/controller.d.ts +15 -16
- package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -0
- package/dist/PanoTagPlugin/typings/tag/Utils.d.ts +16 -0
- package/dist/PanoTagPlugin/utils/device.d.ts +1 -0
- package/dist/PanoTagPlugin/utils/model/imageModel.d.ts +8 -0
- package/dist/PanoTagPlugin/utils/tag/tagCheck.d.ts +7 -7
- package/dist/index.cjs.js +46 -46
- package/dist/index.js +3854 -3790
- package/dist/index.umd.js +46 -46
- package/docs/assets/search.js +1 -1
- package/docs/classes/CSS3DRender.html +31 -31
- package/docs/classes/CruisePluginController.html +25 -25
- package/docs/classes/Magnifier.html +20 -20
- package/docs/classes/ModelRoomLabelController.html +11 -11
- package/docs/classes/Object3DHelperController.html +25 -25
- package/docs/classes/PaintBrush.html +15 -15
- package/docs/classes/PanoMeasurePluginLine.html +23 -23
- package/docs/classes/PanoMeasurePluginModel.html +22 -22
- package/docs/classes/PanoMeasurePluginPoint.html +14 -14
- package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
- package/docs/classes/PanoTagPluginController.html +112 -229
- 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 +19 -19
- package/docs/enums/DIRECTION.html +9 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/DimensionType.html +7 -7
- 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/PaintBrushTypeEnum.html +8 -8
- package/docs/enums/PointType.html +7 -7
- package/docs/enums/Rotation.html +8 -8
- package/docs/functions/CSS3DRenderPlugin.html +9 -6
- package/docs/functions/CameraMovementPlugin.html +9 -6
- package/docs/functions/CruisePlugin.html +9 -6
- package/docs/functions/GuideLinePlugin.html +9 -6
- package/docs/functions/ItemLabelPlugin.html +9 -6
- package/docs/functions/MapviewFloorplanPlugin.html +9 -6
- package/docs/functions/ModelChassisCompassPlugin.html +9 -6
- package/docs/functions/ModelEntryDoorGuidePlugin.html +9 -6
- package/docs/functions/ModelFloorplanPlugin.html +9 -6
- package/docs/functions/ModelItemLabelPlugin.html +9 -6
- package/docs/functions/ModelRoomLabelPlugin.html +9 -6
- package/docs/functions/ModelTVVideoPlugin.html +9 -6
- package/docs/functions/ModelViewPlugin.html +9 -6
- package/docs/functions/Object3DHelperPlugin.html +9 -6
- package/docs/functions/PanoCompassPlugin.html +9 -6
- package/docs/functions/PanoCursorRaycasterPlugin.html +9 -6
- package/docs/functions/PanoDoorLabelPlugin.html +9 -6
- package/docs/functions/PanoFloorplanRadarPlugin.html +9 -6
- package/docs/functions/PanoMeasurePlugin.html +9 -6
- package/docs/functions/PanoRulerPlugin.html +9 -6
- package/docs/functions/PanoRulerProPlugin.html +9 -6
- package/docs/functions/PanoSpatialTagPlugin.html +9 -6
- package/docs/functions/PanoTagPlugin.html +12 -14
- package/docs/functions/PanoVideoPlugin.html +9 -6
- package/docs/functions/TopviewFloorplanPlugin.html +9 -6
- 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 +9 -6
- package/docs/index.html +8 -5
- package/docs/interfaces/AddTagConfig.html +6 -6
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
- package/docs/interfaces/EventMap.html +15 -15
- 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/HelperOffset.html +8 -8
- package/docs/interfaces/ImagePlaneGroup.html +68 -0
- package/docs/interfaces/ItemLabelPluginData.html +6 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
- package/docs/interfaces/MinMax.html +7 -7
- 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/ObjectHelperControllers.html +9 -9
- 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 +9 -6
- package/docs/interfaces/PanoMeasureParameterType.html +14 -14
- package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
- 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 +9 -6
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +9 -6
- 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/PanoVideoPluginType.LoadParams.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +9 -9
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.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 +9 -6
- package/docs/interfaces/Rooms.html +9 -6
- package/docs/interfaces/Scissor.html +9 -9
- package/docs/interfaces/State.html +8 -8
- package/docs/interfaces/{TagCache.html → TagCacheInterface.html} +30 -30
- package/docs/interfaces/TagConfig.html +19 -10
- package/docs/interfaces/TagGLTFObjectGroup.html +68 -0
- package/docs/interfaces/TagIconUrl.html +11 -11
- package/docs/interfaces/TagObjectGroup.html +68 -0
- package/docs/interfaces/TagStyle.html +6 -6
- package/docs/interfaces/Tags.html +9 -9
- package/docs/interfaces/TemporaryState.html +6 -6
- package/docs/interfaces/Util.MagnifierParameter.html +11 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
- package/docs/modules/PanoVideoPluginType.html +5 -5
- package/docs/modules/Util.html +5 -5
- package/docs/modules.html +12 -6
- package/docs/types/ArrayPosition.html +9 -6
- package/docs/types/AudioAppearance.html +9 -6
- package/docs/types/AudioTagTypeConfigKey.html +9 -6
- package/docs/types/CSS3DRenderExportType.html +9 -6
- package/docs/types/CSS3DRenderPluginExportType.html +9 -6
- package/docs/types/CSS3DRenderPluginParameterType.html +9 -6
- package/docs/types/ClassFunctionParameters.html +9 -6
- package/docs/types/Color.html +9 -6
- package/docs/types/ContentTypeConfigKey.html +9 -6
- package/docs/types/ContentTypeConfigKeySplit.html +9 -6
- package/docs/types/ContentTypeMap.html +9 -6
- package/docs/types/Create3DDomContainerReturnType.html +9 -6
- package/docs/types/Create3DElementReturnType.html +9 -6
- package/docs/types/CruisePluginExportType.html +9 -6
- package/docs/types/Direction-1.html +9 -6
- package/docs/types/Direction4.html +9 -6
- package/docs/types/FloorplanRuleLabels.html +9 -6
- package/docs/types/FloorplanServerRuleLabels.html +9 -6
- package/docs/types/GuideLinePluginExportType.html +9 -6
- package/docs/types/HelperEventMap.html +9 -6
- package/docs/types/LoadTagConfig.html +9 -6
- package/docs/types/MapviewFloorplanPluginParameterType.html +9 -6
- package/docs/types/MapviewFloorplanPluginReturnType.html +9 -6
- package/docs/types/MediaData.html +9 -6
- package/docs/types/MediaStore.html +9 -6
- package/docs/types/ModelElement.html +9 -6
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +9 -6
- package/docs/types/ModelFloorplanPluginParameterType.html +9 -6
- package/docs/types/ModelFloorplanPluginReturnType.html +9 -6
- package/docs/types/ModelRoomLabelPluginParameters.html +9 -6
- package/docs/types/ModelRoomLabelPluginReturnType.html +9 -6
- package/docs/types/MoveArgs.html +9 -6
- package/docs/types/MoveOpts.html +9 -6
- package/docs/types/Object3DHelperEventMap.html +9 -6
- package/docs/types/ObjectFit.html +9 -6
- package/docs/types/PaintBrushEventMap.html +9 -6
- package/docs/types/PanoCompassPluginData.html +9 -6
- package/docs/types/PanoCompassPluginExportType.html +9 -6
- package/docs/types/PanoCompassPluginParameterType.html +9 -6
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +9 -6
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +9 -6
- package/docs/types/PanoIndex.html +9 -6
- package/docs/types/PanoMeasurePluginEvent.html +9 -6
- package/docs/types/PanoMeasureReturnType.html +9 -6
- package/docs/types/PanoSpatialTagPluginId.html +9 -6
- package/docs/types/PanoTagPluginExportInterface.html +9 -6
- package/docs/types/PanoTagPluginParamsInterface.html +9 -6
- package/docs/types/PanoVideoPluginParameterType.html +9 -6
- package/docs/types/PanoVideoPluginReturnType.html +9 -6
- package/docs/types/PlaneTag.html +9 -6
- package/docs/types/PlaneTagElement.html +9 -6
- package/docs/types/Point2DElement.html +9 -6
- package/docs/types/Point2DTag.html +9 -6
- package/docs/types/Point3DElement.html +9 -6
- package/docs/types/Point3DTag.html +9 -6
- package/docs/types/PointTag.html +9 -6
- package/docs/types/PointTagElement.html +9 -6
- package/docs/types/Position.html +9 -6
- package/docs/types/RotateArgs.html +9 -6
- package/docs/types/RotateOpts.html +9 -6
- package/docs/types/RuleLabelsKey.html +9 -6
- package/docs/types/RuleLabelsValue.html +9 -6
- package/docs/types/StickType.html +9 -6
- package/docs/types/Tag.html +9 -6
- package/docs/types/Tag2D.html +9 -6
- package/docs/types/Tag3D.html +9 -6
- package/docs/types/TagContentType.html +9 -6
- package/docs/types/TagDimensionType.html +9 -6
- package/docs/types/TagElement.html +10 -7
- package/docs/types/TagEvents.html +9 -6
- package/docs/types/TagGLTFObject.html +9 -6
- package/docs/types/TagHooks.html +9 -6
- package/docs/types/TagIconSize.html +9 -6
- package/docs/types/TagId.html +9 -6
- package/docs/types/TagPointType.html +9 -6
- package/docs/types/TopviewFloorplanPluginParameterType.html +9 -6
- package/docs/types/TopviewFloorplanPluginReturnType.html +9 -6
- package/docs/types/WorkCode.html +9 -6
- package/docs/variables/FLOOR_TYPE_MAP.html +9 -6
- package/docs/variables/PLUGIN.html +9 -6
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +9 -6
- package/docs/variables/ROOM_TYPE_MAP.html +9 -6
- package/docs/variables/VERSION.html +9 -6
- package/docs/variables/itemLabelPluginServerParams.html +9 -6
- package/docs/variables/modelItemLabelPluginServerParams.html +9 -6
- package/docs/variables/modelRoomLabelPluginServerParams.html +9 -6
- package/libs/CSS3DRenderPlugin/CSS3DRender.js +2 -2
- package/libs/CSS3DRenderPlugin/Controller.js +2 -2
- package/libs/CSS3DRenderPlugin/index.js +2 -2
- package/libs/CSS3DRenderPlugin/utils/index.d.ts +0 -1
- package/libs/CSS3DRenderPlugin/utils/index.js +8 -10
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DObject.js +6 -6
- package/libs/ModelTVVideoPlugin/Plugin.js +1 -1
- package/libs/ModelTVVideoPlugin/index.js +1 -1
- package/libs/Object3DHelperPlugin/Controller.js +1 -1
- package/libs/Object3DHelperPlugin/index.js +1 -1
- package/libs/PanoCompassPlugin/Controller.js +1 -1
- package/libs/PanoCompassPlugin/index.js +1 -1
- package/libs/PanoSpatialTagPlugin/Plugin.js +1 -1
- package/libs/PanoSpatialTagPlugin/index.js +1 -1
- package/libs/PanoTagPlugin/Components/Common/MediaItem.js +1 -1
- package/libs/PanoTagPlugin/Components/Tag/MarketingTag.js +1 -1
- package/libs/PanoTagPlugin/Components/Tag/index.js +16 -16
- package/libs/PanoTagPlugin/Components/TagContainer.js +1 -1
- package/libs/PanoTagPlugin/Components/TagItem.js +20 -20
- package/{dist/PanoTagPlugin/controller/TagCacheController.d.ts → libs/PanoTagPlugin/controller/TagCache.d.ts} +7 -7
- package/libs/PanoTagPlugin/controller/{TagCacheController.js → TagCache.js} +11 -11
- package/libs/PanoTagPlugin/controller/TagComputer.d.ts +3 -36
- package/libs/PanoTagPlugin/controller/TagComputer.js +168 -289
- package/libs/PanoTagPlugin/controller/TagRender.d.ts +58 -0
- package/libs/PanoTagPlugin/controller/TagRender.js +314 -0
- package/libs/PanoTagPlugin/controller/TagUtil.d.ts +56 -0
- package/libs/PanoTagPlugin/controller/TagUtil.js +172 -0
- package/libs/PanoTagPlugin/controller/index.d.ts +16 -72
- package/libs/PanoTagPlugin/controller/index.js +170 -330
- package/libs/PanoTagPlugin/index.js +51 -46
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.d.ts +4 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.js +6 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.d.ts +93 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.js +5622 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-test3-realsee-cn-4zr0A5.js +1325 -0
- package/libs/PanoTagPlugin/mocks/v1/mock1.d.ts +173 -0
- package/libs/PanoTagPlugin/mocks/v1/mock1.js +121 -0
- package/libs/PanoTagPlugin/mocks/v1/mock2.d.ts +233 -0
- package/libs/PanoTagPlugin/mocks/v1/mock2.js +296 -0
- package/libs/PanoTagPlugin/mocks/v1/mock3.d.ts +22 -0
- package/libs/PanoTagPlugin/mocks/v1/mock3.js +32 -0
- package/libs/PanoTagPlugin/mocks/v1/mock4.d.ts +56 -0
- package/libs/PanoTagPlugin/mocks/v1/mock4.js +60 -0
- package/libs/PanoTagPlugin/mocks/v1/mock5.d.ts +13 -0
- package/libs/PanoTagPlugin/mocks/v1/mock5.js +17 -0
- package/libs/PanoTagPlugin/mocks/v1/mock6.d.ts +16 -0
- package/libs/PanoTagPlugin/mocks/v1/mock6.js +27 -0
- package/libs/PanoTagPlugin/mocks/v1/mock7.d.ts +22 -0
- package/libs/PanoTagPlugin/mocks/v1/mock7.js +228 -0
- package/libs/PanoTagPlugin/typings/controller.d.ts +15 -16
- package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -0
- package/libs/PanoTagPlugin/typings/tag/Utils.d.ts +16 -0
- package/libs/PanoTagPlugin/utils/addDebugPoints.js +1 -1
- package/libs/PanoTagPlugin/utils/device.d.ts +1 -0
- package/libs/PanoTagPlugin/utils/device.js +4 -0
- package/libs/PanoTagPlugin/utils/index.js +32 -33
- package/libs/PanoTagPlugin/utils/model/imageModel.d.ts +8 -0
- package/libs/PanoTagPlugin/utils/model/imageModel.js +31 -0
- package/libs/PanoTagPlugin/utils/planeNormal.js +1 -1
- package/libs/PanoTagPlugin/utils/tag/tagCheck.d.ts +7 -7
- package/libs/PanoTagPlugin/utils/tagPosition.js +1 -1
- package/libs/PanoVideoPlugin/Controller.js +1 -1
- package/libs/PanoVideoPlugin/VideoMeshController.js +1 -1
- package/libs/PanoVideoPlugin/index.js +1 -1
- package/libs/base/BasePlugin.js +1 -1
- package/libs/index.js +123 -119
- package/libs/shared-utils/three/loadTexture.js +19 -19
- package/package.json +1 -1
- /package/dist/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.d.ts +0 -0
- /package/libs/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.d.ts +0 -0
- /package/libs/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.js +0 -0
|
@@ -1,411 +1,290 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
for (var e in
|
|
7
|
-
|
|
8
|
-
if (
|
|
9
|
-
for (var e of
|
|
10
|
-
|
|
11
|
-
return
|
|
12
|
-
},
|
|
13
|
-
var
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import { anyPositionToVector3 as A } from "../../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
19
|
-
import { planeNormal as E } from "../utils/planeNormal.js";
|
|
20
|
-
import { getTagPosition as D, tagPosition as M } from "../utils/tagPosition.js";
|
|
21
|
-
import { checkRange as y } from "../utils/checkRange.js";
|
|
22
|
-
import { TagCacheController as S } from "./TagCacheController.js";
|
|
1
|
+
var B = Object.defineProperty, U = Object.defineProperties;
|
|
2
|
+
var V = Object.getOwnPropertyDescriptors;
|
|
3
|
+
var x = Object.getOwnPropertySymbols;
|
|
4
|
+
var M = Object.prototype.hasOwnProperty, D = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var y = (d, f, e) => f in d ? B(d, f, { enumerable: !0, configurable: !0, writable: !0, value: e }) : d[f] = e, I = (d, f) => {
|
|
6
|
+
for (var e in f || (f = {}))
|
|
7
|
+
M.call(f, e) && y(d, e, f[e]);
|
|
8
|
+
if (x)
|
|
9
|
+
for (var e of x(f))
|
|
10
|
+
D.call(f, e) && y(d, e, f[e]);
|
|
11
|
+
return d;
|
|
12
|
+
}, P = (d, f) => U(d, V(f));
|
|
13
|
+
var T = (d, f, e) => (y(d, typeof f != "symbol" ? f + "" : f, e), e);
|
|
14
|
+
import * as R from "three";
|
|
15
|
+
import { isMediaModelTag as h, is3DTag as j } from "../utils/tag/tagCheck.js";
|
|
16
|
+
import { tagPosition as C, getTagPosition as k } from "../utils/tagPosition.js";
|
|
17
|
+
import { checkRange as g } from "../utils/checkRange.js";
|
|
23
18
|
import "hammerjs";
|
|
24
19
|
import "@realsee/five";
|
|
25
20
|
import "@tweenjs/tween.js";
|
|
26
21
|
import "../../CSS3DRenderPlugin/CSS3DRender.js";
|
|
27
22
|
import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
28
|
-
import { notNil as
|
|
23
|
+
import { notNil as S } from "../../shared-utils/isNil.js";
|
|
29
24
|
import "../../shared-utils/animationFrame/BetterTween.js";
|
|
30
|
-
import "
|
|
31
|
-
import "../../
|
|
32
|
-
import "../../shared-utils/
|
|
25
|
+
import { TagUtil as $ } from "./TagUtil.js";
|
|
26
|
+
import "../../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
27
|
+
import "../../shared-utils/three/centerPoint.js";
|
|
33
28
|
import "../../CSS3DRenderPlugin/utils/three/CSS3DRenderer.js";
|
|
34
29
|
import "three/examples/jsm/renderers/CSS3DRenderer";
|
|
35
30
|
import "../../CSS3DRenderPlugin/utils/getAllCSS3DObject.js";
|
|
36
31
|
import "../../CSS3DRenderPlugin/utils/createResizeObserver.js";
|
|
37
32
|
import "../../CSS3DRenderPlugin/utils/even.js";
|
|
33
|
+
import "../../shared-utils/Subscribe.js";
|
|
38
34
|
import "../../CSS3DRenderPlugin/utils/three/CSS3DObject.js";
|
|
39
35
|
import "../../CSS3DRenderPlugin/utils/three/OpacityMesh.js";
|
|
40
36
|
import "../../CSS3DRenderPlugin/utils/three/CSS3DScene.js";
|
|
41
37
|
import "../../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
|
|
42
38
|
import "../../shared-utils/animationFrame/index.js";
|
|
43
|
-
|
|
39
|
+
import "object-assign-deep";
|
|
40
|
+
import "../tag.config.js";
|
|
41
|
+
import "../utils/planeNormal.js";
|
|
42
|
+
import "./TagCache.js";
|
|
43
|
+
import "../../base/BasePlugin.js";
|
|
44
|
+
import "../../vendor/svelte/store/index.js";
|
|
45
|
+
import "../../vendor/svelte/internal/index.js";
|
|
46
|
+
import "../utils/device.js";
|
|
47
|
+
class be extends $ {
|
|
44
48
|
constructor(e) {
|
|
45
49
|
super(e);
|
|
46
|
-
|
|
47
|
-
m(this, "config", R);
|
|
48
|
-
m(this, "raycaster", new k.Raycaster());
|
|
49
|
-
}
|
|
50
|
-
get isPanorama() {
|
|
51
|
-
return this.five.currentMode === "Panorama";
|
|
50
|
+
T(this, "raycaster", new R.Raycaster());
|
|
52
51
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
return t;
|
|
60
|
-
}
|
|
61
|
-
changeContentTypeConfig(e, t, i = !0) {
|
|
62
|
-
this.config.contentTypeConfig || (this.config.contentTypeConfig = {}), i ? this.config.contentTypeConfig[e] = x({}, this.config.contentTypeConfig[e], t) : this.config.contentTypeConfig[e] = t, this.clearCache();
|
|
63
|
-
}
|
|
64
|
-
getVisibleByPanoIndex(e, t) {
|
|
65
|
-
var n;
|
|
66
|
-
const i = this.getCache({ panoIndex: t, id: e.id }), o = (n = this.five.panoIndex) != null ? n : t;
|
|
67
|
-
if (b(e))
|
|
52
|
+
getVisibleByPanoIndex(e, i) {
|
|
53
|
+
var t;
|
|
54
|
+
const n = this.getCache({ panoIndex: i, id: e.id }), s = (t = this.five.panoIndex) != null ? t : i;
|
|
55
|
+
if (h(e))
|
|
68
56
|
return !0;
|
|
69
|
-
if (
|
|
70
|
-
return
|
|
57
|
+
if (n.visible !== void 0)
|
|
58
|
+
return n.visible;
|
|
71
59
|
{
|
|
72
|
-
const
|
|
73
|
-
var
|
|
74
|
-
const
|
|
75
|
-
if (typeof
|
|
76
|
-
return { value:
|
|
77
|
-
if (
|
|
60
|
+
const l = (() => {
|
|
61
|
+
var v, p, a;
|
|
62
|
+
const o = (v = this.getTagConfig(e).visibleConfig) != null ? v : {}, u = this.getDistance(e);
|
|
63
|
+
if (typeof o == "function")
|
|
64
|
+
return { value: o(this.five, { tag: e, distance: u }), reason: "config function result" };
|
|
65
|
+
if (o.keep === "hidden")
|
|
78
66
|
return { value: !1, reason: "config.keep is hidden" };
|
|
79
|
-
if (
|
|
67
|
+
if (o.keep === "visible")
|
|
80
68
|
return { value: !0, reason: "config.keep is visible" };
|
|
81
|
-
if (
|
|
82
|
-
if (Array.isArray(
|
|
69
|
+
if (o.visiblePanoIndex !== void 0 && o.visiblePanoIndex !== "all" && s !== void 0) {
|
|
70
|
+
if (Array.isArray(o.visiblePanoIndex) && !o.visiblePanoIndex.includes(s))
|
|
83
71
|
return {
|
|
84
72
|
value: !1,
|
|
85
|
-
reason: `current panoIndex is not included in visiblePano. currentPanoIndex: ${
|
|
73
|
+
reason: `current panoIndex is not included in visiblePano. currentPanoIndex: ${s}, visiblePanoIndex: ${o.visiblePanoIndex}`
|
|
86
74
|
};
|
|
87
|
-
if (
|
|
75
|
+
if (o.visiblePanoIndex === "current" && s !== ((p = e.fiveState) == null ? void 0 : p.panoIndex))
|
|
88
76
|
return {
|
|
89
77
|
value: !1,
|
|
90
|
-
reason: `current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${
|
|
78
|
+
reason: `current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${s}, tag.panoIndex: ${(a = e.fiveState) == null ? void 0 : a.panoIndex}`
|
|
91
79
|
};
|
|
92
80
|
}
|
|
93
|
-
if (
|
|
81
|
+
if (o.visibleDistance !== void 0 && o.visibleDistance !== "unLimited" && g(u, o.visibleDistance) === !1)
|
|
94
82
|
return {
|
|
95
83
|
value: !1,
|
|
96
|
-
reason: `distance is not in visibleDistance. distance: ${
|
|
84
|
+
reason: `distance is not in visibleDistance. distance: ${u}, visibleDistance: ${o.visibleDistance}`
|
|
97
85
|
};
|
|
98
|
-
if (
|
|
99
|
-
if (
|
|
86
|
+
if (o.intersectRaycaster !== !1 && (typeof o.intersectRaycaster != "object" || o.intersectRaycaster.enabled !== !1)) {
|
|
87
|
+
if (s === void 0)
|
|
100
88
|
return {
|
|
101
89
|
value: !1,
|
|
102
|
-
reason: `intersectRaycaster check failed: fivePanoIndex is ${
|
|
90
|
+
reason: `intersectRaycaster check failed: fivePanoIndex is ${s}`
|
|
103
91
|
};
|
|
104
|
-
const r = this.getRaycasterFromPanoIndex(e,
|
|
105
|
-
if (
|
|
106
|
-
return
|
|
92
|
+
const r = this.getRaycasterFromPanoIndex(e, s), c = this.getTagEnableByIntersect(e, r);
|
|
93
|
+
if (c.value === !1)
|
|
94
|
+
return c;
|
|
107
95
|
}
|
|
108
|
-
if (
|
|
96
|
+
if (o.angleRange && j(e)) {
|
|
109
97
|
const r = this.getAngle(e);
|
|
110
|
-
if (
|
|
111
|
-
return { value: !1, reason: `angle is not in angleRange. angle: ${r}, angleRange: ${
|
|
98
|
+
if (g(r, o.angleRange) === !1)
|
|
99
|
+
return { value: !1, reason: `angle is not in angleRange. angle: ${r}, angleRange: ${o.angleRange}` };
|
|
112
100
|
}
|
|
113
101
|
return {
|
|
114
102
|
value: !0,
|
|
115
103
|
reason: "all check passed"
|
|
116
104
|
};
|
|
117
105
|
})();
|
|
118
|
-
return
|
|
106
|
+
return n.visible = l.value, n.__debug_visible_reason__ = l, n.visible;
|
|
119
107
|
}
|
|
120
108
|
}
|
|
121
|
-
getVisibleByFiveMode(e,
|
|
122
|
-
var
|
|
123
|
-
const
|
|
124
|
-
if (typeof
|
|
125
|
-
return
|
|
126
|
-
const
|
|
127
|
-
return
|
|
109
|
+
getVisibleByFiveMode(e, i) {
|
|
110
|
+
var t;
|
|
111
|
+
const n = (t = this.getTagConfig(e).visibleConfig) != null ? t : {};
|
|
112
|
+
if (typeof n == "function")
|
|
113
|
+
return i === "Panorama";
|
|
114
|
+
const s = n == null ? void 0 : n.visibleFiveMode;
|
|
115
|
+
return s ? s.includes(i) : i === "Panorama";
|
|
128
116
|
}
|
|
129
117
|
getVisibleByFloorIndex(e) {
|
|
130
|
-
var
|
|
131
|
-
const
|
|
132
|
-
if (!
|
|
118
|
+
var l;
|
|
119
|
+
const i = e.fiveState;
|
|
120
|
+
if (!i)
|
|
133
121
|
return !0;
|
|
134
|
-
const
|
|
135
|
-
return
|
|
122
|
+
const n = i.panoIndex, s = (l = this.five.work.observers[n]) == null ? void 0 : l.floorIndex, t = this.five.model.shownFloor;
|
|
123
|
+
return t === null || t === s;
|
|
136
124
|
}
|
|
137
125
|
getVisible(e) {
|
|
138
|
-
const
|
|
139
|
-
return
|
|
126
|
+
const i = this.five.getCurrentState(), n = this.getVisibleByFiveMode(e, i.mode), s = h(e) ? this.getVisibleByFloorIndex(e) : !0, t = i.mode === "Panorama" ? this.getVisibleByPanoIndex(e, i.panoIndex) : !0;
|
|
127
|
+
return n && t && s;
|
|
140
128
|
}
|
|
141
129
|
getModelMedialVisibleByPanoIndex(e) {
|
|
142
|
-
const
|
|
143
|
-
if (
|
|
144
|
-
return
|
|
145
|
-
const
|
|
146
|
-
return
|
|
130
|
+
const i = this.five.getCurrentState().panoIndex, n = this.getCache({ panoIndex: i, id: e.id });
|
|
131
|
+
if (n.modelMedialVisible !== void 0)
|
|
132
|
+
return n.modelMedialVisible;
|
|
133
|
+
const s = this.getRaycasterFromPanoIndex(e, i), t = this.getTagEnableByIntersect(e, s);
|
|
134
|
+
return n.modelMedialVisible = t.value, n.__debug_visible_reason__ = t, t.value !== !1;
|
|
147
135
|
}
|
|
148
|
-
getUnfoldedByPanoIndex(e,
|
|
136
|
+
getUnfoldedByPanoIndex(e, i) {
|
|
149
137
|
if (!this.getVisibleByPanoIndex(e))
|
|
150
138
|
return;
|
|
151
|
-
const
|
|
152
|
-
if (
|
|
153
|
-
return
|
|
139
|
+
const s = this.getCache({ panoIndex: i, id: e.id });
|
|
140
|
+
if (s.unfolded !== void 0)
|
|
141
|
+
return s.unfolded;
|
|
154
142
|
{
|
|
155
|
-
const
|
|
156
|
-
if (!
|
|
143
|
+
const t = this.getTagConfig(e).unfoldedConfig;
|
|
144
|
+
if (!t)
|
|
157
145
|
return;
|
|
158
|
-
const
|
|
159
|
-
const
|
|
160
|
-
if (typeof
|
|
161
|
-
return
|
|
162
|
-
if (
|
|
146
|
+
const l = (() => {
|
|
147
|
+
const u = this.getDistance(e);
|
|
148
|
+
if (typeof t == "function")
|
|
149
|
+
return t(this.five, { tag: e, distance: u });
|
|
150
|
+
if (t.keep === "folded")
|
|
163
151
|
return !1;
|
|
164
|
-
if (
|
|
152
|
+
if (t.keep === "unfolded")
|
|
165
153
|
return !0;
|
|
166
|
-
if (
|
|
154
|
+
if (t.unfoldDistance && g(u, t.unfoldDistance) === !1)
|
|
167
155
|
return !1;
|
|
168
156
|
})();
|
|
169
|
-
|
|
170
|
-
const
|
|
171
|
-
return
|
|
157
|
+
s.unfolded = l;
|
|
158
|
+
const o = this.getUnfoldedByCamera(e);
|
|
159
|
+
return o !== void 0 ? o : s.unfolded;
|
|
172
160
|
}
|
|
173
161
|
}
|
|
174
162
|
getUnfoldedByCamera(e) {
|
|
175
163
|
return this.getVisibleByPanoIndex(e) ? (() => {
|
|
176
|
-
var
|
|
177
|
-
const
|
|
178
|
-
if (!!
|
|
179
|
-
if (typeof
|
|
180
|
-
return
|
|
181
|
-
if (
|
|
164
|
+
var l;
|
|
165
|
+
const s = this.getDistance(e), t = this.getTagConfig(e).unfoldedConfig;
|
|
166
|
+
if (!!t) {
|
|
167
|
+
if (typeof t == "function")
|
|
168
|
+
return t(this.five, { tag: e, distance: s });
|
|
169
|
+
if (t.keep === "folded")
|
|
182
170
|
return !1;
|
|
183
|
-
if (
|
|
171
|
+
if (t.keep === "unfolded")
|
|
184
172
|
return !0;
|
|
185
|
-
if (
|
|
173
|
+
if (t.autoUnfold === void 0 || t.autoUnfold === !1 || t.autoUnfold.enable === !1 || !t.autoUnfold.strategy)
|
|
186
174
|
return;
|
|
187
|
-
if (
|
|
188
|
-
const
|
|
189
|
-
if (
|
|
175
|
+
if (t.autoUnfold.strategy === "ScreenPostion") {
|
|
176
|
+
const o = this.getTagProject(e);
|
|
177
|
+
if (o && g(o.x, t.autoUnfold.autoUnfoldProjectX) === !1)
|
|
190
178
|
return !1;
|
|
191
179
|
}
|
|
192
|
-
if (
|
|
193
|
-
const
|
|
180
|
+
if (t.autoUnfold.strategy === "MinimumDistance") {
|
|
181
|
+
const v = this.filterPointTag.filter((a) => this.getVisibleByPanoIndex(a)).filter((a) => {
|
|
194
182
|
const r = this.getTagProject(a);
|
|
195
183
|
if (!r)
|
|
196
184
|
return !1;
|
|
197
|
-
const { x:
|
|
198
|
-
return !(Math.abs(
|
|
185
|
+
const { x: c, y: b, z: m } = r;
|
|
186
|
+
return !(Math.abs(m) > 1 || Math.abs(c) > 1 || Math.abs(b) > 1);
|
|
199
187
|
}).map((a) => ({ tag: a, id: a.id, tagConfig: this.getTagConfig(a).unfoldedConfig })).filter(({ tag: a, tagConfig: r }) => {
|
|
200
|
-
var
|
|
201
|
-
return !(typeof r != "object" || r.keep || r.autoUnfold === !1 || ((
|
|
202
|
-
}).map((a) => I(
|
|
203
|
-
var
|
|
204
|
-
return !(a === void 0 || typeof r != "object" || r.autoUnfold === !1 || ((
|
|
188
|
+
var c, b;
|
|
189
|
+
return !(typeof r != "object" || r.keep || r.autoUnfold === !1 || ((c = r.autoUnfold) == null ? void 0 : c.enable) === !1 || ((b = r.autoUnfold) == null ? void 0 : b.strategy) !== "MinimumDistance");
|
|
190
|
+
}).map((a) => P(I({}, a), { distance: this.getDistance(a.tag) })).filter(({ distance: a, tagConfig: r }) => {
|
|
191
|
+
var c, b;
|
|
192
|
+
return !(a === void 0 || typeof r != "object" || r.autoUnfold === !1 || ((c = r.autoUnfold) == null ? void 0 : c.enable) === !1 || ((b = r.autoUnfold) == null ? void 0 : b.strategy) !== "MinimumDistance" || r.autoUnfold.distance && g(a, r.autoUnfold.distance) === !1);
|
|
205
193
|
}).sort((a, r) => a.distance - r.distance).findIndex((a) => a.id === e.id);
|
|
206
|
-
if (
|
|
194
|
+
if (v === -1 || v <= ((l = t.autoUnfold.maxNumber) != null ? l : 1) - 1 === !1)
|
|
207
195
|
return !1;
|
|
208
196
|
}
|
|
209
197
|
return !0;
|
|
210
198
|
}
|
|
211
199
|
})() : void 0;
|
|
212
200
|
}
|
|
213
|
-
getDistance(e, t) {
|
|
214
|
-
var n, f, s;
|
|
215
|
-
const i = (n = this.five.panoIndex) != null ? n : t;
|
|
216
|
-
if (i === void 0)
|
|
217
|
-
throw new Error(`getDistance(): fivePanoIndex is ${i}`);
|
|
218
|
-
const o = this.getCache({ panoIndex: t, id: e.id });
|
|
219
|
-
if (o.distance !== void 0)
|
|
220
|
-
return o.distance;
|
|
221
|
-
{
|
|
222
|
-
const l = (s = (f = this.five.work) == null ? void 0 : f.observers[i]) == null ? void 0 : s.position;
|
|
223
|
-
if (l === void 0)
|
|
224
|
-
throw new Error(`getDistance(): observerPosition is ${l}`);
|
|
225
|
-
const c = D(e);
|
|
226
|
-
if (!c)
|
|
227
|
-
return -1;
|
|
228
|
-
const u = l.distanceTo(c);
|
|
229
|
-
return o.distance = u, u;
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
getAngle(e, t) {
|
|
233
|
-
var n, f, s;
|
|
234
|
-
const i = (n = this.five.panoIndex) != null ? n : t;
|
|
235
|
-
if (i === void 0)
|
|
236
|
-
throw new Error(`getDistance(): fivePanoIndex is ${i}`);
|
|
237
|
-
const o = this.getCache({ panoIndex: t, id: e.id });
|
|
238
|
-
if (o.angle !== void 0)
|
|
239
|
-
return o.angle;
|
|
240
|
-
{
|
|
241
|
-
const l = (s = (f = this.five.work) == null ? void 0 : f.observers[i]) == null ? void 0 : s.position;
|
|
242
|
-
if (l === void 0)
|
|
243
|
-
throw new Error(`getAngleRange(): observerPosition is ${l}`);
|
|
244
|
-
const c = (() => e.stickType === "3DPoint" ? A(e.normal) : E(e.position))();
|
|
245
|
-
if (!c)
|
|
246
|
-
return;
|
|
247
|
-
const u = new k.Vector3().copy(l).sub(M(e.position)), a = c.angleTo(u) * 180 / Math.PI;
|
|
248
|
-
return o.angle = a, o.angle;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
getTagConfig(e) {
|
|
252
|
-
var o, n;
|
|
253
|
-
if (!e)
|
|
254
|
-
return (o = this.config.globalConfig) != null ? o : {};
|
|
255
|
-
const t = {};
|
|
256
|
-
this.config.contentTypeConfig && Object.keys(this.config.contentTypeConfig).forEach((f) => {
|
|
257
|
-
const s = f;
|
|
258
|
-
if (t[s])
|
|
259
|
-
return;
|
|
260
|
-
const l = s.split("-");
|
|
261
|
-
if (l.length === 1) {
|
|
262
|
-
const [c] = l;
|
|
263
|
-
e.contentType === c && (t[s] = this.config.contentTypeConfig[s]);
|
|
264
|
-
}
|
|
265
|
-
if (l.length === 2) {
|
|
266
|
-
const [c = "Any", u = "Any"] = l;
|
|
267
|
-
(e.stickType === c || c === "Any") && (e.contentType === u || u === "Any") && (t[s] = this.config.contentTypeConfig[s]);
|
|
268
|
-
}
|
|
269
|
-
if (l.length === 3) {
|
|
270
|
-
const [c = "Any", u, a] = l;
|
|
271
|
-
if (u === "Audio" && e.contentType === "Audio") {
|
|
272
|
-
const r = e;
|
|
273
|
-
(r.stickType === c || c === "Any") && r.data.appearance === a && (t[s] = this.config.contentTypeConfig[s]);
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
});
|
|
277
|
-
const i = x({}, this.config.globalConfig, ...Object.values(t), e.config);
|
|
278
|
-
return typeof i.unfoldedConfig == "object" && (i.unfoldedConfig.disableFold && (i.unfoldedConfig = { keep: "unfolded" }), i.unfoldedConfig.disableUnfold && (i.unfoldedConfig = { keep: "folded" }), i.unfoldedConfig.keep && (i.unfoldedConfig = { keep: i.unfoldedConfig.keep })), typeof i.visibleConfig == "object" && i.visibleConfig.keep && (i.visibleConfig = { keep: i.visibleConfig.keep, visibleFiveMode: (n = i.visibleConfig) == null ? void 0 : n.visibleFiveMode }), i;
|
|
279
|
-
}
|
|
280
|
-
can(e, t) {
|
|
281
|
-
const i = this.getTagConfig(t);
|
|
282
|
-
if (!i || typeof i != "object")
|
|
283
|
-
return !0;
|
|
284
|
-
if (e === "show" || e === "hide") {
|
|
285
|
-
if (!i.visibleConfig || typeof i.visibleConfig != "object")
|
|
286
|
-
return !0;
|
|
287
|
-
if (e === "show" && i.visibleConfig.keep === "hidden" || e === "hide" && (i.visibleConfig.keep === "visible" || i.visibleConfig.alwaysShowWhenMovePano))
|
|
288
|
-
return !1;
|
|
289
|
-
}
|
|
290
|
-
if (e === "fold" || e === "unfold") {
|
|
291
|
-
if (!i.unfoldedConfig || typeof i.unfoldedConfig != "object")
|
|
292
|
-
return !0;
|
|
293
|
-
if (e === "fold" && i.unfoldedConfig.keep === "unfolded" || e === "unfold" && i.unfoldedConfig.keep === "folded")
|
|
294
|
-
return !1;
|
|
295
|
-
}
|
|
296
|
-
return !0;
|
|
297
|
-
}
|
|
298
201
|
sort(e) {
|
|
299
|
-
return e.sort((
|
|
300
|
-
const
|
|
301
|
-
return
|
|
202
|
+
return e.sort((i, n) => {
|
|
203
|
+
const s = this.getDistance(i), t = this.getDistance(n);
|
|
204
|
+
return s === void 0 || t === void 0 ? 0 : t - s;
|
|
302
205
|
});
|
|
303
206
|
}
|
|
304
207
|
setPointTagPosition() {
|
|
305
|
-
const e = this.filterPointTag
|
|
306
|
-
e.length !== 0 && e.forEach((
|
|
307
|
-
var
|
|
308
|
-
if (!((
|
|
309
|
-
|
|
208
|
+
const e = this.filterPointTag;
|
|
209
|
+
e.length !== 0 && e.forEach((i) => {
|
|
210
|
+
var s;
|
|
211
|
+
if (!((s = i.state) != null && s.visible)) {
|
|
212
|
+
i.pointTagStyle = null;
|
|
310
213
|
return;
|
|
311
214
|
}
|
|
312
|
-
const
|
|
313
|
-
if (!
|
|
314
|
-
|
|
215
|
+
const n = this.getTagProject(i);
|
|
216
|
+
if (!n) {
|
|
217
|
+
i.pointTagStyle = null;
|
|
315
218
|
return;
|
|
316
219
|
}
|
|
317
|
-
|
|
220
|
+
i.pointTagStyle = { leftPercent: (n.x + 1) / 2 * 100, topPercent: (-n.y + 1) / 2 * 100 };
|
|
318
221
|
});
|
|
319
222
|
}
|
|
320
223
|
setVisibleByPanoIndex() {
|
|
321
224
|
this.tags.forEach((e) => {
|
|
322
|
-
const
|
|
323
|
-
e.state && (e.state.visible =
|
|
225
|
+
const i = this.getVisibleByPanoIndex(e);
|
|
226
|
+
e.state && (e.state.visible = i);
|
|
324
227
|
});
|
|
325
228
|
}
|
|
326
229
|
setModelMedialVisible() {
|
|
327
230
|
const e = this.five.getCurrentState().mode;
|
|
328
|
-
this.tags.forEach((
|
|
329
|
-
var
|
|
330
|
-
if (!
|
|
231
|
+
this.tags.forEach((i) => {
|
|
232
|
+
var s;
|
|
233
|
+
if (!h(i))
|
|
331
234
|
return;
|
|
332
|
-
if (!((
|
|
333
|
-
|
|
235
|
+
if (!((s = i.model) != null && s.object)) {
|
|
236
|
+
i.mediaVisible = !1;
|
|
334
237
|
return;
|
|
335
238
|
}
|
|
336
|
-
const
|
|
337
|
-
|
|
239
|
+
const n = e === "Panorama" ? this.getModelMedialVisibleByPanoIndex(i) : !0;
|
|
240
|
+
i.mediaVisible = n;
|
|
338
241
|
});
|
|
339
242
|
}
|
|
340
243
|
setUnfoldedByPanoIndex() {
|
|
341
244
|
this.tags.forEach((e) => {
|
|
342
|
-
const
|
|
343
|
-
if (!!e.state && (
|
|
344
|
-
const
|
|
345
|
-
typeof
|
|
245
|
+
const i = this.getUnfoldedByPanoIndex(e);
|
|
246
|
+
if (!!e.state && (i !== void 0 && (e.state.unfolded = i), i && !e.state.visible)) {
|
|
247
|
+
const n = this.getTagConfig(e);
|
|
248
|
+
typeof n.unfoldedConfig == "object" && n.unfoldedConfig.autoUnfoldWhenHide !== !1 && (e.state.unfolded = !1);
|
|
346
249
|
}
|
|
347
250
|
});
|
|
348
251
|
}
|
|
349
252
|
getTagProject(e) {
|
|
350
253
|
if (!this.getVisibleByPanoIndex(e) || !e.position)
|
|
351
254
|
return;
|
|
352
|
-
const
|
|
353
|
-
if (!(
|
|
354
|
-
return { x:
|
|
355
|
-
}
|
|
356
|
-
filterPointTag() {
|
|
357
|
-
return this.tags.filter((e) => e.stickType === "2DPoint" || e.stickType === "3DPoint").filter((e) => e.position);
|
|
358
|
-
}
|
|
359
|
-
filter2DPointTag() {
|
|
360
|
-
return this.tags.filter((e) => e.stickType === "2DPoint").filter((e) => e.position);
|
|
361
|
-
}
|
|
362
|
-
filter3DPointTag() {
|
|
363
|
-
return this.tags.filter((e) => e.stickType === "3DPoint").filter((e) => e.position);
|
|
364
|
-
}
|
|
365
|
-
filterModelTag() {
|
|
366
|
-
return this.tags.filter((e) => e.stickType === "Model");
|
|
367
|
-
}
|
|
368
|
-
filter3DTag() {
|
|
369
|
-
return this.tags.filter((e) => e.stickType === "3DPoint" || e.stickType === "Plane" || e.stickType === "Model");
|
|
370
|
-
}
|
|
371
|
-
filterPlaneTag() {
|
|
372
|
-
return this.tags.filter((e) => e.stickType === "Plane");
|
|
373
|
-
}
|
|
374
|
-
updateTagConfig(e) {
|
|
375
|
-
e != null && e.force && this.clearCache(), this.tags.forEach((t) => {
|
|
376
|
-
const i = this.getTagConfig(t);
|
|
377
|
-
t.mergedConfig = i;
|
|
378
|
-
});
|
|
255
|
+
const n = C(e.position), { x: s, y: t, z: l } = n.project(this.five.camera);
|
|
256
|
+
if (!(l > 1))
|
|
257
|
+
return { x: s, y: t, z: l };
|
|
379
258
|
}
|
|
380
|
-
getTagEnableByIntersect(e,
|
|
381
|
-
var
|
|
382
|
-
const
|
|
383
|
-
if (!
|
|
259
|
+
getTagEnableByIntersect(e, i) {
|
|
260
|
+
var v, p, a;
|
|
261
|
+
const n = (v = this.getTagConfig(e).visibleConfig) != null ? v : {}, s = this.getDistance(e), [t] = this.five.model.intersectRaycaster(i), l = (() => {
|
|
262
|
+
if (!h(e))
|
|
384
263
|
return;
|
|
385
|
-
const r = this.tags.filter(
|
|
386
|
-
var
|
|
387
|
-
return (
|
|
388
|
-
}).filter(
|
|
389
|
-
return
|
|
390
|
-
})(),
|
|
264
|
+
const r = this.tags.filter(h).map((b) => {
|
|
265
|
+
var m;
|
|
266
|
+
return (m = b.model) == null ? void 0 : m.object;
|
|
267
|
+
}).filter(S);
|
|
268
|
+
return i.intersectObjects(r, !0)[0];
|
|
269
|
+
})(), o = (() => {
|
|
391
270
|
var r;
|
|
392
|
-
return typeof
|
|
271
|
+
return typeof n == "object" && typeof n.intersectRaycaster == "object" && (r = n.intersectRaycaster.distanceAccuracy) != null ? r : 0.01;
|
|
393
272
|
})();
|
|
394
|
-
return Math.min((
|
|
273
|
+
return Math.min((p = t == null ? void 0 : t.distance) != null ? p : 1 / 0, (a = l == null ? void 0 : l.distance) != null ? a : 1 / 0) + o < s ? {
|
|
395
274
|
value: !1,
|
|
396
|
-
reason: `intersectRaycaster check failed: distance is ${
|
|
397
|
-
customModelIntersection.point is ${
|
|
275
|
+
reason: `intersectRaycaster check failed: distance is ${s}, intersection.point is ${t == null ? void 0 : t.point.toArray()},
|
|
276
|
+
customModelIntersection.point is ${l == null ? void 0 : l.point.toArray()} distanceError is ${o}`
|
|
398
277
|
} : { value: !0, reason: "" };
|
|
399
278
|
}
|
|
400
|
-
getRaycasterFromPanoIndex(e,
|
|
401
|
-
var
|
|
402
|
-
const
|
|
403
|
-
if (
|
|
404
|
-
throw new Error(`getVisible(): observerPosition is ${
|
|
405
|
-
const
|
|
406
|
-
return this.raycaster.set(
|
|
279
|
+
getRaycasterFromPanoIndex(e, i) {
|
|
280
|
+
var t;
|
|
281
|
+
const n = (t = this.five.work.observers[i]) == null ? void 0 : t.position;
|
|
282
|
+
if (n === void 0)
|
|
283
|
+
throw new Error(`getVisible(): observerPosition is ${n}`);
|
|
284
|
+
const s = k(e).sub(n).normalize();
|
|
285
|
+
return this.raycaster.set(n, s), this.raycaster;
|
|
407
286
|
}
|
|
408
287
|
}
|
|
409
288
|
export {
|
|
410
|
-
|
|
289
|
+
be as TagComputer
|
|
411
290
|
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { TagComputer } from './TagComputer';
|
|
2
|
+
import type { Tag, TagElement, TagGLTFObject, TagObjectGroup, TagGLTFObjectGroup, ImagePlaneGroup } from '../typings';
|
|
3
|
+
import type { TemporaryState } from '../typings';
|
|
4
|
+
import { Object3D } from 'three';
|
|
5
|
+
import TagContainerSvelte from '../Components/TagContainer.svelte';
|
|
6
|
+
import { Five } from '@realsee/five';
|
|
7
|
+
export declare abstract class TagRender extends TagComputer {
|
|
8
|
+
protected group: TagObjectGroup;
|
|
9
|
+
protected imagePlaneGroup: ImagePlaneGroup;
|
|
10
|
+
protected gltfObjectGroup: TagGLTFObjectGroup;
|
|
11
|
+
/** 维护一个可用模型表,用于快速删除不应该在场景中的模型 */
|
|
12
|
+
protected enabledModelTagSet: Set<string | number>;
|
|
13
|
+
/** 临时状态 */
|
|
14
|
+
protected temporaryState: TemporaryState;
|
|
15
|
+
/** 点标签 */
|
|
16
|
+
protected TagContainerSvelte?: TagContainerSvelte;
|
|
17
|
+
constructor(five: Five);
|
|
18
|
+
clearTags(): void;
|
|
19
|
+
/**
|
|
20
|
+
* @description: 更新所有标签
|
|
21
|
+
*/
|
|
22
|
+
protected updateRenderAllTags(): void;
|
|
23
|
+
protected updateRenderImageModel(): void;
|
|
24
|
+
/**
|
|
25
|
+
* @description: 渲染3D贴片
|
|
26
|
+
*/
|
|
27
|
+
protected updateRenderPlaneTag(): void;
|
|
28
|
+
/** 更新所有模型标签
|
|
29
|
+
*
|
|
30
|
+
* 1. 移除不应该在场景中的模型
|
|
31
|
+
* 2. 更新模型的可见性
|
|
32
|
+
*
|
|
33
|
+
* FIXME: 有性能问题,但是之前的逻辑都是这么写,暂时先这样吧
|
|
34
|
+
*/
|
|
35
|
+
protected updateRenderModelTag(): void;
|
|
36
|
+
protected updateTagModelVisible(): void;
|
|
37
|
+
/** 更新标签中多媒体面片的位置
|
|
38
|
+
* @param tag 标签
|
|
39
|
+
* @param model 模型
|
|
40
|
+
* @param scale css3DObject 原始缩放比例
|
|
41
|
+
*/
|
|
42
|
+
protected updateTagCss3DObjectMatrix<S extends 'Model' | 'Plane' = 'Model'>(tag: TagElement<any, S>, model: Object3D): void;
|
|
43
|
+
/** 添加模型标签 */
|
|
44
|
+
protected addMediaModelTag(tags: Tag[]): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* @description: 渲染单个点的标签
|
|
47
|
+
*/
|
|
48
|
+
protected updateRenderPointTag(): void;
|
|
49
|
+
protected updateTagContainerVisible(): void;
|
|
50
|
+
protected disposeAllCSS3DContainer(): void;
|
|
51
|
+
/**
|
|
52
|
+
* @description: 检查并销毁不用的3D贴片
|
|
53
|
+
*/
|
|
54
|
+
protected clearUnusedPanelTag(): void;
|
|
55
|
+
/** 加载外部模型 */
|
|
56
|
+
protected loadModel: (tag: TagElement<'MediaModel', 'Model'>) => Promise<TagGLTFObject>;
|
|
57
|
+
private updateTagCss3DObjectVisible;
|
|
58
|
+
}
|