@realsee/dnalogel 2.1.2-alpha.9 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. package/README.md +45 -0
  2. package/dist/CSS3DRenderPlugin/CSS3DRender.d.ts +167 -0
  3. package/dist/CSS3DRenderPlugin/Controller.d.ts +81 -0
  4. package/dist/CSS3DRenderPlugin/index.d.ts +5 -0
  5. package/dist/CSS3DRenderPlugin/typing.d.ts +26 -0
  6. package/dist/CSS3DRenderPlugin/utils/CSS3DObjectPlus.d.ts +34 -0
  7. package/dist/CSS3DRenderPlugin/utils/centerPoint.d.ts +2 -0
  8. package/dist/CSS3DRenderPlugin/utils/evenNumber.d.ts +3 -0
  9. package/dist/CSS3DRenderPlugin/utils/index.d.ts +4 -0
  10. package/dist/CSS3DRenderPlugin/utils/positionToVector3.d.ts +13 -0
  11. package/dist/CSS3DRenderPlugin/utils/random.d.ts +1 -0
  12. package/dist/CameraMovementPlugin/CameraMovementPlugin.d.ts +7 -0
  13. package/dist/CameraMovementPlugin/index.d.ts +5 -0
  14. package/dist/CameraMovementPlugin/typing.d.ts +68 -0
  15. package/dist/CruisePlugin/Controller.d.ts +172 -0
  16. package/dist/CruisePlugin/index.d.ts +6 -0
  17. package/dist/CruisePlugin/typing.d.ts +134 -0
  18. package/dist/CruisePlugin/utils/coordinatesAngle.d.ts +12 -0
  19. package/dist/CruisePlugin/utils/coordinatesToVector.d.ts +7 -0
  20. package/dist/CruisePlugin/utils/formatRad.d.ts +7 -0
  21. package/dist/CruisePlugin/utils/linerValue.d.ts +1 -0
  22. package/dist/CruisePlugin/utils/safeCall.d.ts +1 -0
  23. package/dist/CruisePlugin/utils/sleep.d.ts +1 -0
  24. package/dist/CruisePlugin/utils/vectorToCoordinates.d.ts +7 -0
  25. package/dist/GuideLinePlugin/Controller.d.ts +51 -0
  26. package/dist/GuideLinePlugin/index.d.ts +5 -0
  27. package/dist/GuideLinePlugin/typing.d.ts +34 -0
  28. package/dist/GuideLinePlugin/utils/getArrowMaterial.d.ts +4 -0
  29. package/dist/GuideLinePlugin/utils/getLineGeometries.d.ts +16 -0
  30. package/dist/GuideLinePlugin/utils/polyline-normals.d.ts +3 -0
  31. package/dist/ItemLabelPlugin/Plugin.d.ts +4 -0
  32. package/dist/ItemLabelPlugin/events.type.d.ts +9 -0
  33. package/dist/ItemLabelPlugin/index.d.ts +9 -0
  34. package/dist/ItemLabelPlugin/typings.d.ts +65 -0
  35. package/dist/ItemLabelPlugin/utils/getLabelTransform.d.ts +1 -0
  36. package/dist/ItemLabelPlugin/utils/getStrokeLength.d.ts +5 -0
  37. package/dist/ItemLabelPlugin/utils/isImpacted.d.ts +8 -0
  38. package/dist/ItemLabelPlugin/utils/parseData.d.ts +3 -0
  39. package/dist/ItemLabelPlugin/utils/transform2RenderData.d.ts +3 -0
  40. package/dist/ModelChassisCompassPlugin/Plugin.d.ts +19 -0
  41. package/dist/ModelChassisCompassPlugin/index.d.ts +4 -0
  42. package/dist/ModelEntryDoorGuidePlugin/Plugin.d.ts +26 -0
  43. package/dist/ModelEntryDoorGuidePlugin/index.d.ts +4 -0
  44. package/dist/ModelItemLabelPlugin/ModelItemLabelPlugin.d.ts +4 -0
  45. package/dist/ModelItemLabelPlugin/events.type.d.ts +9 -0
  46. package/dist/ModelItemLabelPlugin/index.d.ts +9 -0
  47. package/dist/ModelItemLabelPlugin/typings.d.ts +56 -0
  48. package/dist/ModelItemLabelPlugin/utils/parseData.d.ts +3 -0
  49. package/dist/ModelRoomLabelPlugin/Assets/roomLabelBg.d.ts +1 -0
  50. package/dist/ModelRoomLabelPlugin/Controller.d.ts +36 -0
  51. package/dist/ModelRoomLabelPlugin/index.d.ts +12 -0
  52. package/dist/ModelRoomLabelPlugin/typings.d.ts +35 -0
  53. package/dist/ModelRoomLabelPlugin/utils/parseData.d.ts +3 -0
  54. package/dist/ModelTVVideoPlugin/Plugin.d.ts +4 -0
  55. package/dist/ModelTVVideoPlugin/index.d.ts +5 -0
  56. package/dist/ModelTVVideoPlugin/typings.d.ts +25 -0
  57. package/dist/ModelTVVideoPlugin/utils/parseData.d.ts +2 -0
  58. package/dist/ModelViewPlugin/Plugin.d.ts +28 -0
  59. package/dist/ModelViewPlugin/index.d.ts +4 -0
  60. package/dist/Object3DHelperPlugin/Controller.d.ts +65 -0
  61. package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +19 -0
  62. package/dist/Object3DHelperPlugin/index.d.ts +6 -0
  63. package/dist/Object3DHelperPlugin/typings.d.ts +24 -0
  64. package/dist/PanoCompassPlugin/Assets/roomInfoIcon.d.ts +1 -0
  65. package/dist/PanoCompassPlugin/Controller.d.ts +84 -0
  66. package/dist/PanoCompassPlugin/getRoomInfoInstance.d.ts +8 -0
  67. package/dist/PanoCompassPlugin/index.d.ts +7 -0
  68. package/dist/PanoCompassPlugin/typings.d.ts +57 -0
  69. package/dist/PanoCursorRaycasterPlugin/index.d.ts +48 -0
  70. package/dist/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  71. package/dist/PanoDoorLabelPlugin/Controller.d.ts +37 -0
  72. package/dist/PanoDoorLabelPlugin/index.d.ts +7 -0
  73. package/dist/PanoDoorLabelPlugin/typings.d.ts +38 -0
  74. package/dist/PanoDoorLabelPlugin/utils.d.ts +5 -0
  75. package/dist/PanoMeasurePlugin/Controller/BaseController.d.ts +43 -0
  76. package/dist/PanoMeasurePlugin/Controller/EditController.d.ts +48 -0
  77. package/dist/PanoMeasurePlugin/Controller/MixedController.d.ts +42 -0
  78. package/dist/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +12 -0
  79. package/dist/PanoMeasurePlugin/Controller/ViewController.d.ts +16 -0
  80. package/dist/PanoMeasurePlugin/Controller/WatchController.d.ts +26 -0
  81. package/dist/PanoMeasurePlugin/Controller/index.d.ts +73 -0
  82. package/dist/PanoMeasurePlugin/Model/index.d.ts +35 -0
  83. package/dist/PanoMeasurePlugin/Model/line.d.ts +30 -0
  84. package/dist/PanoMeasurePlugin/Model/point.d.ts +16 -0
  85. package/dist/PanoMeasurePlugin/Model/polyline.d.ts +16 -0
  86. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +2 -0
  87. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +2 -0
  88. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +2 -0
  89. package/dist/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +25 -0
  90. package/dist/PanoMeasurePlugin/Modules/FiveHelper.d.ts +11 -0
  91. package/dist/PanoMeasurePlugin/Modules/GuideController.d.ts +18 -0
  92. package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +59 -0
  93. package/dist/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +2 -0
  94. package/dist/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +15 -0
  95. package/dist/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +13 -0
  96. package/dist/PanoMeasurePlugin/Modules/UIController/index.d.ts +20 -0
  97. package/dist/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +4 -0
  98. package/dist/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.d.ts +12 -0
  99. package/dist/PanoMeasurePlugin/Modules/UIController/style.d.ts +16 -0
  100. package/dist/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +4 -0
  101. package/dist/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +44 -0
  102. package/dist/PanoMeasurePlugin/index.d.ts +10 -0
  103. package/dist/PanoMeasurePlugin/typings/data.d.ts +37 -0
  104. package/dist/PanoMeasurePlugin/typings/event.type.d.ts +37 -0
  105. package/dist/PanoMeasurePlugin/typings/index.d.ts +8 -0
  106. package/dist/PanoMeasurePlugin/utils/calculateThreeMouse.d.ts +10 -0
  107. package/dist/PanoMeasurePlugin/utils/constants.d.ts +4 -0
  108. package/dist/PanoMeasurePlugin/utils/distanceDom.d.ts +28 -0
  109. package/dist/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +2 -0
  110. package/dist/PanoMeasurePlugin/utils/findClosestPoint.d.ts +10 -0
  111. package/dist/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +4 -0
  112. package/dist/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +10 -0
  113. package/dist/PanoMeasurePlugin/utils/ironbox.d.ts +1 -0
  114. package/dist/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +2 -0
  115. package/dist/PanoMeasurePlugin/utils/line.d.ts +17 -0
  116. package/dist/PanoMeasurePlugin/utils/math.d.ts +17 -0
  117. package/dist/PanoMeasurePlugin/utils/mouseGroup.d.ts +7 -0
  118. package/dist/PanoMeasurePlugin/utils/ndc2Screen.d.ts +5 -0
  119. package/dist/PanoRulerPlugin/Plugin.d.ts +34 -0
  120. package/dist/PanoRulerPlugin/index.d.ts +5 -0
  121. package/dist/PanoRulerPlugin/style.d.ts +2 -0
  122. package/dist/PanoRulerPlugin/typings.d.ts +21 -0
  123. package/dist/PanoRulerProPlugin/Controller.d.ts +15 -0
  124. package/dist/PanoRulerProPlugin/index.d.ts +8 -0
  125. package/dist/PanoRulerProPlugin/typings.d.ts +46 -0
  126. package/dist/PanoSpatialTagPlugin/Plugin.d.ts +35 -0
  127. package/dist/PanoSpatialTagPlugin/index.d.ts +5 -0
  128. package/dist/PanoSpatialTagPlugin/store.d.ts +1 -0
  129. package/dist/PanoSpatialTagPlugin/style.d.ts +1 -0
  130. package/dist/PanoSpatialTagPlugin/typings.d.ts +40 -0
  131. package/dist/PanoTagPlugin/Assets/Icon.d.ts +3 -0
  132. package/dist/PanoTagPlugin/controller/TagCacheController.d.ts +22 -0
  133. package/dist/PanoTagPlugin/controller/TagComputer.d.ts +69 -0
  134. package/dist/PanoTagPlugin/controller/index.d.ts +144 -0
  135. package/dist/PanoTagPlugin/index.d.ts +8 -0
  136. package/dist/PanoTagPlugin/tag.config.d.ts +7 -0
  137. package/dist/PanoTagPlugin/typings/controller.d.ts +103 -0
  138. package/dist/PanoTagPlugin/typings/index.d.ts +2 -0
  139. package/dist/PanoTagPlugin/typings/tag.d.ts +247 -0
  140. package/dist/PanoTagPlugin/utils/actionAfterFiveModelLoad.d.ts +2 -0
  141. package/dist/PanoTagPlugin/utils/addDebugPoints.d.ts +3 -0
  142. package/dist/PanoTagPlugin/utils/checkRange.d.ts +4 -0
  143. package/dist/PanoTagPlugin/utils/constants.d.ts +3 -0
  144. package/dist/PanoTagPlugin/utils/debounce.d.ts +7 -0
  145. package/dist/PanoTagPlugin/utils/doUtil.d.ts +1 -0
  146. package/dist/PanoTagPlugin/utils/index.d.ts +12 -0
  147. package/dist/PanoTagPlugin/utils/noTypecheck.d.ts +1 -0
  148. package/dist/PanoTagPlugin/utils/normalPositionToPositions.d.ts +2 -0
  149. package/dist/PanoTagPlugin/utils/planeNormal.d.ts +4 -0
  150. package/dist/PanoTagPlugin/utils/resizeObserver.d.ts +4 -0
  151. package/dist/PanoTagPlugin/utils/search.d.ts +11 -0
  152. package/dist/PanoTagPlugin/utils/tagPosition.d.ts +3 -0
  153. package/dist/PanoTagPlugin/utils/throttle.d.ts +7 -0
  154. package/dist/base/BasePlugin.d.ts +106 -0
  155. package/dist/base/BasePluginWithData.d.ts +34 -0
  156. package/dist/components/PaintBrush/Controller.d.ts +43 -0
  157. package/dist/components/PaintBrush/Subscribe.d.ts +76 -0
  158. package/dist/components/PaintBrush/index.d.ts +27 -0
  159. package/dist/components/PaintBrush/style.d.ts +2 -0
  160. package/dist/components/PaintBrush/tween.d.ts +7 -0
  161. package/dist/components/PaintBrush/typings.d.ts +58 -0
  162. package/dist/components/PaintBrush/utils.d.ts +26 -0
  163. package/dist/components/index.d.ts +2 -0
  164. package/dist/env.d.ts +1 -0
  165. package/dist/floorplan/Assets/camera.d.ts +1 -0
  166. package/dist/floorplan/Assets/compass.d.ts +1 -0
  167. package/dist/floorplan/Assets/floorplanExtraObject.d.ts +1 -0
  168. package/dist/floorplan/MapviewFloorplanPlugin/Controller.d.ts +97 -0
  169. package/dist/floorplan/MapviewFloorplanPlugin/index.d.ts +7 -0
  170. package/dist/floorplan/MapviewFloorplanPlugin/typing.d.ts +1 -0
  171. package/dist/floorplan/ModelFloorplanPlugin/Controller.d.ts +99 -0
  172. package/dist/floorplan/ModelFloorplanPlugin/index.d.ts +7 -0
  173. package/dist/floorplan/ModelFloorplanPlugin/typing.d.ts +1 -0
  174. package/dist/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +36 -0
  175. package/dist/floorplan/PanoFloorplanRadarPlugin/index.d.ts +7 -0
  176. package/dist/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
  177. package/dist/floorplan/TopviewFloorplanPlugin/Controller.d.ts +69 -0
  178. package/dist/floorplan/TopviewFloorplanPlugin/index.d.ts +7 -0
  179. package/dist/floorplan/TopviewFloorplanPlugin/typing.d.ts +11 -0
  180. package/dist/floorplan/constant.d.ts +5 -0
  181. package/dist/floorplan/index.d.ts +7 -0
  182. package/dist/floorplan/typings/floorplanData.d.ts +137 -0
  183. package/dist/floorplan/typings/floorplanServerData.d.ts +144 -0
  184. package/dist/floorplan/typings/index.d.ts +117 -0
  185. package/dist/floorplan/typings/utility.d.ts +2 -0
  186. package/dist/floorplan/utils/constant.d.ts +22 -0
  187. package/dist/floorplan/utils/correctFiveState.d.ts +15 -0
  188. package/dist/floorplan/utils/formatData.d.ts +5 -0
  189. package/dist/floorplan/utils/formatPosition.d.ts +36 -0
  190. package/dist/index.d.ts +23 -0
  191. package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +48 -0
  192. package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +91 -0
  193. package/dist/shared-utils/Object3DHelper/Constants/color.d.ts +12 -0
  194. package/dist/shared-utils/Object3DHelper/Controller/CSS3DScaleController.d.ts +6 -0
  195. package/dist/shared-utils/Object3DHelper/Controller/MoveController.d.ts +13 -0
  196. package/dist/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +37 -0
  197. package/dist/shared-utils/Object3DHelper/Controller/RotateController.d.ts +22 -0
  198. package/dist/shared-utils/Object3DHelper/Helper/HTML/rectangleScaleDom.d.ts +11 -0
  199. package/dist/shared-utils/Object3DHelper/Helper/HTML/tipsDom.d.ts +6 -0
  200. package/dist/shared-utils/Object3DHelper/Helper/HTML/utils/createElement.d.ts +2 -0
  201. package/dist/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +13 -0
  202. package/dist/shared-utils/Object3DHelper/Helper/Objects/ArrowGroup.d.ts +17 -0
  203. package/dist/shared-utils/Object3DHelper/Helper/OutlineHelper.d.ts +11 -0
  204. package/dist/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts +40 -0
  205. package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +55 -0
  206. package/dist/shared-utils/Object3DHelper/Helper/index.d.ts +5 -0
  207. package/dist/shared-utils/Object3DHelper/index.d.ts +71 -0
  208. package/dist/shared-utils/Object3DHelper/typings/Direction.d.ts +2 -0
  209. package/dist/shared-utils/Object3DHelper/typings/Hooks.d.ts +45 -0
  210. package/dist/shared-utils/Object3DHelper/typings/Scissor.d.ts +17 -0
  211. package/dist/shared-utils/Object3DHelper/typings/index.d.ts +5 -0
  212. package/dist/shared-utils/Object3DHelper/utils/calculateThreeMouse.d.ts +14 -0
  213. package/dist/shared-utils/Object3DHelper/utils/direction.d.ts +14 -0
  214. package/dist/shared-utils/Object3DHelper/utils/filterNotColinearPoints.d.ts +2 -0
  215. package/dist/shared-utils/Object3DHelper/utils/getMouseRaycaster.d.ts +5 -0
  216. package/dist/shared-utils/Object3DHelper/utils/getPoint.d.ts +3 -0
  217. package/dist/shared-utils/Object3DHelper/utils/index.d.ts +8 -0
  218. package/dist/shared-utils/Object3DHelper/utils/normalPositionToPositions.d.ts +5 -0
  219. package/dist/shared-utils/Object3DHelper/utils/object3DBoundingPosition.d.ts +1 -0
  220. package/dist/shared-utils/Object3DHelper/utils/threex/domevents/index.d.ts +34 -0
  221. package/dist/shared-utils/Object3DHelper/utils/vectorIsEqual.d.ts +2 -0
  222. package/dist/shared-utils/Subscribe.d.ts +60 -0
  223. package/dist/shared-utils/animationFrame/BetterTween.d.ts +11 -0
  224. package/dist/shared-utils/animationFrame/calculateProgress.d.ts +8 -0
  225. package/dist/shared-utils/animationFrame/formatRad.d.ts +15 -0
  226. package/dist/shared-utils/animationFrame/index.d.ts +16 -0
  227. package/dist/shared-utils/animationFrame/tween.d.ts +75 -0
  228. package/dist/shared-utils/changeModelCanvasOpacity.d.ts +2 -0
  229. package/dist/shared-utils/createCanvasTextTexture.d.ts +8 -0
  230. package/dist/shared-utils/createLine/index.d.ts +3 -0
  231. package/dist/shared-utils/debounce.d.ts +6 -0
  232. package/dist/shared-utils/equal.d.ts +11 -0
  233. package/dist/shared-utils/filter.d.ts +27 -0
  234. package/dist/shared-utils/five/changeMode.d.ts +5 -0
  235. package/dist/shared-utils/getPxmm.d.ts +19 -0
  236. package/dist/shared-utils/index.d.ts +4 -0
  237. package/dist/shared-utils/isNil.d.ts +10 -0
  238. package/dist/shared-utils/isTruelyObject.d.ts +18 -0
  239. package/dist/shared-utils/math/Interval.d.ts +13 -0
  240. package/dist/shared-utils/math/Rectangle.d.ts +27 -0
  241. package/dist/shared-utils/math/index.d.ts +2 -0
  242. package/dist/shared-utils/math/planimetry.d.ts +116 -0
  243. package/dist/shared-utils/math/rad2Deg.d.ts +1 -0
  244. package/dist/shared-utils/nearlyEqual.d.ts +7 -0
  245. package/dist/shared-utils/nextFrame.d.ts +1 -0
  246. package/dist/shared-utils/noop.d.ts +5 -0
  247. package/dist/shared-utils/object3d2LocalMatrix.d.ts +12 -0
  248. package/dist/shared-utils/removeArrayItem.d.ts +7 -0
  249. package/dist/shared-utils/tap.d.ts +8 -0
  250. package/dist/shared-utils/three/Assets/index.d.ts +3 -0
  251. package/dist/shared-utils/three/FivePointSelector.d.ts +36 -0
  252. package/dist/shared-utils/three/Magnifier.d.ts +53 -0
  253. package/dist/shared-utils/three/PointDomHelper.d.ts +18 -0
  254. package/dist/shared-utils/three/PointHelper.d.ts +21 -0
  255. package/dist/shared-utils/three/getCoords.d.ts +9 -0
  256. package/dist/shared-utils/three/getIntersect.d.ts +6 -0
  257. package/dist/shared-utils/three/getRaycaster.d.ts +6 -0
  258. package/dist/shared-utils/three/index.d.ts +7 -0
  259. package/dist/shared-utils/three/loadTexture.d.ts +2 -0
  260. package/dist/shared-utils/three/transformPositionToVector3.d.ts +7 -0
  261. package/dist/shared-utils/three/transfromToMeshBasicMaterial.d.ts +2 -0
  262. package/dist/shared-utils/throttle.d.ts +7 -0
  263. package/dist/shared-utils/tinyEJSrender.d.ts +5 -0
  264. package/dist/shared-utils/to.d.ts +8 -0
  265. package/dist/shared-utils/uuid.d.ts +5 -0
  266. package/dist/typings/math.type.d.ts +44 -0
  267. package/docs/assets/highlight.css +35 -0
  268. package/docs/classes/CruisePluginController.html +24 -24
  269. package/docs/classes/Magnifier.html +16 -16
  270. package/docs/classes/ModelRoomLabelController.html +11 -11
  271. package/docs/classes/Object3DHelperController.html +24 -24
  272. package/docs/classes/PaintBrush.html +15 -15
  273. package/docs/classes/PanoTagPluginController.html +39 -39
  274. package/docs/classes/Util.BetterTween.html +8 -8
  275. package/docs/classes/Util.FivePointSelector.html +12 -12
  276. package/docs/classes/Util.Interval.html +12 -12
  277. package/docs/classes/Util.Magnifier.html +17 -17
  278. package/docs/classes/Util.PointDomHelper.html +11 -11
  279. package/docs/classes/Util.PointHelper.html +11 -11
  280. package/docs/classes/Util.Rectangle.html +13 -13
  281. package/docs/enums/CameraMovementEffect.html +7 -7
  282. package/docs/enums/ContentType.html +12 -12
  283. package/docs/enums/DIRECTION.html +9 -9
  284. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  285. package/docs/enums/DimensionType.html +7 -7
  286. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  287. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  288. package/docs/enums/LinkType.html +7 -7
  289. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  290. package/docs/enums/PointType.html +7 -7
  291. package/docs/enums/Rotation.html +8 -8
  292. package/docs/functions/CSS3DRenderPlugin.html +4 -4
  293. package/docs/functions/CameraMovementPlugin.html +4 -4
  294. package/docs/functions/CruisePlugin.html +4 -4
  295. package/docs/functions/GuideLinePlugin.html +5 -5
  296. package/docs/functions/ItemLabelPlugin.html +4 -4
  297. package/docs/functions/MapviewFloorplanPlugin.html +4 -4
  298. package/docs/functions/ModelChassisCompassPlugin.html +4 -4
  299. package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
  300. package/docs/functions/ModelFloorplanPlugin.html +4 -4
  301. package/docs/functions/ModelItemLabelPlugin.html +4 -4
  302. package/docs/functions/ModelRoomLabelPlugin.html +4 -4
  303. package/docs/functions/ModelTVVideoPlugin.html +4 -4
  304. package/docs/functions/ModelViewPlugin.html +4 -4
  305. package/docs/functions/Object3DHelperPlugin.html +4 -4
  306. package/docs/functions/PanoCompassPlugin.html +4 -4
  307. package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
  308. package/docs/functions/PanoDoorLabelPlugin.html +4 -4
  309. package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
  310. package/docs/functions/PanoMeasurePlugin.html +4 -4
  311. package/docs/functions/PanoRulerPlugin.html +4 -4
  312. package/docs/functions/PanoRulerProPlugin.html +4 -4
  313. package/docs/functions/PanoSpatialTagPlugin.html +4 -4
  314. package/docs/functions/PanoTagPlugin.html +4 -4
  315. package/docs/functions/TopviewFloorplanPlugin.html +4 -4
  316. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  317. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  318. package/docs/functions/Util.getFrameTime.html +5 -5
  319. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  320. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  321. package/docs/functions/Util.isNil.html +5 -5
  322. package/docs/functions/Util.nextFrame.html +5 -5
  323. package/docs/functions/Util.notNil.html +5 -5
  324. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  325. package/docs/functions/Util.tweenProgress.html +5 -5
  326. package/docs/functions/pluginFlag.html +5 -5
  327. package/docs/index.html +25 -4
  328. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  329. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  330. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  331. package/docs/interfaces/ContentTypeMap.html +12 -12
  332. package/docs/interfaces/FloorplanBounding.html +8 -8
  333. package/docs/interfaces/FloorplanData.html +10 -10
  334. package/docs/interfaces/FloorplanEntrance.html +11 -11
  335. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  336. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  337. package/docs/interfaces/FloorplanFloorData.html +9 -9
  338. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  339. package/docs/interfaces/FloorplanObserver.html +9 -9
  340. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  341. package/docs/interfaces/FloorplanPosition.html +7 -7
  342. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  343. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  344. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  345. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  346. package/docs/interfaces/FloorplanServerData.html +7 -7
  347. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  348. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  349. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  350. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  351. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  352. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  353. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  354. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  355. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  356. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  357. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  358. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  359. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  360. package/docs/interfaces/LineJson.html +7 -7
  361. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  362. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  363. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  364. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  365. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  366. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  367. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  368. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  369. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  370. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  371. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  372. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  373. package/docs/interfaces/ModelViewPluginExportType.html +8 -8
  374. package/docs/interfaces/Object3DHelperState.html +8 -8
  375. package/docs/interfaces/OpenParameter.html +7 -7
  376. package/docs/interfaces/PaintBrushAction.html +12 -12
  377. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  378. package/docs/interfaces/PaintBrushState.html +10 -10
  379. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  380. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
  381. package/docs/interfaces/PanoMeasureParameterType.html +11 -11
  382. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  383. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  384. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  385. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  386. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  387. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  388. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  389. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
  390. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
  391. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  392. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  393. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  394. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  395. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  396. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  397. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  398. package/docs/interfaces/Point.html +8 -8
  399. package/docs/interfaces/PointJson.html +8 -8
  400. package/docs/interfaces/Room.html +9 -9
  401. package/docs/interfaces/RoomInfo.html +7 -7
  402. package/docs/interfaces/RoomLabel.html +14 -14
  403. package/docs/interfaces/RoomRules.html +5 -5
  404. package/docs/interfaces/Rooms.html +5 -5
  405. package/docs/interfaces/Scissor.html +9 -9
  406. package/docs/interfaces/TagConfig.html +10 -10
  407. package/docs/interfaces/Tags.html +9 -9
  408. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  409. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  410. package/docs/modules/Util.html +5 -5
  411. package/docs/modules.html +4 -4
  412. package/docs/types/ArrayPosition.html +5 -5
  413. package/docs/types/CSS3DRenderExportType.html +5 -5
  414. package/docs/types/CSS3DRenderPluginExportType.html +5 -5
  415. package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
  416. package/docs/types/Color.html +5 -5
  417. package/docs/types/ContentTypeConfigKey.html +5 -5
  418. package/docs/types/ContentTypeConfigKeyArray.html +5 -5
  419. package/docs/types/Create3DDomContainerReturnType.html +5 -5
  420. package/docs/types/Create3DElementReturnType.html +5 -5
  421. package/docs/types/CruisePluginExportType.html +5 -5
  422. package/docs/types/Direction-1.html +5 -5
  423. package/docs/types/Direction4.html +5 -5
  424. package/docs/types/FloorplanRuleLabels.html +5 -5
  425. package/docs/types/FloorplanServerRuleLabels.html +5 -5
  426. package/docs/types/GuideLinePluginExportType.html +5 -5
  427. package/docs/types/HelperEventMap.html +5 -5
  428. package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
  429. package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
  430. package/docs/types/MediaData.html +5 -5
  431. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
  432. package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
  433. package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
  434. package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
  435. package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
  436. package/docs/types/MoveArgs.html +5 -5
  437. package/docs/types/MoveOpts.html +5 -5
  438. package/docs/types/Object3DHelperEventMap.html +5 -5
  439. package/docs/types/ObjectFit.html +5 -5
  440. package/docs/types/PaintBrushEventMap.html +5 -5
  441. package/docs/types/PanoCompassPluginData.html +5 -5
  442. package/docs/types/PanoCompassPluginExportType.html +5 -5
  443. package/docs/types/PanoCompassPluginParameterType.html +5 -5
  444. package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
  445. package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
  446. package/docs/types/PanoMeasurePluginEvent.html +5 -5
  447. package/docs/types/PanoMeasureReturnType.html +5 -5
  448. package/docs/types/PanoSpatialTagPluginId.html +5 -5
  449. package/docs/types/PanoTagPluginExportInterface.html +5 -5
  450. package/docs/types/PanoTagPluginParamsInterface.html +5 -5
  451. package/docs/types/PlaneTag.html +5 -5
  452. package/docs/types/PointTag.html +5 -5
  453. package/docs/types/Position.html +5 -5
  454. package/docs/types/RotateArgs.html +5 -5
  455. package/docs/types/RotateOpts.html +5 -5
  456. package/docs/types/RuleLabelsKey.html +5 -5
  457. package/docs/types/RuleLabelsValue.html +5 -5
  458. package/docs/types/Tag.html +5 -5
  459. package/docs/types/Tag2D.html +5 -5
  460. package/docs/types/Tag3D.html +5 -5
  461. package/docs/types/TagId.html +5 -5
  462. package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
  463. package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
  464. package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
  465. package/docs/variables/PLUGIN.html +5 -5
  466. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
  467. package/docs/variables/ROOM_TYPE_MAP.html +5 -5
  468. package/docs/variables/VERSION.html +5 -5
  469. package/docs/variables/itemLabelPluginServerParams.html +5 -5
  470. package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
  471. package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
  472. package/package.json +4 -8
  473. package/dist/index.es.js +0 -16650
