@realsee/dnalogel 2.6.6 → 2.6.7-dev.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.
Files changed (390) hide show
  1. package/dist/CSS3DRenderPlugin/Controller.d.ts +1 -1
  2. package/dist/Object3DHelperPlugin/Controller.d.ts +25 -10
  3. package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +6 -8
  4. package/dist/Object3DHelperPlugin/typings.d.ts +14 -0
  5. package/dist/PanoTagPlugin/controller/TagCacheController.d.ts +1 -0
  6. package/dist/PanoTagPlugin/controller/TagComputer.d.ts +23 -7
  7. package/dist/PanoTagPlugin/controller/index.d.ts +33 -6
  8. package/dist/PanoTagPlugin/typings/controller.d.ts +17 -2
  9. package/dist/PanoTagPlugin/typings/tag/Tag.d.ts +5 -2
  10. package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -1
  11. package/dist/PanoTagPlugin/typings/tag/TagData.d.ts +19 -3
  12. package/dist/PanoTagPlugin/typings/tag/Utils.d.ts +1 -1
  13. package/dist/PanoTagPlugin/utils/tag/index.d.ts +2 -0
  14. package/dist/PanoTagPlugin/utils/tag/tagCheck.d.ts +2 -1
  15. package/dist/PanoTagPlugin/utils/tagPosition.d.ts +3 -1
  16. package/dist/index.cjs.js +49 -49
  17. package/dist/index.js +5151 -4731
  18. package/dist/index.umd.js +32 -32
  19. package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +41 -15
  20. package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +27 -20
  21. package/dist/shared-utils/Object3DHelper/Controller/BoundingBoxController.d.ts +7 -0
  22. package/dist/shared-utils/Object3DHelper/Controller/CSS3DScaleController.d.ts +1 -0
  23. package/dist/shared-utils/Object3DHelper/Controller/MoveController.d.ts +24 -0
  24. package/dist/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +6 -1
  25. package/dist/shared-utils/Object3DHelper/Controller/RotateController.d.ts +14 -0
  26. package/dist/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +12 -0
  27. package/dist/shared-utils/Object3DHelper/Helper/{OutlineHelper.d.ts → BoundingBoxHelper.d.ts} +3 -2
  28. package/{libs/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts → dist/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts} +3 -8
  29. package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +14 -11
  30. package/dist/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +5 -0
  31. package/dist/shared-utils/Object3DHelper/Helper/index.d.ts +2 -2
  32. package/dist/shared-utils/Object3DHelper/index.d.ts +4 -27
  33. package/dist/shared-utils/Object3DHelper/typings/Hooks.d.ts +22 -12
  34. package/dist/shared-utils/Object3DHelper/typings/index.d.ts +22 -0
  35. package/dist/shared-utils/Object3DHelper/utils/boundingBox.d.ts +2 -0
  36. package/dist/shared-utils/three/GLTFLoader.d.ts +2 -0
  37. package/docs/assets/search.js +1 -1
  38. package/docs/classes/CSS3DRender.html +31 -31
  39. package/docs/classes/CruisePluginController.html +24 -24
  40. package/docs/classes/Magnifier.html +20 -20
  41. package/docs/classes/ModelRoomLabelController.html +11 -11
  42. package/docs/classes/Object3DHelperController.html +40 -33
  43. package/docs/classes/PaintBrush.html +15 -15
  44. package/docs/classes/PanoMeasurePluginLine.html +23 -23
  45. package/docs/classes/PanoMeasurePluginModel.html +22 -22
  46. package/docs/classes/PanoMeasurePluginPoint.html +14 -14
  47. package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
  48. package/docs/classes/PanoTagPluginController.html +279 -77
  49. package/docs/classes/Util.BetterTween.html +8 -8
  50. package/docs/classes/Util.FivePointSelector.html +12 -12
  51. package/docs/classes/Util.Interval.html +12 -12
  52. package/docs/classes/Util.Magnifier.html +17 -17
  53. package/docs/classes/Util.PointDomHelper.html +11 -11
  54. package/docs/classes/Util.PointHelper.html +11 -11
  55. package/docs/classes/Util.Rectangle.html +13 -13
  56. package/docs/enums/CameraMovementEffect.html +7 -7
  57. package/docs/enums/ContentType.html +34 -16
  58. package/docs/enums/DIRECTION.html +9 -9
  59. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  60. package/docs/enums/DimensionType.html +7 -7
  61. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  62. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  63. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  64. package/docs/enums/PointType.html +7 -7
  65. package/docs/enums/Rotation.html +8 -8
  66. package/docs/functions/CSS3DRenderPlugin.html +10 -5
  67. package/docs/functions/CameraMovementPlugin.html +10 -5
  68. package/docs/functions/CruisePlugin.html +10 -5
  69. package/docs/functions/GuideLinePlugin.html +10 -5
  70. package/docs/functions/ItemLabelPlugin.html +10 -5
  71. package/docs/functions/MapviewFloorplanPlugin.html +10 -5
  72. package/docs/functions/ModelChassisCompassPlugin.html +10 -5
  73. package/docs/functions/ModelEntryDoorGuidePlugin.html +10 -5
  74. package/docs/functions/ModelFloorplanPlugin.html +10 -5
  75. package/docs/functions/ModelItemLabelPlugin.html +10 -5
  76. package/docs/functions/ModelRoomLabelPlugin.html +10 -5
  77. package/docs/functions/ModelTVVideoPlugin.html +10 -5
  78. package/docs/functions/ModelViewPlugin.html +10 -5
  79. package/docs/functions/Object3DHelperPlugin.html +10 -5
  80. package/docs/functions/PanoCompassPlugin.html +10 -5
  81. package/docs/functions/PanoCursorRaycasterPlugin.html +10 -5
  82. package/docs/functions/PanoDoorLabelPlugin.html +10 -5
  83. package/docs/functions/PanoFloorplanRadarPlugin.html +10 -5
  84. package/docs/functions/PanoMeasurePlugin.html +10 -5
  85. package/docs/functions/PanoRulerPlugin.html +10 -5
  86. package/docs/functions/PanoRulerProPlugin.html +10 -5
  87. package/docs/functions/PanoSpatialTagPlugin.html +10 -5
  88. package/docs/functions/PanoTagPlugin.html +15 -10
  89. package/docs/functions/TopviewFloorplanPlugin.html +10 -5
  90. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  91. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  92. package/docs/functions/Util.getFrameTime.html +5 -5
  93. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  94. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  95. package/docs/functions/Util.isNil.html +5 -5
  96. package/docs/functions/Util.nextFrame.html +5 -5
  97. package/docs/functions/Util.notNil.html +5 -5
  98. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  99. package/docs/functions/Util.tweenProgress.html +5 -5
  100. package/docs/functions/pluginFlag.html +10 -5
  101. package/docs/index.html +9 -4
  102. package/docs/interfaces/AddTagConfig.html +6 -6
  103. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  104. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  105. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  106. package/docs/interfaces/EventMap.html +19 -19
  107. package/docs/interfaces/FloorplanBounding.html +8 -8
  108. package/docs/interfaces/FloorplanData.html +10 -10
  109. package/docs/interfaces/FloorplanEntrance.html +11 -11
  110. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  111. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  112. package/docs/interfaces/FloorplanFloorData.html +9 -9
  113. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  114. package/docs/interfaces/FloorplanObserver.html +9 -9
  115. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  116. package/docs/interfaces/FloorplanPosition.html +7 -7
  117. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  118. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  119. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  120. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  121. package/docs/interfaces/FloorplanServerData.html +7 -7
  122. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  123. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  124. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  125. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  126. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  127. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  128. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  129. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  130. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  131. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  132. package/docs/interfaces/HelperOffset.html +78 -0
  133. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  134. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  135. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  136. package/docs/interfaces/MinMax.html +7 -7
  137. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  138. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  139. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  140. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  141. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  142. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  143. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  144. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  145. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  146. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  147. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  148. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  149. package/docs/interfaces/ModelViewPluginExportType.html +11 -11
  150. package/docs/interfaces/Object3DHelperState.html +8 -8
  151. package/docs/interfaces/ObjectHelperControllers.html +85 -0
  152. package/docs/interfaces/PaintBrushAction.html +12 -12
  153. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  154. package/docs/interfaces/PaintBrushState.html +10 -10
  155. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  156. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +10 -5
  157. package/docs/interfaces/PanoMeasureParameterType.html +12 -12
  158. package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
  159. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
  160. package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
  161. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
  162. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  163. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  164. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  165. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  166. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  167. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  168. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  169. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +10 -5
  170. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +10 -5
  171. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  172. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  173. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  174. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  175. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  176. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  177. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  178. package/docs/interfaces/Point.html +8 -8
  179. package/docs/interfaces/Room.html +9 -9
  180. package/docs/interfaces/RoomInfo.html +7 -7
  181. package/docs/interfaces/RoomLabel.html +14 -14
  182. package/docs/interfaces/RoomRules.html +10 -5
  183. package/docs/interfaces/Rooms.html +10 -5
  184. package/docs/interfaces/Scissor.html +9 -9
  185. package/docs/interfaces/State.html +8 -8
  186. package/docs/interfaces/TagCache.html +25 -16
  187. package/docs/interfaces/TagConfig.html +11 -11
  188. package/docs/interfaces/TagIconUrl.html +9 -9
  189. package/docs/interfaces/Tags.html +11 -11
  190. package/docs/interfaces/TemporaryState.html +6 -6
  191. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  192. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  193. package/docs/modules/Util.html +5 -5
  194. package/docs/modules.html +14 -4
  195. package/docs/types/ArrayPosition.html +10 -5
  196. package/docs/types/AudioAppearance.html +10 -5
  197. package/docs/types/AudioTagTypeConfigKey.html +10 -5
  198. package/docs/types/CSS3DRenderExportType.html +10 -5
  199. package/docs/types/CSS3DRenderPluginExportType.html +10 -5
  200. package/docs/types/CSS3DRenderPluginParameterType.html +10 -5
  201. package/docs/types/ClassFunctionParameters.html +268 -0
  202. package/docs/types/Color.html +10 -5
  203. package/docs/types/ContentTypeConfigKey.html +10 -5
  204. package/docs/types/ContentTypeConfigKeySplit.html +10 -5
  205. package/docs/types/ContentTypeMap.html +10 -5
  206. package/docs/types/Create3DDomContainerReturnType.html +10 -5
  207. package/docs/types/Create3DElementReturnType.html +10 -5
  208. package/docs/types/CruisePluginExportType.html +10 -5
  209. package/docs/types/Direction-1.html +10 -5
  210. package/docs/types/Direction4.html +10 -5
  211. package/docs/types/FloorplanRuleLabels.html +10 -5
  212. package/docs/types/FloorplanServerRuleLabels.html +10 -5
  213. package/docs/types/GuideLinePluginExportType.html +10 -5
  214. package/docs/types/HelperEventMap.html +174 -21
  215. package/docs/types/LoadTagConfig.html +10 -5
  216. package/docs/types/MapviewFloorplanPluginParameterType.html +10 -5
  217. package/docs/types/MapviewFloorplanPluginReturnType.html +10 -5
  218. package/docs/types/MediaData.html +10 -5
  219. package/docs/types/MediaStore.html +10 -5
  220. package/docs/types/ModelElement.html +266 -0
  221. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +10 -5
  222. package/docs/types/ModelFloorplanPluginParameterType.html +10 -5
  223. package/docs/types/ModelFloorplanPluginReturnType.html +10 -5
  224. package/docs/types/ModelRoomLabelPluginParameters.html +10 -5
  225. package/docs/types/ModelRoomLabelPluginReturnType.html +10 -5
  226. package/docs/types/MoveArgs.html +10 -5
  227. package/docs/types/MoveOpts.html +10 -5
  228. package/docs/types/Object3DHelperEventMap.html +10 -5
  229. package/docs/types/ObjectFit.html +10 -5
  230. package/docs/types/PaintBrushEventMap.html +10 -5
  231. package/docs/types/PanoCompassPluginData.html +10 -5
  232. package/docs/types/PanoCompassPluginExportType.html +10 -5
  233. package/docs/types/PanoCompassPluginParameterType.html +10 -5
  234. package/docs/types/PanoFloorplanRadarPluginParameterType.html +10 -5
  235. package/docs/types/PanoFloorplanRadarPluginReturnType.html +10 -5
  236. package/docs/types/PanoIndex.html +10 -5
  237. package/docs/types/PanoMeasurePluginEvent.html +10 -5
  238. package/docs/types/PanoMeasureReturnType.html +10 -5
  239. package/docs/types/PanoSpatialTagPluginId.html +10 -5
  240. package/docs/types/PanoTagPluginExportInterface.html +10 -5
  241. package/docs/types/PanoTagPluginParamsInterface.html +10 -5
  242. package/docs/types/PlaneTag.html +10 -5
  243. package/docs/types/PlaneTagElement.html +10 -5
  244. package/docs/types/Point2DElement.html +10 -5
  245. package/docs/types/Point2DTag.html +10 -5
  246. package/docs/types/Point3DElement.html +10 -5
  247. package/docs/types/Point3DTag.html +10 -5
  248. package/docs/types/PointTag.html +10 -5
  249. package/docs/types/PointTagElement.html +10 -5
  250. package/docs/types/Position.html +10 -5
  251. package/docs/types/RotateArgs.html +10 -5
  252. package/docs/types/RotateOpts.html +10 -5
  253. package/docs/types/RuleLabelsKey.html +10 -5
  254. package/docs/types/RuleLabelsValue.html +10 -5
  255. package/docs/types/StickType.html +11 -6
  256. package/docs/types/Tag.html +11 -6
  257. package/docs/types/Tag2D.html +10 -5
  258. package/docs/types/Tag3D.html +10 -5
  259. package/docs/types/TagContentType.html +11 -6
  260. package/docs/types/TagDimensionType.html +10 -5
  261. package/docs/types/TagElement.html +11 -6
  262. package/docs/types/TagEvents.html +10 -5
  263. package/docs/types/TagGLTFObject.html +261 -0
  264. package/docs/types/TagHooks.html +10 -5
  265. package/docs/types/TagIconSize.html +10 -5
  266. package/docs/types/TagId.html +10 -5
  267. package/docs/types/TagPointType.html +10 -5
  268. package/docs/types/TopviewFloorplanPluginParameterType.html +10 -5
  269. package/docs/types/TopviewFloorplanPluginReturnType.html +10 -5
  270. package/docs/types/WorkCode.html +10 -5
  271. package/docs/variables/FLOOR_TYPE_MAP.html +10 -5
  272. package/docs/variables/PLUGIN.html +10 -5
  273. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +10 -5
  274. package/docs/variables/ROOM_TYPE_MAP.html +10 -5
  275. package/docs/variables/VERSION.html +10 -5
  276. package/docs/variables/itemLabelPluginServerParams.html +10 -5
  277. package/docs/variables/modelItemLabelPluginServerParams.html +10 -5
  278. package/docs/variables/modelRoomLabelPluginServerParams.html +10 -5
  279. package/libs/CSS3DRenderPlugin/CSS3DRender.js +93 -89
  280. package/libs/CSS3DRenderPlugin/Controller.d.ts +1 -1
  281. package/libs/CSS3DRenderPlugin/utils/generateBehindFiveElement.js +15 -14
  282. package/libs/Object3DHelperPlugin/Controller.d.ts +25 -10
  283. package/libs/Object3DHelperPlugin/Controller.js +117 -97
  284. package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +6 -8
  285. package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +29 -22
  286. package/libs/Object3DHelperPlugin/index.js +16 -11
  287. package/libs/Object3DHelperPlugin/typings.d.ts +14 -0
  288. package/libs/PanoTagPlugin/Components/Common/Media.js +3 -2
  289. package/libs/PanoTagPlugin/Components/Common/Text/FlyMText.js +3 -2
  290. package/libs/PanoTagPlugin/Components/Common/Text/FlyText.js +3 -2
  291. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js +3 -2
  292. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js +3 -2
  293. package/libs/PanoTagPlugin/Components/Tag/AudioTag/index.js +12 -11
  294. package/libs/PanoTagPlugin/Components/Tag/CustomTag.js +33 -33
  295. package/libs/PanoTagPlugin/Components/Tag/ImageTextTag.js +3 -2
  296. package/libs/PanoTagPlugin/Components/Tag/MediaPlane.js +12 -11
  297. package/libs/PanoTagPlugin/Components/Tag/TextTag/TextTag.js +26 -25
  298. package/libs/PanoTagPlugin/Components/Tag/TextTag/index.js +29 -28
  299. package/libs/PanoTagPlugin/Components/Tag/index.js +126 -119
  300. package/libs/PanoTagPlugin/Components/TagContainer.js +4 -2
  301. package/libs/PanoTagPlugin/Components/TagItem.js +4 -2
  302. package/libs/PanoTagPlugin/controller/TagCacheController.d.ts +1 -0
  303. package/libs/PanoTagPlugin/controller/TagCacheController.js +14 -12
  304. package/libs/PanoTagPlugin/controller/TagComputer.d.ts +23 -7
  305. package/libs/PanoTagPlugin/controller/TagComputer.js +244 -174
  306. package/libs/PanoTagPlugin/controller/index.d.ts +33 -6
  307. package/libs/PanoTagPlugin/controller/index.js +174 -88
  308. package/libs/PanoTagPlugin/index.js +15 -12
  309. package/libs/PanoTagPlugin/tag.config.js +9 -0
  310. package/libs/PanoTagPlugin/typings/controller.d.ts +17 -2
  311. package/libs/PanoTagPlugin/typings/controller.js +1 -1
  312. package/libs/PanoTagPlugin/typings/index.js +6 -5
  313. package/libs/PanoTagPlugin/typings/tag/Tag.d.ts +5 -2
  314. package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -1
  315. package/libs/PanoTagPlugin/typings/tag/TagData.d.ts +19 -3
  316. package/libs/PanoTagPlugin/typings/tag/TagData.js +1 -1
  317. package/libs/PanoTagPlugin/typings/tag/Utils.d.ts +1 -1
  318. package/libs/PanoTagPlugin/utils/addDebugPoints.js +5 -4
  319. package/libs/PanoTagPlugin/utils/color.js +5 -5
  320. package/libs/PanoTagPlugin/utils/index.js +37 -34
  321. package/libs/PanoTagPlugin/utils/planeNormal.js +3 -2
  322. package/libs/PanoTagPlugin/utils/tag/index.d.ts +2 -0
  323. package/libs/PanoTagPlugin/utils/tag/index.js +11 -0
  324. package/libs/PanoTagPlugin/utils/tag/tagCheck.d.ts +2 -1
  325. package/libs/PanoTagPlugin/utils/tag/tagCheck.js +6 -2
  326. package/libs/PanoTagPlugin/utils/tagPosition.d.ts +3 -1
  327. package/libs/PanoTagPlugin/utils/tagPosition.js +20 -8
  328. package/libs/index.js +111 -104
  329. package/libs/shared-utils/Object3DHelper/Base/BaseController.d.ts +41 -15
  330. package/libs/shared-utils/Object3DHelper/Base/BaseController.js +112 -90
  331. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +27 -20
  332. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +55 -22
  333. package/libs/shared-utils/Object3DHelper/Controller/BoundingBoxController.d.ts +7 -0
  334. package/libs/shared-utils/Object3DHelper/Controller/BoundingBoxController.js +14 -0
  335. package/libs/shared-utils/Object3DHelper/Controller/CSS3DScaleController.d.ts +1 -0
  336. package/libs/shared-utils/Object3DHelper/Controller/CSS3DScaleController.js +14 -10
  337. package/libs/shared-utils/Object3DHelper/Controller/MoveController.d.ts +24 -0
  338. package/libs/shared-utils/Object3DHelper/Controller/MoveController.js +80 -37
  339. package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +6 -1
  340. package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.js +44 -41
  341. package/libs/shared-utils/Object3DHelper/Controller/RotateController.d.ts +14 -0
  342. package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +95 -67
  343. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +12 -0
  344. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.js +21 -0
  345. package/libs/shared-utils/Object3DHelper/Helper/{OutlineHelper.d.ts → BoundingBoxHelper.d.ts} +3 -2
  346. package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.js +87 -0
  347. package/{dist/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts → libs/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts} +3 -8
  348. package/libs/shared-utils/Object3DHelper/Helper/{RectangleScaleHelper.js → CSS3DScaleHelper.js} +5 -7
  349. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +7 -9
  350. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +14 -11
  351. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +72 -66
  352. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +5 -0
  353. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.js +9 -0
  354. package/libs/shared-utils/Object3DHelper/Helper/index.d.ts +2 -2
  355. package/libs/shared-utils/Object3DHelper/Helper/index.js +0 -2
  356. package/libs/shared-utils/Object3DHelper/index.d.ts +4 -27
  357. package/libs/shared-utils/Object3DHelper/index.js +48 -96
  358. package/libs/shared-utils/Object3DHelper/typings/Hooks.d.ts +22 -12
  359. package/libs/shared-utils/Object3DHelper/typings/index.d.ts +22 -0
  360. package/libs/shared-utils/Object3DHelper/typings/index.js +2 -1
  361. package/libs/shared-utils/Object3DHelper/utils/boundingBox.d.ts +2 -0
  362. package/libs/shared-utils/Object3DHelper/utils/boundingBox.js +24 -0
  363. package/libs/shared-utils/Object3DHelper/utils/threex/domevents/index.js +2 -2
  364. package/libs/shared-utils/three/GLTFLoader.d.ts +2 -0
  365. package/libs/shared-utils/three/GLTFLoader.js +16 -0
  366. package/libs/typings/math.type.js +1 -0
  367. package/package.json +4 -4
  368. package/dist/shared-utils/Object3DHelper/utils/getPoint.d.ts +0 -3
  369. package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.d.ts +0 -4
  370. package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.js +0 -6
  371. package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.d.ts +0 -93
  372. package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.js +0 -5622
  373. package/libs/PanoTagPlugin/mocks/v1/mock-test3-realsee-cn-4zr0A5.js +0 -1325
  374. package/libs/PanoTagPlugin/mocks/v1/mock1.d.ts +0 -173
  375. package/libs/PanoTagPlugin/mocks/v1/mock1.js +0 -122
  376. package/libs/PanoTagPlugin/mocks/v1/mock2.d.ts +0 -233
  377. package/libs/PanoTagPlugin/mocks/v1/mock2.js +0 -296
  378. package/libs/PanoTagPlugin/mocks/v1/mock3.d.ts +0 -22
  379. package/libs/PanoTagPlugin/mocks/v1/mock3.js +0 -32
  380. package/libs/PanoTagPlugin/mocks/v1/mock4.d.ts +0 -56
  381. package/libs/PanoTagPlugin/mocks/v1/mock4.js +0 -60
  382. package/libs/PanoTagPlugin/mocks/v1/mock5.d.ts +0 -13
  383. package/libs/PanoTagPlugin/mocks/v1/mock5.js +0 -17
  384. package/libs/PanoTagPlugin/mocks/v1/mock6.d.ts +0 -16
  385. package/libs/PanoTagPlugin/mocks/v1/mock6.js +0 -27
  386. package/libs/PanoTagPlugin/mocks/v1/mock7.d.ts +0 -22
  387. package/libs/PanoTagPlugin/mocks/v1/mock7.js +0 -228
  388. package/libs/shared-utils/Object3DHelper/Helper/OutlineHelper.js +0 -2
  389. package/libs/shared-utils/Object3DHelper/utils/getPoint.d.ts +0 -3
  390. package/libs/shared-utils/Object3DHelper/utils/getPoint.js +0 -1
