@realsee/dnalogel 3.20.7 → 3.21.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 (587) hide show
  1. package/dist/Object3DHelperPlugin/Controller.d.ts +25 -18
  2. package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +1 -0
  3. package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +2 -55
  4. package/dist/Sculpt/Meshes/Area.d.ts +30 -0
  5. package/dist/Sculpt/Meshes/Box.d.ts +35 -0
  6. package/dist/Sculpt/Meshes/Circle.d.ts +26 -0
  7. package/dist/Sculpt/Meshes/CircleWithEdge.d.ts +11 -0
  8. package/dist/Sculpt/Meshes/Cylinder.d.ts +34 -0
  9. package/dist/Sculpt/Meshes/Line.d.ts +27 -0
  10. package/dist/Sculpt/Meshes/LineWithDots.d.ts +30 -0
  11. package/dist/Sculpt/Meshes/Point.d.ts +22 -0
  12. package/dist/Sculpt/Meshes/Polygon.d.ts +31 -0
  13. package/dist/Sculpt/Meshes/Polyline.d.ts +34 -0
  14. package/dist/Sculpt/Meshes/Prism.d.ts +31 -0
  15. package/dist/Sculpt/Meshes/Rectangle.d.ts +24 -0
  16. package/dist/Sculpt/Meshes/RectangleWithEdge.d.ts +20 -0
  17. package/dist/Sculpt/Modules/Cursor.d.ts +13 -0
  18. package/dist/Sculpt/Modules/Global.d.ts +20 -0
  19. package/dist/Sculpt/Objects/Base/Editor.d.ts +21 -0
  20. package/dist/Sculpt/Objects/Base/index.d.ts +60 -0
  21. package/dist/Sculpt/Objects/Box/Editor.d.ts +5 -0
  22. package/dist/Sculpt/Objects/Box/index.d.ts +28 -0
  23. package/dist/Sculpt/Objects/Circle/Editor.d.ts +5 -0
  24. package/dist/Sculpt/Objects/Circle/index.d.ts +28 -0
  25. package/dist/Sculpt/Objects/Cylinder/Editor.d.ts +5 -0
  26. package/dist/Sculpt/Objects/Cylinder/index.d.ts +30 -0
  27. package/dist/Sculpt/Objects/Point/Editor.d.ts +8 -0
  28. package/dist/Sculpt/Objects/Point/index.d.ts +35 -0
  29. package/dist/Sculpt/Objects/Polygon/Editor.d.ts +8 -0
  30. package/dist/Sculpt/Objects/Polygon/index.d.ts +28 -0
  31. package/dist/Sculpt/Objects/Polyline/Editor.d.ts +25 -0
  32. package/dist/Sculpt/Objects/Polyline/index.d.ts +31 -0
  33. package/dist/Sculpt/Objects/Prism/Editor.d.ts +5 -0
  34. package/dist/Sculpt/Objects/Prism/index.d.ts +28 -0
  35. package/dist/Sculpt/Objects/Rectangle/Editor.d.ts +5 -0
  36. package/dist/Sculpt/Objects/Rectangle/index.d.ts +29 -0
  37. package/dist/Sculpt/index.d.ts +184 -0
  38. package/dist/Sculpt/typings/index.d.ts +16 -0
  39. package/dist/Sculpt/typings/utils.type.d.ts +12 -0
  40. package/dist/Sculpt/utils/color.d.ts +40 -0
  41. package/dist/Sculpt/utils/data.d.ts +7 -0
  42. package/dist/Sculpt/utils/getBetterNormal.d.ts +2 -0
  43. package/dist/Sculpt/utils/radiusToSegments.d.ts +1 -0
  44. package/dist/Sculpt/utils/three/ColoredMesh.d.ts +17 -0
  45. package/dist/Sculpt/utils/three/RectangleGeometry.d.ts +6 -0
  46. package/dist/Sculpt/utils/three/rayOnLine.d.ts +5 -0
  47. package/dist/index.cjs.js +70 -70
  48. package/dist/index.d.ts +1 -0
  49. package/dist/index.js +11537 -9326
  50. package/dist/index.umd.js +63 -63
  51. package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +13 -5
  52. package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +17 -6
  53. package/dist/shared-utils/Object3DHelper/Controller/RotateController.d.ts +0 -1
  54. package/dist/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +14 -7
  55. package/dist/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +4 -2
  56. package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +3 -2
  57. package/dist/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +12 -3
  58. package/dist/shared-utils/Object3DHelper/typings/Hooks.d.ts +1 -0
  59. package/dist/shared-utils/Object3DHelper/typings/index.d.ts +11 -0
  60. package/dist/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +2 -0
  61. package/dist/shared-utils/five/FiveDomEvents.d.ts +50 -13
  62. package/dist/shared-utils/five/getPosition.d.ts +14 -0
  63. package/dist/shared-utils/five/getRaycasterByNdcPosition.d.ts +6 -0
  64. package/dist/shared-utils/positionToVector3.d.ts +1 -0
  65. package/dist/shared-utils/three/IObject3D.d.ts +4 -0
  66. package/dist/shared-utils/three/Magnifier.d.ts +33 -19
  67. package/dist/shared-utils/three/PointSelector.d.ts +25 -11
  68. package/dist/shared-utils/three/PointSelectorHelper.d.ts +2 -0
  69. package/{libs/PanoMeasurePlugin/utils → dist/shared-utils/three}/geometryUtil.d.ts +1 -1
  70. package/dist/shared-utils/three/getIntersect.d.ts +16 -2
  71. package/dist/shared-utils/three/getNormal.d.ts +1 -1
  72. package/dist/shared-utils/three/recurveFindObject.d.ts +2 -0
  73. package/dist/shared-utils/three/vector3ToArray.d.ts +3 -0
  74. package/docs/assets/search.js +1 -1
  75. package/docs/classes/AreaMakerPluginType.AreaMakerController.html +9 -4
  76. package/docs/classes/AreaMakerPluginType.AreaMakerItem.html +9 -4
  77. package/docs/classes/CSS3DRender.html +10 -5
  78. package/docs/classes/GuideLineItem.GuideLineItem.html +10 -5
  79. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +10 -5
  80. package/docs/classes/ModelRoomLabelController.html +10 -5
  81. package/docs/classes/MoveController.html +10 -5
  82. package/docs/classes/Object3DHelperController.html +26 -39
  83. package/docs/classes/PaintBrush.html +10 -5
  84. package/docs/classes/PanoMeasurePluginLine.html +10 -5
  85. package/docs/classes/PanoMeasurePluginModel.html +10 -5
  86. package/docs/classes/PanoMeasurePluginPoint.html +10 -5
  87. package/docs/classes/PanoMeasurePluginPolyline.html +10 -5
  88. package/docs/classes/PanoTagPluginController.html +10 -5
  89. package/docs/classes/Sculpt.html +847 -0
  90. package/docs/classes/Util.BetterTween.html +10 -5
  91. package/docs/classes/Util.Interval.html +10 -5
  92. package/docs/classes/Util.LineSegments.html +10 -5
  93. package/docs/classes/Util.Magnifier.html +82 -58
  94. package/docs/classes/Util.Object3D.html +10 -5
  95. package/docs/classes/Util.PointDomHelper.html +10 -5
  96. package/docs/classes/Util.PointHelper.html +10 -5
  97. package/docs/classes/Util.PointSelectorHelper.html +23 -18
  98. package/docs/classes/Util.Rectangle.html +10 -5
  99. package/docs/classes/WalkController.html +10 -5
  100. package/docs/enums/CameraMovementEffect.html +10 -5
  101. package/docs/enums/ContentType.html +10 -5
  102. package/docs/enums/DIRECTION.html +10 -5
  103. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +10 -5
  104. package/docs/enums/DimensionType.html +10 -5
  105. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +10 -5
  106. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +10 -5
  107. package/docs/enums/PaintBrushTypeEnum.html +10 -5
  108. package/docs/enums/PointType.html +10 -5
  109. package/docs/enums/Rotation.html +10 -5
  110. package/docs/functions/AreaMakerPlugin.html +10 -5
  111. package/docs/functions/CSS3DRenderPlugin.html +10 -5
  112. package/docs/functions/CameraMovementPlugin.html +10 -5
  113. package/docs/functions/CruisePlugin.html +10 -5
  114. package/docs/functions/CurrentPanoImagePlugin.html +10 -5
  115. package/docs/functions/GuideLinePlugin.html +10 -5
  116. package/docs/functions/ItemLabelPlugin.html +10 -5
  117. package/docs/functions/MapviewFloorplanPlugin.html +10 -5
  118. package/docs/functions/ModelChassisCompassPlugin.html +10 -5
  119. package/docs/functions/ModelEntryDoorGuidePlugin.html +10 -5
  120. package/docs/functions/ModelFloorplanPlugin.html +10 -5
  121. package/docs/functions/ModelItemLabelPlugin.html +10 -5
  122. package/docs/functions/ModelRoomLabelPlugin.html +10 -5
  123. package/docs/functions/ModelTVVideoPlugin.html +10 -5
  124. package/docs/functions/ModelViewPlugin.html +10 -5
  125. package/docs/functions/MovePlugin.html +10 -5
  126. package/docs/functions/Object3DHelperPlugin.html +10 -5
  127. package/docs/functions/PanoCompassPlugin.html +10 -5
  128. package/docs/functions/PanoCursorRaycasterPlugin.html +10 -5
  129. package/docs/functions/PanoDoorLabelPlugin.html +10 -5
  130. package/docs/functions/PanoFloorplanRadarPlugin.html +10 -5
  131. package/docs/functions/PanoMeasurePlugin.html +10 -5
  132. package/docs/functions/PanoRulerPlugin.html +10 -5
  133. package/docs/functions/PanoRulerProPlugin.html +10 -5
  134. package/docs/functions/PanoSpatialTagPlugin.html +10 -5
  135. package/docs/functions/PanoTagPlugin.html +10 -5
  136. package/docs/functions/PanoVideoPlugin.html +10 -5
  137. package/docs/functions/PipelinePlugin.html +10 -5
  138. package/docs/functions/TopviewFloorplanPlugin.html +10 -5
  139. package/docs/functions/Util.absoluteUrl.html +10 -5
  140. package/docs/functions/Util.checkFiveModelLoaded.html +10 -5
  141. package/docs/functions/Util.equal.html +10 -5
  142. package/docs/functions/Util.getCoordsFromClient.html +10 -5
  143. package/docs/functions/Util.getCoordsFromElement.html +10 -5
  144. package/docs/functions/Util.getFrameTime.html +10 -5
  145. package/docs/functions/Util.getIntersectFromRelativePosition.html +17 -7
  146. package/docs/functions/Util.getRaycasterFromFivePointer.html +10 -5
  147. package/docs/functions/Util.isAbsoluteURL.html +10 -5
  148. package/docs/functions/Util.isModelLike.html +10 -5
  149. package/docs/functions/Util.isNil.html +10 -5
  150. package/docs/functions/Util.isPanoramaLike.html +10 -5
  151. package/docs/functions/Util.nextFrame.html +10 -5
  152. package/docs/functions/Util.notNil.html +10 -5
  153. package/docs/functions/Util.requestAnimationFrameInterval.html +10 -5
  154. package/docs/functions/Util.tweenProgress.html +10 -5
  155. package/docs/functions/Util.uuid.html +10 -5
  156. package/docs/functions/pluginFlag.html +10 -5
  157. package/docs/index.html +11 -6
  158. package/docs/interfaces/AddTagConfig.html +10 -5
  159. package/docs/interfaces/AreaMakerPluginType.AnimeOptions.html +9 -4
  160. package/docs/interfaces/AreaMakerPluginType.Config.html +9 -4
  161. package/docs/interfaces/AreaMakerPluginType.EventMap.html +9 -4
  162. package/docs/interfaces/AreaMakerPluginType.Params.html +9 -4
  163. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItem.html +9 -4
  164. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItemV1.html +9 -4
  165. package/docs/interfaces/AreaMakerPluginType.ServerDataV1.html +9 -4
  166. package/docs/interfaces/AreaMakerPluginType.ServerDataV2.html +9 -4
  167. package/docs/interfaces/AreaMakerPluginType.ShowHideOptions.html +9 -4
  168. package/docs/interfaces/AreaMakerPluginType.State.html +9 -4
  169. package/docs/interfaces/CSS3DRenderPluginEventMap.html +10 -5
  170. package/docs/interfaces/CSS3DRenderPluginState.html +10 -5
  171. package/docs/interfaces/CameraMovementPluginExportType.html +10 -5
  172. package/docs/interfaces/CruisePluginTypes.Config.html +9 -4
  173. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +9 -4
  174. package/docs/interfaces/CruisePluginTypes.EventMap.html +9 -4
  175. package/docs/interfaces/CruisePluginTypes.MoveAction.html +9 -4
  176. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +9 -4
  177. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +9 -4
  178. package/docs/interfaces/CruisePluginTypes.PluginData.html +9 -4
  179. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +9 -4
  180. package/docs/interfaces/CruisePluginTypes.PluginState.html +9 -4
  181. package/docs/interfaces/CurrentPanoImagePluginType.Config.html +10 -5
  182. package/docs/interfaces/CurrentPanoImagePluginType.EventMap.html +10 -5
  183. package/docs/interfaces/CurrentPanoImagePluginType.Params.html +10 -5
  184. package/docs/interfaces/CurrentPanoImagePluginType.ShowHideOptions.html +10 -5
  185. package/docs/interfaces/CurrentPanoImagePluginType.State.html +10 -5
  186. package/docs/interfaces/EventMap.html +10 -5
  187. package/docs/interfaces/FloorplanBounding.html +10 -5
  188. package/docs/interfaces/FloorplanData.html +10 -5
  189. package/docs/interfaces/FloorplanEntrance.html +10 -5
  190. package/docs/interfaces/FloorplanExtraObject.html +10 -5
  191. package/docs/interfaces/FloorplanExtraObject3D.html +10 -5
  192. package/docs/interfaces/FloorplanFloorData.html +10 -5
  193. package/docs/interfaces/FloorplanImagePosition.html +10 -5
  194. package/docs/interfaces/FloorplanObserver.html +10 -5
  195. package/docs/interfaces/FloorplanOutlineItem.html +10 -5
  196. package/docs/interfaces/FloorplanPosition.html +10 -5
  197. package/docs/interfaces/FloorplanRoomItem.html +10 -5
  198. package/docs/interfaces/FloorplanRoomLabelItem.html +10 -5
  199. package/docs/interfaces/FloorplanServerBounding.html +10 -5
  200. package/docs/interfaces/FloorplanServerComputedData.html +10 -5
  201. package/docs/interfaces/FloorplanServerData.html +10 -5
  202. package/docs/interfaces/FloorplanServerDoorItem.html +10 -5
  203. package/docs/interfaces/FloorplanServerDoorPosition.html +10 -5
  204. package/docs/interfaces/FloorplanServerEntrance.html +10 -5
  205. package/docs/interfaces/FloorplanServerFloorData.html +10 -5
  206. package/docs/interfaces/FloorplanServerImagePosition.html +10 -5
  207. package/docs/interfaces/FloorplanServerObserver.html +10 -5
  208. package/docs/interfaces/FloorplanServerOutlineItem.html +10 -5
  209. package/docs/interfaces/FloorplanServerPosition.html +10 -5
  210. package/docs/interfaces/FloorplanServerRoomItem.html +10 -5
  211. package/docs/interfaces/FloorplanServerRoomLabelItem.html +10 -5
  212. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +10 -5
  213. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +9 -4
  214. package/docs/interfaces/GuideLinePluginType.EventMap.html +9 -4
  215. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +9 -4
  216. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +9 -4
  217. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +9 -4
  218. package/docs/interfaces/GuideLinePluginType.GuideLineMeshStyle.html +9 -4
  219. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +9 -4
  220. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +9 -4
  221. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +9 -4
  222. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +9 -4
  223. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +9 -4
  224. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +9 -4
  225. package/docs/interfaces/GuideLinePluginType.PluginState.html +9 -4
  226. package/docs/interfaces/GuideLinePluginType.Route.html +9 -4
  227. package/docs/interfaces/GuideLinePluginType.RouteConfig.html +9 -4
  228. package/docs/interfaces/HelperOffset.html +10 -5
  229. package/docs/interfaces/ImagePlaneGroup.html +10 -5
  230. package/docs/interfaces/ItemLabelPluginData.html +10 -5
  231. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +10 -5
  232. package/docs/interfaces/ItemLabelPluginParametersType.html +10 -5
  233. package/docs/interfaces/MinMax.html +10 -5
  234. package/docs/interfaces/ModelChassisCompassPluginData.html +10 -5
  235. package/docs/interfaces/ModelChassisCompassPluginExportType.html +10 -5
  236. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +10 -5
  237. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +10 -5
  238. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +10 -5
  239. package/docs/interfaces/ModelItemLabelPluginData.html +10 -5
  240. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +10 -5
  241. package/docs/interfaces/ModelItemLabelPluginParametersType.html +10 -5
  242. package/docs/interfaces/ModelRoomLabelPluginData.html +10 -5
  243. package/docs/interfaces/ModelTVVideoPluginData.html +10 -5
  244. package/docs/interfaces/ModelTVVideoPluginExportType.html +10 -5
  245. package/docs/interfaces/ModelTVVideoPluginParameterType.html +10 -5
  246. package/docs/interfaces/ModelViewPluginExportType.html +10 -5
  247. package/docs/interfaces/Object3DHelperState.html +14 -9
  248. package/docs/interfaces/ObjectHelperControllers.html +16 -11
  249. package/docs/interfaces/PaintBrushAction.html +10 -5
  250. package/docs/interfaces/PaintBrushConfigs.html +10 -5
  251. package/docs/interfaces/PaintBrushState.html +10 -5
  252. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -5
  253. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +10 -5
  254. package/docs/interfaces/PanoMeasureParameterType.html +10 -5
  255. package/docs/interfaces/PanoMeasurePluginLineJson.html +10 -5
  256. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +10 -5
  257. package/docs/interfaces/PanoMeasurePluginPointJson.html +10 -5
  258. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +10 -5
  259. package/docs/interfaces/PanoRulerPluginExportType.html +10 -5
  260. package/docs/interfaces/PanoRulerPluginOptions.html +10 -5
  261. package/docs/interfaces/PanoRulerPluginParameterType.html +10 -5
  262. package/docs/interfaces/PanoRulerProPluginExportType.html +10 -5
  263. package/docs/interfaces/PanoRulerProPluginOptions.html +10 -5
  264. package/docs/interfaces/PanoRulerProPluginParameterType.html +10 -5
  265. package/docs/interfaces/PanoRulerProPluginState.html +10 -5
  266. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +10 -5
  267. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +10 -5
  268. package/docs/interfaces/PanoSpatialTagPluginData.html +10 -5
  269. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -5
  270. package/docs/interfaces/PanoSpatialTagPluginExportType.html +10 -5
  271. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -5
  272. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +10 -5
  273. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +10 -5
  274. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -5
  275. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +10 -5
  276. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +10 -5
  277. package/docs/interfaces/PanoVideoPluginType.PluginData.html +10 -5
  278. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +10 -5
  279. package/docs/interfaces/PanoVideoPluginType.PluginState.html +10 -5
  280. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +10 -5
  281. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +10 -5
  282. package/docs/interfaces/Point.html +10 -5
  283. package/docs/interfaces/Room.html +10 -5
  284. package/docs/interfaces/RoomInfo.html +10 -5
  285. package/docs/interfaces/RoomLabel.html +10 -5
  286. package/docs/interfaces/RoomRules.html +10 -5
  287. package/docs/interfaces/Rooms.html +10 -5
  288. package/docs/interfaces/Scissor.html +10 -5
  289. package/docs/interfaces/State.html +10 -5
  290. package/docs/interfaces/TagCacheInterface.html +10 -5
  291. package/docs/interfaces/TagConfig.html +12 -7
  292. package/docs/interfaces/TagGLTFObjectGroup.html +10 -5
  293. package/docs/interfaces/TagIconUrl.html +10 -5
  294. package/docs/interfaces/TagObjectGroup.html +10 -5
  295. package/docs/interfaces/TagStyle.html +10 -5
  296. package/docs/interfaces/Tags.html +10 -5
  297. package/docs/interfaces/TemporaryState.html +10 -5
  298. package/docs/interfaces/Util.MagnifierParameter.html +32 -22
  299. package/docs/interfaces/Util.MouseGroupParameter.html +10 -5
  300. package/docs/interfaces/Util.PointIntersection.html +19 -7
  301. package/docs/modules/AreaMakerPluginType.html +9 -4
  302. package/docs/modules/CruisePluginTypes.html +9 -4
  303. package/docs/modules/CurrentPanoImagePluginType.html +10 -5
  304. package/docs/modules/GuideLineItem.html +10 -5
  305. package/docs/modules/GuideLineModeItem.html +10 -5
  306. package/docs/modules/GuideLinePluginType.html +9 -4
  307. package/docs/modules/PanoVideoPluginType.html +10 -5
  308. package/docs/modules/Util.html +10 -5
  309. package/docs/modules.html +22 -9
  310. package/docs/types/AddObject3DHelperConfig.html +310 -0
  311. package/docs/types/AreaMakerPluginType.AreaMakerItemEventMap.html +9 -4
  312. package/docs/types/AreaMakerPluginType.ItemRenderer.html +9 -4
  313. package/docs/types/AreaMakerPluginType.PluginData.html +9 -4
  314. package/docs/types/AreaMakerPluginType.ServerData.html +9 -4
  315. package/docs/types/ArrayPosition.html +10 -5
  316. package/docs/types/AudioAppearance.html +10 -5
  317. package/docs/types/AudioTagTypeConfigKey.html +10 -5
  318. package/docs/types/CSS3DRenderExportType.html +10 -5
  319. package/docs/types/CSS3DRenderPluginExportType.html +10 -5
  320. package/docs/types/CSS3DRenderPluginParameterType.html +10 -5
  321. package/docs/types/ClassFunctionParameters.html +10 -5
  322. package/docs/types/Color.html +10 -5
  323. package/docs/types/ContentTypeConfigKey.html +10 -5
  324. package/docs/types/ContentTypeConfigKeySplit.html +10 -5
  325. package/docs/types/ContentTypeMap.html +10 -5
  326. package/docs/types/Create3DDomContainerReturnType.html +10 -5
  327. package/docs/types/Create3DElementReturnType.html +10 -5
  328. package/docs/types/CruisePluginExportType.html +10 -5
  329. package/docs/types/CruisePluginTypes.CruiseData.html +9 -4
  330. package/docs/types/CruisePluginTypes.MoveEffect.html +9 -4
  331. package/docs/types/CurrentPanoImagePluginExportType.html +10 -5
  332. package/docs/types/DeprecatedMediaPlaneProperty.html +10 -5
  333. package/docs/types/DeprecatedTagProperty.html +10 -5
  334. package/docs/types/Direction-1.html +10 -5
  335. package/docs/types/Direction4.html +10 -5
  336. package/docs/types/ElementRenderer.html +10 -5
  337. package/docs/types/FloorplanRuleLabels.html +10 -5
  338. package/docs/types/FloorplanServerRuleLabels.html +10 -5
  339. package/docs/types/GuideLinePluginExportType.html +10 -5
  340. package/docs/types/GuideLinePluginType.GuideLineItem.html +9 -4
  341. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +9 -4
  342. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +9 -4
  343. package/docs/types/GuideLinePluginType.GuideLineStyle.html +9 -4
  344. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +9 -4
  345. package/docs/types/GuideLinePluginType.PathItem.html +9 -4
  346. package/docs/types/GuideLinePluginType.PluginData.html +9 -4
  347. package/docs/types/HelperEventMap.html +10 -5
  348. package/docs/types/InternalHelperEventMap.html +22 -9
  349. package/docs/types/LoadTagConfig.html +10 -5
  350. package/docs/types/MapviewFloorplanPluginParameterType.html +10 -5
  351. package/docs/types/MapviewFloorplanPluginReturnType.html +10 -5
  352. package/docs/types/MediaData.html +10 -5
  353. package/docs/types/MediaStore.html +10 -5
  354. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +10 -5
  355. package/docs/types/ModelFloorplanPluginParameterType.html +10 -5
  356. package/docs/types/ModelFloorplanPluginReturnType.html +10 -5
  357. package/docs/types/ModelId.html +10 -5
  358. package/docs/types/ModelRoomLabelPluginParameters.html +10 -5
  359. package/docs/types/ModelRoomLabelPluginReturnType.html +10 -5
  360. package/docs/types/MoveArgs.html +10 -5
  361. package/docs/types/MoveOpts.html +10 -5
  362. package/docs/types/Object3DHelperEventMap.html +11 -6
  363. package/docs/types/ObjectFit.html +10 -5
  364. package/docs/types/PaintBrushEventMap.html +10 -5
  365. package/docs/types/PanoCompassPluginData.html +10 -5
  366. package/docs/types/PanoCompassPluginExportType.html +10 -5
  367. package/docs/types/PanoCompassPluginParameterType.html +10 -5
  368. package/docs/types/PanoFloorplanRadarPluginParameterType.html +10 -5
  369. package/docs/types/PanoFloorplanRadarPluginReturnType.html +10 -5
  370. package/docs/types/PanoIndex.html +10 -5
  371. package/docs/types/PanoMeasurePluginEvent.html +10 -5
  372. package/docs/types/PanoMeasureReturnType.html +10 -5
  373. package/docs/types/PanoSpatialTagPluginId.html +10 -5
  374. package/docs/types/PanoTagPluginExportInterface.html +10 -5
  375. package/docs/types/PanoTagPluginParamsInterface.html +10 -5
  376. package/docs/types/PanoVideoPluginParameterType.html +10 -5
  377. package/docs/types/PanoVideoPluginReturnType.html +10 -5
  378. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +10 -5
  379. package/docs/types/PipelinePluginParameterType.html +10 -5
  380. package/docs/types/PipelinePluginReturnType.html +10 -5
  381. package/docs/types/PlaneTag.html +10 -5
  382. package/docs/types/Point2DTag.html +10 -5
  383. package/docs/types/Point3DTag.html +10 -5
  384. package/docs/types/PointTag.html +10 -5
  385. package/docs/types/PointTagInstance.html +10 -5
  386. package/docs/types/Position.html +10 -5
  387. package/docs/types/PositionFrom.html +297 -0
  388. package/docs/types/RotateArgs.html +10 -5
  389. package/docs/types/RotateOpts.html +10 -5
  390. package/docs/types/RuleLabelsKey.html +10 -5
  391. package/docs/types/RuleLabelsValue.html +10 -5
  392. package/docs/types/ScaleCallback.html +309 -0
  393. package/docs/types/ScalePosition.html +298 -0
  394. package/docs/types/StickType.html +10 -5
  395. package/docs/types/Tag.html +10 -5
  396. package/docs/types/Tag2D.html +10 -5
  397. package/docs/types/Tag3D.html +10 -5
  398. package/docs/types/TagConfigByKey.html +10 -5
  399. package/docs/types/TagContentType.html +10 -5
  400. package/docs/types/TagContentTypeMapping.html +10 -5
  401. package/docs/types/TagDimensionType.html +10 -5
  402. package/docs/types/TagElement.html +10 -5
  403. package/docs/types/TagEvents.html +10 -5
  404. package/docs/types/TagGLTFObject.html +10 -5
  405. package/docs/types/TagHooks.html +10 -5
  406. package/docs/types/TagId.html +10 -5
  407. package/docs/types/TagInstance.html +10 -5
  408. package/docs/types/TagPointType.html +10 -5
  409. package/docs/types/TagRendererMap.html +10 -5
  410. package/docs/types/TopviewFloorplanPluginParameterType.html +10 -5
  411. package/docs/types/TopviewFloorplanPluginReturnType.html +10 -5
  412. package/docs/types/WorkCode.html +10 -5
  413. package/docs/variables/FLOOR_TYPE_MAP.html +10 -5
  414. package/docs/variables/PLUGIN.html +11 -6
  415. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +10 -5
  416. package/docs/variables/ROOM_TYPE_MAP.html +10 -5
  417. package/docs/variables/defaultGlobalConfig.html +10 -5
  418. package/docs/variables/itemLabelPluginServerParams.html +10 -5
  419. package/docs/variables/modelItemLabelPluginServerParams.html +10 -5
  420. package/docs/variables/modelRoomLabelPluginServerParams.html +10 -5
  421. package/libs/GuideLinePlugin/Controller.js +15 -15
  422. package/libs/Object3DHelperPlugin/Controller.d.ts +25 -18
  423. package/libs/Object3DHelperPlugin/Controller.js +91 -91
  424. package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +1 -0
  425. package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +22 -18
  426. package/libs/Object3DHelperPlugin/index.js +8 -6
  427. package/libs/PanoMeasurePlugin/Components/Controller0.js +6 -7
  428. package/libs/PanoMeasurePlugin/Components/Controller1.js +6 -7
  429. package/libs/PanoMeasurePlugin/Controller/EditController.js +7 -8
  430. package/libs/PanoMeasurePlugin/Controller/MixedController.js +7 -7
  431. package/libs/PanoMeasurePlugin/Controller/WatchController.js +2 -2
  432. package/libs/PanoMeasurePlugin/Controller/index.js +5 -5
  433. package/libs/PanoMeasurePlugin/Model/area.js +2 -2
  434. package/libs/PanoMeasurePlugin/Model/polygon.js +1 -1
  435. package/libs/PanoMeasurePlugin/Modules/Magnifier.d.ts +2 -55
  436. package/libs/PanoMeasurePlugin/Modules/Magnifier.js +22 -156
  437. package/libs/PanoMeasurePlugin/Modules/UIController/index.js +6 -7
  438. package/libs/PanoMeasurePlugin/index.js +24 -25
  439. package/libs/PanoMeasurePlugin/utils/dom/areaDom.js +1 -1
  440. package/libs/PanoTagPlugin/controller/TagRender.js +18 -13
  441. package/libs/PanoTagPlugin/utils/model/mediaPlane.js +20 -10
  442. package/libs/Sculpt/Meshes/Area.d.ts +30 -0
  443. package/libs/Sculpt/Meshes/Area.js +56 -0
  444. package/libs/Sculpt/Meshes/Box.d.ts +35 -0
  445. package/libs/Sculpt/Meshes/Box.js +88 -0
  446. package/libs/Sculpt/Meshes/Circle.d.ts +26 -0
  447. package/libs/Sculpt/Meshes/Circle.js +42 -0
  448. package/libs/Sculpt/Meshes/CircleWithEdge.d.ts +11 -0
  449. package/libs/Sculpt/Meshes/CircleWithEdge.js +41 -0
  450. package/libs/Sculpt/Meshes/Cylinder.d.ts +34 -0
  451. package/libs/Sculpt/Meshes/Cylinder.js +88 -0
  452. package/libs/Sculpt/Meshes/Line.d.ts +27 -0
  453. package/libs/Sculpt/Meshes/Line.js +108 -0
  454. package/libs/Sculpt/Meshes/LineWithDots.d.ts +30 -0
  455. package/libs/Sculpt/Meshes/LineWithDots.js +70 -0
  456. package/libs/Sculpt/Meshes/Point.d.ts +22 -0
  457. package/libs/Sculpt/Meshes/Point.js +74 -0
  458. package/libs/Sculpt/Meshes/Polygon.d.ts +31 -0
  459. package/libs/Sculpt/Meshes/Polygon.js +52 -0
  460. package/libs/Sculpt/Meshes/Polyline.d.ts +34 -0
  461. package/libs/Sculpt/Meshes/Polyline.js +105 -0
  462. package/libs/Sculpt/Meshes/Prism.d.ts +31 -0
  463. package/libs/Sculpt/Meshes/Prism.js +78 -0
  464. package/libs/Sculpt/Meshes/Rectangle.d.ts +24 -0
  465. package/libs/Sculpt/Meshes/Rectangle.js +49 -0
  466. package/libs/Sculpt/Meshes/RectangleWithEdge.d.ts +20 -0
  467. package/libs/Sculpt/Meshes/RectangleWithEdge.js +49 -0
  468. package/libs/Sculpt/Modules/Cursor.d.ts +13 -0
  469. package/libs/Sculpt/Modules/Cursor.js +37 -0
  470. package/libs/Sculpt/Modules/Global.d.ts +20 -0
  471. package/libs/Sculpt/Modules/Global.js +45 -0
  472. package/libs/Sculpt/Objects/Base/Editor.d.ts +21 -0
  473. package/libs/Sculpt/Objects/Base/Editor.js +52 -0
  474. package/libs/Sculpt/Objects/Base/index.d.ts +60 -0
  475. package/libs/Sculpt/Objects/Base/index.js +77 -0
  476. package/libs/Sculpt/Objects/Box/Editor.d.ts +5 -0
  477. package/libs/Sculpt/Objects/Box/Editor.js +44 -0
  478. package/libs/Sculpt/Objects/Box/index.d.ts +28 -0
  479. package/libs/Sculpt/Objects/Box/index.js +107 -0
  480. package/libs/Sculpt/Objects/Circle/Editor.d.ts +5 -0
  481. package/libs/Sculpt/Objects/Circle/Editor.js +9 -0
  482. package/libs/Sculpt/Objects/Circle/index.d.ts +28 -0
  483. package/libs/Sculpt/Objects/Circle/index.js +114 -0
  484. package/libs/Sculpt/Objects/Cylinder/Editor.d.ts +5 -0
  485. package/libs/Sculpt/Objects/Cylinder/Editor.js +41 -0
  486. package/libs/Sculpt/Objects/Cylinder/index.d.ts +30 -0
  487. package/libs/Sculpt/Objects/Cylinder/index.js +100 -0
  488. package/libs/Sculpt/Objects/Point/Editor.d.ts +8 -0
  489. package/libs/Sculpt/Objects/Point/Editor.js +25 -0
  490. package/libs/Sculpt/Objects/Point/index.d.ts +35 -0
  491. package/libs/Sculpt/Objects/Point/index.js +92 -0
  492. package/libs/Sculpt/Objects/Polygon/Editor.d.ts +8 -0
  493. package/libs/Sculpt/Objects/Polygon/Editor.js +23 -0
  494. package/libs/Sculpt/Objects/Polygon/index.d.ts +28 -0
  495. package/libs/Sculpt/Objects/Polygon/index.js +113 -0
  496. package/libs/Sculpt/Objects/Polyline/Editor.d.ts +25 -0
  497. package/libs/Sculpt/Objects/Polyline/Editor.js +68 -0
  498. package/libs/Sculpt/Objects/Polyline/index.d.ts +31 -0
  499. package/libs/Sculpt/Objects/Polyline/index.js +96 -0
  500. package/libs/Sculpt/Objects/Prism/Editor.d.ts +5 -0
  501. package/libs/Sculpt/Objects/Prism/Editor.js +44 -0
  502. package/libs/Sculpt/Objects/Prism/index.d.ts +28 -0
  503. package/libs/Sculpt/Objects/Prism/index.js +105 -0
  504. package/libs/Sculpt/Objects/Rectangle/Editor.d.ts +5 -0
  505. package/libs/Sculpt/Objects/Rectangle/Editor.js +9 -0
  506. package/libs/Sculpt/Objects/Rectangle/index.d.ts +29 -0
  507. package/libs/Sculpt/Objects/Rectangle/index.js +105 -0
  508. package/libs/Sculpt/index.d.ts +184 -0
  509. package/libs/Sculpt/index.js +209 -0
  510. package/libs/Sculpt/typings/index.d.ts +16 -0
  511. package/libs/Sculpt/typings/utils.type.d.ts +12 -0
  512. package/libs/Sculpt/utils/color.d.ts +40 -0
  513. package/libs/Sculpt/utils/color.js +7 -0
  514. package/libs/Sculpt/utils/data.d.ts +7 -0
  515. package/libs/Sculpt/utils/getBetterNormal.d.ts +2 -0
  516. package/libs/Sculpt/utils/getBetterNormal.js +8 -0
  517. package/libs/Sculpt/utils/radiusToSegments.d.ts +1 -0
  518. package/libs/Sculpt/utils/radiusToSegments.js +6 -0
  519. package/libs/Sculpt/utils/three/ColoredMesh.d.ts +17 -0
  520. package/libs/Sculpt/utils/three/ColoredMesh.js +58 -0
  521. package/libs/Sculpt/utils/three/RectangleGeometry.d.ts +6 -0
  522. package/libs/Sculpt/utils/three/RectangleGeometry.js +19 -0
  523. package/libs/Sculpt/utils/three/rayOnLine.d.ts +5 -0
  524. package/libs/Sculpt/utils/three/rayOnLine.js +8 -0
  525. package/libs/base/BasePlugin.js +1 -1
  526. package/libs/index.d.ts +1 -0
  527. package/libs/index.js +172 -127
  528. package/libs/shared-utils/Object3DHelper/Base/BaseController.d.ts +13 -5
  529. package/libs/shared-utils/Object3DHelper/Base/BaseController.js +95 -80
  530. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +17 -6
  531. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +40 -35
  532. package/libs/shared-utils/Object3DHelper/Controller/MoveController.js +9 -9
  533. package/libs/shared-utils/Object3DHelper/Controller/RotateController.d.ts +0 -1
  534. package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +54 -53
  535. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +14 -7
  536. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.js +49 -15
  537. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +4 -2
  538. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +16 -12
  539. package/libs/shared-utils/Object3DHelper/Helper/Objects/ArrowGroup.js +8 -5
  540. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +3 -2
  541. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +21 -12
  542. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +12 -3
  543. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.js +38 -5
  544. package/libs/shared-utils/Object3DHelper/typings/Hooks.d.ts +1 -0
  545. package/libs/shared-utils/Object3DHelper/typings/index.d.ts +11 -0
  546. package/libs/shared-utils/Object3DHelper/utils/boundingBox.js +22 -21
  547. package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +2 -0
  548. package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.js +7 -0
  549. package/libs/shared-utils/Subscribe.js +1 -1
  550. package/libs/shared-utils/five/FiveDomEvents.d.ts +50 -13
  551. package/libs/shared-utils/five/FiveDomEvents.js +135 -90
  552. package/libs/shared-utils/five/getPosition.d.ts +14 -0
  553. package/libs/shared-utils/five/getPosition.js +45 -0
  554. package/libs/shared-utils/five/getRaycasterByNdcPosition.d.ts +6 -0
  555. package/libs/shared-utils/five/getRaycasterByNdcPosition.js +8 -0
  556. package/libs/shared-utils/logger.js +1 -1
  557. package/libs/shared-utils/positionToVector3.d.ts +1 -0
  558. package/libs/shared-utils/positionToVector3.js +7 -4
  559. package/libs/shared-utils/three/IObject3D.d.ts +4 -0
  560. package/libs/shared-utils/three/IObject3D.js +22 -9
  561. package/libs/shared-utils/three/Magnifier.d.ts +33 -19
  562. package/libs/shared-utils/three/Magnifier.js +112 -70
  563. package/libs/shared-utils/three/PointSelector.d.ts +25 -11
  564. package/libs/shared-utils/three/PointSelector.js +70 -78
  565. package/libs/shared-utils/three/PointSelectorHelper.d.ts +2 -0
  566. package/libs/shared-utils/three/PointSelectorHelper.js +14 -14
  567. package/libs/shared-utils/three/generatePolygonGeometry.js +15 -0
  568. package/{dist/PanoMeasurePlugin/utils → libs/shared-utils/three}/geometryUtil.d.ts +1 -1
  569. package/libs/shared-utils/three/geometryUtil.js +37 -0
  570. package/libs/shared-utils/three/getIntersect.d.ts +16 -2
  571. package/libs/shared-utils/three/getIntersect.js +20 -5
  572. package/libs/shared-utils/three/getNormal.d.ts +1 -1
  573. package/libs/shared-utils/three/getNormal.js +8 -7
  574. package/libs/shared-utils/three/recurveFindObject.d.ts +2 -0
  575. package/libs/shared-utils/three/recurveFindObject.js +6 -0
  576. package/libs/shared-utils/three/vector3ToArray.d.ts +3 -0
  577. package/libs/shared-utils/three/vector3ToArray.js +6 -0
  578. package/libs/vendor/hotkeys-js/dist/hotkeys.esm.js +372 -0
  579. package/package.json +4 -3
  580. package/dist/shared-utils/getIntersectionFromEvent.d.ts +0 -4
  581. package/docs/classes/Magnifier.html +0 -485
  582. package/libs/PanoMeasurePlugin/utils/generatePolygonGeometry.js +0 -13
  583. package/libs/PanoMeasurePlugin/utils/geometryUtil.js +0 -39
  584. package/libs/shared-utils/getIntersectionFromEvent.d.ts +0 -4
  585. package/libs/shared-utils/getIntersectionFromEvent.js +0 -9
  586. /package/dist/{PanoMeasurePlugin/utils → shared-utils/three}/generatePolygonGeometry.d.ts +0 -0
  587. /package/libs/{PanoMeasurePlugin/utils → shared-utils/three}/generatePolygonGeometry.d.ts +0 -0