@@ -0,0 +1,3 @@
1
+ import type { Five } from '@realsee/five';
2
+ import type { Tag } from '../typings';
3
+ export declare function addDebugPoints(five: Five, tags: Tag[]): void;
@@ -0,0 +1,4 @@
1
+ export declare function checkRange(value?: number, range?: {
2
+ min?: number;
3
+ max?: number;
4
+ }): boolean;
@@ -0,0 +1,3 @@
1
+ export declare function random(): string;
2
+ declare const RANDON_STRING: string;
3
+ export { RANDON_STRING };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 函数防抖:指触发事件后,在 `n` 秒内函数只能执行一次,如果触发事件后在 `n` 秒内又触发了事件,则会重新计算函数延执行时间。
3
+ * @param callback 回调函数
4
+ * @param waitFor 等待时间
5
+ * @returns
6
+ */
7
+ export declare const debounce: <F extends (...args: any) => any>(callback: F, waitFor?: number) => (...args: Parameters<F>) => ReturnType<F>;
@@ -0,0 +1 @@
1
+ export default function doUtil<T = any>(func: () => T, util: (value: T) => boolean, duration?: number, times?: number): Promise<T>;
@@ -0,0 +1,12 @@
1
+ export * from '../../CSS3DRenderPlugin/utils';
2
+ export * from './addDebugPoints';
3
+ export * from './noTypecheck';
4
+ export * from './planeNormal';
5
+ export * from './tagPosition';
6
+ export * from './checkRange';
7
+ export * from './actionAfterFiveModelLoad';
8
+ export * from './normalPositionToPositions';
9
+ export * from './debounce';
10
+ export * from './throttle';
11
+ export * from './search';
12
+ export * from './resizeObserver';
@@ -0,0 +1 @@
1
+ export declare const noTypecheck: <T = any>(x: T) => any;
@@ -0,0 +1,2 @@
1
+ import type { Vector3 } from 'three';
2
+ export declare function normalPositionToPositions(cameraPosition: Vector3, position: Vector3, normal: Vector3): [Vector3, Vector3, Vector3, Vector3];
@@ -0,0 +1,4 @@
1
+ import type { Vector3 } from 'three';
2
+ import { AnyPosition } from '.';
3
+ export declare function planeNormal(points: [AnyPosition, AnyPosition, AnyPosition] | [AnyPosition, AnyPosition, AnyPosition, AnyPosition]): Vector3;
4
+ export declare function planeNormal(points: AnyPosition[]): Vector3 | void;
@@ -0,0 +1,4 @@
1
+ export declare function resizeObserver(func: () => any, element?: HTMLElement): {
2
+ observe: () => void;
3
+ unobserve: () => void;
4
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 二分查找,查找第一个大于等于给定值的元素
3
+ * 数组必须有序,存在重复
4
+ * @param {array} arr 待排序数组
5
+ * @param {number} target 目标数据
6
+ */
7
+ export declare function binarySearchFirstBig(getValueByIndex: (index: number) => number, indexRange: [number, number], target: number): number;
8
+ /**
9
+ * @description: 查找第一个小于前一个数字的值
10
+ */
11
+ export declare function searchFirstValueSmallThanLastValue(getValueByIndex: (index: number) => number, indexRange: [number, number]): number;
@@ -0,0 +1,3 @@
1
+ import type { Vector3 } from 'three';
2
+ import { AnyPosition } from '.';
3
+ export declare function tagPosition(position: AnyPosition | [AnyPosition, AnyPosition, AnyPosition, AnyPosition]): Vector3;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 创建一个防抖动函数,该函数在高频调用时会每隔 wait 毫秒后调用 func 方法
3
+ * `throttle` 会在第一次调用时立刻调用一次
4
+ * @param func - 要防抖动的函数
5
+ * @param wait - 需要延迟的毫秒数
6
+ */
7
+ export declare function throttle<T>(func: (...args: T[]) => void, wait?: number): (this: any, ...args: T[]) => void;
@@ -0,0 +1,106 @@
1
+ import type { Five } from '@realsee/five';
2
+ import { Subscribe } from '../shared-utils/Subscribe';
3
+ /**
4
+ * 基本属性字段
5
+ */
6
+ interface State {
7
+ /**
8
+ * 插件是否启用
9
+ */
10
+ enabled: boolean;
11
+ /**
12
+ * 插件UI是否展示
13
+ */
14
+ visible?: boolean;
15
+ /**
16
+ * 插件的配置项
17
+ */
18
+ config?: unknown;
19
+ }
20
+ interface BaseOptions {
21
+ /** 是否是用户行为 */
22
+ userAction?: boolean;
23
+ }
24
+ export interface Config {
25
+ /** 静态资源前缀 */
26
+ staticPrefix?: string;
27
+ }
28
+ /**
29
+ * 插件基本事件
30
+ */
31
+ declare type EventMap<PluginState> = {
32
+ /**
33
+ * 插件被销毁
34
+ */
35
+ dispose: () => void;
36
+ /**
37
+ * 插件状态变化
38
+ * @param params.state 最新的State
39
+ * @param params.prevState 上一个State
40
+ * @param params.userAction 是否是用户触发
41
+ */
42
+ stateChange: (params: {
43
+ state: PluginState;
44
+ prevState?: PluginState;
45
+ userAction: boolean;
46
+ }) => void;
47
+ };
48
+ /**
49
+ * plugin 的基本控制器
50
+ */
51
+ declare abstract class Controller<PluginState extends State, PluginEventMap extends EventMap<PluginState>> {
52
+ five: Five;
53
+ /**
54
+ * 插件事件钩子
55
+ */
56
+ hooks: Subscribe<PluginEventMap>;
57
+ readonly staticPrefix: string;
58
+ /**
59
+ * 当前状态
60
+ * @description
61
+ * ```text
62
+ * 可以通过 plugin.state 和 plugin.setState 来获取和设置。
63
+ * 通过 state 设置后,plugin 会通过合适的动画运动来达到设置的效果。
64
+ * 来迎合一些通过数据驱动的场景。
65
+ * ```
66
+ */
67
+ abstract state: PluginState;
68
+ constructor(five: Five, config?: Config);
69
+ /**
70
+ * 获取当前的插件状态,如果当初插件内存在需要通过动画变更的 state 值,则通过此方法可以得到中间状态
71
+ */
72
+ getCurrentState(): PluginState;
73
+ /**
74
+ * 插件自身DOM添加到父容器
75
+ * @param wrapper
76
+ */
77
+ appendTo?(wrapper: Element): void;
78
+ /**
79
+ * 展示UI
80
+ */
81
+ show?(options?: BaseOptions): Promise<void>;
82
+ /**
83
+ * 隐藏UI
84
+ */
85
+ hide?(options?: BaseOptions): Promise<void>;
86
+ /**
87
+ * 启用插件,让插件能够响应交互
88
+ */
89
+ abstract enable(options?: BaseOptions): void;
90
+ /**
91
+ * 禁用插件,让插件停止响应交互
92
+ */
93
+ abstract disable(options?: BaseOptions): void;
94
+ /**
95
+ * 插件进行销毁
96
+ */
97
+ abstract dispose(): void;
98
+ /**
99
+ * 设置state
100
+ * @param state 插件的目标状态
101
+ * @param options 配置项
102
+ */
103
+ abstract setState(state: Partial<PluginState>, options?: BaseOptions): void;
104
+ }
105
+ export type { State, EventMap, BaseOptions };
106
+ export { Controller };
@@ -0,0 +1,34 @@
1
+ import * as BasePlugin from './BasePlugin';
2
+ declare type State = BasePlugin.State;
3
+ interface EventMap<PluginState, PluginData> extends BasePlugin.EventMap<PluginState> {
4
+ /** 数据变更 */
5
+ dataChange: (data: PluginData, prevData?: PluginData) => void;
6
+ /** 数据加载完成 */
7
+ dataLoaded: (data: PluginData) => void;
8
+ }
9
+ /**
10
+ * 插件的基础数据
11
+ */
12
+ interface ServerData {
13
+ /**
14
+ * 数据版本
15
+ */
16
+ version: number;
17
+ /**
18
+ * 数据
19
+ */
20
+ data?: unknown;
21
+ }
22
+ declare abstract class Controller<PluginState extends State, PluginEventMap extends EventMap<PluginState, PluginData>, PluginServerData extends ServerData, PluginData> extends BasePlugin.Controller<PluginState, PluginEventMap> {
23
+ protected abstract data?: PluginData;
24
+ /**
25
+ * 加载插件依赖数据
26
+ * @param serverData 插件数据
27
+ * @param state 插件 State
28
+ */
29
+ abstract load(serverData: PluginServerData, state?: PluginState, userAction?: boolean): Promise<void>;
30
+ /** 把原始数据转化为插件数据 */
31
+ protected abstract formatData?(serverData: PluginServerData): Promise<PluginData>;
32
+ }
33
+ export type { State, EventMap, ServerData };
34
+ export { Controller };
@@ -0,0 +1,43 @@
1
+ import { noop } from './utils';
2
+ import { PaintBrushAction, PaintBrushConfigs, PaintBrushEventMap, PaintBrushState } from './typings';
3
+ import { Subscribe } from './Subscribe';
4
+ export declare class Controller extends Subscribe<PaintBrushEventMap> {
5
+ configs: PaintBrushConfigs;
6
+ private clientWidth;
7
+ private clientHeight;
8
+ private ready;
9
+ private uuid;
10
+ private tween?;
11
+ private tweening;
12
+ private container;
13
+ private canvas;
14
+ private data;
15
+ private tempLine;
16
+ get color(): string;
17
+ get state(): Record<string, PaintBrushState[]>;
18
+ get dpr(): number;
19
+ constructor(configs: PaintBrushConfigs);
20
+ ifInsertToDOM(): HTMLDivElement;
21
+ /**
22
+ *
23
+ * @param className 初始化画板
24
+ * @returns
25
+ */
26
+ initCanvas(className: string): HTMLCanvasElement;
27
+ /**
28
+ * 初始化操作面板
29
+ * @returns
30
+ */
31
+ initCtrl(): HTMLDivElement;
32
+ openBrush(): void;
33
+ closeBrush(): void;
34
+ updateCurrentColor(color: string): void;
35
+ openBrushHandle(): void;
36
+ emitStateChange(action: PaintBrushAction, userAction?: boolean): void;
37
+ action(action: PaintBrushAction): void;
38
+ handleDrawLine(_uuid: string, data: PaintBrushState, { withUndo }: {
39
+ withUndo?: boolean;
40
+ }, callback?: typeof noop): void;
41
+ handleUndo(uuid: string): void;
42
+ destroyBrush(): void;
43
+ }
@@ -0,0 +1,76 @@
1
+ export declare type EventMap = {
2
+ [name: string]: (...args: any[]) => void | boolean;
3
+ };
4
+ /**
5
+ * 监听者模式
6
+ * @template T 预设的监听回调类型
7
+ * @example
8
+ * ```
9
+ * new Subscribe<{
10
+ * "foo": [arg1: number, arg2: string],
11
+ * "bar": [arg: boolean],
12
+ * }>()
13
+ * ```
14
+ */
15
+ declare class Subscribe<T extends EventMap> {
16
+ /**
17
+ * 判断是否注册了事件
18
+ * @param name 事件类型
19
+ */
20
+ hasListener(name: keyof T): boolean;
21
+ /**
22
+ * 注册事件
23
+ * @param name 事件类型
24
+ * @param callback 事件回调函数
25
+ * @param once 是否只执行一次
26
+ * @returns 解除事件
27
+ * @template K 预设的监听事件名称
28
+ * @template C 回调函数函数上下文
29
+ */
30
+ on<K extends keyof T>(name: K, callback: (...args: Parameters<T[K]>) => ReturnType<T[K]>, once?: boolean): () => void;
31
+ /**
32
+ * 注册事件(是否只执行一次)
33
+ * @param name 事件类型
34
+ * @param callback 事件回调函数
35
+ * @returns 解除事件
36
+ * @template K 预设的监听事件名称
37
+ * @template C 回调函数函数上下文
38
+ */
39
+ once<K extends keyof T>(name: K, callback: (...args: Parameters<T[K]>) => ReturnType<T[K]>): () => void;
40
+ /**
41
+ * 解除事件
42
+ *
43
+ * 如果 name 不传的话解除对应所有事件
44
+ * 如果 name, callback 不传的话解除所有name的所有事件
45
+ * @param name 事件类型
46
+ * @param callback 事件回调函数
47
+ * @template K 预设的监听事件名称
48
+ */
49
+ off<K extends keyof T>(name?: K, callback?: (...args: Parameters<T[K]>) => ReturnType<T[K]>): void;
50
+ /**
51
+ * 触发事件
52
+ * @param name 事件类型
53
+ * @param data 触发事件的数据
54
+ * @returns canceled 是否被触发取消
55
+ * @template K 预设的监听事件名称
56
+ */
57
+ emit<K extends keyof T>(name: K, ...data: Parameters<T[K]>): boolean;
58
+ }
59
+ export declare namespace SubscribeMixinType {
60
+ interface hasListener<T extends EventMap> {
61
+ (name: keyof T): boolean;
62
+ }
63
+ interface on<T extends EventMap> {
64
+ <K extends keyof T>(name: K, callback: (...args: Parameters<T[K]>) => ReturnType<T[K]>, once?: boolean): () => void;
65
+ }
66
+ interface once<T extends EventMap> {
67
+ <K extends keyof T>(name: K, callback: (...args: Parameters<T[K]>) => ReturnType<T[K]>): () => void;
68
+ }
69
+ interface off<T extends EventMap> {
70
+ <K extends keyof T>(names?: K | K[], callback?: (...args: any[]) => any): void;
71
+ }
72
+ interface emit<T extends EventMap> {
73
+ <K extends keyof T>(name: K, ...data: Parameters<T[K]>): boolean;
74
+ }
75
+ }
76
+ export { Subscribe };
@@ -0,0 +1,27 @@
1
+ import type { PaintBrushAction, PaintBrushConfigs, PaintBrushEventMap, PaintBrushState } from './typings';
2
+ export declare class PaintBrush {
3
+ private controller;
4
+ constructor(configs?: Partial<PaintBrushConfigs>);
5
+ on<K extends keyof PaintBrushEventMap>(name: K, callback: (...args: Parameters<PaintBrushEventMap[K]>) => ReturnType<PaintBrushEventMap[K]>): void;
6
+ off<K extends keyof PaintBrushEventMap>(name: K, callback: (...args: Parameters<PaintBrushEventMap[K]>) => ReturnType<PaintBrushEventMap[K]>): void;
7
+ once<K extends keyof PaintBrushEventMap>(name: K, callback: (...args: Parameters<PaintBrushEventMap[K]>) => ReturnType<PaintBrushEventMap[K]>): void;
8
+ /**
9
+ * 显示画笔。
10
+ */
11
+ show(): void;
12
+ action(action: PaintBrushAction): void;
13
+ /**
14
+ * 获取画笔状态。
15
+ */
16
+ get state(): Record<string, PaintBrushState[]>;
17
+ get configs(): PaintBrushConfigs;
18
+ /**
19
+ * 销毁。
20
+ *
21
+ * @deprecated
22
+ *
23
+ * @description 画笔应该维护一个 **全局单例**,重复利用。
24
+ */
25
+ dispose(): void;
26
+ setCurrentColor(color: string): void;
27
+ }
@@ -0,0 +1,2 @@
1
+ declare const PaintBrushStyle = "\n<style type=\"text/css\">\n\n#_gl_paintBrush {\nposition: fixed;\ntop: 0;\nbottom: 0;\nleft: 0;\nright: 0;\ntransform: translateZ(0);\nz-index: 1997;\npointer-events: none;\nopacity: 0;\ntransition: all 500ms;\n}\n\n#_gl_paintBrush.brushing {\n opacity: 1;\n}\n\n#_gl_paintBrush ._paintBrush-canvas {\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n#_gl_paintBrush ._paintBrush-canvas--sync {\n pointer-events: none;\n z-index: 0;\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n#_gl_paintBrush ._paintBrush-canvas {\n pointer-events: none;\n z-index: 1;\n}\n\n#_gl_paintBrush.brushing ._paintBrush-canvas {\n pointer-events: auto;\n}\n\n#_gl_paintBrush ._paintBrush-ctrl {\n width: 140px;\n height: 52px;\n position: absolute;\n bottom: 28px;\n right: 50%;\n transform: translateX(50%);\n font-size: 10px;\n color: white;\n z-index: 2;\n}\n\n#_gl_paintBrush.brushing ._paintBrush-ctrl {\n pointer-events: auto;\n}\n\n#_gl_paintBrush ._paintBrush-ctrl ._paintBrush-ctrlinner {\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n height: 100%;\n border-radius: 26px;\n padding: 8px 16px;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2);\n background-image: linear-gradient(180deg, hsl(0deg 0% 0% / 57%), hsl(0deg 0% 0% / 70%) 117%);\n}\n\n._paintBrush-ctrlitem {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 38px;\n height: 38px;\n cursor: pointer;\n}\n\n._paintBrush-ctrlitem--undo >.brush-icon{\n background-image: url(\"//vrlab-static.ljcdn.com/release/web/revoke.ab7694ef.svg\");\n background-size: 100%;\n width: 22px;\n height: 22px;\n}\n\n._paintBrush-ctrlitem--close >.brush-icon {\n background-image: url(\"//vrlab-static.ljcdn.com/release/web/exit_paintbrush.02bc1341.svg\");\n background-size: 100%;\n width: 22px;\n height: 22px;\n}\n\n</style>\n";
2
+ export default PaintBrushStyle;
@@ -0,0 +1,7 @@
1
+ import { Tween } from '@tweenjs/tween.js';
2
+ export interface TweenRes extends Tween<any> {
3
+ onDestroy: (fn: () => void) => any;
4
+ destroy: () => any;
5
+ }
6
+ export default function tween(from: any, to: any, duration: number, easing?: (amount: number) => number): TweenRes;
7
+ export declare function tweenProgress(duration: number, easing: (amount: number) => number): TweenRes;
@@ -0,0 +1,58 @@
1
+ export interface PaintBrushConfigs {
2
+ container?: HTMLDivElement;
3
+ currentColor: string;
4
+ DPR?: number;
5
+ onClickClose?: () => void;
6
+ onClickUndo?: () => void;
7
+ onUndoText?: string;
8
+ onExitText?: string;
9
+ }
10
+ export declare type PaintBrushEventMap = {
11
+ readyChange: (ready: boolean) => void;
12
+ stateChange: (state: PaintBrushAction, userAction: boolean) => void;
13
+ };
14
+ export interface PaintBrushState {
15
+ move: {
16
+ x: number;
17
+ y: number;
18
+ };
19
+ line: {
20
+ x: number;
21
+ y: number;
22
+ }[];
23
+ color: string;
24
+ uuid: string;
25
+ duration: number;
26
+ }
27
+ export declare enum PaintBrushTypeEnum {
28
+ Drawline = "Drawline",
29
+ Undo = "Undo",
30
+ Exit = "Exit"
31
+ }
32
+ export interface PaintBrushAction {
33
+ uuid: string;
34
+ /**
35
+ * 类型枚举
36
+ */
37
+ type: PaintBrushTypeEnum;
38
+ /**
39
+ * 颜色色值
40
+ */
41
+ color: string;
42
+ /**
43
+ * 是否就绪
44
+ */
45
+ ready: boolean;
46
+ /**
47
+ * 状态值
48
+ */
49
+ state?: PaintBrushState;
50
+ /**
51
+ * 时间戳:当作 uuid 使用
52
+ */
53
+ timestamp?: number;
54
+ /**
55
+ * 是否是结尾数据
56
+ */
57
+ end?: boolean;
58
+ }
@@ -0,0 +1,26 @@
1
+ export declare function noop(): void;
2
+ export interface Coords {
3
+ x: number;
4
+ y: number;
5
+ }
6
+ export declare function queue(promiseCallback?: () => Promise<void>): void;
7
+ export declare function transformCoords(coords: Coords, cw: number, ch: number): {
8
+ x: number;
9
+ y: number;
10
+ };
11
+ export declare function unTransformCoords(coords: Coords, cw: number, ch: number): {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ export declare function getQuadraticCurvePoint(points: Coords[]): {
16
+ control?: undefined;
17
+ end?: undefined;
18
+ } | {
19
+ control: Coords;
20
+ end: {
21
+ x: number;
22
+ y: number;
23
+ };
24
+ };
25
+ export declare function execInterval(i: number, time: number, callback?: typeof noop): void;
26
+ export declare function nextFrame(fn: FrameRequestCallback, delay?: number): void;
@@ -0,0 +1,2 @@
1
+ export * from './PaintBrush';
2
+ export * from './PaintBrush/typings';
package/dist/env.d.ts ADDED
@@ -0,0 +1 @@
1
+ /// <reference types="svelte" />
@@ -0,0 +1 @@
1
+ export declare const CAMERA_IMAGE = "data:image/png;base64,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";
@@ -0,0 +1 @@
1
+ export declare const COMPASS_IMAGE = "data:image/png;base64,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";
@@ -0,0 +1 @@
1
+ export declare const FLOORPLAN_EXTRA_OBJECT_IMAGE = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC";
@@ -0,0 +1,97 @@
1
+ import type { PartialDeep } from 'type-fest';
2
+ import type { BaseOptions } from '../../base/BasePlugin';
3
+ import type { Five } from '@realsee/five';
4
+ import type { ShowState } from '../utils/correctFiveState';
5
+ import type { FloorplanServerData } from '../typings/floorplanServerData';
6
+ import type { State, Config, EventMap, ShowOptions, HideOptions, Parameters, PluginData, PluginServerData } from './typing';
7
+ import * as BasePlugin from '../../base/BasePluginWithData';
8
+ export declare class Controller extends BasePlugin.Controller<State, EventMap, PluginServerData, PluginData> {
9
+ name: string;
10
+ state: State;
11
+ protected data?: PluginData;
12
+ /** 展示户型图时,需要正确的状态 */
13
+ protected showState: ShowState;
14
+ /** show 动画的公共 Promise */
15
+ protected showPromise?: Promise<void>;
16
+ private app?;
17
+ private panoIndex;
18
+ private floorIndex;
19
+ private selector?;
20
+ /** 公共 Promise 的 reject 方法 */
21
+ private showRejection?;
22
+ /** 户型图父容器 */
23
+ private wrapper?;
24
+ /** 户型图主容器 */
25
+ private container;
26
+ /** 展示户型图图前,Five 的 Panorama Longitude */
27
+ private lastPanoramaLongitude;
28
+ /** 户型图大小 */
29
+ private size;
30
+ /** 是否已经执行过事件监听 */
31
+ private hasAddedEventListener;
32
+ /** 上一次隐藏是否是用户调用了 hide 导致的 */
33
+ private isHiddenByHideFunc;
34
+ constructor(five: Five, params?: Parameters);
35
+ load(serverData: PluginServerData | FloorplanServerData, state?: Partial<State>, userAction?: boolean): Promise<void>;
36
+ /** 把插件的渲染DOM插入到对应的容器中去 */
37
+ appendTo(wrapper: Element): this;
38
+ /** 启用插件 */
39
+ enable(options?: BaseOptions): void;
40
+ /** 禁用插件 */
41
+ disable(options?: BaseOptions): void;
42
+ /** 销毁插件 */
43
+ dispose: () => void;
44
+ /** 展示户型图
45
+ * 1. show 函数大部分情况下需要耗时
46
+ * 2. 如果当前已经在展示中,将不会触发任何事件
47
+ * 3. 如果展示过程被中断,将抛出错误
48
+ * 4. 多次调用 show 方法,只会触发一次 showAnimationEnded 事件,但是展示结果会取决于最后一次调用参数
49
+ * 5. 如果多次调用 show 方法,参数与上次参数不一致时,上次 show Promise 会被 reject
50
+ * @param opts.floorIndex 楼层
51
+ * @param opts.modelOpacity 模型透明度
52
+ * @param opts.immediately 是否立即展示
53
+ * @param opts.isAutoShow 是否是自动展示
54
+ * @param opts.userAction 是否是用户行为
55
+ */
56
+ show: (options?: Omit<Partial<ShowOptions>, 'isAutoShow'>) => Promise<void>;
57
+ /** 隐藏户型图 */
58
+ hide: (options?: Partial<HideOptions>) => Promise<void>;
59
+ /** 更改插件 State */
60
+ setState(state: PartialDeep<State>, options?: BaseOptions): void;
61
+ changeConfigs(config: Partial<Config>, userAction?: boolean): void;
62
+ /** 更新户型图大小 */
63
+ updateSize: () => void;
64
+ /** 更新户型图位置 */
65
+ updatePosition(): void;
66
+ protected formatData(serverData: PluginServerData): Promise<PluginData>;
67
+ private _disable;
68
+ private _enable;
69
+ private _show;
70
+ private _hide;
71
+ private updateState;
72
+ /** 如果用户是通过 selector 设置父容器,需要在 modelLoaded 之后把 container 自动放到父容器里
73
+ *
74
+ * - TODO: 等 selector 功能下掉之后删除这个逻辑
75
+ */
76
+ private initContainer;
77
+ private handleClick;
78
+ private addEventListener;
79
+ private removeEventListener;
80
+ /** modelLoaded 之后自动执行 append container 操作 */
81
+ private onFiveModelLoaded;
82
+ /** 更改模型时,自动隐藏户型图 */
83
+ private onFiveModeChange;
84
+ /** panoIndex 改变时,更新 floorIndex */
85
+ private onFivePanoArrived;
86
+ /** cameraUpdate 时判断户型图是否应该自动隐藏 */
87
+ private onFiveCameraUpdate;
88
+ /** 户型图展示中,转动三维模型,结束时应该自动修复模型状态 */
89
+ private onFiveWantsPanGesture;
90
+ /** 阻止点击分间走点 */
91
+ private onFiveWantsTapGesture;
92
+ /** 从 Panorama 切换到其他模态时,记录当前的相机水平视角 */
93
+ private onFiveWantsChangeMode;
94
+ /** 模型楼层高亮改变时,自动进行楼层切换 */
95
+ private onModelShownFloorChange;
96
+ private render;
97
+ }
@@ -0,0 +1,7 @@
1
+ import type { Parameters } from './typing';
2
+ import type { FivePlugin } from '@realsee/five';
3
+ import { Controller } from './Controller';
4
+ export declare const MapviewFloorplanPlugin: FivePlugin<undefined | Parameters, Controller>;
5
+ export declare type MapviewFloorplanPluginParameterType = Parameters | undefined;
6
+ export declare type MapviewFloorplanPluginReturnType = InstanceType<typeof Controller>;
7
+ export default MapviewFloorplanPlugin;
@@ -0,0 +1 @@
1
+ export * from '../typings';