@realsee/dnalogel 2.0.0-alpha.9 → 2.0.0-beta.36

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 (485) hide show
  1. package/README.md +78 -28
  2. package/components/index.js +1450 -0
  3. package/dist/CSS3DRenderPlugin/Plugin.d.ts +49 -0
  4. package/dist/CSS3DRenderPlugin/index.d.ts +3 -48
  5. package/dist/CSS3DRenderPlugin/index.js +27 -26
  6. package/dist/CameraMovementPlugin/CameraMovementPlugin.d.ts +7 -0
  7. package/dist/CameraMovementPlugin/index.d.ts +4 -6
  8. package/dist/CameraMovementPlugin/index.js +12 -12
  9. package/dist/CameraMovementPlugin/typing.d.ts +1 -1
  10. package/dist/ItemLabelPlugin/Plugin.d.ts +4 -0
  11. package/dist/ItemLabelPlugin/events.type.d.ts +9 -0
  12. package/dist/ItemLabelPlugin/index.d.ts +9 -0
  13. package/dist/ItemLabelPlugin/index.js +941 -0
  14. package/dist/ItemLabelPlugin/typings.d.ts +59 -0
  15. package/dist/ItemLabelPlugin/utils/getLabelTransform.d.ts +1 -0
  16. package/dist/ItemLabelPlugin/utils/getStrokeLength.d.ts +5 -0
  17. package/dist/ItemLabelPlugin/utils/isImpacted.d.ts +6 -0
  18. package/dist/ItemLabelPlugin/utils/parseData.d.ts +3 -0
  19. package/dist/ItemLabelPlugin/utils/transform2RenderData.d.ts +3 -0
  20. package/dist/ModelChassisCompassPlugin/Plugin.d.ts +19 -0
  21. package/dist/ModelChassisCompassPlugin/index.d.ts +3 -18
  22. package/dist/ModelChassisCompassPlugin/index.js +8 -5
  23. package/dist/ModelEntryDoorGuidePlugin/Plugin.d.ts +26 -0
  24. package/dist/ModelEntryDoorGuidePlugin/index.d.ts +3 -25
  25. package/dist/ModelEntryDoorGuidePlugin/index.js +20 -20
  26. package/dist/ModelItemLabelPlugin/ModelItemLabelPlugin.d.ts +4 -0
  27. package/dist/ModelItemLabelPlugin/events.type.d.ts +9 -0
  28. package/dist/ModelItemLabelPlugin/index.d.ts +9 -0
  29. package/dist/ModelItemLabelPlugin/index.js +674 -0
  30. package/dist/ModelItemLabelPlugin/typings.d.ts +56 -0
  31. package/dist/ModelItemLabelPlugin/utils/parseData.d.ts +3 -0
  32. package/dist/ModelRoomLabelPlugin/index.js +153 -73
  33. package/dist/ModelRoomLabelPlugin/utils/parseData.d.ts +1 -1
  34. package/dist/ModelTVVideoPlugin/Plugin.d.ts +4 -0
  35. package/dist/ModelTVVideoPlugin/index.d.ts +5 -0
  36. package/dist/ModelTVVideoPlugin/index.js +301 -0
  37. package/dist/ModelTVVideoPlugin/typings.d.ts +25 -0
  38. package/dist/ModelTVVideoPlugin/utils/parseData.d.ts +2 -0
  39. package/dist/ModelViewPlugin/Plugin.d.ts +17 -0
  40. package/dist/ModelViewPlugin/index.d.ts +3 -16
  41. package/dist/PanoCompassPlugin/Plugin.d.ts +47 -0
  42. package/dist/PanoCompassPlugin/index.d.ts +4 -47
  43. package/dist/PanoCompassPlugin/index.js +242 -129
  44. package/dist/PanoCursorRaycasterPlugin/index.d.ts +1 -1
  45. package/dist/PanoCursorRaycasterPlugin/index.js +5 -3
  46. package/dist/PanoMeasurePlugin/Controller/BaseController.d.ts +12 -9
  47. package/dist/PanoMeasurePlugin/Controller/EditController.d.ts +1 -1
  48. package/dist/PanoMeasurePlugin/Controller/MixedController.d.ts +44 -0
  49. package/dist/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +2 -2
  50. package/dist/PanoMeasurePlugin/Controller/WatchController.d.ts +2 -1
  51. package/dist/PanoMeasurePlugin/Controller/index.d.ts +18 -9
  52. package/dist/PanoMeasurePlugin/Model/index.d.ts +2 -2
  53. package/dist/PanoMeasurePlugin/Model/line.d.ts +5 -5
  54. package/dist/PanoMeasurePlugin/Model/point.d.ts +2 -2
  55. package/dist/PanoMeasurePlugin/Model/polyline.d.ts +3 -3
  56. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +1 -1
  57. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +1 -1
  58. package/dist/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +5 -2
  59. package/dist/PanoMeasurePlugin/Modules/FiveHelper.d.ts +1 -1
  60. package/dist/PanoMeasurePlugin/Modules/GuideController.d.ts +1 -1
  61. package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +50 -15
  62. package/dist/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +1 -1
  63. package/dist/PanoMeasurePlugin/Modules/UIController/NewMainBtnController.d.ts +12 -0
  64. package/dist/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +2 -1
  65. package/dist/PanoMeasurePlugin/Modules/UIController/index.d.ts +5 -1
  66. package/dist/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
  67. package/dist/PanoMeasurePlugin/Modules/UIController/style.d.ts +2 -0
  68. package/dist/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +4 -0
  69. package/dist/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +42 -0
  70. package/dist/PanoMeasurePlugin/index.d.ts +9 -6
  71. package/dist/PanoMeasurePlugin/index.js +2649 -3442
  72. package/dist/PanoMeasurePlugin/typings/data.d.ts +4 -0
  73. package/dist/PanoMeasurePlugin/typings/event.type.d.ts +14 -5
  74. package/dist/PanoMeasurePlugin/utils/calculateThreeMouse.d.ts +10 -0
  75. package/dist/PanoMeasurePlugin/utils/clearGroup.d.ts +1 -1
  76. package/dist/PanoMeasurePlugin/utils/constants.d.ts +1 -1
  77. package/dist/PanoMeasurePlugin/utils/distanceDom.d.ts +3 -3
  78. package/dist/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +1 -1
  79. package/dist/PanoMeasurePlugin/utils/findClosestPoint.d.ts +3 -3
  80. package/dist/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +2 -2
  81. package/dist/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +1 -1
  82. package/dist/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +1 -1
  83. package/dist/PanoMeasurePlugin/utils/line.d.ts +1 -1
  84. package/dist/PanoMeasurePlugin/utils/mouseGroup.d.ts +2 -2
  85. package/dist/PanoRulerPlugin/Plugin.d.ts +31 -0
  86. package/dist/PanoRulerPlugin/index.d.ts +4 -30
  87. package/dist/PanoRulerPlugin/index.js +12 -12
  88. package/dist/PanoSpatialTagPlugin/Plugin.d.ts +35 -0
  89. package/dist/PanoSpatialTagPlugin/index.d.ts +5 -0
  90. package/dist/PanoSpatialTagPlugin/index.js +1307 -0
  91. package/dist/PanoSpatialTagPlugin/store.d.ts +1 -0
  92. package/dist/PanoSpatialTagPlugin/style.d.ts +1 -0
  93. package/dist/PanoSpatialTagPlugin/typings.d.ts +40 -0
  94. package/dist/base/BasePlugin.d.ts +100 -0
  95. package/dist/base/BasePluginWithData.d.ts +34 -0
  96. package/dist/components/PaintBrush/Controller.d.ts +43 -0
  97. package/dist/components/PaintBrush/Subscribe.d.ts +76 -0
  98. package/dist/components/PaintBrush/index.d.ts +27 -0
  99. package/dist/components/PaintBrush/style.d.ts +2 -0
  100. package/dist/components/PaintBrush/tween.d.ts +62 -0
  101. package/dist/components/PaintBrush/typings.d.ts +58 -0
  102. package/dist/components/PaintBrush/utils.d.ts +26 -0
  103. package/dist/components/index.d.ts +2 -0
  104. package/dist/floorplan/{ModelFloorplanPlugin/Assets → Assets}/compass.d.ts +0 -0
  105. package/dist/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -77
  106. package/dist/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
  107. package/dist/floorplan/ModelFloorplanPlugin/index.js +2319 -1620
  108. package/dist/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
  109. package/dist/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +24 -16
  110. package/dist/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
  111. package/dist/floorplan/PanoFloorplanRadarPlugin/index.js +601 -266
  112. package/dist/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
  113. package/dist/floorplan/TopviewFloorplanPlugin/Controller.d.ts +53 -47
  114. package/dist/floorplan/TopviewFloorplanPlugin/index.d.ts +6 -4
  115. package/dist/floorplan/TopviewFloorplanPlugin/index.js +2198 -1428
  116. package/dist/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
  117. package/dist/floorplan/index.d.ts +6 -0
  118. package/dist/floorplan/utils/constant.d.ts +22 -0
  119. package/dist/floorplan/utils/correctFiveState.d.ts +15 -0
  120. package/dist/floorplan/utils/formatPosition.d.ts +1 -1
  121. package/dist/index.d.ts +15 -24
  122. package/dist/index.es.js +10694 -7145
  123. package/dist/index.js +10432 -6869
  124. package/dist/index.umd.js +10435 -6875
  125. package/dist/shared-utils/five/changeMode.d.ts +4 -1
  126. package/dist/shared-utils/getPxmm.d.ts +8 -0
  127. package/dist/shared-utils/index.d.ts +1 -0
  128. package/dist/shared-utils/math/Interval.d.ts +13 -0
  129. package/dist/shared-utils/math/Rectangle.d.ts +27 -0
  130. package/dist/shared-utils/math/index.d.ts +2 -0
  131. package/dist/shared-utils/three/getExtraModelLoader.d.ts +1 -1
  132. package/dist/shared-utils/three/getNormal.d.ts +1 -1
  133. package/dist/shared-utils/three/getTextureLoader.d.ts +1 -1
  134. package/dist/shared-utils/three/loadFbxObj.d.ts +1 -1
  135. package/dist/shared-utils/tinyEJSrender.d.ts +5 -0
  136. package/dist/shared-utils/uuid.d.ts +1 -0
  137. package/dist/shared-utils/vectorTocoordinates.d.ts +1 -1
  138. package/docs/assets/search.js +1 -1
  139. package/docs/classes/Magnifier.html +9 -0
  140. package/docs/classes/ModelRoomLabelController.html +5 -8
  141. package/docs/enums/CameraMovementEffect.html +3 -0
  142. package/docs/enums/DIRECTION.html +1 -0
  143. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +1 -0
  144. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +1 -1
  145. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +1 -0
  146. package/docs/enums/Rotation.html +3 -0
  147. package/docs/index.html +78 -33
  148. package/docs/interfaces/CSS3DRenderPluginExportType.html +4 -0
  149. package/docs/interfaces/CameraMovementPluginExportType.html +17 -0
  150. package/docs/interfaces/FloorplanBounding.html +10 -0
  151. package/docs/interfaces/FloorplanData.html +3 -0
  152. package/docs/interfaces/FloorplanEntrance.html +15 -0
  153. package/docs/interfaces/FloorplanExtraObject.html +7 -0
  154. package/docs/interfaces/FloorplanExtraObject3D.html +3 -0
  155. package/docs/interfaces/FloorplanFloorData.html +3 -0
  156. package/docs/interfaces/FloorplanImagePosition.html +3 -0
  157. package/docs/interfaces/FloorplanObserver.html +5 -0
  158. package/docs/interfaces/FloorplanOutlineItem.html +3 -0
  159. package/docs/interfaces/FloorplanPosition.html +3 -0
  160. package/docs/interfaces/FloorplanRoomItem.html +17 -0
  161. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -0
  162. package/docs/interfaces/FloorplanServerBounding.html +10 -0
  163. package/docs/interfaces/FloorplanServerComputedData.html +1 -0
  164. package/docs/interfaces/FloorplanServerData.html +3 -0
  165. package/docs/interfaces/FloorplanServerEntrance.html +15 -0
  166. package/docs/interfaces/FloorplanServerFloorData.html +3 -0
  167. package/docs/interfaces/FloorplanServerImagePosition.html +3 -0
  168. package/docs/interfaces/FloorplanServerObserver.html +5 -0
  169. package/docs/interfaces/FloorplanServerOutlineItem.html +3 -0
  170. package/docs/interfaces/FloorplanServerPosition.html +3 -0
  171. package/docs/interfaces/FloorplanServerRoomItem.html +20 -0
  172. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -0
  173. package/docs/interfaces/ItemLabelPluginData.html +1 -0
  174. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +1 -0
  175. package/docs/interfaces/ItemLabelPluginParametersType.html +1 -0
  176. package/docs/interfaces/LineJson.html +1 -1
  177. package/docs/interfaces/ModelChassisCompassPluginData.html +1 -1
  178. package/docs/interfaces/ModelChassisCompassPluginExportType.html +1 -1
  179. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +1 -1
  180. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +1 -1
  181. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +1 -1
  182. package/docs/interfaces/ModelItemLabelPluginData.html +1 -0
  183. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +1 -0
  184. package/docs/interfaces/ModelItemLabelPluginParametersType.html +1 -0
  185. package/docs/interfaces/ModelRoomLabelPluginData.html +1 -1
  186. package/docs/interfaces/ModelTVVideoPluginData.html +1 -0
  187. package/docs/interfaces/ModelTVVideoPluginExportType.html +1 -0
  188. package/docs/interfaces/ModelTVVideoPluginParameterType.html +1 -0
  189. package/docs/interfaces/ModelViewPluginExportType.html +1 -0
  190. package/docs/interfaces/OpenParameter.html +3 -0
  191. package/docs/interfaces/PanoCompassPluginData.html +1 -1
  192. package/docs/interfaces/PanoCompassPluginParameterType.html +1 -1
  193. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +6 -6
  194. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -0
  195. package/docs/interfaces/PanoMeasureParameterType.html +1 -0
  196. package/docs/interfaces/PanoRulerPluginExportType.html +1 -1
  197. package/docs/interfaces/PanoRulerPluginOptions.html +1 -1
  198. package/docs/interfaces/PanoRulerPluginParameterType.html +1 -1
  199. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -0
  200. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -0
  201. package/docs/interfaces/PanoSpatialTagPluginData.html +1 -0
  202. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +1 -0
  203. package/docs/interfaces/PanoSpatialTagPluginExportType.html +1 -0
  204. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +1 -0
  205. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +1 -0
  206. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +1 -0
  207. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +1 -0
  208. package/docs/interfaces/Point.html +1 -0
  209. package/docs/interfaces/PointJson.html +1 -1
  210. package/docs/interfaces/Room.html +1 -0
  211. package/docs/interfaces/RoomInfo.html +1 -0
  212. package/docs/interfaces/RoomLabel.html +7 -7
  213. package/docs/interfaces/RoomRules.html +1 -0
  214. package/docs/interfaces/Rooms.html +1 -0
  215. package/docs/modules.html +26 -18
  216. package/libs/CSS3DRenderPlugin/Plugin.d.ts +49 -0
  217. package/libs/CSS3DRenderPlugin/Plugin.js +182 -0
  218. package/libs/CSS3DRenderPlugin/index.d.ts +3 -48
  219. package/libs/CSS3DRenderPlugin/index.js +2 -180
  220. package/libs/CameraMovementPlugin/CameraMovementPlugin.d.ts +7 -0
  221. package/libs/CameraMovementPlugin/CameraMovementPlugin.js +159 -0
  222. package/libs/CameraMovementPlugin/index.d.ts +4 -6
  223. package/libs/CameraMovementPlugin/index.js +3 -158
  224. package/libs/CameraMovementPlugin/typing.d.ts +1 -1
  225. package/libs/ItemLabelPlugin/ItemLabelComponent.js +577 -0
  226. package/libs/ItemLabelPlugin/ItemLabelItem.js +227 -0
  227. package/libs/ItemLabelPlugin/Plugin.d.ts +4 -0
  228. package/libs/ItemLabelPlugin/Plugin.js +120 -0
  229. package/libs/ItemLabelPlugin/events.type.d.ts +9 -0
  230. package/libs/ItemLabelPlugin/events.type.js +1 -0
  231. package/libs/ItemLabelPlugin/index.d.ts +9 -0
  232. package/libs/ItemLabelPlugin/index.js +8 -0
  233. package/libs/ItemLabelPlugin/typings.d.ts +59 -0
  234. package/libs/ItemLabelPlugin/typings.js +7 -0
  235. package/libs/ItemLabelPlugin/utils/getLabelTransform.d.ts +1 -0
  236. package/libs/ItemLabelPlugin/utils/getLabelTransform.js +3 -0
  237. package/libs/ItemLabelPlugin/utils/getStrokeLength.d.ts +5 -0
  238. package/libs/ItemLabelPlugin/utils/getStrokeLength.js +16 -0
  239. package/libs/ItemLabelPlugin/utils/isImpacted.d.ts +6 -0
  240. package/libs/ItemLabelPlugin/utils/isImpacted.js +13 -0
  241. package/libs/ItemLabelPlugin/utils/parseData.d.ts +3 -0
  242. package/libs/ItemLabelPlugin/utils/parseData.js +4 -0
  243. package/libs/ItemLabelPlugin/utils/transform2RenderData.d.ts +3 -0
  244. package/libs/ItemLabelPlugin/utils/transform2RenderData.js +4 -0
  245. package/libs/ModelChassisCompassPlugin/Plugin.d.ts +19 -0
  246. package/libs/ModelChassisCompassPlugin/Plugin.js +77 -0
  247. package/libs/ModelChassisCompassPlugin/index.d.ts +3 -18
  248. package/libs/ModelChassisCompassPlugin/index.js +2 -74
  249. package/libs/ModelEntryDoorGuidePlugin/Plugin.d.ts +26 -0
  250. package/libs/ModelEntryDoorGuidePlugin/Plugin.js +140 -0
  251. package/libs/ModelEntryDoorGuidePlugin/index.d.ts +3 -25
  252. package/libs/ModelEntryDoorGuidePlugin/index.js +2 -136
  253. package/libs/ModelItemLabelPlugin/ItemLabelComponent.js +409 -0
  254. package/libs/ModelItemLabelPlugin/ItemLabelItem.js +133 -0
  255. package/libs/ModelItemLabelPlugin/ModelItemLabelPlugin.d.ts +4 -0
  256. package/libs/ModelItemLabelPlugin/ModelItemLabelPlugin.js +120 -0
  257. package/libs/ModelItemLabelPlugin/events.type.d.ts +9 -0
  258. package/libs/ModelItemLabelPlugin/events.type.js +1 -0
  259. package/libs/ModelItemLabelPlugin/index.d.ts +9 -0
  260. package/libs/ModelItemLabelPlugin/index.js +8 -0
  261. package/libs/ModelItemLabelPlugin/typings.d.ts +56 -0
  262. package/libs/ModelItemLabelPlugin/typings.js +7 -0
  263. package/libs/ModelItemLabelPlugin/utils/parseData.d.ts +3 -0
  264. package/libs/ModelItemLabelPlugin/utils/parseData.js +4 -0
  265. package/libs/ModelRoomLabelPlugin/Controller.js +65 -23
  266. package/libs/ModelRoomLabelPlugin/RoomLabelItems.js +83 -45
  267. package/libs/ModelRoomLabelPlugin/utils/parseData.d.ts +1 -1
  268. package/libs/ModelSimulationPlugin/index.d.ts +33 -0
  269. package/libs/ModelSimulationPlugin/index.js +166 -0
  270. package/libs/ModelSimulationPlugin/shaders/fragment.d.ts +2 -0
  271. package/libs/ModelSimulationPlugin/shaders/fragment.js +96 -0
  272. package/libs/ModelSimulationPlugin/shaders/vertex.d.ts +2 -0
  273. package/libs/ModelSimulationPlugin/shaders/vertex.js +23 -0
  274. package/libs/ModelTVVideoPlugin/Plugin.d.ts +4 -0
  275. package/libs/ModelTVVideoPlugin/Plugin.js +254 -0
  276. package/libs/ModelTVVideoPlugin/index.d.ts +5 -0
  277. package/libs/ModelTVVideoPlugin/index.js +4 -0
  278. package/libs/ModelTVVideoPlugin/typings.d.ts +25 -0
  279. package/libs/ModelTVVideoPlugin/typings.js +8 -0
  280. package/libs/ModelTVVideoPlugin/utils/parseData.d.ts +2 -0
  281. package/libs/ModelTVVideoPlugin/utils/parseData.js +13 -0
  282. package/libs/ModelViewPlugin/Plugin.d.ts +17 -0
  283. package/libs/ModelViewPlugin/Plugin.js +160 -0
  284. package/libs/ModelViewPlugin/index.d.ts +3 -16
  285. package/libs/ModelViewPlugin/index.js +2 -159
  286. package/libs/PanoCompassPlugin/Plugin.d.ts +47 -0
  287. package/libs/PanoCompassPlugin/Plugin.js +249 -0
  288. package/libs/PanoCompassPlugin/index.d.ts +4 -47
  289. package/libs/PanoCompassPlugin/index.js +3 -167
  290. package/libs/PanoCursorRaycasterPlugin/index.d.ts +1 -1
  291. package/libs/PanoCursorRaycasterPlugin/index.js +5 -3
  292. package/libs/PanoMeasurePlugin/Controller/BaseController.d.ts +12 -9
  293. package/libs/PanoMeasurePlugin/Controller/BaseController.js +77 -14
  294. package/libs/PanoMeasurePlugin/Controller/EditController.d.ts +1 -1
  295. package/libs/PanoMeasurePlugin/Controller/EditController.js +268 -155
  296. package/libs/PanoMeasurePlugin/Controller/MixedController.d.ts +44 -0
  297. package/libs/PanoMeasurePlugin/Controller/MixedController.js +337 -0
  298. package/libs/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +2 -2
  299. package/libs/PanoMeasurePlugin/Controller/ShortcutKeyController.js +40 -20
  300. package/libs/PanoMeasurePlugin/Controller/WatchController.d.ts +2 -1
  301. package/libs/PanoMeasurePlugin/Controller/WatchController.js +246 -153
  302. package/libs/PanoMeasurePlugin/Controller/index.d.ts +18 -9
  303. package/libs/PanoMeasurePlugin/Controller/index.js +182 -54
  304. package/libs/PanoMeasurePlugin/Model/index.d.ts +2 -2
  305. package/libs/PanoMeasurePlugin/Model/index.js +30 -5
  306. package/libs/PanoMeasurePlugin/Model/line.d.ts +5 -5
  307. package/libs/PanoMeasurePlugin/Model/line.js +61 -11
  308. package/libs/PanoMeasurePlugin/Model/point.d.ts +2 -2
  309. package/libs/PanoMeasurePlugin/Model/point.js +24 -4
  310. package/libs/PanoMeasurePlugin/Model/polyline.d.ts +3 -3
  311. package/libs/PanoMeasurePlugin/Model/polyline.js +20 -3
  312. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +1 -1
  313. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +11 -14
  314. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +1 -1
  315. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +1 -1
  316. package/libs/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +5 -2
  317. package/libs/PanoMeasurePlugin/Modules/DeleteDom/index.js +107 -25
  318. package/libs/PanoMeasurePlugin/Modules/FiveHelper.d.ts +1 -1
  319. package/libs/PanoMeasurePlugin/Modules/FiveHelper.js +23 -8
  320. package/libs/PanoMeasurePlugin/Modules/GuideController.d.ts +1 -1
  321. package/libs/PanoMeasurePlugin/Modules/GuideController.js +61 -26
  322. package/libs/PanoMeasurePlugin/Modules/Magnifier.d.ts +50 -15
  323. package/libs/PanoMeasurePlugin/Modules/Magnifier.js +234 -59
  324. package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +1 -1
  325. package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +84 -38
  326. package/libs/PanoMeasurePlugin/Modules/UIController/NewMainBtnController.d.ts +12 -0
  327. package/libs/PanoMeasurePlugin/Modules/UIController/NewMainBtnController.js +98 -0
  328. package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +2 -1
  329. package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +52 -17
  330. package/libs/PanoMeasurePlugin/Modules/UIController/index.d.ts +5 -1
  331. package/libs/PanoMeasurePlugin/Modules/UIController/index.js +84 -34
  332. package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
  333. package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +80 -0
  334. package/libs/PanoMeasurePlugin/Modules/UIController/style.d.ts +2 -0
  335. package/libs/PanoMeasurePlugin/Modules/UIController/style.js +11 -1
  336. package/libs/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +4 -0
  337. package/libs/PanoMeasurePlugin/Modules/rangePiece/html.js +64 -0
  338. package/libs/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +42 -0
  339. package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +265 -0
  340. package/libs/PanoMeasurePlugin/index.d.ts +9 -6
  341. package/libs/PanoMeasurePlugin/index.js +3 -1
  342. package/libs/PanoMeasurePlugin/typings/data.d.ts +4 -0
  343. package/libs/PanoMeasurePlugin/typings/event.type.d.ts +14 -5
  344. package/libs/PanoMeasurePlugin/utils/calculateThreeMouse.d.ts +10 -0
  345. package/libs/PanoMeasurePlugin/utils/calculateThreeMouse.js +15 -0
  346. package/libs/PanoMeasurePlugin/utils/clearGroup.d.ts +1 -1
  347. package/libs/PanoMeasurePlugin/utils/constants.d.ts +1 -1
  348. package/libs/PanoMeasurePlugin/utils/constants.js +7 -7
  349. package/libs/PanoMeasurePlugin/utils/distanceDom.d.ts +3 -3
  350. package/libs/PanoMeasurePlugin/utils/distanceDom.js +22 -16
  351. package/libs/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +1 -1
  352. package/libs/PanoMeasurePlugin/utils/findClosestPoint.d.ts +3 -3
  353. package/libs/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +2 -2
  354. package/libs/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +1 -1
  355. package/libs/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +1 -1
  356. package/libs/PanoMeasurePlugin/utils/line.d.ts +1 -1
  357. package/libs/PanoMeasurePlugin/utils/line.js +8 -7
  358. package/libs/PanoMeasurePlugin/utils/mouseGroup.d.ts +2 -2
  359. package/libs/PanoMeasurePlugin/utils/mouseGroup.js +5 -5
  360. package/libs/PanoRulerPlugin/Plugin.d.ts +31 -0
  361. package/libs/PanoRulerPlugin/Plugin.js +403 -0
  362. package/libs/PanoRulerPlugin/index.d.ts +4 -30
  363. package/libs/PanoRulerPlugin/index.js +2 -397
  364. package/libs/PanoSpatialTagPlugin/Components/origins.js +168 -0
  365. package/libs/PanoSpatialTagPlugin/Components/tag.js +302 -0
  366. package/libs/PanoSpatialTagPlugin/Plugin.d.ts +35 -0
  367. package/libs/PanoSpatialTagPlugin/Plugin.js +426 -0
  368. package/libs/PanoSpatialTagPlugin/index.d.ts +5 -0
  369. package/libs/PanoSpatialTagPlugin/index.js +5 -0
  370. package/libs/PanoSpatialTagPlugin/store.d.ts +1 -0
  371. package/libs/PanoSpatialTagPlugin/store.js +2 -0
  372. package/libs/PanoSpatialTagPlugin/style.d.ts +1 -0
  373. package/libs/PanoSpatialTagPlugin/style.js +8 -0
  374. package/libs/PanoSpatialTagPlugin/typings.d.ts +40 -0
  375. package/libs/PanoSpatialTagPlugin/typings.js +1 -0
  376. package/libs/base/BasePlugin.d.ts +100 -0
  377. package/libs/base/BasePlugin.js +31 -0
  378. package/libs/base/BasePluginWithData.d.ts +34 -0
  379. package/libs/base/BasePluginWithData.js +4 -0
  380. package/libs/components/PaintBrush/Controller.d.ts +43 -0
  381. package/libs/components/PaintBrush/Controller.js +575 -0
  382. package/libs/components/PaintBrush/Subscribe.d.ts +76 -0
  383. package/libs/components/PaintBrush/Subscribe.js +121 -0
  384. package/libs/components/PaintBrush/index.d.ts +27 -0
  385. package/libs/components/PaintBrush/index.js +57 -0
  386. package/libs/components/PaintBrush/style.d.ts +2 -0
  387. package/libs/components/PaintBrush/style.js +102 -0
  388. package/libs/components/PaintBrush/tween.d.ts +62 -0
  389. package/libs/components/PaintBrush/tween.js +15 -0
  390. package/libs/components/PaintBrush/typings.d.ts +58 -0
  391. package/libs/components/PaintBrush/typings.js +6 -0
  392. package/libs/components/PaintBrush/utils.d.ts +26 -0
  393. package/libs/components/PaintBrush/utils.js +51 -0
  394. package/libs/components/index.d.ts +2 -0
  395. package/libs/components/index.js +3 -0
  396. package/libs/floorplan/Assets/compass.d.ts +1 -0
  397. package/libs/floorplan/Assets/compass.js +1 -0
  398. package/libs/floorplan/Components/BaseImage.js +10 -5
  399. package/libs/floorplan/Components/Camera.js +120 -0
  400. package/libs/floorplan/Components/Compass.js +120 -0
  401. package/libs/floorplan/Components/CurrentFloor.js +469 -0
  402. package/libs/floorplan/Components/Main.js +470 -0
  403. package/libs/floorplan/Components/RoomHighlight/Room.js +45 -8
  404. package/libs/floorplan/Components/RoomHighlight/RoomHighlight.js +30 -103
  405. package/libs/floorplan/Components/RoomLabels/RoomLabel.js +322 -0
  406. package/libs/floorplan/Components/RoomLabels/RoomLabels.js +309 -0
  407. package/libs/floorplan/Components/RoomMaterials/RoomMaterial.js +30 -27
  408. package/libs/floorplan/Components/RoomMaterials/RoomMaterial_1.js +1 -0
  409. package/libs/floorplan/Components/RoomMaterials/RoomMaterial_2.js +11 -9
  410. package/libs/floorplan/Components/RuleLabels/RuleItem.js +284 -0
  411. package/libs/floorplan/Components/RuleLabels/RuleLabels.js +269 -0
  412. package/libs/floorplan/ModelFloorplanPlugin/Components/Camera.js +1 -1
  413. package/libs/floorplan/ModelFloorplanPlugin/Components/Compass.js +1 -1
  414. package/libs/floorplan/ModelFloorplanPlugin/Components/CurrentFloor/CurrentFloor.js +1 -1
  415. package/libs/floorplan/ModelFloorplanPlugin/Components/Main.js +1 -1
  416. package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabel.js +1 -1
  417. package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabels.js +1 -1
  418. package/libs/floorplan/ModelFloorplanPlugin/Components/RuleLabels/RuleItem.js +1 -1
  419. package/libs/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -77
  420. package/libs/floorplan/ModelFloorplanPlugin/Controller.js +661 -325
  421. package/libs/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
  422. package/libs/floorplan/ModelFloorplanPlugin/index.js +2 -2
  423. package/libs/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
  424. package/libs/floorplan/ModelFloorplanPlugin/typing.js +1 -0
  425. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +49 -33
  426. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/CurrentFloor.js +3 -1
  427. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +114 -53
  428. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +24 -16
  429. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +194 -42
  430. package/libs/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
  431. package/libs/floorplan/PanoFloorplanRadarPlugin/index.js +2 -2
  432. package/libs/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
  433. package/libs/floorplan/PanoFloorplanRadarPlugin/typing.js +1 -0
  434. package/libs/floorplan/TopviewFloorplanPlugin/Controller.d.ts +53 -47
  435. package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +450 -154
  436. package/libs/floorplan/TopviewFloorplanPlugin/index.d.ts +6 -4
  437. package/libs/floorplan/TopviewFloorplanPlugin/index.js +2 -2
  438. package/libs/floorplan/TopviewFloorplanPlugin/style.js +1 -1
  439. package/libs/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
  440. package/libs/floorplan/TopviewFloorplanPlugin/typing.js +1 -0
  441. package/libs/floorplan/index.d.ts +6 -0
  442. package/libs/floorplan/index.js +7 -0
  443. package/libs/floorplan/utils/constant.d.ts +22 -0
  444. package/libs/floorplan/utils/constant.js +23 -0
  445. package/libs/floorplan/utils/correctFiveState.d.ts +15 -0
  446. package/libs/floorplan/utils/correctFiveState.js +46 -0
  447. package/libs/floorplan/utils/formatPosition.d.ts +1 -1
  448. package/libs/floorplan/utils/formatPosition.js +3 -3
  449. package/libs/index.d.ts +15 -24
  450. package/libs/index.js +25 -14
  451. package/libs/shared-utils/Subscribe.js +8 -1
  452. package/libs/shared-utils/animationFrame/BetterTween.js +47 -18
  453. package/libs/shared-utils/createCanvasTextTexture.js +6 -5
  454. package/libs/shared-utils/five/changeMode.d.ts +4 -1
  455. package/libs/shared-utils/five/changeMode.js +34 -13
  456. package/libs/shared-utils/getPxmm.d.ts +8 -0
  457. package/libs/shared-utils/getPxmm.js +25 -20
  458. package/libs/shared-utils/index.d.ts +1 -0
  459. package/libs/shared-utils/index.js +1 -0
  460. package/libs/shared-utils/math/Interval.d.ts +13 -0
  461. package/libs/shared-utils/math/Interval.js +40 -0
  462. package/libs/shared-utils/math/Rectangle.d.ts +27 -0
  463. package/libs/shared-utils/math/Rectangle.js +50 -0
  464. package/libs/shared-utils/math/evenNumber.js +1 -1
  465. package/libs/shared-utils/math/index.d.ts +2 -0
  466. package/libs/shared-utils/math/index.js +2 -0
  467. package/libs/shared-utils/three/getExtraModelLoader.d.ts +1 -1
  468. package/libs/shared-utils/three/getNormal.d.ts +1 -1
  469. package/libs/shared-utils/three/getTextureLoader.d.ts +1 -1
  470. package/libs/shared-utils/three/loadFbxObj.d.ts +1 -1
  471. package/libs/shared-utils/three/transfromToMeshBasicMaterial.js +2 -1
  472. package/libs/shared-utils/tinyEJSrender.d.ts +5 -0
  473. package/libs/shared-utils/tinyEJSrender.js +210 -0
  474. package/libs/shared-utils/uuid.d.ts +1 -0
  475. package/libs/shared-utils/uuid.js +1 -0
  476. package/libs/shared-utils/vectorTocoordinates.d.ts +1 -1
  477. package/package.json +13 -6
  478. package/CHANGELOG.md +0 -30
  479. package/dist/shared-utils/five/useFivePlugin.d.ts +0 -1
  480. package/dist/shared-utils/useDebounce.d.ts +0 -8
  481. package/dist/shared-utils/useThrottle.d.ts +0 -8
  482. package/docs/enums/ModelFloorplanErrorType.html +0 -1
  483. package/docs/interfaces/ModelFloorplanParameterType.html +0 -1
  484. package/docs/interfaces/ModelFloorplanViewEvent.html +0 -5
  485. package/docs/interfaces/TopviewFloorplanPluginParameterType.html +0 -1