@@ -0,0 +1,107 @@
1
+ var B = Object.defineProperty, E = Object.defineProperties;
2
+ var C = Object.getOwnPropertyDescriptors;
3
+ var P = Object.getOwnPropertySymbols;
4
+ var H = Object.prototype.hasOwnProperty, O = Object.prototype.propertyIsEnumerable;
5
+ var p = (o, e, t) => e in o ? B(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t, c = (o, e) => {
6
+ for (var t in e || (e = {}))
7
+ H.call(e, t) && p(o, t, e[t]);
8
+ if (P)
9
+ for (var t of P(e))
10
+ O.call(e, t) && p(o, t, e[t]);
11
+ return o;
12
+ }, M = (o, e) => E(o, C(e));
13
+ var d = (o, e, t) => (p(o, typeof e != "symbol" ? e + "" : e, t), t);
14
+ var b = (o, e, t) => new Promise((r, i) => {
15
+ var a = (s) => {
16
+ try {
17
+ n(t.next(s));
18
+ } catch (h) {
19
+ i(h);
20
+ }
21
+ }, m = (s) => {
22
+ try {
23
+ n(t.throw(s));
24
+ } catch (h) {
25
+ i(h);
26
+ }
27
+ }, n = (s) => s.done ? r(s.value) : Promise.resolve(s.value).then(a, m);
28
+ n((t = t.apply(o, e)).next());
29
+ });
30
+ import { hotkeys as L } from "../../../vendor/hotkeys-js/dist/hotkeys.esm.js";
31
+ import { BaseObject as W } from "../Base/index.js";
32
+ import * as j from "three";
33
+ import { BoxEditor as N } from "./Editor.js";
34
+ import { BoxMesh as w } from "../../Meshes/Box.js";
35
+ import { createRectangle as R } from "../Rectangle/index.js";
36
+ import { LineMesh as T } from "../../Meshes/Line.js";
37
+ import { getNormal as U } from "../../../shared-utils/three/getNormal.js";
38
+ import { rayOnLine as k } from "../../utils/three/rayOnLine.js";
39
+ import { Sculpt as z } from "../../index.js";
40
+ import { vector3ToArray as v } from "../../../shared-utils/three/vector3ToArray.js";
41
+ class Z extends W {
42
+ constructor(t, r) {
43
+ super(t, r);
44
+ d(this, "type", "Box");
45
+ d(this, "boxMesh");
46
+ this.editor = new N(this), t && (this.boxMesh = new w(c(c({}, t.style), t)), this.add(this.boxMesh)), L("esc", () => {
47
+ this.stopCreating();
48
+ });
49
+ }
50
+ get data() {
51
+ return M(c({}, this.baseData), {
52
+ points: v(this.applyObjectMatrixWorld(this.boxMesh.bottomPlane.points)),
53
+ heightPoint: v(this.applyObjectMatrixWorld(this.boxMesh.heightPoint)),
54
+ style: {
55
+ color: this.boxMesh.color.getHex(),
56
+ lineWidth: this.boxMesh.lineWidth,
57
+ lineColor: this.boxMesh.lineColor.getHex()
58
+ }
59
+ });
60
+ }
61
+ highlight() {
62
+ var t;
63
+ (t = this.boxMesh) == null || t.highlight();
64
+ }
65
+ unhighlight() {
66
+ var t;
67
+ (t = this.boxMesh) == null || t.unhighlight();
68
+ }
69
+ create(t) {
70
+ return b(this, null, function* () {
71
+ this.removeChildren(), this.boxMesh = new w(t), this.add(this.boxMesh), yield A(this.boxMesh, this.pointSelector), this.editor.enable();
72
+ });
73
+ }
74
+ }
75
+ function A(o, e) {
76
+ return b(this, null, function* () {
77
+ return yield R(o.bottomPlane, e), new Promise((t, r) => {
78
+ const i = o.parent;
79
+ if (!i) {
80
+ r(new Error("No container"));
81
+ return;
82
+ }
83
+ const a = new T(), m = U(o.bottomPlane.points).normalize(), n = o.bottomPlane.builtPoints.at(-1), s = n.clone().add(m.clone().multiplyScalar(10)), h = n.clone().sub(m.clone().multiplyScalar(10));
84
+ a.setPoints([s, h]), i.add(a), e.enable();
85
+ const f = (l) => {
86
+ g(), t();
87
+ }, x = (l) => {
88
+ if (!(l != null && l.raycaster))
89
+ return;
90
+ const y = k(
91
+ z.modules.five.camera.position,
92
+ l.raycaster.ray,
93
+ new j.Line3(s, h)
94
+ );
95
+ y && o.setPoints({ heightPoint: y });
96
+ }, g = () => {
97
+ e.off("select", f), e.off("intersectionUpdate", x), e.off("disable", u), e.disable(), i == null || i.remove(a);
98
+ }, u = () => {
99
+ g(), i == null || i.remove(o), r(new Error("Cancelled"));
100
+ };
101
+ e.on("select", f), e.on("intersectionUpdate", x), e.on("disable", u);
102
+ });
103
+ });
104
+ }
105
+ export {
106
+ Z as Box
107
+ };
@@ -0,0 +1,5 @@
1
+ import { BaseEditorWithObjectHelper } from '../Base/Editor';
2
+ import type { Circle } from '.';
3
+ export declare class CircleEditor extends BaseEditorWithObjectHelper<Circle> {
4
+ constructor(originObject: Circle);
5
+ }
@@ -0,0 +1,9 @@
1
+ import { BaseEditorWithObjectHelper as e } from "../Base/Editor.js";
2
+ class o extends e {
3
+ constructor(r) {
4
+ super(r, () => ({ yAxis: r.circleMesh.normal }));
5
+ }
6
+ }
7
+ export {
8
+ o as CircleEditor
9
+ };
@@ -0,0 +1,28 @@
1
+ import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
+ import type { PointSelector } from '../../../shared-utils/three/PointSelector';
3
+ import type { CircleData, CircleMesh } from '../../Meshes/Circle';
4
+ import { CircleWithEdgeMesh, type CircleWithEdgeMeshStyle } from '../../Meshes/CircleWithEdge';
5
+ import type { LiteralString } from '../../typings/utils.type';
6
+ export interface CircleImportData extends BaseImportData, CircleData {
7
+ type: LiteralString<'Circle'>;
8
+ style?: Partial<CircleWithEdgeMeshStyle>;
9
+ }
10
+ export declare class Circle extends BaseObject<CircleImportData> {
11
+ readonly type = "Circle";
12
+ circleMesh: CircleWithEdgeMesh;
13
+ get data(): {
14
+ center: [number, number, number];
15
+ normal: [number, number, number];
16
+ radius: number;
17
+ style: {
18
+ color: number;
19
+ };
20
+ id: string;
21
+ type: string;
22
+ };
23
+ constructor(data?: CircleImportData, config?: Partial<BaseObjectConfig>);
24
+ highlight(): void;
25
+ unhighlight(): void;
26
+ create(params?: Partial<CircleWithEdgeMeshStyle>): Promise<void>;
27
+ }
28
+ export declare function createCircle(circleMesh: CircleMesh, pointSelector: PointSelector): Promise<void>;
@@ -0,0 +1,114 @@
1
+ var v = Object.defineProperty, x = Object.defineProperties;
2
+ var O = Object.getOwnPropertyDescriptors;
3
+ var M = Object.getOwnPropertySymbols;
4
+ var T = Object.prototype.hasOwnProperty, j = Object.prototype.propertyIsEnumerable;
5
+ var d = (t, r, e) => r in t ? v(t, r, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[r] = e, m = (t, r) => {
6
+ for (var e in r || (r = {}))
7
+ T.call(r, e) && d(t, e, r[e]);
8
+ if (M)
9
+ for (var e of M(r))
10
+ j.call(r, e) && d(t, e, r[e]);
11
+ return t;
12
+ }, g = (t, r) => x(t, O(r));
13
+ var f = (t, r, e) => (d(t, typeof r != "symbol" ? r + "" : r, e), e);
14
+ var w = (t, r, e) => new Promise((o, i) => {
15
+ var a = (n) => {
16
+ try {
17
+ c(e.next(n));
18
+ } catch (h) {
19
+ i(h);
20
+ }
21
+ }, s = (n) => {
22
+ try {
23
+ c(e.throw(n));
24
+ } catch (h) {
25
+ i(h);
26
+ }
27
+ }, c = (n) => n.done ? o(n.value) : Promise.resolve(n.value).then(a, s);
28
+ c((e = e.apply(t, r)).next());
29
+ });
30
+ import { hotkeys as A } from "../../../vendor/hotkeys-js/dist/hotkeys.esm.js";
31
+ import { BaseObject as H } from "../Base/index.js";
32
+ import * as y from "three";
33
+ import { PolylineMesh as N } from "../../Meshes/Polyline.js";
34
+ import { CircleEditor as U } from "./Editor.js";
35
+ import { CircleWithEdgeMesh as b } from "../../Meshes/CircleWithEdge.js";
36
+ import { vector3ToArray as C } from "../../../shared-utils/three/vector3ToArray.js";
37
+ class V extends H {
38
+ constructor(e, o) {
39
+ super(e, o);
40
+ f(this, "type", "Circle");
41
+ f(this, "circleMesh");
42
+ this.editor = new U(this), e && (this.circleMesh = new b(m(m({}, e.style), e)), this.add(this.circleMesh)), A("esc", () => {
43
+ this.stopCreating();
44
+ });
45
+ }
46
+ get data() {
47
+ return g(m({}, this.baseData), {
48
+ center: C(this.applyObjectMatrixWorld(this.circleMesh.center)),
49
+ normal: C(this.applyObjectQuaternion(this.circleMesh.normal)),
50
+ radius: this.circleMesh.radius,
51
+ style: {
52
+ color: this.circleMesh.color.getHex()
53
+ }
54
+ });
55
+ }
56
+ highlight() {
57
+ var e;
58
+ (e = this.circleMesh) == null || e.highlight();
59
+ }
60
+ unhighlight() {
61
+ var e;
62
+ (e = this.circleMesh) == null || e.unhighlight();
63
+ }
64
+ create(e) {
65
+ return w(this, null, function* () {
66
+ this.children.forEach((i) => {
67
+ i.parent === this && this.remove(i);
68
+ }), this.children.length = 0;
69
+ const o = new b(e);
70
+ this.circleMesh = o, this.add(this.circleMesh), yield W(this.circleMesh, this.pointSelector), this.editor.enable();
71
+ });
72
+ }
73
+ }
74
+ function W(t, r) {
75
+ return new Promise((e, o) => {
76
+ const i = t.parent;
77
+ if (!i) {
78
+ o(new Error("No container"));
79
+ return;
80
+ }
81
+ const a = new N({ dashed: !0 });
82
+ i.add(a), r.enable();
83
+ let s, c;
84
+ const n = (l) => {
85
+ if (l) {
86
+ if (!s) {
87
+ s = {
88
+ point: l.point,
89
+ normal: l.face.normal
90
+ };
91
+ return;
92
+ }
93
+ s && c && (p(), e());
94
+ }
95
+ }, h = (l) => {
96
+ if (!l || !s)
97
+ return;
98
+ const E = new y.Plane().setFromNormalAndCoplanarPoint(s.normal, s.point);
99
+ if (c = l.raycaster.ray.intersectPlane(E, new y.Vector3()), c) {
100
+ const P = s.point.distanceTo(c);
101
+ t.setPoints({ center: s.point, normal: s.normal, radius: P });
102
+ }
103
+ }, p = () => {
104
+ r.off("select", n), r.off("intersectionUpdate", h), r.off("disable", u), r.disable(), i == null || i.remove(a);
105
+ }, u = () => {
106
+ p(), i == null || i.remove(t, a), o(new Error("Cancelled"));
107
+ };
108
+ r.on("select", n), r.on("intersectionUpdate", h), r.on("disable", u);
109
+ });
110
+ }
111
+ export {
112
+ V as Circle,
113
+ W as createCircle
114
+ };
@@ -0,0 +1,5 @@
1
+ import { BaseEditorWithObjectHelper } from '../Base/Editor';
2
+ import type { Cylinder } from '.';
3
+ export declare class CylinderEditor extends BaseEditorWithObjectHelper<Cylinder> {
4
+ constructor(originObject: Cylinder);
5
+ }
@@ -0,0 +1,41 @@
1
+ import { BaseEditorWithObjectHelper as c } from "../Base/Editor.js";
2
+ import * as l from "three";
3
+ class d extends c {
4
+ constructor(e) {
5
+ super(e, () => {
6
+ const i = () => {
7
+ const t = e.cylinderMesh.topCenter, o = e.cylinderMesh.bottomCenter, n = new l.Vector3().lerpVectors(t, o, 0.5);
8
+ return { topCenter: t, bottomCenter: o, boxCenter: n };
9
+ };
10
+ return {
11
+ positionFrom: "boundingBox",
12
+ yAxis: e.cylinderMesh.normal,
13
+ scaleHelper: {
14
+ enable: !0,
15
+ positions: () => {
16
+ const t = i();
17
+ return [
18
+ {
19
+ id: "top",
20
+ handlePosition: t.topCenter,
21
+ basePosition: t.bottomCenter
22
+ },
23
+ {
24
+ id: "bottom",
25
+ handlePosition: t.bottomCenter,
26
+ basePosition: t.topCenter
27
+ }
28
+ ];
29
+ },
30
+ scaleCallback: (t) => {
31
+ const { intersectPoint: o, scalePosition: n } = t, { id: s } = n, { cylinderMesh: r } = e;
32
+ s === "top" ? r.setTopCenter(o) : s === "bottom" && r.setBottomCenter(o);
33
+ }
34
+ }
35
+ };
36
+ });
37
+ }
38
+ }
39
+ export {
40
+ d as CylinderEditor
41
+ };
@@ -0,0 +1,30 @@
1
+ import type { PointSelector } from '../../../shared-utils/three/PointSelector';
2
+ import type { CircleStyle } from '../../Meshes/Circle';
3
+ import { CylinderMesh, type CylinderData } from '../../Meshes/Cylinder';
4
+ import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
5
+ import type { LiteralString } from '../../typings/utils.type';
6
+ type CylinderStyle = CircleStyle;
7
+ export interface CylinderImportData extends BaseImportData, CylinderData {
8
+ type: LiteralString<'Cylinder'>;
9
+ style?: Partial<CylinderStyle>;
10
+ }
11
+ export declare class Cylinder extends BaseObject<CylinderImportData> {
12
+ readonly type = "Cylinder";
13
+ cylinderMesh: CylinderMesh;
14
+ get data(): {
15
+ bottomCenter: [number, number, number];
16
+ topCenter: [number, number, number];
17
+ radius: number;
18
+ style: {
19
+ color: number;
20
+ };
21
+ id: string;
22
+ type: string;
23
+ };
24
+ constructor(data?: CylinderImportData, config?: Partial<BaseObjectConfig>);
25
+ highlight(): void;
26
+ unhighlight(): void;
27
+ create(params?: Partial<CylinderStyle>): Promise<void>;
28
+ }
29
+ export declare function createCylinder(cylinderMesh: CylinderMesh, pointSelector: PointSelector): Promise<void>;
30
+ export {};
@@ -0,0 +1,100 @@
1
+ var L = Object.defineProperty, j = Object.defineProperties;
2
+ var T = Object.getOwnPropertyDescriptors;
3
+ var g = Object.getOwnPropertySymbols;
4
+ var A = Object.prototype.hasOwnProperty, U = Object.prototype.propertyIsEnumerable;
5
+ var p = (n, t, e) => t in n ? L(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e, m = (n, t) => {
6
+ for (var e in t || (t = {}))
7
+ A.call(t, e) && p(n, e, t[e]);
8
+ if (g)
9
+ for (var e of g(t))
10
+ U.call(t, e) && p(n, e, t[e]);
11
+ return n;
12
+ }, M = (n, t) => j(n, T(t));
13
+ var y = (n, t, e) => (p(n, typeof t != "symbol" ? t + "" : t, e), e);
14
+ var f = (n, t, e) => new Promise((r, s) => {
15
+ var c = (o) => {
16
+ try {
17
+ i(e.next(o));
18
+ } catch (a) {
19
+ s(a);
20
+ }
21
+ }, h = (o) => {
22
+ try {
23
+ i(e.throw(o));
24
+ } catch (a) {
25
+ s(a);
26
+ }
27
+ }, i = (o) => o.done ? r(o.value) : Promise.resolve(o.value).then(c, h);
28
+ i((e = e.apply(n, t)).next());
29
+ });
30
+ import { Sculpt as W } from "../../index.js";
31
+ import { CylinderMesh as v } from "../../Meshes/Cylinder.js";
32
+ import { LineMesh as z } from "../../Meshes/Line.js";
33
+ import { rayOnLine as B } from "../../utils/three/rayOnLine.js";
34
+ import { BaseObject as D } from "../Base/index.js";
35
+ import { createCircle as F } from "../Circle/index.js";
36
+ import * as b from "three";
37
+ import { CylinderEditor as N } from "./Editor.js";
38
+ import { vector3ToArray as O } from "../../../shared-utils/three/vector3ToArray.js";
39
+ class Z extends D {
40
+ constructor(e, r) {
41
+ super(e, r);
42
+ y(this, "type", "Cylinder");
43
+ y(this, "cylinderMesh");
44
+ this.editor = new N(this), e && (this.cylinderMesh = new v(m(m({}, e.style), e)), this.add(this.cylinderMesh));
45
+ }
46
+ get data() {
47
+ return M(m({}, this.baseData), {
48
+ bottomCenter: O(this.applyObjectMatrixWorld(this.cylinderMesh.bottomCenter)),
49
+ topCenter: O(this.applyObjectMatrixWorld(this.cylinderMesh.topCenter)),
50
+ radius: this.cylinderMesh.radius,
51
+ style: {
52
+ color: this.cylinderMesh.color.getHex()
53
+ }
54
+ });
55
+ }
56
+ highlight() {
57
+ var e;
58
+ (e = this.cylinderMesh) == null || e.highlight();
59
+ }
60
+ unhighlight() {
61
+ var e;
62
+ (e = this.cylinderMesh) == null || e.unhighlight();
63
+ }
64
+ create(e) {
65
+ return f(this, null, function* () {
66
+ this.cylinderMesh = new v(e), this.add(this.cylinderMesh), yield R(this.cylinderMesh, this.pointSelector), this.editor.enable();
67
+ });
68
+ }
69
+ }
70
+ function R(n, t) {
71
+ return f(this, null, function* () {
72
+ const e = n.parent;
73
+ yield F(n.bottomCircle, t);
74
+ const r = new z();
75
+ r.name = "LineHelper", e.add(r);
76
+ const s = t.position.point, c = n.normal.clone().normalize(), h = s.clone().add(c.clone().multiplyScalar(10)), i = s.clone().sub(c.clone().multiplyScalar(10));
77
+ return r.setPoints([h, i]), t.enable(), new Promise((o, a) => {
78
+ const C = (l) => {
79
+ w(), o();
80
+ }, u = (l) => {
81
+ if (!(l != null && l.raycaster))
82
+ return;
83
+ const d = B(
84
+ W.modules.five.camera.position,
85
+ l.raycaster.ray,
86
+ new b.Line3(h, i)
87
+ ), x = new b.Plane().setFromNormalAndCoplanarPoint(n.normal, n.bottomCenter).projectPoint(d, new b.Vector3()), E = d.clone().sub(x), H = n.bottomCenter.clone().add(E);
88
+ d && n.setTopCenter(H);
89
+ }, w = () => {
90
+ t.off("select", C), t.off("intersectionUpdate", u), t.off("disable", P), e.remove(r), t.disable();
91
+ }, P = () => {
92
+ w(), e.remove(n), a(new Error("Cancelled"));
93
+ };
94
+ t.on("select", C), t.on("intersectionUpdate", u), t.on("disable", P);
95
+ });
96
+ });
97
+ }
98
+ export {
99
+ Z as Cylinder
100
+ };
@@ -0,0 +1,8 @@
1
+ import { BaseEditor } from '../Base/Editor';
2
+ import type { Point } from '.';
3
+ export declare class PointEditor extends BaseEditor<Point> {
4
+ constructor(originObject: Point);
5
+ enable(): void;
6
+ disable(): void;
7
+ private onDrag;
8
+ }
@@ -0,0 +1,25 @@
1
+ var n = Object.defineProperty;
2
+ var a = (r, t, i) => t in r ? n(r, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : r[t] = i;
3
+ var o = (r, t, i) => (a(r, typeof t != "symbol" ? t + "" : t, i), i);
4
+ import { BaseEditor as c } from "../Base/Editor.js";
5
+ import { Sculpt as g } from "../../index.js";
6
+ import { getIntersectByRaycaster as b } from "../../../shared-utils/five/getPosition.js";
7
+ class l extends c {
8
+ constructor(i) {
9
+ super(i);
10
+ o(this, "onDrag", (i) => {
11
+ var e;
12
+ const s = b(g.modules.five, i.raycaster);
13
+ (e = this.originObject.pointMesh) == null || e.position.copy(s.point);
14
+ });
15
+ }
16
+ enable() {
17
+ super.enable(), this.originObject.config.canEdit && (this.originObject.draggable = !0, this.originObject.on("drag", this.onDrag));
18
+ }
19
+ disable() {
20
+ super.disable(), this.originObject.config.canEdit && (this.originObject.draggable = !1, this.originObject.off("drag", this.onDrag));
21
+ }
22
+ }
23
+ export {
24
+ l as PointEditor
25
+ };
@@ -0,0 +1,35 @@
1
+ import { PointMesh, type PointData, type PointStyle } from '../../Meshes/Point';
2
+ import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
3
+ import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
+ import type { LiteralString } from '../../typings/utils.type';
5
+ export interface PointImportData extends BaseImportData, PointData {
6
+ type: LiteralString<'Point'>;
7
+ style?: Partial<PointStyle>;
8
+ }
9
+ export declare class Point extends BaseObject<PointImportData> {
10
+ readonly type = "Point";
11
+ pointMesh: PointMesh;
12
+ get data(): {
13
+ point: [number, number, number];
14
+ style: {
15
+ color: number;
16
+ size: number;
17
+ };
18
+ id: string;
19
+ type: string;
20
+ };
21
+ constructor(data?: PointImportData, config?: Partial<BaseObjectConfig>);
22
+ highlight(): void;
23
+ unhighlight(): void;
24
+ /**
25
+ * @description: 设置颜色
26
+ * @param {Color} style.color
27
+ * @param {number} style.size
28
+ */
29
+ setStyle(style: Partial<PointStyle>): void;
30
+ /**
31
+ * @description: 创建点
32
+ */
33
+ create(params?: PointStyle): Promise<void>;
34
+ }
35
+ export declare function createPoint(pointMesh: PointMesh, pointSelector: PointSelector): Promise<void>;
@@ -0,0 +1,92 @@
1
+ var y = Object.defineProperty, b = Object.defineProperties;
2
+ var u = Object.getOwnPropertyDescriptors;
3
+ var m = Object.getOwnPropertySymbols;
4
+ var w = Object.prototype.hasOwnProperty, P = Object.prototype.propertyIsEnumerable;
5
+ var a = (e, i, t) => i in e ? y(e, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[i] = t, n = (e, i) => {
6
+ for (var t in i || (i = {}))
7
+ w.call(i, t) && a(e, t, i[t]);
8
+ if (m)
9
+ for (var t of m(i))
10
+ P.call(i, t) && a(e, t, i[t]);
11
+ return e;
12
+ }, g = (e, i) => b(e, u(i));
13
+ var M = (e, i, t) => (a(e, typeof i != "symbol" ? i + "" : i, t), t);
14
+ var d = (e, i, t) => new Promise((o, h) => {
15
+ var r = (s) => {
16
+ try {
17
+ l(t.next(s));
18
+ } catch (c) {
19
+ h(c);
20
+ }
21
+ }, p = (s) => {
22
+ try {
23
+ l(t.throw(s));
24
+ } catch (c) {
25
+ h(c);
26
+ }
27
+ }, l = (s) => s.done ? o(s.value) : Promise.resolve(s.value).then(r, p);
28
+ l((t = t.apply(e, i)).next());
29
+ });
30
+ import { PointMesh as f } from "../../Meshes/Point.js";
31
+ import { BaseObject as x } from "../Base/index.js";
32
+ import { hotkeys as j } from "../../../vendor/hotkeys-js/dist/hotkeys.esm.js";
33
+ import { PointEditor as v } from "./Editor.js";
34
+ import { vector3ToArray as z } from "../../../shared-utils/three/vector3ToArray.js";
35
+ class H extends x {
36
+ constructor(t, o) {
37
+ super(t, o);
38
+ M(this, "type", "Point");
39
+ M(this, "pointMesh");
40
+ this.editor = new v(this), t && (this.pointMesh = new f(n(n({}, t.style), t)), this.add(this.pointMesh)), j("esc", () => {
41
+ this.stopCreating();
42
+ });
43
+ }
44
+ get data() {
45
+ return g(n({}, this.baseData), {
46
+ point: z(this.applyObjectMatrixWorld(this.pointMesh.position)),
47
+ style: {
48
+ color: this.pointMesh.color.getHex(),
49
+ size: this.pointMesh.size
50
+ }
51
+ });
52
+ }
53
+ highlight() {
54
+ var t;
55
+ (t = this.pointMesh) == null || t.highlight();
56
+ }
57
+ unhighlight() {
58
+ var t;
59
+ (t = this.pointMesh) == null || t.unhighlight();
60
+ }
61
+ /**
62
+ * @description: 设置颜色
63
+ * @param {Color} style.color
64
+ * @param {number} style.size
65
+ */
66
+ setStyle(t) {
67
+ this.pointMesh.setStyle(t);
68
+ }
69
+ /**
70
+ * @description: 创建点
71
+ */
72
+ create(t) {
73
+ return d(this, null, function* () {
74
+ this.pointMesh && this.remove(this.pointMesh), this.add(this.pointMesh = new f(t)), yield C(this.pointMesh, this.pointSelector), this.editor.enable();
75
+ });
76
+ }
77
+ }
78
+ function C(e, i) {
79
+ return new Promise((t, o) => {
80
+ i.enable();
81
+ const h = (r) => {
82
+ const { point: p } = r;
83
+ e.position.copy(p), t(), i.disable();
84
+ };
85
+ i.on("disable", () => {
86
+ i.off("select", h), o(new Error("Cancelled"));
87
+ }), i.once("select", h);
88
+ });
89
+ }
90
+ export {
91
+ H as Point
92
+ };
@@ -0,0 +1,8 @@
1
+ import type { Polygon } from '.';
2
+ import type { FiveDomEvent } from '../../../shared-utils/five/FiveDomEvents';
3
+ import { LineEditor } from '../Polyline/Editor';
4
+ export declare class PolygonEditor extends LineEditor<Polygon> {
5
+ get lines(): import("../../Meshes/LineWithDots").LineWithDotsMesh[];
6
+ constructor(originObject: Polygon);
7
+ protected onDrag: (event: FiveDomEvent) => void;
8
+ }
@@ -0,0 +1,23 @@
1
+ var a = Object.defineProperty;
2
+ var g = (o, i, t) => i in o ? a(o, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[i] = t;
3
+ var r = (o, i, t) => (g(o, typeof i != "symbol" ? i + "" : i, t), t);
4
+ import { Sculpt as c } from "../../index.js";
5
+ import { getIntersectByRaycaster as p } from "../../../shared-utils/five/getPosition.js";
6
+ import { LineEditor as h } from "../Polyline/Editor.js";
7
+ class f extends h {
8
+ constructor(t) {
9
+ super(t);
10
+ r(this, "onDrag", (t) => {
11
+ if (!this.draggingPoints || this.draggingPoints.length === 0)
12
+ return;
13
+ const e = p(c.modules.five, t.raycaster), n = this.originObject.areaMesh.projectPoint(e.point);
14
+ this.draggingPoints.forEach((s) => s.position.copy(n)), this.originObject.areaMesh.setPoints(this.points.map((s) => s.position));
15
+ });
16
+ }
17
+ get lines() {
18
+ return this.originObject.areaMesh.lines;
19
+ }
20
+ }
21
+ export {
22
+ f as PolygonEditor
23
+ };
@@ -0,0 +1,28 @@
1
+ import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
+ import { AreaMesh, type AreaStyle } from '../../Meshes/Area';
3
+ import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
+ import type { LiteralString } from '../../typings/utils.type';
5
+ import type { PolygonData, PolygonStyle } from '../../Meshes/Polygon';
6
+ export interface PolygonImportData extends BaseImportData, PolygonData {
7
+ type: LiteralString<'Polygon'>;
8
+ style?: Partial<AreaStyle>;
9
+ }
10
+ export declare class Polygon extends BaseObject<PolygonImportData> {
11
+ readonly type = "Polygon";
12
+ areaMesh: AreaMesh;
13
+ get data(): {
14
+ points: [number, number, number][];
15
+ style: {
16
+ color: number;
17
+ lineColor: number;
18
+ lineWidth: number;
19
+ };
20
+ id: string;
21
+ type: string;
22
+ };
23
+ constructor(data?: PolygonImportData, config?: Partial<BaseObjectConfig>);
24
+ highlight(): void;
25
+ unhighlight(): void;
26
+ create(params?: Partial<PolygonStyle>): Promise<void>;
27
+ }
28
+ export declare function createPolygon(areaMesh: AreaMesh, pointSelector: PointSelector): Promise<void>;