@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,31 @@
1
+ import { IObject3D } from '../../shared-utils/three/IObject3D';
2
+ import { type AnyPosition, type AnyPositions } from '../../shared-utils/positionToVector3';
3
+ import { AreaMesh, type AreaData } from './Area';
4
+ import * as THREE from 'three';
5
+ import type { LineStyle } from '../utils/color';
6
+ import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
7
+ export type PrismStyle = ColoredMeshStyle & LineStyle;
8
+ export interface PrismData extends AreaData {
9
+ heightPoint: AnyPosition;
10
+ }
11
+ /**
12
+ * @description: 多棱柱
13
+ */
14
+ export declare class PrismMesh extends IObject3D {
15
+ name: string;
16
+ heightPoint: THREE.Vector3;
17
+ bottomPolygon: AreaMesh;
18
+ topPolygon: AreaMesh;
19
+ get color(): THREE.Color;
20
+ get lineWidth(): number;
21
+ get lineColor(): THREE.Color;
22
+ private edgePlanes;
23
+ constructor(params?: Partial<PrismData & PrismStyle>);
24
+ setStyle(params: Partial<PrismStyle>): void;
25
+ setPoints(params: Partial<PrismData>): void;
26
+ highlight(): void;
27
+ unhighlight(): void;
28
+ setBottomPoints(points: AnyPositions): void;
29
+ setTopHeightPoint(heightPoint: THREE.Vector3): void;
30
+ private setEdgePlanes;
31
+ }
@@ -0,0 +1,78 @@
1
+ var f = Object.defineProperty;
2
+ var d = (n, i, t) => i in n ? f(n, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[i] = t;
3
+ var s = (n, i, t) => (d(n, typeof i != "symbol" ? i + "" : i, t), t);
4
+ import { IObject3D as P } from "../../shared-utils/three/IObject3D.js";
5
+ import { anyPositionToVector3 as r } from "../../shared-utils/positionToVector3.js";
6
+ import { AreaMesh as m } from "./Area.js";
7
+ import "hammerjs";
8
+ import * as a from "three";
9
+ import "@realsee/five";
10
+ import "../../vendor/@tweenjs/tween/dist/tween.esm.js.js";
11
+ import "../../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
12
+ import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
13
+ import { notNil as y } from "../../shared-utils/isNil.js";
14
+ import { PolygonMesh as c } from "./Polygon.js";
15
+ import { LineMesh as p } from "./Line.js";
16
+ class W extends P {
17
+ constructor(t) {
18
+ super();
19
+ s(this, "name", "PrismMesh");
20
+ s(this, "heightPoint");
21
+ s(this, "bottomPolygon", new m());
22
+ s(this, "topPolygon", new m());
23
+ s(this, "edgePlanes", new P());
24
+ this.topPolygon.name = "TopPolygon", this.bottomPolygon.name = "BottomPolygon", this.edgePlanes.name = "EdgePlanes", this.addIfNotExists(this.bottomPolygon), t && this.setPoints(t), t && this.setStyle(t);
25
+ }
26
+ get color() {
27
+ return this.bottomPolygon.color;
28
+ }
29
+ get lineWidth() {
30
+ return this.bottomPolygon.lineWidth;
31
+ }
32
+ get lineColor() {
33
+ return this.bottomPolygon.lineColor;
34
+ }
35
+ setStyle(t) {
36
+ this.bottomPolygon.setStyle(t), this.topPolygon.setStyle(t), this.edgePlanes.children.forEach((o) => {
37
+ (o instanceof p || o instanceof c) && o.setStyle(t);
38
+ });
39
+ }
40
+ setPoints(t) {
41
+ y(t.points) && this.setBottomPoints(t.points), y(t.heightPoint) && this.setTopHeightPoint(r(t.heightPoint));
42
+ }
43
+ highlight() {
44
+ this.bottomPolygon.highlight(), this.topPolygon.highlight(), this.edgePlanes.children.forEach((t) => {
45
+ typeof t.highlight == "function" && t.highlight();
46
+ });
47
+ }
48
+ unhighlight() {
49
+ this.bottomPolygon.unhighlight(), this.topPolygon.unhighlight(), this.edgePlanes.children.forEach((t) => {
50
+ typeof t.unhighlight == "function" && t.unhighlight();
51
+ });
52
+ }
53
+ setBottomPoints(t) {
54
+ const o = t.map(r);
55
+ this.bottomPolygon.setPoints(o), this.heightPoint && this.setTopHeightPoint(this.heightPoint);
56
+ }
57
+ setTopHeightPoint(t) {
58
+ this.heightPoint = t, this.addIfNotExists(this.topPolygon);
59
+ const o = this.bottomPolygon.projectPoint(t), g = new a.Vector3().subVectors(t, o);
60
+ this.up.copy(g.clone().normalize());
61
+ const l = this.bottomPolygon.points.map((h) => h.clone().add(g));
62
+ this.topPolygon.setPoints(l), this.setEdgePlanes();
63
+ }
64
+ setEdgePlanes() {
65
+ const t = this.bottomPolygon.points, o = this.topPolygon.points;
66
+ this.addIfNotExists(this.edgePlanes), this.edgePlanes.removeChildren(), t.forEach((g, e) => {
67
+ if (e === 0)
68
+ return;
69
+ const l = new c({ color: this.color });
70
+ l.setPoints([t[e - 1], t[e], o[e], o[e - 1]]);
71
+ const h = new p({ lineColor: this.lineColor, lineWidth: this.lineWidth });
72
+ h.name = "EdgeLine", h.setPoints([t[e - 1], o[e - 1]]), this.edgePlanes.add(l, h);
73
+ });
74
+ }
75
+ }
76
+ export {
77
+ W as PrismMesh
78
+ };
@@ -0,0 +1,24 @@
1
+ import { type AnyPositions } from '../../shared-utils/positionToVector3';
2
+ import * as THREE from 'three';
3
+ import PolygonMesh from './Polygon';
4
+ import { RectangleGeometry } from '../utils/three/RectangleGeometry';
5
+ import type { PointsData } from '../utils/data';
6
+ import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
7
+ export type RectangleStyle = ColoredMeshStyle;
8
+ export type RectangleData = PointsData;
9
+ /**
10
+ * @description: 矩形
11
+ */
12
+ export declare class RectangleMesh extends PolygonMesh {
13
+ name: string;
14
+ meshFont: THREE.Mesh<RectangleGeometry, THREE.MeshBasicMaterial>;
15
+ meshBackground: THREE.Mesh<RectangleGeometry, THREE.MeshBasicMaterial>;
16
+ get color(): THREE.Color;
17
+ /**
18
+ * @description: 构造矩形所需的三个点
19
+ */
20
+ get builtPoints(): THREE.Vector3[];
21
+ get sortedPoint(): THREE.Vector3[];
22
+ constructor(params?: Partial<RectangleStyle & RectangleData>);
23
+ setPoints(points: AnyPositions): void;
24
+ }
@@ -0,0 +1,49 @@
1
+ var c = Object.defineProperty;
2
+ var h = (r, e, t) => e in r ? c(r, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[e] = t;
3
+ var i = (r, e, t) => (h(r, typeof e != "symbol" ? e + "" : e, t), t);
4
+ import { anyPositionToVector3 as a } from "../../shared-utils/positionToVector3.js";
5
+ import "hammerjs";
6
+ import * as u from "three";
7
+ import "@realsee/five";
8
+ import "../../vendor/@tweenjs/tween/dist/tween.esm.js.js";
9
+ import "../../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
10
+ import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
11
+ import { notNil as s } from "../../shared-utils/isNil.js";
12
+ import { PolygonMesh as f } from "./Polygon.js";
13
+ import { RectangleGeometry as g } from "../utils/three/RectangleGeometry.js";
14
+ import { getBetterNormal as d } from "../utils/getBetterNormal.js";
15
+ import { Sculpt as v } from "../index.js";
16
+ class T extends f {
17
+ constructor(t) {
18
+ super(t);
19
+ i(this, "name", "RectangleMesh");
20
+ }
21
+ get color() {
22
+ return this.meshFont.material.color;
23
+ }
24
+ /**
25
+ * @description: 构造矩形所需的三个点
26
+ */
27
+ get builtPoints() {
28
+ var t, o;
29
+ return (o = (t = this.meshFont) == null ? void 0 : t.geometry) == null ? void 0 : o.points.slice(0, 3);
30
+ }
31
+ get sortedPoint() {
32
+ return [this.points[0], this.points[2], this.points[1], this.points[3]].filter(s);
33
+ }
34
+ setPoints(t) {
35
+ const o = t.map(a).filter(s);
36
+ if (o.length < 3) {
37
+ console.error("Invalid position");
38
+ return;
39
+ }
40
+ if (t.length === 3) {
41
+ const [n, m, p] = o, l = new u.Vector3().addVectors(n, m).sub(p);
42
+ o.push(l);
43
+ }
44
+ this.up.copy(d(o, v.modules.five.camera.position)), this.points = o, this.geometry = new g(o), this.planeHelperNeedUpdate = !0;
45
+ }
46
+ }
47
+ export {
48
+ T as RectangleMesh
49
+ };
@@ -0,0 +1,20 @@
1
+ import type { AnyPositions } from '../../shared-utils/positionToVector3';
2
+ import { RectangleMesh, type RectangleData, type RectangleStyle } from './Rectangle';
3
+ import { PolylineMesh } from './Polyline';
4
+ import type { LineStyle } from '../utils/color';
5
+ import * as THREE from 'three';
6
+ export type RectangleWithEdgeMeshStyle = RectangleStyle & LineStyle;
7
+ /**
8
+ * @description: 带边线的矩形
9
+ */
10
+ export declare class RectangleWithEdgeMesh extends RectangleMesh {
11
+ name: string;
12
+ get lineWidth(): number;
13
+ get lineColor(): THREE.Color;
14
+ protected line: PolylineMesh;
15
+ constructor(params?: Partial<RectangleWithEdgeMeshStyle & RectangleData>);
16
+ setPoints(points: AnyPositions): void;
17
+ setStyle(style: Partial<RectangleWithEdgeMeshStyle>): void;
18
+ highlight(): void;
19
+ unhighlight(): void;
20
+ }
@@ -0,0 +1,49 @@
1
+ var r = Object.defineProperty;
2
+ var o = Object.getOwnPropertySymbols;
3
+ var u = Object.prototype.hasOwnProperty, c = Object.prototype.propertyIsEnumerable;
4
+ var d = (e, s, t) => s in e ? r(e, s, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[s] = t;
5
+ var g = (e, s) => {
6
+ var t = {};
7
+ for (var i in e)
8
+ u.call(e, i) && s.indexOf(i) < 0 && (t[i] = e[i]);
9
+ if (e != null && o)
10
+ for (var i of o(e))
11
+ s.indexOf(i) < 0 && c.call(e, i) && (t[i] = e[i]);
12
+ return t;
13
+ };
14
+ var h = (e, s, t) => (d(e, typeof s != "symbol" ? s + "" : s, t), t);
15
+ import { RectangleMesh as p } from "./Rectangle.js";
16
+ import { PolylineMesh as f } from "./Polyline.js";
17
+ class S extends p {
18
+ constructor(t) {
19
+ const l = t != null ? t : {}, { points: i } = l, n = g(l, ["points"]);
20
+ super();
21
+ h(this, "name", "RectangleWithEdgeMesh");
22
+ h(this, "line", new f());
23
+ i && this.setPoints(i), n && this.setStyle(n);
24
+ }
25
+ get lineWidth() {
26
+ return this.line.lineWidth;
27
+ }
28
+ get lineColor() {
29
+ return this.line.lineColor;
30
+ }
31
+ setPoints(t) {
32
+ if (super.setPoints(t), this.points) {
33
+ const i = this.points;
34
+ this.line.setPoints([i[0], i[2], i[1], i[3], i[0]]), this.addIfNotExists(this.line);
35
+ }
36
+ }
37
+ setStyle(t) {
38
+ super.setStyle(t), this.line.setStyle(t);
39
+ }
40
+ highlight() {
41
+ super.highlight(), this.line.highlight();
42
+ }
43
+ unhighlight() {
44
+ super.unhighlight(), this.line.unhighlight();
45
+ }
46
+ }
47
+ export {
48
+ S as RectangleWithEdgeMesh
49
+ };
@@ -0,0 +1,13 @@
1
+ type CursorType = 'auto' | 'pen' | 'pen-forbidden' | 'pen-crosshair' | 'pne-polygon' | 'pen-circle' | 'crosshair-rectangle' | 'crosshair-circle';
2
+ export declare class Cursor {
3
+ private container;
4
+ constructor(container: HTMLElement);
5
+ /**
6
+ * @param type - The type of the cursor.
7
+ */
8
+ setType(type: CursorType): void;
9
+ tip(tip: string): () => void;
10
+ closeTip(): void;
11
+ reset(): void;
12
+ }
13
+ export {};
@@ -0,0 +1,37 @@
1
+ var t = Object.defineProperty;
2
+ var c = (s, r, e) => r in s ? t(s, r, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[r] = e;
3
+ var o = (s, r, e) => (c(s, typeof r != "symbol" ? r + "" : r, e), e);
4
+ const n = {
5
+ auto: "",
6
+ pen: "",
7
+ "pen-forbidden": "",
8
+ "pen-crosshair": "",
9
+ "pne-polygon": "",
10
+ "pen-circle": "",
11
+ "crosshair-rectangle": "",
12
+ "crosshair-circle": ""
13
+ };
14
+ class a {
15
+ constructor(r) {
16
+ o(this, "container");
17
+ this.container = r;
18
+ }
19
+ /**
20
+ * @param type - The type of the cursor.
21
+ */
22
+ setType(r) {
23
+ const e = n[r];
24
+ e ? this.container.style.cursor = `url(${e}), auto` : this.container.style.cursor = r;
25
+ }
26
+ tip(r) {
27
+ return () => this.closeTip();
28
+ }
29
+ closeTip() {
30
+ }
31
+ reset() {
32
+ this.container.style.cursor = "auto";
33
+ }
34
+ }
35
+ export {
36
+ a as Cursor
37
+ };
@@ -0,0 +1,20 @@
1
+ import type { Five } from '@realsee/five';
2
+ import { Cursor } from './Cursor';
3
+ import { PointSelector } from '../../shared-utils/three/PointSelector';
4
+ import { FiveDomEvents } from '../../shared-utils/five/FiveDomEvents';
5
+ import { Object3DHelperController } from '../../Object3DHelperPlugin';
6
+ declare class GlobalModules {
7
+ five: Five;
8
+ _cursor: Cursor;
9
+ _pointSelector: PointSelector;
10
+ _fiveDomEvents: FiveDomEvents;
11
+ _object3DHelper: Object3DHelperController;
12
+ inited: boolean;
13
+ get cursor(): Cursor;
14
+ get pointSelector(): PointSelector;
15
+ get fiveDomEvents(): FiveDomEvents;
16
+ get object3DHelper(): Object3DHelperController;
17
+ init: (five: Five) => void;
18
+ }
19
+ declare const globalModules: GlobalModules;
20
+ export { globalModules };
@@ -0,0 +1,45 @@
1
+ var o = Object.defineProperty;
2
+ var n = (i, e, r) => e in i ? o(i, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : i[e] = r;
3
+ var t = (i, e, r) => (n(i, typeof e != "symbol" ? e + "" : e, r), r);
4
+ import { Cursor as s } from "./Cursor.js";
5
+ import { PointSelector as l } from "../../shared-utils/three/PointSelector.js";
6
+ import { FiveDomEvents as h } from "../../shared-utils/five/FiveDomEvents.js";
7
+ import { Object3DHelperController as f } from "../../Object3DHelperPlugin/Controller.js";
8
+ class c {
9
+ constructor() {
10
+ t(this, "five");
11
+ t(this, "_cursor");
12
+ t(this, "_pointSelector");
13
+ t(this, "_fiveDomEvents");
14
+ t(this, "_object3DHelper");
15
+ t(this, "inited", !1);
16
+ t(this, "init", (e) => {
17
+ this.inited = !0, this.five = e;
18
+ });
19
+ }
20
+ get cursor() {
21
+ if (!this.inited)
22
+ throw new Error("Global not inited");
23
+ return this._cursor ? this._cursor : (this._cursor = new s(this.five.getElement()), this._cursor);
24
+ }
25
+ get pointSelector() {
26
+ if (!this.inited)
27
+ throw new Error("Global not inited");
28
+ return this._pointSelector ? this._pointSelector : (this._pointSelector = new l(this.five), this._pointSelector);
29
+ }
30
+ get fiveDomEvents() {
31
+ if (!this.inited)
32
+ throw new Error("Global not inited");
33
+ return this._fiveDomEvents ? this._fiveDomEvents : (this._fiveDomEvents = new h(this.five), this._fiveDomEvents);
34
+ }
35
+ get object3DHelper() {
36
+ if (!this.inited)
37
+ throw new Error("Global not inited");
38
+ return this._object3DHelper ? this._object3DHelper : (this._object3DHelper = new f(this.five), this._object3DHelper);
39
+ }
40
+ }
41
+ const v = new c();
42
+ window.globalModules = v;
43
+ export {
44
+ v as globalModules
45
+ };
@@ -0,0 +1,21 @@
1
+ import type * as THREE from 'three';
2
+ import { IObject3D } from '../../../shared-utils/three/IObject3D';
3
+ import type { AddObject3DHelperConfig } from '../../../Object3DHelperPlugin';
4
+ export declare class BaseEditor<OriginObject extends THREE.Object3D = THREE.Object3D> extends IObject3D {
5
+ protected originObject: OriginObject;
6
+ constructor(originObject: OriginObject);
7
+ /**
8
+ * @description: 开启编辑器
9
+ */
10
+ enable(): void;
11
+ /**
12
+ * @description: 禁用编辑器
13
+ */
14
+ disable(): void;
15
+ }
16
+ export declare class BaseEditorWithObjectHelper<OriginObject extends THREE.Object3D = THREE.Object3D> extends BaseEditor<OriginObject> {
17
+ private objectHelperConfig;
18
+ constructor(originObject: OriginObject, objectHelperConfig?: AddObject3DHelperConfig | (() => AddObject3DHelperConfig));
19
+ enable(): void;
20
+ disable(): void;
21
+ }
@@ -0,0 +1,52 @@
1
+ var l = Object.defineProperty;
2
+ var s = Object.getOwnPropertySymbols;
3
+ var p = Object.prototype.hasOwnProperty, j = Object.prototype.propertyIsEnumerable;
4
+ var i = (o, t, e) => t in o ? l(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e, c = (o, t) => {
5
+ for (var e in t || (t = {}))
6
+ p.call(t, e) && i(o, e, t[e]);
7
+ if (s)
8
+ for (var e of s(t))
9
+ j.call(t, e) && i(o, e, t[e]);
10
+ return o;
11
+ };
12
+ var r = (o, t, e) => (i(o, typeof t != "symbol" ? t + "" : t, e), e);
13
+ import { Sculpt as b } from "../../index.js";
14
+ import { IObject3D as d } from "../../../shared-utils/three/IObject3D.js";
15
+ class g extends d {
16
+ constructor(e) {
17
+ super();
18
+ r(this, "originObject");
19
+ this.originObject = e;
20
+ }
21
+ /**
22
+ * @description: 开启编辑器
23
+ */
24
+ enable() {
25
+ this.originObject.add(this);
26
+ }
27
+ /**
28
+ * @description: 禁用编辑器
29
+ */
30
+ disable() {
31
+ this.originObject.remove(this);
32
+ }
33
+ }
34
+ class H extends g {
35
+ constructor(e, n) {
36
+ super(e);
37
+ r(this, "objectHelperConfig");
38
+ this.objectHelperConfig = n;
39
+ }
40
+ enable() {
41
+ super.enable();
42
+ const e = typeof this.objectHelperConfig == "function" ? this.objectHelperConfig() : this.objectHelperConfig;
43
+ b.modules.object3DHelper.addObject3DHelper(this.originObject, c({ positionFrom: "boundingBox" }, e));
44
+ }
45
+ disable() {
46
+ super.disable(), b.modules.object3DHelper.removeObject3DHelper(this.originObject);
47
+ }
48
+ }
49
+ export {
50
+ g as BaseEditor,
51
+ H as BaseEditorWithObjectHelper
52
+ };
@@ -0,0 +1,60 @@
1
+ import type { FiveDomEventMap } from '../../../shared-utils/five/FiveDomEvents';
2
+ import { IObject3D } from '../../../shared-utils/three/IObject3D';
3
+ import type { BaseEditor } from './Editor';
4
+ import type { RequiredDeep } from 'type-fest';
5
+ import type * as THREE from 'three';
6
+ export interface BaseImportData {
7
+ id?: string;
8
+ type: string;
9
+ }
10
+ export interface BaseExportData extends RequiredDeep<BaseImportData> {
11
+ }
12
+ export interface BaseObjectConfig {
13
+ /**
14
+ * @description: 是否可以编辑
15
+ * @default true
16
+ */
17
+ canEdit: boolean;
18
+ /**
19
+ * @description: 是否以一种半透明的方式显示遮挡的部分
20
+ * @default true
21
+ */
22
+ occlusionVisibility: boolean;
23
+ }
24
+ /**
25
+ * @description: 基础对象
26
+ */
27
+ export declare abstract class BaseObject<ImportData extends BaseImportData = BaseImportData, ExportData extends BaseExportData = any, Config extends BaseObjectConfig = BaseObjectConfig> extends IObject3D {
28
+ name: string;
29
+ readonly isSculptObject = true;
30
+ draggable: boolean;
31
+ /**
32
+ * @description: 是否被选中
33
+ */
34
+ selected: boolean;
35
+ /**
36
+ * @description: 配置
37
+ */
38
+ config: Config;
39
+ protected editor: BaseEditor;
40
+ abstract type: string;
41
+ /**
42
+ * @description: 物体导出数据
43
+ */
44
+ abstract get data(): ExportData;
45
+ protected get baseData(): {
46
+ id: string;
47
+ type: string;
48
+ };
49
+ protected get pointSelector(): import("../../../shared-utils/three/PointSelector").PointSelector;
50
+ constructor(data?: Partial<ImportData>, config?: Partial<Config>);
51
+ on: <T extends keyof FiveDomEventMap>(event: T, callback: FiveDomEventMap[T]) => void;
52
+ off: (event: keyof FiveDomEventMap, callback: (e: import("../../../shared-utils/five/FiveDomEvents").FiveDomEvent) => any, ...args: any[]) => void;
53
+ stopCreating(): void;
54
+ delete(): void;
55
+ highlight(): void;
56
+ unhighlight(): void;
57
+ protected applyObjectMatrixWorld<P extends THREE.Vector3 | THREE.Vector3[]>(point: P): P;
58
+ protected applyObjectQuaternion<P extends THREE.Vector3 | THREE.Vector3[]>(point: P): P;
59
+ abstract create(...args: any): any;
60
+ }
@@ -0,0 +1,77 @@
1
+ var f = Object.defineProperty;
2
+ var u = Object.getOwnPropertySymbols;
3
+ var b = Object.prototype.hasOwnProperty, g = Object.prototype.propertyIsEnumerable;
4
+ var n = (s, t, e) => t in s ? f(s, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[t] = e, d = (s, t) => {
5
+ for (var e in t || (t = {}))
6
+ b.call(t, e) && n(s, e, t[e]);
7
+ if (u)
8
+ for (var e of u(t))
9
+ g.call(t, e) && n(s, e, t[e]);
10
+ return s;
11
+ };
12
+ var r = (s, t, e) => (n(s, typeof t != "symbol" ? t + "" : t, e), e);
13
+ import { hotkeys as p } from "../../../vendor/hotkeys-js/dist/hotkeys.esm.js";
14
+ import { Sculpt as o } from "../../index.js";
15
+ import { IObject3D as m } from "../../../shared-utils/three/IObject3D.js";
16
+ const a = /* @__PURE__ */ new Map();
17
+ class x extends m {
18
+ constructor(e, l) {
19
+ super();
20
+ r(this, "name", "Sculpt");
21
+ r(this, "isSculptObject", !0);
22
+ r(this, "draggable");
23
+ /**
24
+ * @description: 是否被选中
25
+ */
26
+ r(this, "selected");
27
+ /**
28
+ * @description: 配置
29
+ */
30
+ r(this, "config");
31
+ r(this, "editor");
32
+ r(this, "on", (e, l, ...i) => o.modules.fiveDomEvents.addEventListener(this, e, l, ...i));
33
+ r(this, "off", (...e) => o.modules.fiveDomEvents.addEventListener(this, ...e));
34
+ e != null && e.id && (this.uuid = e.id), this.config = d({ canEdit: !0, occlusionVisibility: !0 }, l), e != null && e.style && (e.style.occlusionVisibility = this.config.occlusionVisibility), this.config.canEdit && (p("backspace, delete", () => {
35
+ this.selected && this.delete();
36
+ }), this.on("click", () => {
37
+ var c, h;
38
+ if (this.pointSelector.enabled)
39
+ return;
40
+ let i = a.get(this.parent.uuid);
41
+ i && (i.selected = !1, i.unhighlight(), (c = i.editor) == null || c.disable()), a.set(this.parent.uuid, this), this.selected = !0, this.highlight(), (h = this.editor) == null || h.enable();
42
+ }), p("esc", () => {
43
+ var i;
44
+ this.selected = !1, this.unhighlight(), !this.pointSelector.enabled && ((i = this.editor) == null || i.disable());
45
+ }));
46
+ }
47
+ get baseData() {
48
+ return {
49
+ id: this.uuid,
50
+ type: this.type
51
+ };
52
+ }
53
+ get pointSelector() {
54
+ return o.modules.pointSelector;
55
+ }
56
+ stopCreating() {
57
+ o.modules.pointSelector.disable();
58
+ }
59
+ delete() {
60
+ var e;
61
+ this.removeFromParent(), (e = this.editor) == null || e.disable();
62
+ }
63
+ highlight() {
64
+ }
65
+ unhighlight() {
66
+ }
67
+ applyObjectMatrixWorld(e) {
68
+ return Array.isArray(e) ? e.map((l) => l.clone().applyMatrix4(this.matrixWorld)) : e.clone().applyMatrix4(this.matrixWorld);
69
+ }
70
+ applyObjectQuaternion(e) {
71
+ const l = this.quaternion.clone();
72
+ return Array.isArray(e) ? e.map((i) => i.clone().applyQuaternion(l)) : e.clone().applyQuaternion(l);
73
+ }
74
+ }
75
+ export {
76
+ x as BaseObject
77
+ };
@@ -0,0 +1,5 @@
1
+ import type { Box } from '.';
2
+ import { BaseEditorWithObjectHelper } from '../Base/Editor';
3
+ export declare class BoxEditor extends BaseEditorWithObjectHelper<Box> {
4
+ constructor(originObject: Box);
5
+ }
@@ -0,0 +1,44 @@
1
+ import { BaseEditorWithObjectHelper as a } from "../Base/Editor.js";
2
+ import * as c from "three";
3
+ class m extends a {
4
+ constructor(e) {
5
+ super(e, () => {
6
+ const i = () => {
7
+ var s, t;
8
+ const o = (s = e.boxMesh.topPlane.getGeometryInfo()) == null ? void 0 : s.center, n = (t = e.boxMesh.bottomPlane.getGeometryInfo()) == null ? void 0 : t.center, r = new c.Vector3().lerpVectors(o, n, 0.5);
9
+ return { topCenter: o, bottomCenter: n, boxCenter: r };
10
+ };
11
+ return {
12
+ positionFrom: "boundingBox",
13
+ yAxis: e.boxMesh.bottomPlane.up,
14
+ scaleHelper: {
15
+ enable: !0,
16
+ positions: () => {
17
+ const o = i();
18
+ return [
19
+ {
20
+ id: "top",
21
+ handlePosition: o.topCenter,
22
+ basePosition: o.bottomCenter
23
+ },
24
+ {
25
+ id: "bottom",
26
+ handlePosition: o.bottomCenter,
27
+ basePosition: o.topCenter
28
+ }
29
+ ];
30
+ },
31
+ scaleCallback: (o) => {
32
+ const { intersectPoint: n, scalePosition: r } = o, { id: s } = r, { boxMesh: t } = e;
33
+ s === "top" ? t.setTopHeightPoint(n) : s === "bottom" && t.setPoints({
34
+ points: t.topPlane.points.map((p) => p.clone().add(n.clone().sub(r.basePosition)))
35
+ });
36
+ }
37
+ }
38
+ };
39
+ });
40
+ }
41
+ }
42
+ export {
43
+ m as BoxEditor
44
+ };
@@ -0,0 +1,28 @@
1
+ import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
+ import type { PointSelector } from '../../../shared-utils/three/PointSelector';
3
+ import { BoxMesh, type BoxData, type BoxStyle } from '../../Meshes/Box';
4
+ import type { LiteralString } from '../../typings/utils.type';
5
+ export interface BoxImportData extends BaseImportData, BoxData {
6
+ type: LiteralString<'Box'>;
7
+ style?: Partial<BoxStyle>;
8
+ }
9
+ export declare class Box extends BaseObject<BoxImportData> {
10
+ readonly type = "Box";
11
+ boxMesh: BoxMesh;
12
+ get data(): {
13
+ points: [number, number, number][];
14
+ heightPoint: [number, number, number];
15
+ style: {
16
+ color: number;
17
+ lineWidth: number;
18
+ lineColor: number;
19
+ };
20
+ id: string;
21
+ type: string;
22
+ };
23
+ constructor(data?: BoxImportData, config?: Partial<BaseObjectConfig>);
24
+ highlight(): void;
25
+ unhighlight(): void;
26
+ create(params?: Partial<BoxStyle>): Promise<void>;
27
+ }
28
+ export declare function createBox(boxMesh: BoxMesh, pointSelector: PointSelector): Promise<void>;