@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
@@ -91,7 +91,7 @@ async function loadTexture(url) {
91
91
 
92
92
  function evenNumber(num, config) {
93
93
  const roundNum = Math.round(num);
94
- return roundNum % 2 === 0 ? roundNum : roundNum + Number(config?.smaller ? -1 : 1);
94
+ return roundNum % 2 === 0 ? roundNum : roundNum + Number((config === null || config === void 0 ? void 0 : config.smaller) ? -1 : 1);
95
95
  }
96
96
 
97
97
  function centerPoint(point1, point2) {
@@ -128,24 +128,25 @@ function createResizeObserver(func, element) {
128
128
  const CSS3DRenderPlugin = (five) => {
129
129
  const state = { disposeCallbacks: [] };
130
130
  const create3DDomContainer = (...params) => {
131
+ var _a, _b, _c;
131
132
  const points = params[0].map((point) => (point instanceof THREE.Vector3 ? point : transformPositionToVector3(point)));
132
133
  const config = params[1];
133
- if (points?.length < 4)
134
+ if ((points === null || points === void 0 ? void 0 : points.length) < 4)
134
135
  return console.error('points must be equal or greater than than 4');
135
- if (!five?.model?.loaded)
136
- return console.error('five.model.loaded is: ', five?.model?.loaded);
136
+ if (!((_a = five === null || five === void 0 ? void 0 : five.model) === null || _a === void 0 ? void 0 : _a.loaded))
137
+ return console.error('five.model.loaded is: ', (_b = five === null || five === void 0 ? void 0 : five.model) === null || _b === void 0 ? void 0 : _b.loaded);
137
138
  const fiveElement = five.getElement();
138
139
  if (!fiveElement)
139
140
  return console.error('five.getElement() is ' + fiveElement);
140
141
  const disposers = [];
141
- const ratio = config?.ratio || 0.00216;
142
+ const ratio = (config === null || config === void 0 ? void 0 : config.ratio) || 0.00216;
142
143
  if (ratio <= 0.00215)
143
144
  console.warn('if you need click css3DElement on safari, ratio must be greater than 0.00215');
144
- const dpr = config?.dpr || 1;
145
- const mode = config?.mode || 'front';
146
- const autoRender = config?.autoRender ?? true;
147
- const behindFiveContainer = config?.behindFiveContainer || fiveElement.parentElement || document.body;
148
- const container = config?.container || document.createElement('div');
145
+ const dpr = (config === null || config === void 0 ? void 0 : config.dpr) || 1;
146
+ const mode = (config === null || config === void 0 ? void 0 : config.mode) || 'front';
147
+ const autoRender = (_c = config === null || config === void 0 ? void 0 : config.autoRender) !== null && _c !== void 0 ? _c : true;
148
+ const behindFiveContainer = (config === null || config === void 0 ? void 0 : config.behindFiveContainer) || fiveElement.parentElement || document.body;
149
+ const container = (config === null || config === void 0 ? void 0 : config.container) || document.createElement('div');
149
150
  container.classList.add('__Dnalogel-plugin--CSS3DRenderPlugin');
150
151
  // 获取css3DObject, 如果mode为behind的话,一起获取mesh
151
152
  const { css3DObject, mesh } = createObject(points, { ratio, dpr, container, mode });
@@ -154,15 +155,14 @@ const CSS3DRenderPlugin = (five) => {
154
155
  const frontModeUnInited = mode === 'front' && !state.frontMode;
155
156
  const behindModeUnInited = mode === 'behind' && !state.behindMode;
156
157
  const inited = !(frontModeUnInited || behindModeUnInited);
157
- let stopRenderFlag = false;
158
- let requestAnimationFrameId = null;
159
158
  if (behindModeUnInited) {
160
159
  state.behindMode = { scene: new THREE.Scene(), css3DRenderer: new CSS3DRenderer.CSS3DRenderer() };
161
160
  }
162
161
  if (frontModeUnInited) {
163
162
  state.frontMode = { scene: new THREE.Scene(), css3DRenderer: new CSS3DRenderer.CSS3DRenderer() };
164
163
  }
165
- const { scene, css3DRenderer } = mode === 'behind' ? state.behindMode : state.frontMode;
164
+ const stateMode = mode === 'behind' ? state.behindMode : state.frontMode;
165
+ const { scene, css3DRenderer } = stateMode;
166
166
  const render = (() => {
167
167
  if (!inited) {
168
168
  const css3DRendererSetSize = () => {
@@ -179,14 +179,14 @@ const CSS3DRenderPlugin = (five) => {
179
179
  css3DRenderer.domElement.style.userSelect = 'none';
180
180
  css3DRenderer.domElement.style.pointerEvents = 'none';
181
181
  const renderEveryFrame = () => {
182
- if (stopRenderFlag)
183
- return;
184
- requestAnimationFrameId = requestAnimationFrame(renderEveryFrame);
182
+ const requestAnimationFrameId = requestAnimationFrame(renderEveryFrame);
183
+ stateMode.requestAnimationFrameId = requestAnimationFrameId;
185
184
  css3DRenderer.render(scene, five.camera);
186
185
  };
187
186
  return () => {
187
+ var _a;
188
188
  scene.add(css3DObject);
189
- resizeObserver?.observe?.();
189
+ (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.observe) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);
190
190
  renderEveryFrame();
191
191
  if (mode === 'behind' && mesh) {
192
192
  five.scene.add(mesh);
@@ -210,19 +210,20 @@ const CSS3DRenderPlugin = (five) => {
210
210
  }
211
211
  // ======= INIT END =======
212
212
  const dispose = () => {
213
- stopRenderFlag = true;
214
- disposers.forEach((d) => d?.());
213
+ var _a;
214
+ disposers.forEach((d) => d === null || d === void 0 ? void 0 : d());
215
215
  scene.remove(css3DObject);
216
- if (typeof requestAnimationFrameId === 'number')
217
- cancelAnimationFrame(requestAnimationFrameId);
218
216
  if (scene.children.length === 0) {
217
+ if (typeof stateMode.requestAnimationFrameId === 'number') {
218
+ cancelAnimationFrame(stateMode.requestAnimationFrameId);
219
+ }
219
220
  css3DRenderer.domElement.remove();
220
221
  if (mode === 'front')
221
222
  state.frontMode = undefined;
222
223
  if (mode === 'behind')
223
224
  state.behindMode = undefined;
224
225
  if (!state.behindMode && !state.frontMode) {
225
- resizeObserver?.unobserve?.();
226
+ (_a = resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.unobserve) === null || _a === void 0 ? void 0 : _a.call(resizeObserver);
226
227
  }
227
228
  }
228
229
  return true;
@@ -257,9 +258,9 @@ const CSS3DRenderPlugin = (five) => {
257
258
  const rotateYAngle = new THREE.Vector3(1, 0, 0).angleTo(new THREE.Vector3(vector01.x, 0, vector01.z));
258
259
  const rotateZAngle = vector01.angleTo(new THREE.Vector3(vector01.x, 0, vector01.z));
259
260
  /**
260
- * [0,1,0] => [0,0,1] 为rolate Worldx正方向
261
- * [0,0,1] => [0,1,0] 为rolate Worldy正方向
262
- * [0,1,1] => [-1,0,0] 为rolate Worldz正方向
261
+ * [0,1,0] => [0,0,1] 为rotate Worldx正方向
262
+ * [0,0,1] => [0,1,0] 为rotate Worldy正方向
263
+ * [0,1,1] => [-1,0,0] 为rotate Worldz正方向
263
264
  */
264
265
  const rotateX = (vector12.z > 0 ? -1 : 1) * rotateXAngle;
265
266
  const rotateY = (vector01.z < 0 ? 1 : -1) * rotateYAngle;
@@ -287,7 +288,7 @@ const CSS3DRenderPlugin = (five) => {
287
288
  return {
288
289
  create3DDomContainer,
289
290
  disposeAll: () => {
290
- state.disposeCallbacks.forEach((d) => d?.());
291
+ state.disposeCallbacks.forEach((d) => d === null || d === void 0 ? void 0 : d());
291
292
  state.disposeCallbacks = [];
292
293
  },
293
294
  };
@@ -324,24 +325,53 @@ function requestAnimationFrameInterval(callback, frame = 60) {
324
325
  // export { default as tween } from './tween'
325
326
 
326
327
  class BetterTween extends TWEEN__default["default"].Tween {
327
- disposeMethods = [];
328
- animationFrameDisposer;
329
- onDispose = (callback) => {
330
- this.disposeMethods.push(callback);
331
- return this;
332
- };
333
- play = () => {
334
- this.start(0);
335
- this.animationFrameDisposer = requestAnimationFrameInterval((time) => this.update(time));
336
- return this;
337
- };
338
- dispose = () => {
339
- this.stop();
340
- this.animationFrameDisposer?.();
341
- this.disposeMethods.forEach((fn) => fn());
342
- this.disposeMethods = [];
343
- TWEEN__default["default"].remove(this);
344
- };
328
+ constructor() {
329
+ super(...arguments);
330
+ Object.defineProperty(this, "disposeMethods", {
331
+ enumerable: true,
332
+ configurable: true,
333
+ writable: true,
334
+ value: []
335
+ });
336
+ Object.defineProperty(this, "animationFrameDisposer", {
337
+ enumerable: true,
338
+ configurable: true,
339
+ writable: true,
340
+ value: void 0
341
+ });
342
+ Object.defineProperty(this, "onDispose", {
343
+ enumerable: true,
344
+ configurable: true,
345
+ writable: true,
346
+ value: (callback) => {
347
+ this.disposeMethods.push(callback);
348
+ return this;
349
+ }
350
+ });
351
+ Object.defineProperty(this, "play", {
352
+ enumerable: true,
353
+ configurable: true,
354
+ writable: true,
355
+ value: () => {
356
+ this.start(0);
357
+ this.animationFrameDisposer = requestAnimationFrameInterval((time) => this.update(time));
358
+ return this;
359
+ }
360
+ });
361
+ Object.defineProperty(this, "dispose", {
362
+ enumerable: true,
363
+ configurable: true,
364
+ writable: true,
365
+ value: () => {
366
+ var _a;
367
+ this.stop();
368
+ (_a = this.animationFrameDisposer) === null || _a === void 0 ? void 0 : _a.call(this);
369
+ this.disposeMethods.forEach((fn) => fn());
370
+ this.disposeMethods = [];
371
+ TWEEN__default["default"].remove(this);
372
+ }
373
+ });
374
+ }
345
375
  }
346
376
  function tweenProgress(duration, easing = TWEEN__default["default"].Easing.Linear.None) {
347
377
  const tween = new BetterTween({ progress: 0 }).to({ progress: 1 });
@@ -352,25 +382,170 @@ function tweenProgress(duration, easing = TWEEN__default["default"].Easing.Linea
352
382
  return tween;
353
383
  }
354
384
 
355
- const panoCompassPluginServerParams = {
356
- name: 'PanoCompassPlugin',
357
- version: 0,
358
- };
359
385
  const PanoCompassPlugin = function (five, config) {
360
386
  return new PanoCompassController(five, config);
361
387
  };
362
388
  class PanoCompassController {
363
- five;
364
- data;
365
- config;
366
- group = new THREE__namespace.Group();
367
- modelLoaded = false;
368
- roomInfoInstance;
369
- roomInfoWrapperInstance;
370
- compassMeshTween;
371
- compassMesh;
372
- entryDoorMesh;
373
389
  constructor(five, config) {
390
+ Object.defineProperty(this, "five", {
391
+ enumerable: true,
392
+ configurable: true,
393
+ writable: true,
394
+ value: void 0
395
+ });
396
+ Object.defineProperty(this, "data", {
397
+ enumerable: true,
398
+ configurable: true,
399
+ writable: true,
400
+ value: void 0
401
+ });
402
+ Object.defineProperty(this, "config", {
403
+ enumerable: true,
404
+ configurable: true,
405
+ writable: true,
406
+ value: void 0
407
+ });
408
+ Object.defineProperty(this, "group", {
409
+ enumerable: true,
410
+ configurable: true,
411
+ writable: true,
412
+ value: new THREE__namespace.Group()
413
+ });
414
+ Object.defineProperty(this, "modelLoaded", {
415
+ enumerable: true,
416
+ configurable: true,
417
+ writable: true,
418
+ value: false
419
+ });
420
+ Object.defineProperty(this, "roomInfoInstance", {
421
+ enumerable: true,
422
+ configurable: true,
423
+ writable: true,
424
+ value: void 0
425
+ });
426
+ Object.defineProperty(this, "roomInfoWrapperInstance", {
427
+ enumerable: true,
428
+ configurable: true,
429
+ writable: true,
430
+ value: void 0
431
+ });
432
+ Object.defineProperty(this, "compassMeshTween", {
433
+ enumerable: true,
434
+ configurable: true,
435
+ writable: true,
436
+ value: void 0
437
+ });
438
+ Object.defineProperty(this, "compassMesh", {
439
+ enumerable: true,
440
+ configurable: true,
441
+ writable: true,
442
+ value: void 0
443
+ });
444
+ Object.defineProperty(this, "entryDoorMesh", {
445
+ enumerable: true,
446
+ configurable: true,
447
+ writable: true,
448
+ value: void 0
449
+ });
450
+ Object.defineProperty(this, "dispose", {
451
+ enumerable: true,
452
+ configurable: true,
453
+ writable: true,
454
+ value: () => {
455
+ var _a, _b, _c, _d;
456
+ this.five.scene.remove(this.group);
457
+ this.group.remove(...this.group.children);
458
+ (_b = (_a = this.compassMesh) === null || _a === void 0 ? void 0 : _a.material.map) === null || _b === void 0 ? void 0 : _b.dispose();
459
+ (_d = (_c = this.entryDoorMesh) === null || _c === void 0 ? void 0 : _c.material.map) === null || _d === void 0 ? void 0 : _d.dispose();
460
+ this.five.off('panoArrived', this.onFivePanoArrived);
461
+ this.five.off('panoWillArrive', this.onFivePanoWillArrive);
462
+ }
463
+ });
464
+ Object.defineProperty(this, "onFiveFistPanoLoaded", {
465
+ enumerable: true,
466
+ configurable: true,
467
+ writable: true,
468
+ value: () => {
469
+ this.modelLoaded = true;
470
+ if (this.data)
471
+ this.init();
472
+ }
473
+ });
474
+ Object.defineProperty(this, "onFivePanoWillArrive", {
475
+ enumerable: true,
476
+ configurable: true,
477
+ writable: true,
478
+ value: (panoIndex) => {
479
+ var _a, _b;
480
+ if (panoIndex === this.five.panoIndex)
481
+ return;
482
+ (_a = this.compassMeshTween) === null || _a === void 0 ? void 0 : _a.dispose();
483
+ (_b = this.compassMesh) === null || _b === void 0 ? void 0 : _b.material.setValues({ opacity: 0 });
484
+ }
485
+ });
486
+ Object.defineProperty(this, "onFivePanoArrived", {
487
+ enumerable: true,
488
+ configurable: true,
489
+ writable: true,
490
+ value: (panoIndex) => {
491
+ var _a, _b, _c, _d;
492
+ // ======== fix compass position ========
493
+ const standingPosition = this.five.work.observers[panoIndex].standingPosition;
494
+ if (this.compassMesh) {
495
+ // 指南针上移 0.01m,防止与地板重合
496
+ this.compassMesh.position.copy(standingPosition.clone().setY(standingPosition.y + 0.01));
497
+ if (this.compassMesh.material.opacity !== 0)
498
+ return;
499
+ (_a = this.compassMeshTween) === null || _a === void 0 ? void 0 : _a.dispose();
500
+ this.compassMeshTween = tweenProgress(1000)
501
+ .onUpdate(({ progress }) => {
502
+ var _a;
503
+ (_a = this.compassMesh) === null || _a === void 0 ? void 0 : _a.material.setValues({ opacity: progress });
504
+ this.five.needsRender = true;
505
+ })
506
+ .play();
507
+ }
508
+ // ======== fix entry door label position and rotation ========
509
+ if (this.entryDoorMesh) {
510
+ const entryDoorPosition = new THREE__namespace.Vector3(this.data.entrance.position.x, this.data.entrance.position.y, this.data.entrance.position.z);
511
+ const panoToEntryDoorVector = entryDoorPosition
512
+ .clone()
513
+ .setY(standingPosition.y)
514
+ .sub(standingPosition)
515
+ .normalize();
516
+ const compassEntryDoorPosition = standingPosition
517
+ .clone()
518
+ .add(panoToEntryDoorVector.clone().multiplyScalar(0.7))
519
+ .setY(standingPosition.y + 0.01);
520
+ this.entryDoorMesh.rotation.z = new THREE__namespace.Vector3(0, 0, -1).angleTo(panoToEntryDoorVector);
521
+ this.entryDoorMesh.position.copy(compassEntryDoorPosition);
522
+ // 不是客厅时,隐藏入户门指引
523
+ ((_b = this.data) === null || _b === void 0 ? void 0 : _b.room_observers[panoIndex].room.type) === 1
524
+ ? (_c = this.entryDoorMesh) === null || _c === void 0 ? void 0 : _c.material.setValues({ opacity: 1 })
525
+ : (_d = this.entryDoorMesh) === null || _d === void 0 ? void 0 : _d.material.setValues({ opacity: 0 });
526
+ }
527
+ // ======== fix room info ========
528
+ if (this.roomInfoInstance && this.roomInfoWrapperInstance) {
529
+ this.roomInfoWrapperInstance.css3DObject.position.copy(standingPosition.clone().setY(standingPosition.y + 0.01));
530
+ this.roomInfoInstance.setRoom(this.data.room_observers[panoIndex].room);
531
+ }
532
+ this.five.needsRender = true;
533
+ }
534
+ });
535
+ Object.defineProperty(this, "onFiveCameraDirectionUpdate", {
536
+ enumerable: true,
537
+ configurable: true,
538
+ writable: true,
539
+ value: ({ longitude, latitude, }) => {
540
+ var _a, _b;
541
+ if (!this.roomInfoWrapperInstance)
542
+ return;
543
+ this.roomInfoWrapperInstance.css3DObject.rotation.z = longitude;
544
+ latitude > 0.66 && this.five.getCurrentState().mode === 'Panorama'
545
+ ? (_a = this.roomInfoInstance) === null || _a === void 0 ? void 0 : _a.show()
546
+ : (_b = this.roomInfoInstance) === null || _b === void 0 ? void 0 : _b.hide();
547
+ }
548
+ });
374
549
  this.five = five;
375
550
  this.config = config;
376
551
  this.five.scene.add(this.group);
@@ -385,19 +560,6 @@ class PanoCompassController {
385
560
  if (this.modelLoaded)
386
561
  this.init();
387
562
  }
388
- dispose = () => {
389
- this.five.scene.remove(this.group);
390
- this.group.remove(...this.group.children);
391
- this.compassMesh?.material.map?.dispose();
392
- this.entryDoorMesh?.material.map?.dispose();
393
- this.five.off('panoArrived', this.onFivePanoArrived);
394
- this.five.off('panoWillArrive', this.onFivePanoWillArrive);
395
- };
396
- onFiveFistPanoLoaded = () => {
397
- this.modelLoaded = true;
398
- if (this.data)
399
- this.init();
400
- };
401
563
  async init() {
402
564
  if (!this.data || !this.modelLoaded)
403
565
  return;
@@ -421,7 +583,8 @@ class PanoCompassController {
421
583
  this.five.needsRender = true;
422
584
  }
423
585
  async loadCompassMesh() {
424
- const compassImageUrl = this.config?.compassImageUrl ||
586
+ var _a;
587
+ const compassImageUrl = ((_a = this.config) === null || _a === void 0 ? void 0 : _a.compassImageUrl) ||
425
588
  '//vrlab-image4.ljcdn.com/release/web/v3/north-point-circle.96498e69.png';
426
589
  const compassTexture = await loadTexture(compassImageUrl);
427
590
  const compassGeometry = new THREE__namespace.CircleGeometry(0.7, 32);
@@ -436,7 +599,8 @@ class PanoCompassController {
436
599
  return compassMesh;
437
600
  }
438
601
  async loadEntryDoorMesh() {
439
- const entryDoorImageUrl = this.config?.entryDoorImageUrl ||
602
+ var _a;
603
+ const entryDoorImageUrl = ((_a = this.config) === null || _a === void 0 ? void 0 : _a.entryDoorImageUrl) ||
440
604
  '//vrlab-image4.ljcdn.com/release/web/enterDoor.831b8208.png';
441
605
  const entryDoorTexture = await loadTexture(entryDoorImageUrl);
442
606
  const entryDoorGeometry = new THREE__namespace.PlaneGeometry(0.2, 0.16);
@@ -460,64 +624,13 @@ class PanoCompassController {
460
624
  const roomInfo = CSS3DRenderPlugin(this.five).create3DDomContainer(points);
461
625
  return roomInfo;
462
626
  }
463
- onFivePanoWillArrive = (panoIndex) => {
464
- if (panoIndex === this.five.panoIndex)
465
- return;
466
- this.compassMeshTween?.dispose();
467
- this.compassMesh?.material.setValues({ opacity: 0 });
468
- };
469
- onFivePanoArrived = (panoIndex) => {
470
- // ======== fix compass position ========
471
- const standingPosition = this.five.work.observers[panoIndex].standingPosition;
472
- if (this.compassMesh) {
473
- // 指南针上移 0.01m,防止与地板重合
474
- this.compassMesh.position.copy(standingPosition.clone().setY(standingPosition.y + 0.01));
475
- if (this.compassMesh.material.opacity !== 0)
476
- return;
477
- this.compassMeshTween?.dispose();
478
- this.compassMeshTween = tweenProgress(1000)
479
- .onUpdate(({ progress }) => {
480
- this.compassMesh?.material.setValues({ opacity: progress });
481
- this.five.needsRender = true;
482
- })
483
- .play();
484
- }
485
- // ======== fix entry door label position and rotation ========
486
- if (this.entryDoorMesh) {
487
- const entryDoorPosition = new THREE__namespace.Vector3(this.data.entrance.position.x, this.data.entrance.position.y, this.data.entrance.position.z);
488
- const panoToEntryDoorVector = entryDoorPosition
489
- .clone()
490
- .setY(standingPosition.y)
491
- .sub(standingPosition)
492
- .normalize();
493
- const compassEntryDoorPosition = standingPosition
494
- .clone()
495
- .add(panoToEntryDoorVector.clone().multiplyScalar(0.7))
496
- .setY(standingPosition.y + 0.01);
497
- this.entryDoorMesh.rotation.z = new THREE__namespace.Vector3(0, 0, -1).angleTo(panoToEntryDoorVector);
498
- this.entryDoorMesh.position.copy(compassEntryDoorPosition);
499
- // 不是客厅时,隐藏入户门指引
500
- this.data?.room_observers[panoIndex].room.type === 1
501
- ? this.entryDoorMesh?.material.setValues({ opacity: 1 })
502
- : this.entryDoorMesh?.material.setValues({ opacity: 0 });
503
- }
504
- // ======== fix room info ========
505
- if (this.roomInfoInstance && this.roomInfoWrapperInstance) {
506
- this.roomInfoWrapperInstance.css3DObject.position.copy(standingPosition.clone().setY(standingPosition.y + 0.01));
507
- this.roomInfoInstance.setRoom(this.data.room_observers[panoIndex].room);
508
- }
509
- this.five.needsRender = true;
510
- };
511
- onFiveCameraDirectionUpdate = ({ longitude, latitude, }) => {
512
- if (!this.roomInfoWrapperInstance)
513
- return;
514
- this.roomInfoWrapperInstance.css3DObject.rotation.z = longitude;
515
- latitude > 0.66 && this.five.getCurrentState().mode === 'Panorama'
516
- ? this.roomInfoInstance?.show()
517
- : this.roomInfoInstance?.hide();
518
- };
519
627
  }
520
628
 
629
+ const panoCompassPluginServerParams = {
630
+ name: 'PanoCompassPlugin',
631
+ version: 0,
632
+ };
633
+
521
634
  exports.PanoCompassPlugin = PanoCompassPlugin;
522
635
  exports["default"] = PanoCompassPlugin;
523
636
  exports.panoCompassPluginServerParams = panoCompassPluginServerParams;
@@ -1,5 +1,5 @@
1
- import { Group, Vector3 } from 'three';
2
1
  import type { FivePlugin, Intersection } from '@realsee/five';
2
+ import { Group, Vector3 } from 'three';
3
3
  export interface PanoCursorRaycasterPluginParameterType {
4
4
  }
5
5
  export interface PanoCursorRaycasterPluginExportType {
@@ -52,20 +52,22 @@ const PanoCursorRaycasterPlugin = (five) => {
52
52
  return { clear, pointAxesHelperMesh };
53
53
  };
54
54
  const canSeePoint = (point, distanceError = 0) => {
55
- const cameraPosition = five?.camera?.position;
55
+ var _a, _b;
56
+ const cameraPosition = (_a = five === null || five === void 0 ? void 0 : five.camera) === null || _a === void 0 ? void 0 : _a.position;
56
57
  if (!cameraPosition)
57
58
  return false;
58
59
  const distance = point.distanceTo(cameraPosition);
59
60
  const direction = point.sub(cameraPosition).normalize();
60
61
  const raycaster = new three.Raycaster(cameraPosition, direction);
61
- const intersection = five.model.intersectRaycaster(raycaster)?.[0];
62
+ const intersection = (_b = five.model.intersectRaycaster(raycaster)) === null || _b === void 0 ? void 0 : _b[0];
62
63
  return !(intersection && intersection.distance + distanceError < distance);
63
64
  };
64
65
  const intersection = () => {
65
66
  return state.intersection;
66
67
  };
67
68
  const destroy = () => {
68
- state.disposers?.forEach?.((d) => d?.());
69
+ var _a, _b;
70
+ (_b = (_a = state.disposers) === null || _a === void 0 ? void 0 : _a.forEach) === null || _b === void 0 ? void 0 : _b.call(_a, (d) => d === null || d === void 0 ? void 0 : d());
69
71
  five.off('intersectionOnModelUpdate', updateIntersection);
70
72
  five.off('intersectionHidden', clearIntersection);
71
73
  };
@@ -1,11 +1,12 @@
1
- import Line from '../Model/line';
2
- import Magnifier from '../Modules/Magnifier';
3
- import FiveHelper from '../Modules/FiveHelper';
4
- import { Group } from 'three';
5
- import { Model } from '../Model';
6
- import { PluginEvent } from '../typings/event.type';
7
- import { Five, Intersection, IntersectMeshInterface, Subscribe } from '@realsee/five';
8
- import { UserDistanceItem } from '../utils/distanceDom';
1
+ import type Line from '../Model/line';
2
+ import type Magnifier from '../Modules/Magnifier';
3
+ import type FiveHelper from '../Modules/FiveHelper';
4
+ import type { Group } from 'three';
5
+ import type { Model } from '../Model';
6
+ import type { PanoMeasurePluginEvent } from '../typings/event.type';
7
+ import type { UserDistanceItem } from '../utils/distanceDom';
8
+ import type { Five, Intersection, IntersectMeshInterface, Subscribe } from '@realsee/five';
9
+ import type { OpenParameter } from '../typings/data';
9
10
  export interface IControllerParams {
10
11
  five: Five;
11
12
  group: Group;
@@ -14,7 +15,8 @@ export interface IControllerParams {
14
15
  container: Element;
15
16
  magnifier: Magnifier;
16
17
  fiveHelper: FiveHelper;
17
- hook: Subscribe<PluginEvent>;
18
+ openParams: OpenParameter;
19
+ hook: Subscribe<PanoMeasurePluginEvent>;
18
20
  userDistanceItemCreator?: () => UserDistanceItem;
19
21
  }
20
22
  export default abstract class BaseController {
@@ -22,6 +24,7 @@ export default abstract class BaseController {
22
24
  protected group: Group;
23
25
  protected model: Model;
24
26
  protected disposed: boolean;
27
+ protected isMobile: boolean;
25
28
  protected mouseGroup: Group;
26
29
  protected container: Element;
27
30
  protected fiveHelper: FiveHelper;
@@ -1,6 +1,6 @@
1
+ import type { LineJson } from '../typings/data';
1
2
  import { Model } from '../Model';
2
3
  import Line from '../Model/line';
3
- import { LineJson } from '../typings/data';
4
4
  import BaseController, { IControllerParams } from './BaseController';
5
5
  export interface EditEvent {
6
6
  editedLineChange: (lines: LineJson[]) => void;
@@ -0,0 +1,44 @@
1
+ import type { LineJson } from '../typings/data';
2
+ import { Model } from '../Model';
3
+ import Line from '../Model/line';
4
+ import BaseController, { IControllerParams } from './BaseController';
5
+ export declare type State = 'watching' | 'editing';
6
+ export interface EditEvent {
7
+ editedLineChange: (lines: LineJson[]) => void;
8
+ }
9
+ export default class MixedController extends BaseController {
10
+ state: State;
11
+ model: Model;
12
+ private hasAppendDashed;
13
+ private fiveElement?;
14
+ private mobileStartPoint;
15
+ private mobileNowPoint;
16
+ private highlightedLines;
17
+ private deleteDom;
18
+ /** 圆环点到上一个端点连接的虚线 */
19
+ private dashed;
20
+ constructor(params: IControllerParams);
21
+ dispose(): void;
22
+ highlightLine(line: Line): void;
23
+ clearHighlightLines(): void;
24
+ getEditingLines(): Line[];
25
+ /** 编辑线条发生改变时通知外部 */
26
+ private onLineChanged;
27
+ private onWantsTapGesture;
28
+ /** 编辑时取消走点,watch时可以走 */
29
+ private onWantsToMoveToPano;
30
+ /** 移动全景时更新 distanceItem 在屏幕上的位置 */
31
+ private onCameraUpdate;
32
+ /** mobile态时更新虚线 */
33
+ private updateMobileDashed;
34
+ /** mobile态时更新放大镜 */
35
+ private updateMagnifier;
36
+ private onGetStartPoint;
37
+ private onGetEndPoint;
38
+ private onNowPointChange;
39
+ private onWillChangeState;
40
+ private chooseLine;
41
+ private highlightLines;
42
+ private deleteDomClickCallback;
43
+ private cancelDeleteClickCallback;
44
+ }
@@ -1,5 +1,5 @@
1
- import MeasureController from '.';
2
- import { Five } from '@realsee/five';
1
+ import type MeasureController from '.';
2
+ import type { Five } from '@realsee/five';
3
3
  /** 快捷键控制器 */
4
4
  export declare class ShortcutKeyController {
5
5
  five: Five;
@@ -1,4 +1,4 @@
1
- import Line from '../Model/line';
1
+ import type Line from '../Model/line';
2
2
  import BaseController, { IControllerParams } from './BaseController';
3
3
  export default class WatchController extends BaseController {
4
4
  type: string;
@@ -22,4 +22,5 @@ export default class WatchController extends BaseController {
22
22
  private lineRemoved;
23
23
  private onCameraUpdate;
24
24
  private deleteDomClickCallback;
25
+ private cancelDeleteClickCallback;
25
26
  }