@@ -0,0 +1,56 @@
1
+ import type { Subscribe } from "@realsee/five";
2
+ import type { PluginEvent } from "./events.type";
3
+ import type ItemLabelComponent from './ItemLabelComponent.svelte';
4
+ export declare enum DISPLAY_STRATEGY_TYPE {
5
+ SMALL = "small",
6
+ MIDLLE = "middle",
7
+ LARGE = "large",
8
+ EXTRA_LARGE = "x-large"
9
+ }
10
+ export interface ModelItemLabelPluginParametersType {
11
+ modelOcclusionEnable?: boolean;
12
+ displayStrategyType?: Partial<DISPLAY_STRATEGY_TYPE>;
13
+ }
14
+ export interface ModelItemLabelPluginData {
15
+ model_item_labels: Readonly<{
16
+ id: string;
17
+ library: string;
18
+ name: string;
19
+ size: [number, number, number];
20
+ center: [number, number, number];
21
+ position: [number, number, number];
22
+ type: string[];
23
+ [key: string]: any;
24
+ }>[];
25
+ }
26
+ export interface ItemLabel {
27
+ id: string;
28
+ library: string;
29
+ name: string;
30
+ size: [number, number, number];
31
+ center: [number, number, number];
32
+ position: [number, number, number];
33
+ type: string[];
34
+ modelPosition: [number, number, number];
35
+ [key: string]: any;
36
+ }
37
+ export interface ModelItemLabelPluginExportReturnsType {
38
+ appendTo: (wrapper: Element) => void;
39
+ load: (data: ModelItemLabelPluginData) => void;
40
+ disable: () => void;
41
+ enable: () => void;
42
+ dispose: () => void;
43
+ hooks: Subscribe<PluginEvent>;
44
+ }
45
+ export interface ModelItemLabelPluginState {
46
+ container: HTMLDivElement;
47
+ data: ModelItemLabelPluginData | null;
48
+ enabled: boolean;
49
+ itemLabels: ItemLabel[];
50
+ wrapper: HTMLElement | null;
51
+ fiveModeEnabled: boolean;
52
+ app?: ItemLabelComponent | undefined;
53
+ hooks: Subscribe<PluginEvent>;
54
+ modelOcclusionEnable: boolean;
55
+ displayStrategyType: Partial<DISPLAY_STRATEGY_TYPE>;
56
+ }
@@ -0,0 +1,3 @@
1
+ import type { ModelItemLabelPluginData, ItemLabel } from '../typings';
2
+ /** @description 转成内部所需数据 */
3
+ export declare function parseModelItemLabelPluginData(data: ModelItemLabelPluginData): ItemLabel[];
@@ -11,7 +11,7 @@ const ROOM_LABEL_BG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAAA8CAY
11
11
  /* src/ModelRoomLabelPlugin/RoomLabelItem.svelte generated by Svelte v3.47.0 */