@@ -17,7 +17,7 @@ export interface Create3DDomContainerParamsType {
17
17
  mode?: 'front';
18
18
  } | {
19
19
  mode: 'behind';
20
- behindFiveContainer: HTMLElement;
20
+ behindFiveContainer?: HTMLElement;
21
21
  });
22
22
  }
23
23
  export default class Controller extends CSS3DRender implements BasePlugin.Controller<CSS3DRenderState, CSS3DRenderEventMap> {
@@ -1,16 +1,19 @@
1
- import type { Five } from '@realsee/five';
1
+ import { Five } from '@realsee/five';
2
2
  import * as BasePlugin from '../base/BasePlugin';
3
- import type * as THREE from 'three';
4
- import { Object3DHelper } from '../shared-utils/Object3DHelper';
3
+ import * as THREE from 'three';
4
+ import { Object3DHelper } from '../shared-utils/Object3DHelper/index';
5
5
  import type { Object3DHelperState } from '../shared-utils/Object3DHelper/typings';
6
- import type { Object3DHelperPluginEventMap, Object3DHelperPluginState } from './typings';
6
+ import type { HelperConfig, HelperOffset, Object3DHelperPluginEventMap, Object3DHelperPluginState } from './typings';
7
7
  export declare const VERSION = "v1.0.0";
8
8
  export declare const PLUGIN: string;
9
9
  export declare class Object3DHelperController extends BasePlugin.Controller<Object3DHelperPluginState, Object3DHelperPluginEventMap> {
10
10
  version: string;
11
11
  name: string;
12
12
  state: Object3DHelperState;
13
- objectHelperMap: Map<THREE.Object3D, Object3DHelper>;
13
+ objectHelperMap: Map<THREE.Object3D, {
14
+ helper: Object3DHelper;
15
+ disposers: (() => any)[];
16
+ }>;
14
17
  private css3DObjectParentMap;
15
18
  private css3DRender;
16
19
  constructor(five: Five);
@@ -45,7 +48,10 @@ export declare class Object3DHelperController extends BasePlugin.Controller<Obje
45
48
  setState(state: Partial<Object3DHelperState>, options?: {
46
49
  userAction?: boolean;
47
50
  } & Record<string, any>): void;
48
- getObject3DHelper(object3D: THREE.Object3D): Object3DHelper;
51
+ getObject3DHelper(object3D: THREE.Object3D): {
52
+ helper: Object3DHelper;
53
+ disposers: (() => any)[];
54
+ };
49
55
  /**
50
56
  * @description 添加 helper
51
57
  * @param { THREE.Object3D } object3D 要添加helper的物体
@@ -54,14 +60,23 @@ export declare class Object3DHelperController extends BasePlugin.Controller<Obje
54
60
  * @param { boolean } config.scaleHelper 缩放helper
55
61
  */
56
62
  addObject3DHelper(object3D: THREE.Object3D, config?: {
57
- moveHelper?: boolean;
58
- rotateHelper?: boolean;
59
- scaleHelper?: boolean;
60
- }): void;
63
+ moveHelper?: HelperConfig<{
64
+ offset?: HelperOffset;
65
+ }>;
66
+ rotateHelper?: HelperConfig<{
67
+ offset?: HelperOffset;
68
+ yzCircleEnable?: boolean;
69
+ xzCircleEnable?: boolean;
70
+ xyCircleEnable?: boolean;
71
+ }>;
72
+ scaleHelper?: HelperConfig;
73
+ boundingBoxHelper?: HelperConfig;
74
+ }): void | import("../shared-utils/Object3DHelper/typings").ObjectHelperControllers;
61
75
  removeObject3DHelper(object3D: THREE.Object3D): void;
