@realsee/dnalogel 2.8.8-alpha.0 → 2.9.0-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/PanoVideoPlugin/Controller.d.ts +31 -0
- package/dist/PanoVideoPlugin/VideoMeshController.d.ts +85 -0
- package/dist/PanoVideoPlugin/index.d.ts +16 -0
- package/dist/PanoVideoPlugin/typings.d.ts +64 -0
- package/dist/PanoVideoPlugin/utils/shader.d.ts +2 -0
- package/dist/base/BasePlugin.d.ts +6 -6
- package/dist/index.cjs.js +66 -46
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3275 -3037
- package/dist/index.umd.js +53 -33
- package/docs/assets/search.js +1 -1
- package/docs/classes/CSS3DRender.html +32 -31
- package/docs/classes/CruisePluginController.html +25 -24
- package/docs/classes/Magnifier.html +21 -20
- package/docs/classes/ModelRoomLabelController.html +12 -11
- package/docs/classes/Object3DHelperController.html +25 -24
- package/docs/classes/PaintBrush.html +16 -15
- package/docs/classes/PanoMeasurePluginLine.html +24 -23
- package/docs/classes/PanoMeasurePluginModel.html +23 -22
- package/docs/classes/PanoMeasurePluginPoint.html +15 -14
- package/docs/classes/PanoMeasurePluginPolyline.html +27 -26
- package/docs/classes/PanoTagPluginController.html +48 -47
- package/docs/classes/Util.BetterTween.html +9 -8
- package/docs/classes/Util.FivePointSelector.html +13 -12
- package/docs/classes/Util.Interval.html +13 -12
- package/docs/classes/Util.Magnifier.html +18 -17
- package/docs/classes/Util.PointDomHelper.html +12 -11
- package/docs/classes/Util.PointHelper.html +12 -11
- package/docs/classes/Util.Rectangle.html +14 -13
- package/docs/enums/CameraMovementEffect.html +8 -7
- package/docs/enums/ContentType.html +20 -19
- package/docs/enums/DIRECTION.html +10 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +10 -9
- package/docs/enums/DimensionType.html +8 -7
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +9 -8
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +10 -9
- package/docs/enums/PaintBrushTypeEnum.html +9 -8
- package/docs/enums/PointType.html +8 -7
- package/docs/enums/Rotation.html +9 -8
- package/docs/functions/CSS3DRenderPlugin.html +9 -5
- package/docs/functions/CameraMovementPlugin.html +9 -5
- package/docs/functions/CruisePlugin.html +9 -5
- package/docs/functions/GuideLinePlugin.html +9 -5
- package/docs/functions/ItemLabelPlugin.html +9 -5
- package/docs/functions/MapviewFloorplanPlugin.html +9 -5
- package/docs/functions/ModelChassisCompassPlugin.html +9 -5
- package/docs/functions/ModelEntryDoorGuidePlugin.html +9 -5
- package/docs/functions/ModelFloorplanPlugin.html +9 -5
- package/docs/functions/ModelItemLabelPlugin.html +9 -5
- package/docs/functions/ModelRoomLabelPlugin.html +9 -5
- package/docs/functions/ModelTVVideoPlugin.html +9 -5
- package/docs/functions/ModelViewPlugin.html +9 -5
- package/docs/functions/Object3DHelperPlugin.html +9 -5
- package/docs/functions/PanoCompassPlugin.html +9 -5
- package/docs/functions/PanoCursorRaycasterPlugin.html +9 -5
- package/docs/functions/PanoDoorLabelPlugin.html +9 -5
- package/docs/functions/PanoFloorplanRadarPlugin.html +9 -5
- package/docs/functions/PanoMeasurePlugin.html +9 -5
- package/docs/functions/PanoRulerPlugin.html +9 -5
- package/docs/functions/PanoRulerProPlugin.html +9 -5
- package/docs/functions/PanoSpatialTagPlugin.html +9 -5
- package/docs/functions/PanoTagPlugin.html +9 -5
- package/docs/functions/PanoVideoPlugin.html +284 -0
- package/docs/functions/TopviewFloorplanPlugin.html +9 -5
- package/docs/functions/Util.getCoordsFromClient.html +6 -5
- package/docs/functions/Util.getCoordsFromElement.html +6 -5
- package/docs/functions/Util.getFrameTime.html +6 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +6 -5
- package/docs/functions/Util.getRaycasterFromFivePointer.html +6 -5
- package/docs/functions/Util.isNil.html +6 -5
- package/docs/functions/Util.nextFrame.html +6 -5
- package/docs/functions/Util.notNil.html +6 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +6 -5
- package/docs/functions/Util.tweenProgress.html +6 -5
- package/docs/functions/pluginFlag.html +9 -5
- package/docs/index.html +8 -4
- package/docs/interfaces/AddTagConfig.html +7 -6
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +12 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +9 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +8 -7
- package/docs/interfaces/EventMap.html +16 -15
- package/docs/interfaces/FloorplanBounding.html +9 -8
- package/docs/interfaces/FloorplanData.html +11 -10
- package/docs/interfaces/FloorplanEntrance.html +12 -11
- package/docs/interfaces/FloorplanExtraObject.html +11 -10
- package/docs/interfaces/FloorplanExtraObject3D.html +9 -8
- package/docs/interfaces/FloorplanFloorData.html +10 -9
- package/docs/interfaces/FloorplanImagePosition.html +8 -7
- package/docs/interfaces/FloorplanObserver.html +10 -9
- package/docs/interfaces/FloorplanOutlineItem.html +10 -9
- package/docs/interfaces/FloorplanPosition.html +8 -7
- package/docs/interfaces/FloorplanRoomItem.html +14 -13
- package/docs/interfaces/FloorplanRoomLabelItem.html +8 -7
- package/docs/interfaces/FloorplanServerBounding.html +9 -8
- package/docs/interfaces/FloorplanServerComputedData.html +11 -10
- package/docs/interfaces/FloorplanServerData.html +8 -7
- package/docs/interfaces/FloorplanServerDoorItem.html +11 -10
- package/docs/interfaces/FloorplanServerDoorPosition.html +9 -8
- package/docs/interfaces/FloorplanServerEntrance.html +12 -11
- package/docs/interfaces/FloorplanServerFloorData.html +10 -9
- package/docs/interfaces/FloorplanServerImagePosition.html +8 -7
- package/docs/interfaces/FloorplanServerObserver.html +10 -9
- package/docs/interfaces/FloorplanServerOutlineItem.html +10 -9
- package/docs/interfaces/FloorplanServerPosition.html +8 -7
- package/docs/interfaces/FloorplanServerRoomItem.html +15 -14
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +8 -7
- package/docs/interfaces/HelperOffset.html +9 -8
- package/docs/interfaces/ItemLabelPluginData.html +7 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +12 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +10 -9
- package/docs/interfaces/MinMax.html +8 -7
- package/docs/interfaces/ModelChassisCompassPluginData.html +8 -7
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +9 -8
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +8 -7
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +9 -8
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +9 -8
- package/docs/interfaces/ModelItemLabelPluginData.html +7 -6
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +12 -11
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +8 -7
- package/docs/interfaces/ModelRoomLabelPluginData.html +7 -6
- package/docs/interfaces/ModelTVVideoPluginData.html +10 -9
- package/docs/interfaces/ModelTVVideoPluginExportType.html +9 -8
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +7 -6
- package/docs/interfaces/ModelViewPluginExportType.html +12 -11
- package/docs/interfaces/Object3DHelperState.html +9 -8
- package/docs/interfaces/ObjectHelperControllers.html +10 -9
- package/docs/interfaces/PaintBrushAction.html +13 -12
- package/docs/interfaces/PaintBrushConfigs.html +13 -12
- package/docs/interfaces/PaintBrushState.html +11 -10
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +11 -10
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +9 -5
- package/docs/interfaces/PanoMeasureParameterType.html +13 -12
- package/docs/interfaces/PanoMeasurePluginLineJson.html +9 -8
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +8 -7
- package/docs/interfaces/PanoMeasurePluginPointJson.html +8 -7
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +9 -8
- package/docs/interfaces/PanoRulerPluginExportType.html +11 -10
- package/docs/interfaces/PanoRulerPluginOptions.html +8 -7
- package/docs/interfaces/PanoRulerPluginParameterType.html +9 -8
- package/docs/interfaces/PanoRulerProPluginExportType.html +10 -9
- package/docs/interfaces/PanoRulerProPluginOptions.html +8 -7
- package/docs/interfaces/PanoRulerProPluginParameterType.html +8 -7
- package/docs/interfaces/PanoRulerProPluginState.html +9 -8
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +9 -5
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +9 -5
- package/docs/interfaces/PanoSpatialTagPluginData.html +12 -11
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +11 -10
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +14 -13
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +11 -10
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +14 -13
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +12 -11
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +11 -10
- package/docs/interfaces/PanoVideoPluginType.LoadParams.html +74 -0
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +89 -0
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +66 -0
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +165 -0
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +66 -0
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +97 -0
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +114 -0
- package/docs/interfaces/Point.html +9 -8
- package/docs/interfaces/Room.html +10 -9
- package/docs/interfaces/RoomInfo.html +8 -7
- package/docs/interfaces/RoomLabel.html +15 -14
- package/docs/interfaces/RoomRules.html +9 -5
- package/docs/interfaces/Rooms.html +9 -5
- package/docs/interfaces/Scissor.html +10 -9
- package/docs/interfaces/State.html +9 -8
- package/docs/interfaces/TagCache.html +13 -12
- package/docs/interfaces/TagConfig.html +11 -10
- package/docs/interfaces/TagIconUrl.html +10 -9
- package/docs/interfaces/Tags.html +10 -9
- package/docs/interfaces/TemporaryState.html +7 -6
- package/docs/interfaces/Util.MagnifierParameter.html +12 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +9 -8
- package/docs/modules/PanoVideoPluginType.html +62 -0
- package/docs/modules/Util.html +6 -5
- package/docs/modules.html +13 -5
- package/docs/types/ArrayPosition.html +9 -5
- package/docs/types/AudioAppearance.html +9 -5
- package/docs/types/AudioTagTypeConfigKey.html +9 -5
- package/docs/types/CSS3DRenderExportType.html +9 -5
- package/docs/types/CSS3DRenderPluginExportType.html +9 -5
- package/docs/types/CSS3DRenderPluginParameterType.html +9 -5
- package/docs/types/ClassFunctionParameters.html +9 -5
- package/docs/types/Color.html +9 -5
- package/docs/types/ContentTypeConfigKey.html +9 -5
- package/docs/types/ContentTypeConfigKeySplit.html +9 -5
- package/docs/types/ContentTypeMap.html +9 -5
- package/docs/types/Create3DDomContainerReturnType.html +9 -5
- package/docs/types/Create3DElementReturnType.html +9 -5
- package/docs/types/CruisePluginExportType.html +9 -5
- package/docs/types/Direction-1.html +9 -5
- package/docs/types/Direction4.html +9 -5
- package/docs/types/FloorplanRuleLabels.html +9 -5
- package/docs/types/FloorplanServerRuleLabels.html +9 -5
- package/docs/types/GuideLinePluginExportType.html +9 -5
- package/docs/types/HelperEventMap.html +9 -5
- package/docs/types/LoadTagConfig.html +9 -5
- package/docs/types/MapviewFloorplanPluginParameterType.html +9 -5
- package/docs/types/MapviewFloorplanPluginReturnType.html +9 -5
- package/docs/types/MediaData.html +9 -5
- package/docs/types/MediaStore.html +9 -5
- package/docs/types/ModelElement.html +9 -5
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +9 -5
- package/docs/types/ModelFloorplanPluginParameterType.html +9 -5
- package/docs/types/ModelFloorplanPluginReturnType.html +9 -5
- package/docs/types/ModelRoomLabelPluginParameters.html +9 -5
- package/docs/types/ModelRoomLabelPluginReturnType.html +9 -5
- package/docs/types/MoveArgs.html +9 -5
- package/docs/types/MoveOpts.html +9 -5
- package/docs/types/Object3DHelperEventMap.html +9 -5
- package/docs/types/ObjectFit.html +9 -5
- package/docs/types/PaintBrushEventMap.html +9 -5
- package/docs/types/PanoCompassPluginData.html +9 -5
- package/docs/types/PanoCompassPluginExportType.html +9 -5
- package/docs/types/PanoCompassPluginParameterType.html +9 -5
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +9 -5
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +9 -5
- package/docs/types/PanoIndex.html +9 -5
- package/docs/types/PanoMeasurePluginEvent.html +9 -5
- package/docs/types/PanoMeasureReturnType.html +9 -5
- package/docs/types/PanoSpatialTagPluginId.html +9 -5
- package/docs/types/PanoTagPluginExportInterface.html +9 -5
- package/docs/types/PanoTagPluginParamsInterface.html +9 -5
- package/docs/types/PanoVideoPluginParameterType.html +265 -0
- package/docs/types/PanoVideoPluginReturnType.html +265 -0
- package/docs/types/PlaneTag.html +9 -5
- package/docs/types/PlaneTagElement.html +9 -5
- package/docs/types/Point2DElement.html +9 -5
- package/docs/types/Point2DTag.html +9 -5
- package/docs/types/Point3DElement.html +9 -5
- package/docs/types/Point3DTag.html +9 -5
- package/docs/types/PointTag.html +9 -5
- package/docs/types/PointTagElement.html +9 -5
- package/docs/types/Position.html +9 -5
- package/docs/types/RotateArgs.html +9 -5
- package/docs/types/RotateOpts.html +9 -5
- package/docs/types/RuleLabelsKey.html +9 -5
- package/docs/types/RuleLabelsValue.html +9 -5
- package/docs/types/StickType.html +9 -5
- package/docs/types/Tag.html +9 -5
- package/docs/types/Tag2D.html +9 -5
- package/docs/types/Tag3D.html +9 -5
- package/docs/types/TagContentType.html +9 -5
- package/docs/types/TagDimensionType.html +9 -5
- package/docs/types/TagElement.html +9 -5
- package/docs/types/TagEvents.html +9 -5
- package/docs/types/TagGLTFObject.html +9 -5
- package/docs/types/TagHooks.html +9 -5
- package/docs/types/TagIconSize.html +9 -5
- package/docs/types/TagId.html +9 -5
- package/docs/types/TagPointType.html +9 -5
- package/docs/types/TopviewFloorplanPluginParameterType.html +9 -5
- package/docs/types/TopviewFloorplanPluginReturnType.html +9 -5
- package/docs/types/WorkCode.html +9 -5
- package/docs/variables/FLOOR_TYPE_MAP.html +9 -5
- package/docs/variables/PLUGIN.html +9 -5
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +9 -5
- package/docs/variables/ROOM_TYPE_MAP.html +9 -5
- package/docs/variables/VERSION.html +9 -5
- package/docs/variables/itemLabelPluginServerParams.html +9 -5
- package/docs/variables/modelItemLabelPluginServerParams.html +9 -5
- package/docs/variables/modelRoomLabelPluginServerParams.html +9 -5
- package/libs/PanoTagPlugin/Components/Common/Media.js +56 -56
- package/libs/PanoVideoPlugin/Controller.d.ts +31 -0
- package/libs/PanoVideoPlugin/Controller.js +127 -0
- package/libs/PanoVideoPlugin/VideoMeshController.d.ts +85 -0
- package/libs/PanoVideoPlugin/VideoMeshController.js +152 -0
- package/libs/PanoVideoPlugin/index.d.ts +16 -0
- package/libs/PanoVideoPlugin/index.js +31 -0
- package/libs/PanoVideoPlugin/typings/index.js +6 -0
- package/libs/PanoVideoPlugin/typings.d.ts +64 -0
- package/libs/PanoVideoPlugin/typings.js +1 -0
- package/libs/PanoVideoPlugin/utils/shader.d.ts +2 -0
- package/libs/PanoVideoPlugin/utils/shader.js +25 -0
- package/libs/base/BasePlugin.d.ts +6 -6
- package/libs/index.d.ts +1 -0
- package/libs/index.js +107 -100
- package/package.json +1 -1
- 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
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type { Five } from '@realsee/five';
|
|
2
|
+
import type { VideoMeshParams } from './typings';
|
|
3
|
+
/** 点位视频控制器
|
|
4
|
+
* @description 控制器存在副作用,包括:
|
|
5
|
+
* - 对 Five 事件的监听。
|
|
6
|
+
* - 对 DOM 原生事件的监听。
|
|
7
|
+
* - 用于播放视频的模型。
|
|
8
|
+
* - 视频实例。
|
|
9
|
+
* @description 清除副作用的力度从弱到强:
|
|
10
|
+
* - 隐藏:hide,用于隐藏 UI 元素;不销毁多媒体资源。用于临时隐藏。
|
|
11
|
+
* - 取消挂载:unmount,销毁视频资源;移除模型。用于不符合自身展示条件时执行。
|
|
12
|
+
* - 禁用:disable,销毁视频资源;移除模型;取消监听。用于外部条件变换导致的功能禁用。
|
|
13
|
+
* - 销毁:dispose,用于彻底销毁实例,dispose 之后将不响应任何事件。
|
|
14
|
+
*/
|
|
15
|
+
export declare class VideoMeshController {
|
|
16
|
+
/** 传入的 ID,不可更改 */
|
|
17
|
+
get renderID(): string;
|
|
18
|
+
/** 是否已经销毁 */
|
|
19
|
+
get disposed(): boolean;
|
|
20
|
+
/** 是否已经启用 */
|
|
21
|
+
get enabled(): boolean;
|
|
22
|
+
private _id;
|
|
23
|
+
/** 视频资源地址 */
|
|
24
|
+
private url;
|
|
25
|
+
/** Five Instance */
|
|
26
|
+
private five;
|
|
27
|
+
/** 视频对应的点位 */
|
|
28
|
+
private panoIndex;
|
|
29
|
+
/** 视频在球面的 uv:[left, top, width, height] */
|
|
30
|
+
private origin;
|
|
31
|
+
/** Video DOM */
|
|
32
|
+
private video;
|
|
33
|
+
/** Video Mesh */
|
|
34
|
+
private videoMesh;
|
|
35
|
+
private _enabled;
|
|
36
|
+
private _disposed;
|
|
37
|
+
/** 视频是否曾经播放过 */
|
|
38
|
+
private hasVideoEverPlayed;
|
|
39
|
+
/** 自动 render five 的销毁函数
|
|
40
|
+
* @remark 由于 render video 依赖 Five render,因此需要自动 render five。
|
|
41
|
+
*/
|
|
42
|
+
private renderFiveDisposer?;
|
|
43
|
+
/** 初始化视频、模型以及相关事件监听。 */
|
|
44
|
+
constructor(five: Five, params: VideoMeshParams);
|
|
45
|
+
/** 彻底销毁,不响应之后的任何事件 */
|
|
46
|
+
dispose(): void;
|
|
47
|
+
enable(): void;
|
|
48
|
+
/** 禁用插件 */
|
|
49
|
+
disable(): void;
|
|
50
|
+
/** 添加时间监听 */
|
|
51
|
+
private addEventListeners;
|
|
52
|
+
/** 移除事件监听 */
|
|
53
|
+
private removeEventListeners;
|
|
54
|
+
/** 如果满足 mount 条件,mount */
|
|
55
|
+
private mountIfNeeded;
|
|
56
|
+
/** 挂载:加载视频资源;添加模型。 */
|
|
57
|
+
private mount;
|
|
58
|
+
/** 卸载:销毁视频资源;移除模型。 */
|
|
59
|
+
private unmount;
|
|
60
|
+
/** 暂停视频,去除模型。 */
|
|
61
|
+
private hide;
|
|
62
|
+
/** Five 数据加载后需要根据点位位姿调整点位模型位置 */
|
|
63
|
+
private onFiveDataLoaded;
|
|
64
|
+
/** 兼容视频播放 */
|
|
65
|
+
private onFiveWantsMoveToPano;
|
|
66
|
+
/** 走到某个点位上时,挂载/卸载视频 */
|
|
67
|
+
private onFivePanoArrived;
|
|
68
|
+
private onFivePanoWillArrive;
|
|
69
|
+
/** Five 模型变化 */
|
|
70
|
+
private onFiveModeChange;
|
|
71
|
+
/** Five mode change 动画结束 */
|
|
72
|
+
private onFiveInitAnimationEnded;
|
|
73
|
+
/** video playing 事件触发
|
|
74
|
+
* @remarks
|
|
75
|
+
* 事件触发时机:
|
|
76
|
+
* - video is ready to start after having been paused.
|
|
77
|
+
* - video is ready to play after delayed due to lack of data.
|
|
78
|
+
* @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video
|
|
79
|
+
*/
|
|
80
|
+
private onVideoPlaying;
|
|
81
|
+
/** video pause 事件触发 */
|
|
82
|
+
private onVideoPaused;
|
|
83
|
+
/** 控制台打印警告 */
|
|
84
|
+
private logWarning;
|
|
85
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
var l = Object.defineProperty;
|
|
2
|
+
var f = (o, e, t) => e in o ? l(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
|
|
3
|
+
var i = (o, e, t) => (f(o, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
+
import { vertexShader as p, fragmentShader as m } from "./utils/shader.js";
|
|
5
|
+
import "hammerjs";
|
|
6
|
+
import { VideoTexture as g, LinearFilter as v, ShaderMaterial as F, Vector4 as c, SphereBufferGeometry as E, Mesh as A, Quaternion as D, Vector3 as I } from "three";
|
|
7
|
+
import "@realsee/five";
|
|
8
|
+
import "@tweenjs/tween.js";
|
|
9
|
+
import "../CSS3DRenderPlugin/CSS3DRender.js";
|
|
10
|
+
import "../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
11
|
+
import { requestAnimationFrameInterval as M } from "../shared-utils/animationFrame/index.js";
|
|
12
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DRenderer.js";
|
|
13
|
+
import "three/examples/jsm/renderers/CSS3DRenderer";
|
|
14
|
+
import "../CSS3DRenderPlugin/utils/getAllCSS3DObject.js";
|
|
15
|
+
import "../CSS3DRenderPlugin/utils/createResizeObserver.js";
|
|
16
|
+
import "../CSS3DRenderPlugin/utils/even.js";
|
|
17
|
+
import "../shared-utils/Subscribe.js";
|
|
18
|
+
import "../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
19
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DObject.js";
|
|
20
|
+
import "../CSS3DRenderPlugin/utils/centerPoint.js";
|
|
21
|
+
import "../CSS3DRenderPlugin/utils/three/OpacityMesh.js";
|
|
22
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DScene.js";
|
|
23
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
|
|
24
|
+
import "../shared-utils/animationFrame/BetterTween.js";
|
|
25
|
+
class j {
|
|
26
|
+
constructor(e, t) {
|
|
27
|
+
i(this, "_id");
|
|
28
|
+
i(this, "url");
|
|
29
|
+
i(this, "five");
|
|
30
|
+
i(this, "panoIndex");
|
|
31
|
+
i(this, "origin");
|
|
32
|
+
i(this, "video");
|
|
33
|
+
i(this, "videoMesh");
|
|
34
|
+
i(this, "_enabled", !0);
|
|
35
|
+
i(this, "_disposed", !1);
|
|
36
|
+
i(this, "hasVideoEverPlayed", !1);
|
|
37
|
+
i(this, "renderFiveDisposer");
|
|
38
|
+
i(this, "onFiveDataLoaded", () => {
|
|
39
|
+
var d;
|
|
40
|
+
const e = (d = this.five.work) == null ? void 0 : d.observers[this.panoIndex];
|
|
41
|
+
if (!e)
|
|
42
|
+
return this.logWarning(`\u70B9\u4F4D ${this.panoIndex} \u4E0D\u5B58\u5728\uFF0C\u8BF7\u68C0\u67E5 Five \u6570\u636E\u662F\u5426\u6B63\u5E38\u3002`);
|
|
43
|
+
const { x: t, y: n, z: r, w: h } = e.quaternion, a = new D(t, n, r, h), s = e.position;
|
|
44
|
+
this.videoMesh.position.fromArray([s.x, s.y, s.z]), this.videoMesh.quaternion.set(0, 0, 0, 1), this.videoMesh.rotateOnAxis(new I(0, 1, 0), Math.PI / 2), this.videoMesh.applyQuaternion(a);
|
|
45
|
+
});
|
|
46
|
+
i(this, "onFiveWantsMoveToPano", (e) => {
|
|
47
|
+
e === this.panoIndex && (this.hasVideoEverPlayed || this.video.play().catch((t) => {
|
|
48
|
+
console.log("\u{1F436} ==> error:", t);
|
|
49
|
+
}));
|
|
50
|
+
});
|
|
51
|
+
i(this, "onFivePanoArrived", (e) => {
|
|
52
|
+
if (this.disposed)
|
|
53
|
+
return this.logWarning("\u5B9E\u4F8B\u5DF2\u88AB\u9500\u6BC1");
|
|
54
|
+
!this.enabled || this.panoIndex === e && this.mount();
|
|
55
|
+
});
|
|
56
|
+
i(this, "onFivePanoWillArrive", (e) => {
|
|
57
|
+
if (e !== this.panoIndex)
|
|
58
|
+
return this.unmount();
|
|
59
|
+
this.panoIndex !== e && this.unmount();
|
|
60
|
+
});
|
|
61
|
+
i(this, "onFiveModeChange", (e) => {
|
|
62
|
+
e !== "Panorama" && this.hide();
|
|
63
|
+
});
|
|
64
|
+
i(this, "onFiveInitAnimationEnded", () => {
|
|
65
|
+
const e = this.five.getCurrentState();
|
|
66
|
+
e.mode === "Panorama" && e.panoIndex === this.panoIndex && this.mount();
|
|
67
|
+
});
|
|
68
|
+
i(this, "onVideoPlaying", () => {
|
|
69
|
+
this.hasVideoEverPlayed = !0, this.video.src !== "" && (this.renderFiveDisposer = M(() => {
|
|
70
|
+
this.five.needsRender = !0;
|
|
71
|
+
}), this.five.scene.add(this.videoMesh));
|
|
72
|
+
});
|
|
73
|
+
i(this, "onVideoPaused", () => {
|
|
74
|
+
var e;
|
|
75
|
+
(e = this.renderFiveDisposer) == null || e.call(this);
|
|
76
|
+
});
|
|
77
|
+
var d, u;
|
|
78
|
+
this.five = e, this.panoIndex = t.panoIndex, this._id = t.renderID, this.url = t.url, this.origin = t.origin.slice(), this._enabled = (u = (d = t.initialState) == null ? void 0 : d.enabled) != null ? u : !0;
|
|
79
|
+
const n = document.createElement("video");
|
|
80
|
+
n.crossOrigin = "anonymous", n.autoplay = !1, n.muted = !0, n.loop = !1, n.playsInline = !0, this.video = n;
|
|
81
|
+
const r = new g(this.video);
|
|
82
|
+
r.minFilter = v, r.magFilter = v;
|
|
83
|
+
const h = new F({
|
|
84
|
+
vertexShader: p,
|
|
85
|
+
fragmentShader: m,
|
|
86
|
+
uniforms: {
|
|
87
|
+
map: { value: r },
|
|
88
|
+
size: {
|
|
89
|
+
value: new c(this.origin[0], 1 - this.origin[1] - this.origin[3], this.origin[2], this.origin[3])
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
depthTest: !0,
|
|
93
|
+
transparent: !0
|
|
94
|
+
}), a = new E(1, 64, 64);
|
|
95
|
+
a.scale(-1, 1, 1);
|
|
96
|
+
const s = new A(a, h);
|
|
97
|
+
s.name = "pano-video", this.videoMesh = s, this.five.work && this.onFiveDataLoaded(), this.enabled && this.addEventListeners(), this.mountIfNeeded();
|
|
98
|
+
}
|
|
99
|
+
get renderID() {
|
|
100
|
+
return this._id;
|
|
101
|
+
}
|
|
102
|
+
get disposed() {
|
|
103
|
+
return this._disposed;
|
|
104
|
+
}
|
|
105
|
+
get enabled() {
|
|
106
|
+
return this._enabled;
|
|
107
|
+
}
|
|
108
|
+
dispose() {
|
|
109
|
+
this.disposed || (this.disable(), this._disposed = !0);
|
|
110
|
+
}
|
|
111
|
+
enable() {
|
|
112
|
+
this.disposed || this.enabled || (this._enabled = !0, this.addEventListeners(), this.mountIfNeeded());
|
|
113
|
+
}
|
|
114
|
+
disable() {
|
|
115
|
+
this.disposed || !this.enabled || (this._enabled = !1, this.removeEventListeners(), this.unmount());
|
|
116
|
+
}
|
|
117
|
+
addEventListeners() {
|
|
118
|
+
this.five.on("loaded", this.onFiveDataLoaded), this.five.on("modeChange", this.onFiveModeChange), this.five.on("panoArrived", this.onFivePanoArrived), this.five.on("panoWillArrive", this.onFivePanoWillArrive), this.five.on("wantsMoveToPano", this.onFiveWantsMoveToPano), this.five.on("initAnimationEnded", this.onFiveInitAnimationEnded), this.video.addEventListener("playing", this.onVideoPlaying);
|
|
119
|
+
}
|
|
120
|
+
removeEventListeners() {
|
|
121
|
+
this.five.off("loaded", this.onFiveDataLoaded), this.five.off("modeChange", this.onFiveModeChange), this.five.off("panoArrived", this.onFivePanoArrived), this.five.off("panoWillArrive", this.onFivePanoWillArrive), this.five.off("wantsMoveToPano", this.onFiveWantsMoveToPano), this.five.off("initAnimationEnded", this.onFiveInitAnimationEnded), this.video.removeEventListener("playing", this.onVideoPlaying);
|
|
122
|
+
}
|
|
123
|
+
mountIfNeeded() {
|
|
124
|
+
const e = this.five.getCurrentState();
|
|
125
|
+
e.mode === "Panorama" && e.panoIndex === this.panoIndex && this.enabled && this.mount();
|
|
126
|
+
}
|
|
127
|
+
mount() {
|
|
128
|
+
if (this.disposed)
|
|
129
|
+
return this.logWarning("\u63D2\u4EF6\u5DF2\u7ECF\u9500\u6BC1\uFF0C\u65E0\u6CD5\u6302\u8F7D\u3002");
|
|
130
|
+
if (this.url === "")
|
|
131
|
+
return this.logWarning("\u89C6\u9891\u8D44\u6E90\u4E0D\u5B58\u5728\u3002");
|
|
132
|
+
this.video.src !== this.url && (this.video.src = this.url), this.video.paused && this.video.play().catch((e) => {
|
|
133
|
+
this.logWarning(e instanceof Error ? e.message : "\u89C6\u9891\u64AD\u653E\u5931\u8D25\u3002"), this.five.once("gesture", () => {
|
|
134
|
+
this.video.play().catch((t) => {
|
|
135
|
+
this.logWarning(t instanceof Error ? t.message : "\u81EA\u52A8\u64AD\u653E\u89C6\u9891\u5931\u8D25\u3002");
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
unmount() {
|
|
141
|
+
this.video.pause(), this.video.src !== "" && (this.video.src = ""), this.five.scene.remove(this.videoMesh);
|
|
142
|
+
}
|
|
143
|
+
hide() {
|
|
144
|
+
this.video.pause(), this.five.scene.remove(this.videoMesh);
|
|
145
|
+
}
|
|
146
|
+
logWarning(e) {
|
|
147
|
+
console.warn("\u26D4 ==> [VideoMeshController]:", e);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
export {
|
|
151
|
+
j as VideoMeshController
|
|
152
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { FivePlugin } from '@realsee/five';
|
|
2
|
+
import { PanoVideoPluginController } from './Controller';
|
|
3
|
+
import * as _PanoVideoPluginType from './typings';
|
|
4
|
+
/** 点位视频播放插件
|
|
5
|
+
* - 支持一次性加载多组数据。
|
|
6
|
+
* - 走到点位上时播放视频(可能是多个)。
|
|
7
|
+
* - 走出点位时销毁视频。
|
|
8
|
+
* - 允许动态开启和禁用功能。
|
|
9
|
+
* - 视频只能在全景模式且点位一致时才会播放。不满足条件会自动销毁。
|
|
10
|
+
* - 不做多媒体缓存,缓解内存占用。
|
|
11
|
+
*/
|
|
12
|
+
export declare const PanoVideoPlugin: FivePlugin<undefined, PanoVideoPluginController>;
|
|
13
|
+
export { _PanoVideoPluginType as PanoVideoPluginType };
|
|
14
|
+
export declare type PanoVideoPluginParameterType = undefined;
|
|
15
|
+
export declare type PanoVideoPluginReturnType = InstanceType<typeof PanoVideoPluginController>;
|
|
16
|
+
export default PanoVideoPlugin;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { PanoVideoPluginController as r } from "./Controller.js";
|
|
2
|
+
import { typings as z } from "./typings/index.js";
|
|
3
|
+
import "./VideoMeshController.js";
|
|
4
|
+
import "./utils/shader.js";
|
|
5
|
+
import "hammerjs";
|
|
6
|
+
import "three";
|
|
7
|
+
import "@realsee/five";
|
|
8
|
+
import "@tweenjs/tween.js";
|
|
9
|
+
import "../CSS3DRenderPlugin/CSS3DRender.js";
|
|
10
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DRenderer.js";
|
|
11
|
+
import "three/examples/jsm/renderers/CSS3DRenderer";
|
|
12
|
+
import "../CSS3DRenderPlugin/utils/getAllCSS3DObject.js";
|
|
13
|
+
import "../CSS3DRenderPlugin/utils/createResizeObserver.js";
|
|
14
|
+
import "../CSS3DRenderPlugin/utils/even.js";
|
|
15
|
+
import "../shared-utils/Subscribe.js";
|
|
16
|
+
import "../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
17
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DObject.js";
|
|
18
|
+
import "../CSS3DRenderPlugin/utils/centerPoint.js";
|
|
19
|
+
import "../CSS3DRenderPlugin/utils/three/OpacityMesh.js";
|
|
20
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DScene.js";
|
|
21
|
+
import "../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
|
|
22
|
+
import "../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
23
|
+
import "../shared-utils/animationFrame/index.js";
|
|
24
|
+
import "../shared-utils/animationFrame/BetterTween.js";
|
|
25
|
+
import "../base/BasePlugin.js";
|
|
26
|
+
const k = (o) => new r(o);
|
|
27
|
+
export {
|
|
28
|
+
k as PanoVideoPlugin,
|
|
29
|
+
z as PanoVideoPluginType,
|
|
30
|
+
k as default
|
|
31
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type * as BasePlugin from '../base/BasePlugin';
|
|
2
|
+
/** 单个视频元素 */
|
|
3
|
+
export interface VideoItem {
|
|
4
|
+
/** client render ID
|
|
5
|
+
* @remarks 为什么不用 id 作为唯一标识?
|
|
6
|
+
* - id 是后端生成的,而 render_id 是前端生成的,在编辑时为了保证在请求后端数据之前也能进行渲染,使用额外的 id 进行渲染。
|
|
7
|
+
* - 为了保证两端的数据一致性,插件里使用 render_id 作为唯一 ID。
|
|
8
|
+
*/
|
|
9
|
+
render_id: string;
|
|
10
|
+
/** 文件地址 */
|
|
11
|
+
url: string;
|
|
12
|
+
/** 算法处理的视频 uv 信息
|
|
13
|
+
* @description [left, top, width, height]
|
|
14
|
+
*/
|
|
15
|
+
origin: number[];
|
|
16
|
+
}
|
|
17
|
+
/** 点位视频元素 */
|
|
18
|
+
export interface PanoVideoItem {
|
|
19
|
+
/** client render ID */
|
|
20
|
+
render_id: string;
|
|
21
|
+
/** 视频播放点位 */
|
|
22
|
+
pano_index: number;
|
|
23
|
+
/** 视频列表 */
|
|
24
|
+
video_list: VideoItem[];
|
|
25
|
+
}
|
|
26
|
+
/** 点位视频模型参数 */
|
|
27
|
+
export interface VideoMeshParams {
|
|
28
|
+
/** client render ID */
|
|
29
|
+
renderID: string;
|
|
30
|
+
/** video 文件地址 */
|
|
31
|
+
url: string;
|
|
32
|
+
/** 算法处理的视频 uv 信息
|
|
33
|
+
* @description [left, top, width, height]
|
|
34
|
+
*/
|
|
35
|
+
origin: number[];
|
|
36
|
+
/** 视频播放点位 */
|
|
37
|
+
panoIndex: number;
|
|
38
|
+
/** 初始状态 */
|
|
39
|
+
initialState?: {
|
|
40
|
+
enabled?: boolean;
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/** 加载数据时的额外参数 */
|
|
44
|
+
export interface LoadParams {
|
|
45
|
+
initialState?: {
|
|
46
|
+
enabled?: boolean;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
export interface PluginState {
|
|
50
|
+
enabled: boolean;
|
|
51
|
+
}
|
|
52
|
+
export interface PluginData {
|
|
53
|
+
list: PanoVideoItem[];
|
|
54
|
+
}
|
|
55
|
+
export interface PluginEventMap extends BasePlugin.EventMap<PluginState> {
|
|
56
|
+
/** 点位视频模型开启 */
|
|
57
|
+
enable: (params: {
|
|
58
|
+
userAction: boolean;
|
|
59
|
+
}) => void;
|
|
60
|
+
/** 点位视频模型关闭 */
|
|
61
|
+
disable: (params: {
|
|
62
|
+
userAction: boolean;
|
|
63
|
+
}) => void;
|
|
64
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const vertexShader = "\nvarying vec2 vUv;\nvoid main() {\n vUv = uv;\n vec4 mvPosition = modelViewMatrix * vec4(position, 1);\n gl_Position = projectionMatrix * mvPosition;\n}\n";
|
|
2
|
+
export declare const fragmentShader = "\nuniform sampler2D map;\nuniform vec4 size;\nvarying vec2 vUv;\n\nvoid main() {\n vec2 uv = vec2((vUv.x - size[0]) / size[2], (vUv.y - size[1]) / size[3]);\n float a = 0.1;\n float transX = uv.x < a ? 1.0 / a * uv.x : (uv.x > (1.0 - a) ? 1.0 / a * (1.0 - uv.x) : 1.0);\n float transY = uv.y < a ? 1.0 / a * uv.y : (uv.y > (1.0 - a) ? 1.0 / a * (1.0 - uv.y) : 1.0);\n\tfloat match = (1.0 - step(0.5, abs(uv.x - 0.5))) * (1.0 - step(0.5, abs(uv.y - 0.5))) * (transX < transY ? transX : transY);\n gl_FragColor = vec4(texture2D(map, uv).xyz, match);\n}\n";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const v = `
|
|
2
|
+
varying vec2 vUv;
|
|
3
|
+
void main() {
|
|
4
|
+
vUv = uv;
|
|
5
|
+
vec4 mvPosition = modelViewMatrix * vec4(position, 1);
|
|
6
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
7
|
+
}
|
|
8
|
+
`, a = `
|
|
9
|
+
uniform sampler2D map;
|
|
10
|
+
uniform vec4 size;
|
|
11
|
+
varying vec2 vUv;
|
|
12
|
+
|
|
13
|
+
void main() {
|
|
14
|
+
vec2 uv = vec2((vUv.x - size[0]) / size[2], (vUv.y - size[1]) / size[3]);
|
|
15
|
+
float a = 0.1;
|
|
16
|
+
float transX = uv.x < a ? 1.0 / a * uv.x : (uv.x > (1.0 - a) ? 1.0 / a * (1.0 - uv.x) : 1.0);
|
|
17
|
+
float transY = uv.y < a ? 1.0 / a * uv.y : (uv.y > (1.0 - a) ? 1.0 / a * (1.0 - uv.y) : 1.0);
|
|
18
|
+
float match = (1.0 - step(0.5, abs(uv.x - 0.5))) * (1.0 - step(0.5, abs(uv.y - 0.5))) * (transX < transY ? transX : transY);
|
|
19
|
+
gl_FragColor = vec4(texture2D(map, uv).xyz, match);
|
|
20
|
+
}
|
|
21
|
+
`;
|
|
22
|
+
export {
|
|
23
|
+
a as fragmentShader,
|
|
24
|
+
v as vertexShader
|
|
25
|
+
};
|
|
@@ -83,6 +83,12 @@ declare abstract class Controller<PluginState extends State, PluginEventMap exte
|
|
|
83
83
|
* 隐藏UI
|
|
84
84
|
*/
|
|
85
85
|
hide?(options?: BaseOptions): Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* 设置state
|
|
88
|
+
* @param state 插件的目标状态
|
|
89
|
+
* @param options 配置项
|
|
90
|
+
*/
|
|
91
|
+
setState?(state: Partial<PluginState>, options?: BaseOptions): void;
|
|
86
92
|
/**
|
|
87
93
|
* 启用插件,让插件能够响应交互
|
|
88
94
|
*/
|
|
@@ -95,12 +101,6 @@ declare abstract class Controller<PluginState extends State, PluginEventMap exte
|
|
|
95
101
|
* 插件进行销毁
|
|
96
102
|
*/
|
|
97
103
|
abstract dispose(): void;
|
|
98
|
-
/**
|
|
99
|
-
* 设置state
|
|
100
|
-
* @param state 插件的目标状态
|
|
101
|
-
* @param options 配置项
|
|
102
|
-
*/
|
|
103
|
-
abstract setState(state: Partial<PluginState>, options?: BaseOptions): void;
|
|
104
104
|
}
|
|
105
105
|
export type { State, EventMap, BaseOptions };
|
|
106
106
|
export { Controller };
|
package/libs/index.d.ts
CHANGED
package/libs/index.js
CHANGED
|
@@ -1,49 +1,51 @@
|
|
|
1
|
-
import { PaintBrush as
|
|
2
|
-
import { PaintBrushTypeEnum as
|
|
3
|
-
import { ModelViewPlugin as
|
|
4
|
-
import { CSS3DRenderPlugin as
|
|
5
|
-
import { PanoCursorRaycasterPlugin as
|
|
6
|
-
import { ModelRoomLabelPlugin as
|
|
7
|
-
import { FLOOR_PLAN_ATTACHED_TO as
|
|
8
|
-
import { ModelFloorplanPlugin as
|
|
9
|
-
import { MapviewFloorplanPlugin as
|
|
10
|
-
import { TopviewFloorplanPlugin as
|
|
11
|
-
import { PanoFloorplanRadarPlugin as
|
|
12
|
-
import { FLOOR_TYPE_MAP as
|
|
13
|
-
import { ModelChassisCompassPlugin as
|
|
14
|
-
import { ModelEntryDoorGuidePlugin as
|
|
15
|
-
import { CameraMovementPlugin as
|
|
16
|
-
import { CameraMovementEffect as
|
|
17
|
-
import { PanoRulerPlugin as
|
|
18
|
-
import { PanoRulerProPlugin as
|
|
19
|
-
import { PanoCompassPlugin as
|
|
20
|
-
import { PanoMeasurePlugin as
|
|
21
|
-
import { PanoSpatialTagPlugin as
|
|
22
|
-
import { modelItemLabelPluginServerParams as
|
|
23
|
-
import { ModelTVVideoPlugin as
|
|
24
|
-
import { DIRECTION as
|
|
25
|
-
import { itemLabelPluginServerParams as
|
|
26
|
-
import { PanoDoorLabelPlugin as
|
|
27
|
-
import { GuideLinePlugin as
|
|
28
|
-
import { CruisePlugin as
|
|
29
|
-
import { PanoTagPlugin as
|
|
30
|
-
import { Object3DHelperPlugin as
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import { default as
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
41
|
-
import {
|
|
42
|
-
import {
|
|
43
|
-
import { default as
|
|
44
|
-
import {
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
1
|
+
import { PaintBrush as bi } from "./components/PaintBrush/index.js";
|
|
2
|
+
import { PaintBrushTypeEnum as Fi } from "./components/PaintBrush/typings.js";
|
|
3
|
+
import { ModelViewPlugin as Gi } from "./ModelViewPlugin/Plugin.js";
|
|
4
|
+
import { CSS3DRenderPlugin as Ni } from "./CSS3DRenderPlugin/index.js";
|
|
5
|
+
import { PanoCursorRaycasterPlugin as hi } from "./PanoCursorRaycasterPlugin/index.js";
|
|
6
|
+
import { ModelRoomLabelPlugin as Bi, modelRoomLabelPluginServerParams as Hi } from "./ModelRoomLabelPlugin/index.js";
|
|
7
|
+
import { FLOOR_PLAN_ATTACHED_TO as ji } from "./floorplan/constant.js";
|
|
8
|
+
import { ModelFloorplanPlugin as qi } from "./floorplan/ModelFloorplanPlugin/index.js";
|
|
9
|
+
import { MapviewFloorplanPlugin as Ji } from "./floorplan/MapviewFloorplanPlugin/index.js";
|
|
10
|
+
import { TopviewFloorplanPlugin as Qi } from "./floorplan/TopviewFloorplanPlugin/index.js";
|
|
11
|
+
import { PanoFloorplanRadarPlugin as Xi } from "./floorplan/PanoFloorplanRadarPlugin/index.js";
|
|
12
|
+
import { FLOOR_TYPE_MAP as $i, ROOM_FETILE_TYPE_MAP as op, ROOM_TYPE_MAP as rp } from "./floorplan/typings/floorplanServerData.js";
|
|
13
|
+
import { ModelChassisCompassPlugin as mp } from "./ModelChassisCompassPlugin/Plugin.js";
|
|
14
|
+
import { ModelEntryDoorGuidePlugin as pp } from "./ModelEntryDoorGuidePlugin/Plugin.js";
|
|
15
|
+
import { CameraMovementPlugin as lp } from "./CameraMovementPlugin/CameraMovementPlugin.js";
|
|
16
|
+
import { CameraMovementEffect as ap, Rotation as Pp } from "./CameraMovementPlugin/typing.js";
|
|
17
|
+
import { PanoRulerPlugin as fp } from "./PanoRulerPlugin/Plugin.js";
|
|
18
|
+
import { PanoRulerProPlugin as gp } from "./PanoRulerProPlugin/index.js";
|
|
19
|
+
import { PanoCompassPlugin as dp } from "./PanoCompassPlugin/index.js";
|
|
20
|
+
import { PanoMeasurePlugin as Mp } from "./PanoMeasurePlugin/index.js";
|
|
21
|
+
import { PanoSpatialTagPlugin as Ep } from "./PanoSpatialTagPlugin/Plugin.js";
|
|
22
|
+
import { modelItemLabelPluginServerParams as _p } from "./ModelItemLabelPlugin/index.js";
|
|
23
|
+
import { ModelTVVideoPlugin as Op } from "./ModelTVVideoPlugin/Plugin.js";
|
|
24
|
+
import { DIRECTION as Ip } from "./ModelTVVideoPlugin/typings.js";
|
|
25
|
+
import { itemLabelPluginServerParams as Dp } from "./ItemLabelPlugin/index.js";
|
|
26
|
+
import { PanoDoorLabelPlugin as bp } from "./PanoDoorLabelPlugin/index.js";
|
|
27
|
+
import { GuideLinePlugin as Fp } from "./GuideLinePlugin/index.js";
|
|
28
|
+
import { CruisePlugin as Gp } from "./CruisePlugin/index.js";
|
|
29
|
+
import { PanoTagPlugin as Np } from "./PanoTagPlugin/index.js";
|
|
30
|
+
import { Object3DHelperPlugin as hp } from "./Object3DHelperPlugin/index.js";
|
|
31
|
+
import { PanoVideoPlugin as Bp } from "./PanoVideoPlugin/index.js";
|
|
32
|
+
import { index as Up } from "./shared-utils/index.js";
|
|
33
|
+
import { CSS3DRender as kp } from "./CSS3DRenderPlugin/CSS3DRender.js";
|
|
34
|
+
import { Model as zp } from "./PanoMeasurePlugin/Model/index.js";
|
|
35
|
+
import { default as Kp } from "./PanoMeasurePlugin/Model/point.js";
|
|
36
|
+
import { default as Wp } from "./PanoMeasurePlugin/Model/line.js";
|
|
37
|
+
import { Polyline as Zp } from "./PanoMeasurePlugin/Model/polyline.js";
|
|
38
|
+
import { default as oe } from "./PanoMeasurePlugin/Modules/Magnifier.js";
|
|
39
|
+
import { DISPLAY_STRATEGY_TYPE as te } from "./ModelItemLabelPlugin/typings.js";
|
|
40
|
+
import { ModelItemLabelPlugin as ie } from "./ModelItemLabelPlugin/ModelItemLabelPlugin.js";
|
|
41
|
+
import { ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE as ee } from "./ItemLabelPlugin/typings.js";
|
|
42
|
+
import { Plugin as ne } from "./ItemLabelPlugin/Plugin.js";
|
|
43
|
+
import { default as Pe } from "./CruisePlugin/Controller.js";
|
|
44
|
+
import { default as fe, pluginFlag as xe } from "./PanoTagPlugin/controller/index.js";
|
|
45
|
+
import { ContentType as se } from "./PanoTagPlugin/typings/tag/TagData.js";
|
|
46
|
+
import { DimensionType as Te, PointType as Me } from "./PanoTagPlugin/typings/tag/Utils.js";
|
|
47
|
+
import { Object3DHelperController as Ee, PLUGIN as Re, VERSION as _e } from "./Object3DHelperPlugin/Controller.js";
|
|
48
|
+
import { typings as Oe } from "./PanoVideoPlugin/typings/index.js";
|
|
47
49
|
import "./components/PaintBrush/Controller.js";
|
|
48
50
|
import "./components/PaintBrush/utils.js";
|
|
49
51
|
import "./components/PaintBrush/tween.js";
|
|
@@ -328,6 +330,9 @@ import "./shared-utils/Object3DHelper/utils/vectorIsEqual.js";
|
|
|
328
330
|
import "./shared-utils/Object3DHelper/Controller/BoundingBoxController.js";
|
|
329
331
|
import "./shared-utils/Object3DHelper/Helper/ScaleHelper.js";
|
|
330
332
|
import "./shared-utils/Object3DHelper/Controller/ScaleController.js";
|
|
333
|
+
import "./PanoVideoPlugin/Controller.js";
|
|
334
|
+
import "./PanoVideoPlugin/VideoMeshController.js";
|
|
335
|
+
import "./PanoVideoPlugin/utils/shader.js";
|
|
331
336
|
import "./shared-utils/math/Interval.js";
|
|
332
337
|
import "./shared-utils/math/Rectangle.js";
|
|
333
338
|
import "./shared-utils/three/Magnifier.js";
|
|
@@ -339,58 +344,60 @@ import "./shared-utils/three/Assets/index.js";
|
|
|
339
344
|
import "./shared-utils/three/PointDomHelper.js";
|
|
340
345
|
import "./shared-utils/three/FivePointSelector.js";
|
|
341
346
|
export {
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
347
|
+
kp as CSS3DRender,
|
|
348
|
+
Ni as CSS3DRenderPlugin,
|
|
349
|
+
ap as CameraMovementEffect,
|
|
350
|
+
lp as CameraMovementPlugin,
|
|
351
|
+
se as ContentType,
|
|
352
|
+
Gp as CruisePlugin,
|
|
353
|
+
Pe as CruisePluginController,
|
|
354
|
+
Ip as DIRECTION,
|
|
355
|
+
te as DISPLAY_STRATEGY_TYPE,
|
|
356
|
+
Te as DimensionType,
|
|
357
|
+
ji as FLOOR_PLAN_ATTACHED_TO,
|
|
358
|
+
$i as FLOOR_TYPE_MAP,
|
|
359
|
+
Fp as GuideLinePlugin,
|
|
360
|
+
ee as ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE,
|
|
361
|
+
ne as ItemLabelPlugin,
|
|
362
|
+
oe as Magnifier,
|
|
363
|
+
Ji as MapviewFloorplanPlugin,
|
|
364
|
+
mp as ModelChassisCompassPlugin,
|
|
365
|
+
pp as ModelEntryDoorGuidePlugin,
|
|
366
|
+
qi as ModelFloorplanPlugin,
|
|
367
|
+
ie as ModelItemLabelPlugin,
|
|
368
|
+
Bi as ModelRoomLabelPlugin,
|
|
369
|
+
Op as ModelTVVideoPlugin,
|
|
370
|
+
Gi as ModelViewPlugin,
|
|
371
|
+
Ee as Object3DHelperController,
|
|
372
|
+
hp as Object3DHelperPlugin,
|
|
373
|
+
Re as PLUGIN,
|
|
374
|
+
bi as PaintBrush,
|
|
375
|
+
Fi as PaintBrushTypeEnum,
|
|
376
|
+
dp as PanoCompassPlugin,
|
|
377
|
+
hi as PanoCursorRaycasterPlugin,
|
|
378
|
+
bp as PanoDoorLabelPlugin,
|
|
379
|
+
Xi as PanoFloorplanRadarPlugin,
|
|
380
|
+
Mp as PanoMeasurePlugin,
|
|
381
|
+
Wp as PanoMeasurePluginLine,
|
|
382
|
+
zp as PanoMeasurePluginModel,
|
|
383
|
+
Kp as PanoMeasurePluginPoint,
|
|
384
|
+
Zp as PanoMeasurePluginPolyline,
|
|
385
|
+
fp as PanoRulerPlugin,
|
|
386
|
+
gp as PanoRulerProPlugin,
|
|
387
|
+
Ep as PanoSpatialTagPlugin,
|
|
388
|
+
Np as PanoTagPlugin,
|
|
389
|
+
fe as PanoTagPluginController,
|
|
390
|
+
Bp as PanoVideoPlugin,
|
|
391
|
+
Oe as PanoVideoPluginType,
|
|
392
|
+
Me as PointType,
|
|
393
|
+
op as ROOM_FETILE_TYPE_MAP,
|
|
394
|
+
rp as ROOM_TYPE_MAP,
|
|
395
|
+
Pp as Rotation,
|
|
396
|
+
Qi as TopviewFloorplanPlugin,
|
|
397
|
+
Up as Util,
|
|
398
|
+
_e as VERSION,
|
|
399
|
+
Dp as itemLabelPluginServerParams,
|
|
400
|
+
_p as modelItemLabelPluginServerParams,
|
|
401
|
+
Hi as modelRoomLabelPluginServerParams,
|
|
402
|
+
xe as pluginFlag
|
|
396
403
|
};
|