12
12
 
13
13
  function add_css$1(target) {
14
- internal.append_styles(target, "svelte-17nkflf", ".room-label-item.svelte-17nkflf{position:absolute;font-size:8px;z-index:0;transform:none;cursor:pointer;pointer-events:none;user-select:none}.room-label-item__text.svelte-17nkflf{position:absolute;left:0;top:-64px;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:20px;min-width:32px;padding:0 6px;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-17nkflf{position:absolute;top:-44px;height:48px;width:1px;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-17nkflf{font-size:10px}");
14
+ internal.append_styles(target, "svelte-1ak9fbs", ".room-label-item.svelte-1ak9fbs{position:absolute;font-size:0.41667rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.room-label-item__text.svelte-1ak9fbs{position:absolute;left:0;top:-3.33333rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.04167rem;min-width:1.66667rem;padding:0 0.3125rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-1ak9fbs{position:absolute;top:-2.29167rem;height:2.5rem;width:1px;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-1ak9fbs{font-size:0.52083rem}");
15
15
  }
16
16
 
17
17
  function create_fragment$1(ctx) {
@@ -31,11 +31,11 @@ function create_fragment$1(ctx) {
31
31
  t0 = internal.text(t0_value);
32
32
  t1 = internal.space();
33
33
  div0 = internal.element("div");
34
- internal.attr(span, "class", "room-label-item__text svelte-17nkflf");
34
+ internal.attr(span, "class", "room-label-item__text svelte-1ak9fbs");
35
35
  internal.set_style(span, "background-image", "url(" + ROOM_LABEL_BG + ")");
36
36
  internal.toggle_class(span, "wide", /*roomLabel*/ ctx[0].name.length > 3);
37
- internal.attr(div0, "class", "room-label-item__bar svelte-17nkflf");
38
- internal.attr(div1, "class", "room-label-item svelte-17nkflf");
37
+ internal.attr(div0, "class", "room-label-item__bar svelte-1ak9fbs");
38
+ internal.attr(div1, "class", "room-label-item svelte-1ak9fbs");
39
39
  internal.set_style(div1, "z-index", /*roomLabel*/ ctx[0].zIndex, false);
40
40
  internal.set_style(div1, "transform", /*roomLabel*/ ctx[0].transform, false);
41
41
  internal.set_style(div1, "opacity", /*roomLabel*/ ctx[0].visible ? 1 : 0, false);
@@ -110,17 +110,19 @@ class RoomLabelItem extends internal.SvelteComponent {
110
110
 
111
111
  /* src/ModelRoomLabelPlugin/RoomLabelItems.svelte generated by Svelte v3.47.0 */
112
112
 
113
+ const { Map: Map_1 } = internal.globals;
114
+
113
115
  function add_css(target) {
114
- internal.append_styles(target, "svelte-185yvaa", ".room-labels-container.svelte-185yvaa{width:100%;height:100%;position:relative;color:#fff}");
116
+ internal.append_styles(target, "svelte-9eg4zi", ".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}");
115
117
  }
116
118
 
117
119
  function get_each_context(ctx, list, i) {
118
120
  const child_ctx = ctx.slice();
119
- child_ctx[9] = list[i];
121
+ child_ctx[12] = list[i];
120
122
  return child_ctx;
121
123
  }
122
124
 
123
- // (68:2) {#each roomLabels as roomLableItem (roomLableItem.id)}
125
+ // (82:2) {#each roomLabels as roomLableItem (roomLableItem.id)}
124
126
  function create_each_block(key_1, ctx) {
125
127
  let first;
126
128
  let roomlabelitem;
@@ -128,7 +130,7 @@ function create_each_block(key_1, ctx) {
128
130
 
129
131
  roomlabelitem = new RoomLabelItem({
130
132
  props: {
131
- roomLabel: /*roomLableItem*/ ctx[9],
133
+ roomLabel: /*roomLableItem*/ ctx[12],
132
134
  five: /*five*/ ctx[1]
133
135
  }
134
136
  });
@@ -149,7 +151,7 @@ function create_each_block(key_1, ctx) {
149
151
  p(new_ctx, dirty) {
150
152
  ctx = new_ctx;
151
153
  const roomlabelitem_changes = {};
152
- if (dirty & /*roomLabels*/ 1) roomlabelitem_changes.roomLabel = /*roomLableItem*/ ctx[9];
154
+ if (dirty & /*roomLabels*/ 1) roomlabelitem_changes.roomLabel = /*roomLableItem*/ ctx[12];
153
155
  if (dirty & /*five*/ 2) roomlabelitem_changes.five = /*five*/ ctx[1];
154
156
  roomlabelitem.$set(roomlabelitem_changes);
155
157
  },
@@ -172,11 +174,11 @@ function create_each_block(key_1, ctx) {
172
174
  function create_fragment(ctx) {
173
175
  let div;
174
176
  let each_blocks = [];
175
- let each_1_lookup = new Map();
177
+ let each_1_lookup = new Map_1();
176
178
  let div_resize_listener;
177
179
  let current;
178
180
  let each_value = /*roomLabels*/ ctx[0];
179
- const get_key = ctx => /*roomLableItem*/ ctx[9].id;
181
+ const get_key = ctx => /*roomLableItem*/ ctx[12].id;
180
182
 
181
183
  for (let i = 0; i < each_value.length; i += 1) {
182
184
  let child_ctx = get_each_context(ctx, each_value, i);
@@ -192,8 +194,8 @@ function create_fragment(ctx) {
192
194
  each_blocks[i].c();
193
195
  }
194
196
 
195
- internal.attr(div, "class", "room-labels-container svelte-185yvaa");
196
- internal.add_render_callback(() => /*div_elementresize_handler*/ ctx[4].call(div));
197
+ internal.attr(div, "class", "room-labels-container svelte-9eg4zi");
198
+ internal.add_render_callback(() => /*div_elementresize_handler*/ ctx[6].call(div));
197
199
  },
198
200
  m(target, anchor) {
199
201
  internal.insert(target, div, anchor);
@@ -202,7 +204,7 @@ function create_fragment(ctx) {
202
204
  each_blocks[i].m(div, null);
203
205
  }
204
206
 
205
- div_resize_listener = internal.add_resize_listener(div, /*div_elementresize_handler*/ ctx[4].bind(div));
207
+ div_resize_listener = internal.add_resize_listener(div, /*div_elementresize_handler*/ ctx[6].bind(div));
206
208
  current = true;
207
209
  },
208
210
  p(ctx, [dirty]) {
@@ -242,22 +244,17 @@ function create_fragment(ctx) {
242
244
  }
243
245
 
244
246
  function instance($$self, $$props, $$invalidate) {
247
+ let rendererSize;
245
248
  let { five } = $$props;
246
249
  let { roomLabels } = $$props;
247
250
  let containerWidth;
248
251
  let containerHeight;
252
+ let shownFloor = null;
249
253
 
250
- function getLabelVisible(five, roomLabelItem) {
251
- // 先看是不是在当前展示的楼层上
252
- const isLabelInFloor = five.model.shownFloor === null || roomLabelItem.floorIndex === five.model.shownFloor;
253
-
254
- if (!isLabelInFloor) return false;
255
-
256
- // 再看是不是被模型遮挡
254
+ function getLabelVisible(item) {
257
255
  const raycaster = new three.Raycaster();
258
-
259
256
  const cameraPosition = five.camera.position.clone();
260
- const position = new three.Vector3(roomLabelItem.position.x, roomLabelItem.position.y, roomLabelItem.position.z);
257
+ const position = new three.Vector3(item.position.x, item.position.y, item.position.z);
261
258
  const vectorDistance = position.distanceTo(cameraPosition);
262
259
  raycaster.set(cameraPosition.clone(), position.clone().sub(cameraPosition).normalize());
263
260
  const [intersection] = five.model.intersectRaycaster(raycaster);
@@ -265,51 +262,60 @@ function instance($$self, $$props, $$invalidate) {
265
262
  return true;
266
263
  }
267
264
 
268
- function getLabelTransform(five, roomLabelItem) {
269
- const position = new three.Vector3(roomLabelItem.position.x, roomLabelItem.position.y, roomLabelItem.position.z);
265
+ function getLabelTransform(item, rendererSize) {
266
+ const position = new three.Vector3(item.position.x, item.position.y, item.position.z);
270
267
  const mouse = position.clone().project(five.camera);
271
- const xOffset = Math.ceil((mouse.x + 1) / 2 * containerWidth);
272
- const yOffset = Math.ceil((-mouse.y + 1) / 2 * containerHeight);
268
+ const xOffset = Math.ceil((mouse.x + 1) / 2 * rendererSize.x);
269
+ const yOffset = Math.ceil((-mouse.y + 1) / 2 * rendererSize.y);
273
270
  return `translate(${xOffset}px, ${yOffset}px)`;
274
271
  }
275
272
 
276
- function getFormatedRoomLabels(five, labels) {
277
- const newLabels = labels.map(roomLabelItem => {
278
- // 计算是否可见,入股不可见,不会更新位置
279
- const visible = getLabelVisible(five, roomLabelItem);
273
+ function getFormatedRoomLabels(rendererSize) {
274
+ // 因为 item distance 需要重复计算,所以缓存一下
275
+ const distanceMap = new Map();
276
+
277
+ function getItemDistance(item) {
278
+ const cacheDistance = distanceMap.get(item.id);
279
+ if (cacheDistance) return cacheDistance;
280
+ const { x, y, z } = item.position;
281
+ const distance = new three.Vector3(x, y, z).clone().distanceTo(five.camera.position);
282
+ distanceMap.set(item.id, distance);
283
+ return distance;
284
+ }
280
285
 
281
- if (!visible) return { ...roomLabelItem, visible };
286
+ const formatedItems = roomLabels.map(item => {
287
+ const visible = getLabelVisible(item);
282
288
 
283
- // 更新位置
284
- const transform = getLabelTransform(five, roomLabelItem);
289
+ const transform = visible
290
+ ? getLabelTransform(item, rendererSize)
291
+ : item.transform;
285
292
 
286
- return { ...roomLabelItem, visible, transform };
287
- });
293
+ const itemDistance = getItemDistance(item);
288
294
 
289
- const sortedRoomLabelItems = newLabels.filter(({ visible }) => visible).map(roomLabelItem => ({
290
- roomLabelItem,
291
- distance: new three.Vector3(...Object.values(roomLabelItem.position)).clone().distanceTo(five.camera.position)
292
- })).sort((a, b) => a.distance - b.distance);
295
+ // visible === true item 中,distance 比自己小的 item 个数
296
+ const minItemLen = roomLabels.filter(item => item.visible && getItemDistance(item) < itemDistance).length;
293
297
 
294
- return newLabels.map(roomLabelItem => {
295
- const sortIndex = sortedRoomLabelItems.findIndex(item => item.roomLabelItem.id === roomLabelItem.id);
296
- if (sortIndex !== undefined) return { ...roomLabelItem, zIndex: sortIndex * 10 };
297
- return roomLabelItem;
298
+ const zIndex = minItemLen * 10;
299
+ return Object.assign(Object.assign({}, item), { visible, transform, zIndex });
298
300
  });
301
+
302
+ return formatedItems;
299
303
  }
300
304
 
301
305
  function onFiveCameraUpdate() {
302
- $$invalidate(0, roomLabels = getFormatedRoomLabels(five, roomLabels));
306
+ $$invalidate(0, roomLabels = getFormatedRoomLabels(rendererSize));
307
+ }
308
+
309
+ function onFiveModelShownFloorChange(floorIndex) {
310
+ $$invalidate(4, shownFloor = floorIndex);
303
311
  }
304
312
 
305
313
  five.on('cameraUpdate', onFiveCameraUpdate);
314
+ five.on('modelShownFloorChange', onFiveModelShownFloorChange);
306
315
 
307
316
  svelte.onDestroy(() => {
308
317
  five.off('cameraUpdate', onFiveCameraUpdate);
309
- });
310
-
311
- svelte.onMount(() => {
312
- onFiveCameraUpdate();
318
+ five.off('modelShownFloorChange', onFiveModelShownFloorChange);
313
319
  });
314
320
 
315
321
  function div_elementresize_handler() {
@@ -324,7 +330,39 @@ function instance($$self, $$props, $$invalidate) {
324
330
  if ('roomLabels' in $$props) $$invalidate(0, roomLabels = $$props.roomLabels);
325
331
  };
326
332
 
327
- return [roomLabels, five, containerWidth, containerHeight, div_elementresize_handler];
333
+ $$self.$$.update = () => {
334
+ if ($$self.$$.dirty & /*containerWidth, containerHeight*/ 12) {
335
+ $$invalidate(5, rendererSize = { x: containerWidth, y: containerHeight });
336
+ }
337
+
338
+ if ($$self.$$.dirty & /*rendererSize*/ 32) {
339
+ {
340
+ // rendererSize 变化时,触发 reRender
341
+ $$invalidate(0, roomLabels = getFormatedRoomLabels(rendererSize));
342
+ }
343
+ }
344
+
345
+ if ($$self.$$.dirty & /*roomLabels, shownFloor*/ 17) {
346
+ {
347
+ // shownFloor 变化时,更新 item visible
348
+ $$invalidate(0, roomLabels = roomLabels.map(item => {
349
+ const isLabelInFloor = shownFloor === null || item.floorIndex === shownFloor;
350
+ const visible = isLabelInFloor ? item.visible : false;
351
+ return Object.assign(Object.assign({}, item), { visible });
352
+ }));
353
+ }
354
+ }
355
+ };
356
+
357
+ return [
358
+ roomLabels,
359
+ five,
360
+ containerWidth,
361
+ containerHeight,
362
+ shownFloor,
363
+ rendererSize,
364
+ div_elementresize_handler
365
+ ];
328
366
  }
329
367
 
330
368
  class RoomLabelItems extends internal.SvelteComponent {
@@ -350,14 +388,69 @@ function parseModelRoomLabelPluginData(data) {
350
388
  }
351
389
 
352
390
  class ModelRoomLabelController {
353
- five;
354
- enabled = true;
355
- fiveModeEnabled;
356
- app = undefined;
357
- wrapper;
358
- roomLabels = [];
359
- container = document.createElement('div');
360
391
  constructor(five) {
392
+ Object.defineProperty(this, "five", {
393
+ enumerable: true,
394
+ configurable: true,
395
+ writable: true,
396
+ value: void 0
397
+ });
398
+ Object.defineProperty(this, "enabled", {
399
+ enumerable: true,
400
+ configurable: true,
401
+ writable: true,
402
+ value: true
403
+ });
404
+ Object.defineProperty(this, "fiveModeEnabled", {
405
+ enumerable: true,
406
+ configurable: true,
407
+ writable: true,
408
+ value: void 0
409
+ });
410
+ Object.defineProperty(this, "app", {
411
+ enumerable: true,
412
+ configurable: true,
413
+ writable: true,
414
+ value: undefined
415
+ });
416
+ Object.defineProperty(this, "wrapper", {
417
+ enumerable: true,
418
+ configurable: true,
419
+ writable: true,
420
+ value: void 0
421
+ });
422
+ Object.defineProperty(this, "roomLabels", {
423
+ enumerable: true,
424
+ configurable: true,
425
+ writable: true,
426
+ value: []
427
+ });
428
+ Object.defineProperty(this, "container", {
429
+ enumerable: true,
430
+ configurable: true,
431
+ writable: true,
432
+ value: document.createElement('div')
433
+ });
434
+ /** 监听 Five Mode 变化
435
+ * @description
436
+ * Mode 不符合要求时,立刻消失,满足要求时,需要等待动画结束再展示
437
+ */
438
+ Object.defineProperty(this, "onFiveModeChange", {
439
+ enumerable: true,
440
+ configurable: true,
441
+ writable: true,
442
+ value: (mode) => {
443
+ if (mode !== 'Floorplan') {
444
+ this.fiveModeEnabled = false;
445
+ this.render();
446
+ return;
447
+ }
448
+ this.five.once('initAnimationEnded', () => {
449
+ this.fiveModeEnabled = this.five.currentMode === 'Floorplan';
450
+ this.render();
451
+ });
452
+ }
453
+ });
361
454
  this.five = five;
362
455
  this.fiveModeEnabled = this.five.currentMode === 'Floorplan';
363
456
  // init container style
@@ -368,6 +461,7 @@ class ModelRoomLabelController {
368
461
  this.container.style.pointerEvents = 'none';
369
462
  this.container.style.left = '0';
370
463
  this.container.style.top = '0';
464
+ this.container.style.zIndex = '5';
371
465
  // five listener
372
466
  this.five.once('dispose', () => this.dispose());
373
467
  this.five.on('modeChange', this.onFiveModeChange);
@@ -410,26 +504,12 @@ class ModelRoomLabelController {
410
504
  this.render();
411
505
  return this;
412
506
  }
413
- /** 监听 Five Mode 变化
414
- * @description
415
- * Mode 不符合要求时,立刻消失,满足要求时,需要等待动画结束再展示
416
- */
417
- onFiveModeChange = (mode) => {
418
- if (mode !== 'Floorplan') {
419
- this.fiveModeEnabled = false;
420
- this.render();
421
- return;
422
- }
423
- this.five.once('initAnimationEnded', () => {
424
- this.fiveModeEnabled = this.five.currentMode === 'Floorplan';
425
- this.render();
426
- });
427
- };
428
507
  render() {
508
+ var _a;
429
509
  if (!this.wrapper)
430
510
  return;
431
511
  if (!this.enabled || !this.fiveModeEnabled) {
432
- this.app?.$destroy();
512
+ (_a = this.app) === null || _a === void 0 ? void 0 : _a.$destroy();
433
513
  this.app = undefined;
434
514
  return;
435
515
  }
@@ -1,3 +1,3 @@
1
- import { ModelRoomLabelPluginData, RoomLabel } from '../typings';
1
+ import type { ModelRoomLabelPluginData, RoomLabel } from '../typings';
2
2
  /** @description 下划线转驼峰 */
3
3
  export declare function parseModelRoomLabelPluginData(data: ModelRoomLabelPluginData): RoomLabel[];
@@ -0,0 +1,4 @@
1
+ import type { FivePlugin } from '@realsee/five';
2
+ import type { ModelTVVideoPluginExportType, ModelTVVideoPluginParameterType } from "./typings";
3
+ export declare const ModelTVVideoPlugin: FivePlugin<ModelTVVideoPluginParameterType, ModelTVVideoPluginExportType>;
4
+ export default ModelTVVideoPlugin;
@@ -0,0 +1,5 @@
1
+ import ModelTVVideoPlugin from './Plugin';
2
+ export { ModelTVVideoPlugin };
3
+ export default ModelTVVideoPlugin;
4
+ export type { ModelTVVideoPluginParameterType, ModelTVVideoPluginData, Point, ModelTVVideoPluginExportType } from './typings';
5
+ export { DIRECTION } from './typings';