62
76
  private handleEnable;
63
77
  private handleVisible;
64
78
  private handleDispose;
65
79
  private everyHelperDo;
66
80
  private actionIfStateIsEnabled;
81
+ private getConfig;
67
82
  }
@@ -1,19 +1,17 @@
1
1
  /**
2
2
  * @description: 将手势操作绑定到controller上
3
3
  */
4
- import type { Five } from '@realsee/five';
4
+ import type { Five, Subscribe } from '@realsee/five';
5
5
  import type { BaseController } from '../shared-utils/Object3DHelper/Base/BaseController';
6
6
  import type * as THREE from 'three';
7
- import type { BaseHelper } from '../shared-utils/Object3DHelper/Helper';
8
- declare class ControllerWrapper<Helper extends BaseHelper = BaseHelper, Controller extends BaseController = BaseController<Helper>> {
9
- helperController?: Controller;
7
+ declare class ControllerWrapper<HelperControllerInterface extends new (...params: ConstructorParameters<typeof BaseController<any>>) => any> {
8
+ helperController?: InstanceType<HelperControllerInterface>;
10
9
  private five;
11
- constructor(five: Five, HelperController: new (...params: ConstructorParameters<typeof BaseController<Helper>>) => Controller, object: THREE.Object3D, helperObjects: Helper);
10
+ constructor(five: Five, HelperController: HelperControllerInterface, object: THREE.Object3D, helperObject3D: InstanceType<HelperControllerInterface>['helperObject3D'], HelperControllerConfig?: ConstructorParameters<HelperControllerInterface>[1], hooks?: Subscribe<any>);
11
+ dispose(): void;
12
12
  private onFiveWantsTapGesture;
13
13
  private onFiveWantsGesture;
14
+ private onFiveIntersectionOnModelUpdate;
14
15
  }
15
- declare const controllerWrapper: <Helper extends BaseHelper<THREE.Object3D> = BaseHelper<THREE.Object3D>, Controller extends BaseController<BaseHelper<THREE.Object3D>, THREE.Object3D> = BaseController<Helper, THREE.Object3D>>(five: Five, HelperController: new (camera: THREE.Camera, model: THREE.Object3D, originObject3D: THREE.Object3D, helperObject3D: Helper, container: HTMLElement, scene: THREE.Scene, onRender?: () => void) => Controller, object: THREE.Object3D, helperObjects: Helper) => ControllerWrapper<Helper, Controller>;
16
16
  export { ControllerWrapper };
17
- export { controllerWrapper };
18
17
  export { ControllerWrapper as FiveControllerWrapper };
19
- export { controllerWrapper as fiveControllerWrapper };
@@ -3,6 +3,20 @@ export interface Object3DHelperPluginState {
3
3
  visible: boolean;
4
4
  disposed: boolean;
5
5
  }
6
+ export interface HelperOffset {
7
+ x: number | {
8
+ percents: number;
9
+ };
10
+ y: number | {
11
+ percents: number;
12
+ };
13
+ z: number | {
14
+ percents: number;
15
+ };
16
+ }
17
+ export declare type HelperConfig<T extends Object = {}> = boolean | ({
18
+ enable: boolean;
19
+ } & T);
6
20
  export declare type Object3DHelperPluginEventMap = {
7
21
  show: (options?: {
8
22
  userAction?: boolean;
@@ -18,4 +18,5 @@ export declare abstract class TagCacheController extends BasePlugin.Controller<S
18
18
  key: keyof TagCache;
19
19
  }): ValueOf<TagCache> | undefined;
20
20
  protected clearCache(): void;
21
+ protected removeCache(): void;
21
22
  }
@@ -1,6 +1,8 @@
1
- import type { Five } from '@realsee/five';
2
- import type { Tag, Tags, TagConfig, ContentTypeConfigKey, PlaneTag, TagElement, Point2DElement, Point3DElement, PlaneTagElement, PointTagElement, Point3DTag, TagId } from '../typings';
1
+ import type { Five, Mode } from '@realsee/five';
2
+ import * as THREE from 'three';
3
+ import type { Tag, Tags, TagConfig, ContentTypeConfigKey, PlaneTag, TagElement, Point2DElement, Point3DElement, PlaneTagElement, PointTagElement, Point3DTag, TagId, ModelElement, TagContentType, StickType } from '../typings';
3
4
  import { TagCacheController } from './TagCacheController';
5
+ import { Raycaster } from 'three';
4
6
  export declare abstract class TagComputer extends TagCacheController {
5
7
  tags: TagElement[];
6
8
  config: {
@@ -10,7 +12,7 @@ export declare abstract class TagComputer extends TagCacheController {
10
12
  protected get isPanorama(): boolean;
11
13
  private raycaster;
12
14
  protected constructor(five: Five);
13
- getTagById(id: TagId): TagElement<import("../typings").TagContentType, import("../typings").StickType>;
15
+ getTagById<C extends TagContentType = any, S extends StickType = any>(id: TagId): TagElement<C, S>;
14
16
  /**
15
17
  * @description: 改变类型配置
16
18
  */
@@ -19,6 +21,9 @@ export declare abstract class TagComputer extends TagCacheController {
19
21
  * @description: 获取是否可见
20
22
  */
21
23
  getVisibleByPanoIndex(tag: Tag<any, any>, panoIndex?: number): boolean;
24
+ getVisibelByFiveMode(tag: Tag<any, any>, mode: Mode): boolean;
25
+ /** 获取当前点位上模型中的多媒体是否应该展示 */
26
+ getModelMedialVisibleByPanoIndex(tag: Tag<any, any>): boolean;
22
27
  /**
23
28
  * @description: 获取是否展开
24
29
  */
@@ -38,7 +43,7 @@ export declare abstract class TagComputer extends TagCacheController {
38
43
  /**
39
44
  * @description: 获取merge后的配置
40
45
  */
41
- getTagConfig(tag: Tag<any, any>): TagConfig<import("../typings").TagContentType, import("../typings").StickType>;
46
+ getTagConfig(tag: Tag<any, any>): TagConfig<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown", StickType>;
42
47
  protected can(action: 'show' | 'hide' | 'fold' | 'unfold', tag: Tag<any, any>): boolean;
43
48
  protected sort<T extends Tag<any, any>>(tags: T[]): T[];
44
49
  /**
@@ -46,6 +51,7 @@ export declare abstract class TagComputer extends TagCacheController {
46
51
  */
47
52
  protected setPointTagPosition(): void;
48
53
  protected setVisibleByPanoIndex(): void;
54
+ protected setModelMedialVisibleByPanoIndex(): void;
49
55
  protected setUnfoldedByPanoIndex(): void;
50
56
  /**
51
57
  * @description: 一个点的标签
@@ -55,12 +61,22 @@ export declare abstract class TagComputer extends TagCacheController {
55
61
  y: number;
56
62
  z: number;
57
63
  };
58
- protected filterPointTag(): PointTagElement<import("../typings").TagContentType>[];
59
- protected filter2DPointTag(): Point2DElement<import("../typings").TagContentType>[];
60
- protected filter3DPointTag(): Point3DElement<import("../typings").TagContentType>[];
64
+ protected filterPointTag(): PointTagElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
65
+ protected filter2DPointTag(): Point2DElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
66
+ protected filter3DPointTag(): Point3DElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
67
+ protected filterModelTag(): ModelElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
61
68
  protected filter3DTag(): TagElement<any, "3DPoint" | "Plane">[];
62
69
  protected filterPlaneTag(): PlaneTagElement[];
63
70
  protected updateTagConfig(params?: {
64
71
  force?: boolean;
65
72
  }): void;
73
+ /** 通过射线检测标签可用性 */
74
+ protected getTagEnableByIntersect(tag: Tag<any, any>, raycaster: Raycaster): {
75
+ value: boolean;
76
+ reason: string;
77
+ };
78
+ /** 获取点位看向标签的射线 */
79
+ protected getRaycasterFromPanoIndex(tag: Tag, panoIndex: number): THREE.Raycaster;
80
+ /** 检测 target floor index 是否匹配当前楼层 */
81
+ protected checkFloorIndex(tag: TagElement): boolean;
66
82
  }
@@ -1,7 +1,8 @@
1
- import type { Tag, PartialDeep, TagId, Tags, State, AddTagConfig, LoadTagConfig } from '../typings';
1
+ import type { Tag, PartialDeep, TagId, Tags, TagElement, State, AddTagConfig, LoadTagConfig } from '../typings';
2
2
  import type { TagContentType } from '..';
3
3
  import type { ArrayPosition } from '../typings';
4
4
  import { Five } from '@realsee/five';
5
+ import { Object3D } from 'three';
5
6
  import { TagComputer } from './TagComputer';
6
7
  export declare const pluginFlag: (name: string) => string;
7
8
  declare class PanoTagPluginController extends TagComputer {
@@ -23,8 +24,12 @@ declare class PanoTagPluginController extends TagComputer {
23
24
  /** 临时状态 */
24
25
  private temporaryState;
25
26
  private mediaStore;
27
+ private group;
28
+ private gltfObjectGroup;
26
29
  private isIOSWX;
27
30
  private store;
31
+ /** 维护一个可用模型表,用于快速删除不应该在场景中的模型 */
32
+ private enabledModelTagSet;
28
33
  constructor(five: Five, params?: {
29
34
  debug?: boolean;
30
35
  config?: {
@@ -35,11 +40,11 @@ declare class PanoTagPluginController extends TagComputer {
35
40
  /**
36
41
  * @description: 加载数据
37
42
  */
38
- load(data: Tags, config?: LoadTagConfig): Promise<boolean>;
43
+ load(data: Tags, config?: LoadTagConfig): Promise<void>;
39
44
  /**
40
45
  * @description: 添加标签
41
46
  */
42
- addTag(tag: Tag | Tag[], config?: AddTagConfig): Promise<boolean>;
47
+ addTag(tag: Tag<any, any> | Tag<any, any>[], config?: AddTagConfig): Promise<void>;
43
48
  /**
44
49
  * @description: 改变配置
45
50
  */
@@ -89,15 +94,21 @@ declare class PanoTagPluginController extends TagComputer {
89
94
  /**
90
95
  * @description: 改变tag任意属性
91
96
  */
92
- changeTagById<C extends TagContentType = any>(id: TagId, tag: PartialDeep<{
93
- [P in keyof Pick<Tag<C>, 'enabled' | 'style' | 'stickType' | 'contentType' | 'data' | 'normal' | 'config'>]: Tag[P];
94
- }>, deepMerge?: boolean): void;
97
+ changeTagById<C extends TagContentType = any>(id: TagId, tag: PartialDeep<Tag<C>>, deepMerge?: boolean): void;
95
98
  /**
96
99
  * @description: 销毁tag
97
100
  */
98
101
  destroyTagById(id: TagId | TagId[]): void;
99
102
  /** 暂停当前标签内进行的所有多媒体 */
100
103
  pauseCurrentMedia(): void;
104
+ /** 更改 tag 模型 */
105
+ changeTagModel: (tag: TagElement<any, 'Model'>, data: PartialDeep<Tag<'MediaModel'>['data']>) => Promise<void>;
106
+ /** 更新标签中多媒体面片的位置
107
+ * @param tag 标签
108
+ * @param model 模型
109
+ * @param scale css3DObject 原始缩放比例
110
+ */
111
+ updateTagCss3DObjectMatrix<S extends 'Model' | 'Plane' = 'Model'>(tag: TagElement<any, S>, model: Object3D): void;
101
112
  /**
102
113
  * @description: 设置 visible 和 unfolded
103
114
  */
@@ -118,6 +129,7 @@ declare class PanoTagPluginController extends TagComputer {
118
129
  * @description: 切换模式处理函数
119
130
  */
120
131
  private handleFiveModeChange;
132
+ private handleFiveInitAnimationEnded;
121
133
  private handleFiveWantsMoveToPano;
122
134
  /**
123
135
  * @description: 走点/切换模型后显示
@@ -136,6 +148,8 @@ declare class PanoTagPluginController extends TagComputer {
136
148
  private handleFiveCameraUpdateDebounce;
137
149
  private handleFiveCameraUpdate;
138
150
  private handleFivePanoArrived;
151
+ /** 楼层切换时,需要更新标签可见性 */
152
+ private handleFiveModelShownFloorChange;
139
153
  private setUnfoldedByCamera;
140
154
  /**
141
155
  * @description: 渲染单个点的标签
@@ -145,11 +159,24 @@ declare class PanoTagPluginController extends TagComputer {
145
159
  * @description: 渲染3D贴片
146
160
  */
147
161
  private updateRenderPlaneTag;
162
+ /** 更新所有模型标签
163
+ *
164
+ * 1. 移除不应该在场景中的模型
165
+ * 2. 更新模型的可见性
166
+ *
167
+ * FIXME: 有性能问题,但是之前的逻辑都是这么写,暂时先这样吧
168
+ */
169
+ private updateRenderModelTag;
148
170
  private disposeAllCSS3DContainer;
149
171
  /**
150
172
  * @description: 检查并销毁不用的3D贴片
151
173
  */
152
174
  private checkPanelTag;
175
+ /** 添加模型标签 */
176
+ private addMediaModelTag;
177
+ /** 加载外部模型 */
178
+ private loadModel;
179
+ private changeTagMode;
153
180
  }
154
181
  export default PanoTagPluginController;
155
182
  export { PanoTagPluginController };
@@ -8,6 +8,7 @@ import type { Subscribe } from '@realsee/five';
8
8
  import type { TagId, StickType } from './tag/Utils';
9
9
  import type { TagContentType } from './tag/TagData';
10
10
  import type { Tag } from './tag/Tag';
11
+ import { GLTFObject } from '@realsee/five/gltf-loader';
11
12
  declare type NonNullable<T> = T extends null | undefined | void ? never : T;
12
13
  export declare type TagHooks = InstanceType<typeof PanoTagPluginController>['hooks'];
13
14
  export interface State extends BasePlugin.State {
@@ -73,11 +74,17 @@ export interface TagCache {
73
74
  minimumDistanceResult?: boolean;
74
75
  distance?: number;
75
76
  angle?: number;
76
- __debug_visiblereason__?: {
77
+ /** MedialModelTag 中,多媒体的隐藏 & 展示 */
78
+ modelMedialVisible?: boolean;
79
+ __debug_visible_reason__?: {
77
80
  value: boolean;
78
81
  reason?: string;
79
82
  };
80
83
  }
84
+ export declare type TagGLTFObject = GLTFObject & {
85
+ customID: number | string;
86
+ isTagModel: boolean;
87
+ };
81
88
  export declare type TagElement<C extends TagContentType = TagContentType, S extends StickType = StickType> = Tag<C, S> & Partial<{
82
89
  pointTagStyle: {
83
90
  leftPercent: number;
@@ -102,7 +109,14 @@ export declare type TagElement<C extends TagContentType = TagContentType, S exte
102
109
  };
103
110
  hooks: Subscribe<TagEvents>;
104
111
  mergedConfig: TagConfig<C, S>;
105
- };
112
+ } & (S extends 'Model' ? {
113
+ model?: {
114
+ promise: Promise<TagGLTFObject>;
115
+ object?: TagGLTFObject;
116
+ };
117
+ } : unknown) & (C extends 'MediaModel' ? {
118
+ mediaVisible?: boolean;
119
+ } : unknown);
106
120
  export declare type MediaStore = Writable<{
107
121
  currentMediaElement: HTMLMediaElement | null;
108
122
  }>;
@@ -110,4 +124,5 @@ export declare type PointTagElement<C extends TagContentType = TagContentType> =
110
124
  export declare type PlaneTagElement<C extends TagContentType = TagContentType> = TagElement<C, 'Plane'>;
111
125
  export declare type Point2DElement<C extends TagContentType = TagContentType> = TagElement<C, '2DPoint'>;
112
126
  export declare type Point3DElement<C extends TagContentType = TagContentType> = TagElement<C, '3DPoint'>;
127
+ export declare type ModelElement<C extends TagContentType = TagContentType> = TagElement<C, 'Model'>;
113
128
  export {};
@@ -30,7 +30,7 @@ export declare type Tag<C extends TagContentType = TagContentType, S extends Sti
30
30
  /** @type {TagContentType} 内容类型,根据内容类型展示对应UI */
31
31
  contentType: C;
32
32
  /** 点 */
33
- position: S extends 'Plane' ? [Position, Position, Position, Position] : S extends '2DPoint' | '3DPoint' ? Position : any;
33
+ position: S extends 'Plane' ? [Position, Position, Position, Position] : S extends '2DPoint' | '3DPoint' | 'Model' ? Position : any;
34
34
  /** 法向量 */
35
35
  normal?: Position;
36
36
  /** 自定义标签内容 */
@@ -50,4 +50,7 @@ export declare type Tag<C extends TagContentType = TagContentType, S extends Sti
50
50
  };
51
51
  } & (S extends '3DPoint' ? {
52
52
  normal: Position;
53
- } : unknown); /** 三维标签需要法向量 */
53
+ } : unknown) & // 三维标签需要法向量
54
+ (S extends 'Model' ? {
55
+ matrix: number[];
56
+ } : unknown);
@@ -1,5 +1,5 @@
1
1
  import type { Create3DDomContainerParamsType } from '../../../CSS3DRenderPlugin/Controller';
2
- import type { Five } from '@realsee/five';
2
+ import type { Five, Mode } from '@realsee/five';
3
3
  import type { TagContentType } from './TagData';
4
4
  import type { Tag } from './Tag';
5
5
  import type { MinMax, StickType } from './Utils';
@@ -8,6 +8,7 @@ export interface TagConfig<C extends TagContentType = TagContentType, S extends
8
8
  visibleConfig?: {
9
9
  /** 保持可见/不可见, 设置后visibleConfig下所有其他配置都不生效 */
10
10
  keep?: 'visible' | 'hidden';
11
+ visibleFiveMode?: Mode[];
11
12
  /** 走点时不隐藏 */
12
13
  alwaysShowWhenMovePano?: true;
13
14
  /** min-max米内显示 | 无距离限制 */
@@ -1,4 +1,4 @@
1
- import type { TagIconUrl } from './Utils';
1
+ import type { Position, TagIconUrl } from './Utils';
2
2
  export declare type MediaData = {
3
3
  type: 'Image';
4
4
  url: string;
@@ -30,10 +30,14 @@ export declare enum ContentType {
30
30
  Marketing = "Marketing",
31
31
  /** 图片视频贴片 */
32
32
  MediaPlane = "MediaPlane",
33
+ /** 带有多媒体的模型 */
34
+ MediaModel = "MediaModel",
33
35
  /** 其他/自定义标签 */
34
- Custom = "Custom"
36
+ Custom = "Custom",
37
+ /** Unknown */
38
+ Unknown = "Unknown"
35
39
  }
36
- export declare type TagContentType = keyof typeof ContentType | 'Unknown';
40
+ export declare type TagContentType = keyof typeof ContentType;
37
41
  /**
38
42
  * @description: 标签数据
39
43
  */
@@ -147,6 +151,18 @@ interface ContentTypeMapInterface {
147
151
  playIcon?: 'withText' | 'withoutText' | string;
148
152
  extraData?: Object;
149
153
  };
154
+ MediaModel: {
155
+ modelUrl: string;
156
+ matrix?: number[];
157
+ mediaPosition: [Position, Position, Position, Position];
158
+ /** 多媒体在容器中的适配规则 */
159
+ objectFit?: ObjectFit;
160
+ action?: {
161
+ url: string;
162
+ type: 'iframe' | 'window';
163
+ };
164
+ mediaData: MediaData[];
165
+ };
150
166
  Custom: Object;
151
167
  Unknown: Object;
152
168
  }
@@ -22,7 +22,7 @@ export declare enum PointType {
22
22
  }
23
23
  /** @deprecated 改用 stickType */
24
24
  export declare type TagPointType = keyof typeof PointType;
25
- export declare type StickType = '2DPoint' | '3DPoint' | 'Plane';
25
+ export declare type StickType = '2DPoint' | '3DPoint' | 'Plane' | 'Model';
26
26
  export interface TagIconUrl {
27
27
  url: string;
28
28
  /** 指切图是几倍图,如 2倍图, 3倍图,默认值为 3 */
@@ -0,0 +1,2 @@
1
+ import { Tag } from '../../typings';
2
+ export declare function getMediaModelPlanPositions(tag: Tag<'MediaModel', 'Model'>): number[][];
@@ -1,7 +1,8 @@
1
- import type { Tag } from '../../typings';
1
+ import type { Tag, TagElement } from '../../typings';
2
2
  export declare function isPointTag(tag: Tag): boolean;
3
3
  export declare function isPlaneTag(tag: Tag): boolean;
4
4
  export declare function isPoint2DTag(tag: Tag): boolean;
5
5
  export declare function isPoint3DTag(tag: Tag): boolean;
6
6
  export declare function is2DTag(tag: Tag): boolean;
7
7
  export declare function is3DTag(tag: Tag): boolean;
8
+ export declare function isMediaModelTag(tag: Tag): tag is TagElement<'MediaModel', 'Model'>;
@@ -1,3 +1,5 @@
1
- import type { Vector3 } from 'three';
1
+ import { Vector3 } from 'three';
2
2
  import { AnyPosition } from '.';
3
+ import { Tag } from '../typings';
3
4
  export declare function tagPosition(position: AnyPosition | [AnyPosition, AnyPosition, AnyPosition, AnyPosition]): Vector3;
5
+ export declare function getTagPosition(tag: Tag): Vector3;