@realsee/dnalogel 3.50.18-alpha.0 → 3.52.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 (279) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/dist/Object3DHelperPlugin/Controller.d.ts +9 -9
  3. package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +4 -2
  4. package/dist/PanoMeasurePlugin/Model/area.d.ts +1 -1
  5. package/dist/PanoMeasurePlugin/Model/polygon.d.ts +1 -1
  6. package/dist/PanoMeasurePlugin/typings/data.d.ts +1 -2
  7. package/dist/Sculpt/Editors/BoxMeshEditor.d.ts +5 -0
  8. package/dist/Sculpt/Editors/CircleMeshEditor.d.ts +5 -0
  9. package/dist/Sculpt/Editors/CylinderMeshEditor.d.ts +5 -0
  10. package/dist/Sculpt/Editors/PrismMeshEditor.d.ts +5 -0
  11. package/dist/Sculpt/Editors/RectangleMeshEditor.d.ts +5 -0
  12. package/dist/Sculpt/Meshes/Box.d.ts +6 -24
  13. package/dist/Sculpt/Meshes/Circle.d.ts +0 -4
  14. package/dist/Sculpt/Meshes/Cylinder.d.ts +0 -1
  15. package/dist/Sculpt/Meshes/Line.d.ts +9 -22
  16. package/dist/Sculpt/Meshes/Polygon.d.ts +1 -5
  17. package/dist/Sculpt/Meshes/PolygonWithEdge.d.ts +1 -1
  18. package/dist/Sculpt/Meshes/Prism.d.ts +29 -10
  19. package/dist/Sculpt/Meshes/Rectangle.d.ts +1 -1
  20. package/dist/Sculpt/Objects/Base/index.d.ts +2 -1
  21. package/dist/Sculpt/Objects/Box/index.d.ts +7 -2
  22. package/dist/Sculpt/Objects/Circle/index.d.ts +3 -0
  23. package/dist/Sculpt/Objects/Cylinder/index.d.ts +3 -0
  24. package/dist/Sculpt/Objects/Line/index.d.ts +3 -0
  25. package/dist/Sculpt/Objects/Point/index.d.ts +3 -0
  26. package/dist/Sculpt/Objects/Polygon/index.d.ts +3 -0
  27. package/dist/Sculpt/Objects/Polyline/index.d.ts +3 -0
  28. package/dist/Sculpt/Objects/Prism/index.d.ts +3 -0
  29. package/dist/Sculpt/Objects/Rectangle/index.d.ts +12 -0
  30. package/dist/Sculpt/index.d.ts +11 -10
  31. package/dist/Sculpt/typings/style.d.ts +6 -0
  32. package/dist/Sculpt/utils/export.d.ts +24 -18
  33. package/dist/Sculpt/utils/sortPositionsByCameraPosition.d.ts +5 -0
  34. package/dist/Sculpt/utils/three/ColoredMesh.d.ts +4 -0
  35. package/dist/index.cjs.js +88 -3009
  36. package/dist/index.d.ts +79 -1
  37. package/dist/index.js +35153 -54255
  38. package/dist/index.umd.js +81 -3002
  39. package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +1 -0
  40. package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +7 -3
  41. package/dist/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +0 -1
  42. package/dist/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.d.ts +3 -1
  43. package/dist/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts +2 -0
  44. package/dist/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +2 -1
  45. package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +2 -1
  46. package/dist/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +4 -2
  47. package/dist/shared-utils/Object3DHelper/typings/index.d.ts +1 -1
  48. package/dist/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +4 -1
  49. package/dist/shared-utils/five/FiveLine.d.ts +18 -14
  50. package/dist/shared-utils/index.d.ts +0 -1
  51. package/dist/shared-utils/math/planimetry.d.ts +1 -1
  52. package/dist/shared-utils/tag.d.ts +5 -7
  53. package/dist/shared-utils/three/boundingBox.d.ts +14 -20
  54. package/dist/shared-utils/three/core/LineGeometry.d.ts +13 -0
  55. package/dist/shared-utils/three/core/PrismGeometry.d.ts +14 -0
  56. package/dist/shared-utils/three/geometryUtil.d.ts +8 -0
  57. package/dist/shared-utils/three/getNormal.d.ts +5 -2
  58. package/libs/AreaMakerPlugin/Controller.js +47 -100
  59. package/libs/AreaMakerPlugin/index.js +12 -65
  60. package/libs/AreaMakerPlugin/utils/Item.js +102 -157
  61. package/libs/CSS3DRenderPlugin/Controller.js +45 -93
  62. package/libs/CSS3DRenderPlugin/index.js +15 -63
  63. package/libs/CSS3DRenderPlugin/utils/three/CSS3DObject.js +51 -106
  64. package/libs/CSS3DRenderPlugin/utils/three/CSS3DRender.js +79 -131
  65. package/libs/CruisePlugin/BaseController.js +90 -143
  66. package/libs/CruisePlugin/Move.js +39 -83
  67. package/libs/CruisePlugin/Work.js +52 -96
  68. package/libs/CruisePlugin/index.js +23 -67
  69. package/libs/CurrentPanoImagePlugin/Controller.js +88 -141
  70. package/libs/CurrentPanoImagePlugin/index.js +11 -64
  71. package/libs/GuideLinePlugin/Controller.js +13 -57
  72. package/libs/GuideLinePlugin/GuideLineItem.js +20 -64
  73. package/libs/GuideLinePlugin/GuideLineModeItem/index.js +3 -8
  74. package/libs/GuideLinePlugin/GuideLineModeItem.js +15 -59
  75. package/libs/GuideLinePlugin/index.js +23 -67
  76. package/libs/ModelMakerPlugin/Controller.js +125 -165
  77. package/libs/ModelMakerPlugin/index.js +23 -63
  78. package/libs/ModelMakerPlugin/item/baseItem.js +2 -3
  79. package/libs/ModelMakerPlugin/item/boxItem.js +2 -3
  80. package/libs/ModelMakerPlugin/item/polygonItem.js +6 -7
  81. package/libs/ModelMakerPlugin/item/prismItem.js +2 -3
  82. package/libs/ModelMakerPlugin/utils/getFiveDomEvent.js +2 -3
  83. package/libs/ModelTVVideoPlugin/Plugin.js +49 -97
  84. package/libs/ModelTVVideoPlugin/index.js +8 -56
  85. package/libs/Object3DHelperPlugin/Controller.d.ts +9 -9
  86. package/libs/Object3DHelperPlugin/Controller.js +105 -92
  87. package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +4 -2
  88. package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +35 -30
  89. package/libs/Object3DHelperPlugin/index.js +15 -30
  90. package/libs/PanoCompassPlugin/Controller.js +46 -93
  91. package/libs/PanoCompassPlugin/index.js +17 -64
  92. package/libs/PanoCursorRaycasterPlugin/index.js +4 -3
  93. package/libs/PanoDoorLabelPlugin/BaseController.js +27 -80
  94. package/libs/PanoDoorLabelPlugin/Controller.js +80 -133
  95. package/libs/PanoDoorLabelPlugin/index.js +11 -64
  96. package/libs/PanoMeasurePlugin/Components/Controller0.js +79 -128
  97. package/libs/PanoMeasurePlugin/Components/Controller1.js +92 -141
  98. package/libs/PanoMeasurePlugin/Controller/BaseController.js +3 -2
  99. package/libs/PanoMeasurePlugin/Controller/EditController.js +73 -122
  100. package/libs/PanoMeasurePlugin/Controller/MixedController.js +3 -2
  101. package/libs/PanoMeasurePlugin/Controller/ViewController.js +3 -2
  102. package/libs/PanoMeasurePlugin/Controller/WatchController.js +72 -121
  103. package/libs/PanoMeasurePlugin/Controller/index.js +89 -135
  104. package/libs/PanoMeasurePlugin/Model/area.d.ts +1 -1
  105. package/libs/PanoMeasurePlugin/Model/area.js +25 -74
  106. package/libs/PanoMeasurePlugin/Model/index.js +3 -2
  107. package/libs/PanoMeasurePlugin/Model/line.js +1 -0
  108. package/libs/PanoMeasurePlugin/Model/polygon.d.ts +1 -1
  109. package/libs/PanoMeasurePlugin/Model/polygon.js +7 -7
  110. package/libs/PanoMeasurePlugin/Model/polyline.js +3 -2
  111. package/libs/PanoMeasurePlugin/Modules/Magnifier.js +1 -56
  112. package/libs/PanoMeasurePlugin/Modules/UIController/index.js +17 -66
  113. package/libs/PanoMeasurePlugin/index.js +18 -64
  114. package/libs/PanoMeasurePlugin/typings/data.d.ts +1 -2
  115. package/libs/PanoMeasurePlugin/utils/dom/areaDom.js +5 -59
  116. package/libs/PanoMeasurePlugin/utils/line.js +3 -2
  117. package/libs/PanoRulerProPlugin/Controller.js +34 -89
  118. package/libs/PanoRulerProPlugin/RulerItems.js +92 -147
  119. package/libs/PanoRulerProPlugin/index.js +10 -65
  120. package/libs/PanoSpatialTagPlugin/Plugin.js +130 -178
  121. package/libs/PanoSpatialTagPlugin/index.js +6 -54
  122. package/libs/PanoTagPlugin/Components/Common/TagPoint.js +61 -116
  123. package/libs/PanoTagPlugin/Components/Tag/MarketingTag.js +138 -193
  124. package/libs/PanoTagPlugin/Components/Tag/index.js +140 -194
  125. package/libs/PanoTagPlugin/Components/TagContainer.js +58 -112
  126. package/libs/PanoTagPlugin/Components/TagItem.js +137 -191
  127. package/libs/PanoTagPlugin/controller/Tag/BaseTag.js +109 -164
  128. package/libs/PanoTagPlugin/controller/Tag/ModelTag.js +22 -76
  129. package/libs/PanoTagPlugin/controller/Tag/PlaneTag.js +33 -87
  130. package/libs/PanoTagPlugin/controller/Tag/PointTag.js +39 -94
  131. package/libs/PanoTagPlugin/controller/TagRender.js +18 -62
  132. package/libs/PanoTagPlugin/controller/TagUtil.js +80 -124
  133. package/libs/PanoTagPlugin/controller/index.js +37 -81
  134. package/libs/PanoTagPlugin/index.js +28 -72
  135. package/libs/PanoTagPlugin/utils/model/mediaPlane.js +14 -14
  136. package/libs/PanoTagPlugin/utils/tag/calculateTagConfig.js +22 -77
  137. package/libs/PanoVideoPlugin/Controller.js +43 -96
  138. package/libs/PanoVideoPlugin/VideoMeshController.js +64 -119
  139. package/libs/PanoVideoPlugin/index.js +14 -67
  140. package/libs/PipelinePlugin/Controller.js +123 -176
  141. package/libs/PipelinePlugin/index.js +11 -64
  142. package/libs/PipelinePlugin/utils/Objects/FlowPipe.js +15 -70
  143. package/libs/PipelinePlugin/utils/Objects/HighlightPipe.js +3 -58
  144. package/libs/PipelinePlugin/utils/Objects/Pipe.js +42 -97
  145. package/libs/Sculpt/Editors/BoxMeshEditor.d.ts +5 -0
  146. package/libs/Sculpt/Editors/BoxMeshEditor.js +98 -0
  147. package/libs/Sculpt/Editors/CircleMeshEditor.d.ts +5 -0
  148. package/libs/Sculpt/Editors/CircleMeshEditor.js +9 -0
  149. package/libs/Sculpt/Editors/CylinderMeshEditor.d.ts +5 -0
  150. package/libs/Sculpt/Editors/CylinderMeshEditor.js +41 -0
  151. package/libs/Sculpt/Editors/PrismMeshEditor.d.ts +5 -0
  152. package/libs/Sculpt/Editors/PrismMeshEditor.js +43 -0
  153. package/libs/Sculpt/Editors/RectangleMeshEditor.d.ts +5 -0
  154. package/libs/Sculpt/Editors/RectangleMeshEditor.js +70 -0
  155. package/libs/Sculpt/Meshes/Box.d.ts +6 -24
  156. package/libs/Sculpt/Meshes/Box.js +22 -93
  157. package/libs/Sculpt/Meshes/Circle.d.ts +0 -4
  158. package/libs/Sculpt/Meshes/Circle.js +18 -27
  159. package/libs/Sculpt/Meshes/Cylinder.d.ts +0 -1
  160. package/libs/Sculpt/Meshes/Cylinder.js +17 -24
  161. package/libs/Sculpt/Meshes/Line.d.ts +9 -22
  162. package/libs/Sculpt/Meshes/Line.js +85 -104
  163. package/libs/Sculpt/Meshes/LineWithDots.js +10 -14
  164. package/libs/Sculpt/Meshes/Point.js +29 -34
  165. package/libs/Sculpt/Meshes/Polygon.d.ts +1 -5
  166. package/libs/Sculpt/Meshes/Polygon.js +40 -53
  167. package/libs/Sculpt/Meshes/PolygonWithEdge.d.ts +1 -1
  168. package/libs/Sculpt/Meshes/Prism.d.ts +29 -10
  169. package/libs/Sculpt/Meshes/Prism.js +108 -84
  170. package/libs/Sculpt/Meshes/Rectangle.d.ts +1 -1
  171. package/libs/Sculpt/Meshes/Rectangle.js +7 -10
  172. package/libs/Sculpt/Meshes/RectangleWithEdge.js +17 -20
  173. package/libs/Sculpt/Objects/Base/index.d.ts +2 -1
  174. package/libs/Sculpt/Objects/Base/index.js +16 -17
  175. package/libs/Sculpt/Objects/Box/index.d.ts +7 -2
  176. package/libs/Sculpt/Objects/Box/index.js +72 -60
  177. package/libs/Sculpt/Objects/Circle/index.d.ts +3 -0
  178. package/libs/Sculpt/Objects/Circle/index.js +34 -30
  179. package/libs/Sculpt/Objects/Cylinder/index.d.ts +3 -0
  180. package/libs/Sculpt/Objects/Cylinder/index.js +46 -42
  181. package/libs/Sculpt/Objects/Line/Editor.js +8 -10
  182. package/libs/Sculpt/Objects/Line/index.d.ts +3 -0
  183. package/libs/Sculpt/Objects/Line/index.js +45 -41
  184. package/libs/Sculpt/Objects/Point/index.d.ts +3 -0
  185. package/libs/Sculpt/Objects/Point/index.js +33 -29
  186. package/libs/Sculpt/Objects/Polygon/index.d.ts +3 -0
  187. package/libs/Sculpt/Objects/Polygon/index.js +67 -63
  188. package/libs/Sculpt/Objects/Polyline/index.d.ts +3 -0
  189. package/libs/Sculpt/Objects/Polyline/index.js +46 -42
  190. package/libs/Sculpt/Objects/Prism/index.d.ts +3 -0
  191. package/libs/Sculpt/Objects/Prism/index.js +58 -53
  192. package/libs/Sculpt/Objects/Rectangle/index.d.ts +12 -0
  193. package/libs/Sculpt/Objects/Rectangle/index.js +142 -81
  194. package/libs/Sculpt/index.d.ts +11 -10
  195. package/libs/Sculpt/index.js +105 -107
  196. package/libs/Sculpt/typings/style.d.ts +6 -0
  197. package/libs/Sculpt/utils/export.d.ts +24 -18
  198. package/libs/Sculpt/utils/export.js +52 -19
  199. package/libs/Sculpt/utils/sortPositionsByCameraPosition.d.ts +5 -0
  200. package/libs/Sculpt/utils/sortPositionsByCameraPosition.js +9 -0
  201. package/libs/Sculpt/utils/three/ColoredMesh.d.ts +4 -0
  202. package/libs/Sculpt/utils/three/ColoredMesh.js +40 -37
  203. package/libs/base/BasePlugin.js +10 -15
  204. package/libs/floorplan/MapviewFloorplanPlugin/Controller.js +96 -147
  205. package/libs/floorplan/MapviewFloorplanPlugin/index.js +12 -63
  206. package/libs/floorplan/ModelFloorplanPlugin/Controller.js +53 -105
  207. package/libs/floorplan/ModelFloorplanPlugin/index.js +11 -63
  208. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +65 -118
  209. package/libs/floorplan/PanoFloorplanRadarPlugin/index.js +11 -64
  210. package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +54 -106
  211. package/libs/floorplan/TopviewFloorplanPlugin/index.js +11 -63
  212. package/libs/floorplan/index.js +0 -5
  213. package/libs/index.d.ts +79 -1
  214. package/libs/index.js +229 -215
  215. package/libs/shared-utils/Object3DHelper/Base/BaseController.d.ts +1 -0
  216. package/libs/shared-utils/Object3DHelper/Base/BaseController.js +112 -122
  217. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +7 -3
  218. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +60 -39
  219. package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +47 -47
  220. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +0 -1
  221. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.js +28 -28
  222. package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.d.ts +3 -1
  223. package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.js +25 -18
  224. package/libs/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts +2 -0
  225. package/libs/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.js +18 -14
  226. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.d.ts +2 -1
  227. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +1 -0
  228. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +2 -1
  229. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +2 -1
  230. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +4 -2
  231. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.js +40 -28
  232. package/libs/shared-utils/Object3DHelper/typings/index.d.ts +1 -1
  233. package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.d.ts +4 -1
  234. package/libs/shared-utils/Object3DHelper/utils/calculateScaleByCamera.js +4 -4
  235. package/libs/shared-utils/five/FiveDomEvents.js +88 -88
  236. package/libs/shared-utils/five/FiveLine.d.ts +18 -14
  237. package/libs/shared-utils/five/FiveLine.js +31 -13
  238. package/libs/shared-utils/five/index.js +2 -7
  239. package/libs/shared-utils/five/lookObject.js +27 -32
  240. package/libs/shared-utils/index.d.ts +0 -1
  241. package/libs/shared-utils/index.js +31 -33
  242. package/libs/shared-utils/logger.js +1 -1
  243. package/libs/shared-utils/math/planimetry.d.ts +1 -1
  244. package/libs/shared-utils/tag.d.ts +5 -7
  245. package/libs/shared-utils/tag.js +1 -1
  246. package/libs/shared-utils/three/boundingBox.d.ts +14 -20
  247. package/libs/shared-utils/three/core/LineGeometry.d.ts +13 -0
  248. package/libs/shared-utils/three/core/LineGeometry.js +26 -0
  249. package/libs/shared-utils/three/core/PrismGeometry.d.ts +14 -0
  250. package/libs/shared-utils/three/core/PrismGeometry.js +42 -0
  251. package/libs/shared-utils/three/earcut3D.js +5 -5
  252. package/libs/shared-utils/three/geometryUtil.d.ts +8 -0
  253. package/libs/shared-utils/three/geometryUtil.js +3 -1
  254. package/libs/shared-utils/three/getNormal.d.ts +5 -2
  255. package/libs/shared-utils/three/getNormal.js +6 -5
  256. package/libs/shared-utils/three/index.js +0 -5
  257. package/package.json +1 -1
  258. package/README.md +0 -116
  259. package/dist/Sculpt/Objects/Box/Editor.d.ts +0 -5
  260. package/dist/Sculpt/Objects/Circle/Editor.d.ts +0 -5
  261. package/dist/Sculpt/Objects/Cylinder/Editor.d.ts +0 -5
  262. package/dist/Sculpt/Objects/Prism/Editor.d.ts +0 -5
  263. package/dist/Sculpt/Objects/Rectangle/Editor.d.ts +0 -5
  264. package/dist/Sculpt/utils/getBetterNormal.d.ts +0 -2
  265. package/libs/Sculpt/Objects/Box/Editor.d.ts +0 -5
  266. package/libs/Sculpt/Objects/Box/Editor.js +0 -44
  267. package/libs/Sculpt/Objects/Circle/Editor.d.ts +0 -5
  268. package/libs/Sculpt/Objects/Circle/Editor.js +0 -9
  269. package/libs/Sculpt/Objects/Cylinder/Editor.d.ts +0 -5
  270. package/libs/Sculpt/Objects/Cylinder/Editor.js +0 -41
  271. package/libs/Sculpt/Objects/Prism/Editor.d.ts +0 -5
  272. package/libs/Sculpt/Objects/Prism/Editor.js +0 -44
  273. package/libs/Sculpt/Objects/Rectangle/Editor.d.ts +0 -5
  274. package/libs/Sculpt/Objects/Rectangle/Editor.js +0 -9
  275. package/libs/Sculpt/utils/getBetterNormal.d.ts +0 -2
  276. package/libs/Sculpt/utils/getBetterNormal.js +0 -8
  277. package/libs/vendor/three/build/three.module.js +0 -19336
  278. package/libs/vendor/three/examples/jsm/lines/LineGeometry.js +0 -28
  279. package/libs/vendor/three/examples/jsm/lines/LineSegmentsGeometry.js +0 -69
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # CHANGELOG
2
- ## 3.50.17
2
+ ## 3.52.0
3
+ - fix(ModelMakerPlugin): 修复 hide 后标签没有隐藏的问题(使用 display 代替 visibility)。
4
+ - fix(Object3DHelper): 修复正交相机视角下拉近摄像机时,helper 没有缩放的问题;修复位移操作结束时,helper 没有缩放的问题。
5
+ - feat(Sculpt):
6
+ 1. 优化 boxMesh 的 geometry;
7
+ 2. 长方体绘制支持锁定平面,支持选择绘制方式,api 同 矩形绘制;
8
+ 3. 长方体支持六个面的缩放;
9
+ 4. 矩形支持四边的缩放;
10
+ 5. 优化缩放块的透视视觉效果;
11
+ 6. 撤销快捷键兼容 mac;
12
+ 7. 修复先拖动再缩放时,结果不正确的问题;
13
+
14
+ ## 3.51.0
3
15
  - feat(modelMakerPlugin): 模型标注的标签增加元素间的遮挡检测。
4
16
 
5
17
  ## 3.50.16
@@ -22,15 +22,15 @@ export type AddObject3DHelperConfig = {
22
22
  */
23
23
  offset?: HelperOffset;
24
24
  /**
25
- * @description 辅助坐标轴的y轴方向
25
+ * @description 辅助坐标轴的y轴方向(绿色)
26
26
  */
27
27
  yAxis?: THREE.Vector3;
28
28
  /**
29
- * @description 辅助坐标轴的x轴方向
29
+ * @description 辅助坐标轴的x轴方向(红色)
30
30
  */
31
31
  xAxis?: THREE.Vector3;
32
32
  /**
33
- * @description 辅助坐标轴的z轴方向
33
+ * @description 辅助坐标轴的z轴方向(蓝色)
34
34
  */
35
35
  zAxis?: THREE.Vector3;
36
36
  /**
@@ -38,15 +38,15 @@ export type AddObject3DHelperConfig = {
38
38
  */
39
39
  moveHelper?: HelperConfig<{
40
40
  /**
41
- * @description 是否开启X轴位移功能
41
+ * @description 是否开启X轴位移功能(红色)
42
42
  */
43
43
  xArrowEnable?: boolean;
44
44
  /**
45
- * @description 是否开启Y轴位移功能
45
+ * @description 是否开启Y轴位移功能(绿色)
46
46
  */
47
47
  yArrowEnable?: boolean;
48
48
  /**
49
- * @description 是否开启Z轴位移功能
49
+ * @description 是否开启Z轴位移功能(蓝色)
50
50
  */
51
51
  zArrowEnable?: boolean;
52
52
  }>;
@@ -55,15 +55,15 @@ export type AddObject3DHelperConfig = {
55
55
  */
56
56
  rotateHelper?: HelperConfig<{
57
57
  /**
58
- * @description 是否开启X轴旋转功能
58
+ * @description 是否开启X轴旋转功能(红色)
59
59
  */
60
60
  yzCircleEnable?: boolean;
61
61
  /**
62
- * @description 是否开启Y轴旋转功能
62
+ * @description 是否开启Y轴旋转功能(绿色)
63
63
  */
64
64
  xzCircleEnable?: boolean;
65
65
  /**
66
- * @description 是否开启Z轴旋转功能
66
+ * @description 是否开启Z轴旋转功能(蓝色)
67
67
  */
68
68
  xyCircleEnable?: boolean;
69
69
  /**
@@ -5,12 +5,14 @@ import type { Five } from '@realsee/five';
5
5
  import type { BaseController } from '../shared-utils/Object3DHelper/Base/BaseController';
6
6
  import type * as THREE from 'three';
7
7
  import type { Subscribe } from '../shared-utils/Subscribe';
8
+ import type DomEvents from '../shared-utils/threex/domevents';
8
9
  declare class ControllerWrapper<HelperControllerInterface extends new (...params: ConstructorParameters<typeof BaseController<any>>) => any> {
9
10
  helperController?: InstanceType<HelperControllerInterface>;
10
11
  private five;
11
- constructor(five: Five, HelperController: HelperControllerInterface, object: THREE.Object3D, helperObject3D: InstanceType<HelperControllerInterface>['helperObject3D'], HelperControllerConfig?: ConstructorParameters<HelperControllerInterface>[1], hooks?: Subscribe<any>, internalHooks?: Subscribe<any>);
12
+ private lastCameraState;
13
+ constructor(five: Five, donEvents: DomEvents, HelperController: HelperControllerInterface, object: THREE.Object3D, helperObject3D: InstanceType<HelperControllerInterface>['helperObject3D'], HelperControllerConfig?: ConstructorParameters<HelperControllerInterface>[1], hooks?: Subscribe<any>, internalHooks?: Subscribe<any>);
12
14
  dispose(): void;
13
- private onFiveWantsUpdateCameraDistance;
15
+ private onCameraUpdate;
14
16
  private onFiveWantsTapGesture;
15
17
  private onFiveWantsGesture;
16
18
  private onFiveIntersectionOnModelUpdate;
@@ -1,6 +1,6 @@
1
1
  import * as THREE from 'three';
2
2
  import { Subscribe, type Five, type SubscribeEventMap } from '@realsee/five';
3
- import PolygonMesh from './polygon';
3
+ import { PolygonMesh } from './polygon';
4
4
  import { Polyline } from './polyline';
5
5
  import type { Model } from '.';
6
6
  import { AreaItem } from '../utils/dom/areaDom';
@@ -1,7 +1,7 @@
1
1
  import * as THREE from 'three';
2
2
  import { IObject3D } from '../../shared-utils/three/IObject3D';
3
3
  export declare const blankGeometry: THREE.BufferGeometry;
4
- export default class PolygonMesh extends IObject3D {
4
+ export declare class PolygonMesh extends IObject3D {
5
5
  readonly isPolygonMesh = true;
6
6
  geometry: THREE.BufferGeometry;
7
7
  isBlank: boolean;
@@ -42,8 +42,7 @@ export interface EditParameter {
42
42
  */
43
43
  allowMeasureType?: Array<MeasureType>;
44
44
  /**
45
- * @description: 选点的两种模式, 'fixed' 为固定选点为屏幕中心点,拖动five画布来选点,'mouse' 为跟随鼠标移动
46
- * @default: 'fixed'
45
+ * @description: 选点的两种模式, 'fixed' 为固定选点为屏幕中心点,拖动five画布来选点,'cursor' 为跟随鼠标移动
47
46
  */
48
47
  pointSelectorMode?: PointSelectorMode;
49
48
  autoEndConfig?: autoEndConfig;
@@ -0,0 +1,5 @@
1
+ import type { BoxMesh } from '../Meshes/Box';
2
+ import { BaseEditorWithObjectHelper } from '../Objects/Base/Editor';
3
+ export declare class BoxMeshEditor extends BaseEditorWithObjectHelper<BoxMesh> {
4
+ constructor(boxMesh: BoxMesh);
5
+ }
@@ -0,0 +1,5 @@
1
+ import { BaseEditorWithObjectHelper } from '../Objects/Base/Editor';
2
+ import type { CircleMesh } from '../Meshes/Circle';
3
+ export declare class CircleMeshEditor extends BaseEditorWithObjectHelper<CircleMesh> {
4
+ constructor(circleMesh: CircleMesh);
5
+ }
@@ -0,0 +1,5 @@
1
+ import type { CylinderMesh } from '../Meshes/Cylinder';
2
+ import { BaseEditorWithObjectHelper } from '../Objects/Base/Editor';
3
+ export declare class CylinderMeshEditor extends BaseEditorWithObjectHelper<CylinderMesh> {
4
+ constructor(cylinderMesh: CylinderMesh);
5
+ }
@@ -0,0 +1,5 @@
1
+ import { BaseEditorWithObjectHelper } from '../Objects/Base/Editor';
2
+ import type { PrismMesh } from '../Meshes/Prism';
3
+ export declare class PrismMeshEditor extends BaseEditorWithObjectHelper<PrismMesh> {
4
+ constructor(prismMesh: PrismMesh);
5
+ }
@@ -0,0 +1,5 @@
1
+ import { BaseEditorWithObjectHelper } from '../Objects/Base/Editor';
2
+ import type { RectangleMesh } from '../Meshes/Rectangle';
3
+ export declare class RectangleMeshEditor extends BaseEditorWithObjectHelper<RectangleMesh> {
4
+ constructor(rectangleMesh: RectangleMesh);
5
+ }
@@ -1,11 +1,8 @@
1
- import { IObject3D } from '../../shared-utils/three/IObject3D';
2
- import { type AnyPositions, type AnyPosition } from '../../shared-utils/positionToVector3';
3
- import type * as THREE from 'three';
1
+ import { type AnyPosition } from '../../shared-utils/positionToVector3';
4
2
  import type { LineStyle } from '../typings/style';
5
- import { RectangleWithEdgeMesh } from './RectangleWithEdge';
6
- import { RectangleMesh } from './Rectangle';
7
3
  import type { PointsData } from '../utils/data';
8
4
  import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
5
+ import { PrismMesh } from './Prism';
9
6
  export type BoxStyle = ColoredMeshStyle & LineStyle;
10
7
  export type BoxData = PointsData & {
11
8
  heightPoint: AnyPosition;
@@ -13,24 +10,9 @@ export type BoxData = PointsData & {
13
10
  /**
14
11
  * @description: Box
15
12
  */
16
- export declare class BoxMesh extends IObject3D {
13
+ export declare class BoxMesh extends PrismMesh {
17
14
  name: string;
18
- get planes(): RectangleMesh[];
19
- bottomPlane: RectangleWithEdgeMesh;
20
- topPlane: RectangleWithEdgeMesh;
21
- heightPoint: THREE.Vector3;
22
- protected edgePlanes: RectangleWithEdgeMesh[];
23
- get color(): THREE.Color;
24
- get lineColor(): THREE.Color;
25
- get lineWidth(): number;
26
- get occlusionVisibility(): boolean;
27
- get occlusionMode(): "translucence" | "depthTest";
28
- constructor(params?: Partial<BoxStyle & BoxData>);
29
- setPoints(params: Partial<BoxData>): void;
30
- setBottomPoints(points: AnyPositions): void;
31
- setTopHeightPoint(point: AnyPosition): void;
32
- setEdgePlanes(): void;
33
- setStyle(style: Partial<BoxStyle>): void;
34
- highlight(): void;
35
- unhighlight(): void;
15
+ get geometryInfo(): {
16
+ center: import("three").Vector3;
17
+ };
36
18
  }
@@ -16,11 +16,7 @@ export declare class CircleMesh extends ColoredMesh {
16
16
  get radius(): number;
17
17
  meshFont: THREE.Mesh<THREE.CircleGeometry, THREE.MeshBasicMaterial>;
18
18
  private _normal;
19
- private opacityBeforeHighlight;
20
- private highlighted;
21
19
  constructor(params?: Params);
22
20
  setPoints(params: CircleData): void;
23
- highlight(): void;
24
- unhighlight(): void;
25
21
  }
26
22
  export {};
@@ -19,7 +19,6 @@ export declare class CylinderMesh extends IObject3D {
19
19
  bottomCircle: CircleWithEdgeMesh;
20
20
  topCircle: CircleWithEdgeMesh;
21
21
  protected edgeMesh: ColoredMesh;
22
- private opacityBeforeHighlight;
23
22
  private highlighted;
24
23
  private params;
25
24
  constructor(params?: Params);
@@ -1,34 +1,18 @@
1
1
  import * as THREE from 'three';
2
- import { type Color, type OcclusionStyle, type LineStyle, type lengthConfig, type DisplayInfoConfig } from '../typings/style';
3
- import { LineMaterial, THREE_Line2 } from '../../shared-utils/five/FiveLine';
4
- import { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';
2
+ import { type OcclusionStyle, type LineStyle, type lengthConfig, type DisplayInfoConfig } from '../typings/style';
3
+ import { THREE_Line2 } from '../../shared-utils/five/FiveLine';
5
4
  import { type AnyPositions } from '../../shared-utils/positionToVector3';
6
5
  import { IObject3D } from '../../shared-utils/three/IObject3D';
7
- import type { Merge } from 'type-fest';
8
6
  import type { PointsData } from '../utils/data';
9
7
  import { LightTag } from '../../shared-utils/tag';
8
+ import { LineGeometry } from '../../shared-utils/three/core/LineGeometry';
10
9
  export type LineMeshStyle = LineStyle & {
11
10
  dashed?: boolean;
12
11
  } & OcclusionStyle & Partial<lengthConfig> & Partial<DisplayInfoConfig>;
13
12
  export type LineData = PointsData;
14
- export declare class LineMaterial2 extends LineMaterial {
15
- get three_color(): Color;
16
- set three_color(value: Color);
17
- /**
18
- * @deprecated Use `setDashed` to set
19
- */
20
- dashed: boolean;
21
- private _three_color;
22
- constructor(params?: Merge<ConstructorParameters<typeof LineMaterial>[0], THREE.MeshBasicMaterialParameters>);
23
- setDashed(dashed: boolean): void;
24
- }
25
- export declare class THREE_Line3 extends THREE_Line2 {
26
- name: string;
27
- material: LineMaterial2;
28
- constructor(geometry: LineGeometry, material: LineMaterial2);
29
- }
30
13
  export declare class LineMesh extends IObject3D {
31
14
  name: string;
15
+ type: string;
32
16
  points: THREE.Vector3[];
33
17
  doms: LightTag[];
34
18
  get style(): LineMeshStyle;
@@ -40,8 +24,11 @@ export declare class LineMesh extends IObject3D {
40
24
  get occlusionMode(): "translucence" | "depthTest";
41
25
  protected highlighted: boolean;
42
26
  private get five();
43
- private line;
44
- private backLine;
27
+ set geometry(geometry: LineGeometry);
28
+ get geometry(): LineGeometry;
29
+ private _geometry;
30
+ protected line: THREE_Line2;
31
+ protected backLine: THREE_Line2;
45
32
  private opacityBeforeHighlight;
46
33
  private paramsStyle;
47
34
  private lastRenderDomItem;
@@ -9,7 +9,7 @@ export type PolygonStyle = ColoredMeshStyle & {
9
9
  lengthEnable: boolean;
10
10
  };
11
11
  export type PolygonData = PointsData;
12
- export default class PolygonMesh extends ColoredMesh<THREE.BufferGeometry> {
12
+ export declare class PolygonMesh extends ColoredMesh<THREE.BufferGeometry> {
13
13
  name: string;
14
14
  get style(): {
15
15
  lengthEnable: boolean;
@@ -31,8 +31,6 @@ export default class PolygonMesh extends ColoredMesh<THREE.BufferGeometry> {
31
31
  private get five();
32
32
  private planeHelper;
33
33
  private _geometryInfo;
34
- private opacityBeforeHighlight;
35
- private highlighted;
36
34
  private lastRenderAreaItem;
37
35
  private areaDom?;
38
36
  constructor(params?: Partial<PolygonStyle & PolygonData>);
@@ -43,8 +41,6 @@ export default class PolygonMesh extends ColoredMesh<THREE.BufferGeometry> {
43
41
  * @description: 获取一个点投影在当前平面上的点
44
42
  */
45
43
  projectPoint(point: THREE.Vector3): THREE.Vector3;
46
- highlight(): void;
47
- unhighlight(): void;
48
44
  private updatePlaneHelper;
49
45
  private updateAreaItems;
50
46
  }
@@ -1,7 +1,7 @@
1
1
  import type { AnyPositions } from '../../shared-utils/positionToVector3';
2
2
  import { PolylineMesh } from './Polyline';
3
3
  import type { LineStyle } from '../typings/style';
4
- import PolygonMesh, { type PolygonData, type PolygonStyle } from './Polygon';
4
+ import { PolygonMesh, type PolygonData, type PolygonStyle } from './Polygon';
5
5
  import * as THREE from 'three';
6
6
  export type PolygonWithEdgeMeshStyle = PolygonStyle & LineStyle;
7
7
  /**
@@ -1,10 +1,11 @@
1
1
  import { IObject3D } from '../../shared-utils/three/IObject3D';
2
- import { type AnyPosition, type AnyPositions } from '../../shared-utils/positionToVector3';
2
+ import { type AnyPosition } from '../../shared-utils/positionToVector3';
3
3
  import type { AreaData } from './Area';
4
4
  import * as THREE from 'three';
5
5
  import type { LineStyle } from '../typings/style';
6
6
  import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
7
- import { PolygonWithEdgeMesh } from './PolygonWithEdge';
7
+ import ColoredMesh from '../utils/three/ColoredMesh';
8
+ import { PrismGeometry } from '../../shared-utils/three/core/PrismGeometry';
8
9
  export type PrismStyle = ColoredMeshStyle & LineStyle;
9
10
  export interface PrismData extends AreaData {
10
11
  heightPoint: AnyPosition;
@@ -14,27 +15,45 @@ export interface PrismData extends AreaData {
14
15
  */
15
16
  export declare class PrismMesh extends IObject3D {
16
17
  name: string;
17
- heightPoint: THREE.Vector3;
18
- bottomPolygon: PolygonWithEdgeMesh;
19
- topPolygon: PolygonWithEdgeMesh;
18
+ get topPosition(): THREE.Vector3;
19
+ get bottomPositions(): THREE.Vector3[];
20
+ get topPositions(): THREE.Vector3[];
21
+ get style(): {
22
+ color: THREE.Color;
23
+ lineColor: THREE.Color;
24
+ lineWidth: number;
25
+ opacity: number;
26
+ occlusionVisibility: boolean;
27
+ occlusionMode: "translucence" | "depthTest";
28
+ };
29
+ get opacity(): number;
30
+ get occlusionVisibility(): boolean;
31
+ get occlusionMode(): "translucence" | "depthTest";
20
32
  /**
21
33
  * @deprecated notice: please use specified center instead, such as `localCenter` or `worldCenter`
22
34
  */
23
35
  get center(): THREE.Vector3;
24
36
  get localCenter(): THREE.Vector3;
37
+ get geometryInfo(): {
38
+ center: THREE.Vector3;
39
+ };
25
40
  get worldCenter(): THREE.Vector3;
26
41
  get color(): THREE.Color;
27
42
  get lineWidth(): number;
28
43
  get lineColor(): THREE.Color;
44
+ protected _geometryInfoCache?: {
45
+ center: THREE.Vector3;
46
+ };
47
+ protected geometryInfoNeedUpdate: boolean;
48
+ prismMesh: ColoredMesh & {
49
+ geometry: PrismGeometry;
50
+ };
51
+ private edgeMesh;
29
52
  paramStyle: Partial<PrismStyle>;
30
- private edgePlanes;
31
53
  constructor(params?: Partial<PrismData & PrismStyle>);
32
- setStyle(params: Partial<PrismStyle>): void;
54
+ setStyle(params?: Partial<PrismStyle>): void;
33
55
  setPoints(params: Partial<PrismData>): void;
34
56
  highlight(): void;
35
57
  unhighlight(): void;
36
- setBottomPoints(points: AnyPositions): void;
37
- setTopHeightPoint(heightPoint: THREE.Vector3): void;
38
58
  raycast(raycaster: THREE.Raycaster, intersects: THREE.Intersection[]): boolean;
39
- private setEdgePlanes;
40
59
  }
@@ -1,6 +1,6 @@
1
1
  import { type AnyPositions } from '../../shared-utils/positionToVector3';
2
2
  import * as THREE from 'three';
3
- import PolygonMesh from './Polygon';
3
+ import { PolygonMesh } from './Polygon';
4
4
  import { RectangleGeometry } from '../utils/three/RectangleGeometry';
5
5
  import type { PointsData } from '../utils/data';
6
6
  import type { ColoredMeshStyle } from '../utils/three/ColoredMesh';
@@ -50,7 +50,8 @@ Config extends BaseObjectConfig = BaseObjectConfig> extends IObject3D {
50
50
  * @description 配置
51
51
  */
52
52
  config: Config;
53
- editor: BaseEditor;
53
+ abstract get editor(): BaseEditor;
54
+ abstract _editor?: BaseEditor;
54
55
  get editing(): boolean;
55
56
  abstract type: string;
56
57
  /**
@@ -1,7 +1,9 @@
1
1
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
2
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
3
+ import { BoxMeshEditor } from '../../Editors/BoxMeshEditor';
3
4
  import { BoxMesh, type BoxData, type BoxStyle } from '../../Meshes/Box';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
6
+ import type { CreateLimitConfig, DrawMethodConfig } from '../../typings/style';
5
7
  export interface BoxImportData extends BaseImportData, BoxData {
6
8
  type: LiteralString<'Box'>;
7
9
  style?: Partial<BoxStyle>;
@@ -9,11 +11,14 @@ export interface BoxImportData extends BaseImportData, BoxData {
9
11
  export declare class Box extends BaseObject<BoxImportData> {
10
12
  readonly type = "Box";
11
13
  boxMesh: BoxMesh;
14
+ get editor(): BoxMeshEditor;
15
+ _editor: BoxMeshEditor;
12
16
  get data(): {
13
17
  points: [number, number, number][];
14
18
  heightPoint: [number, number, number];
15
19
  style: {
16
20
  color: number;
21
+ opacity: number;
17
22
  lineWidth: number;
18
23
  lineColor: number;
19
24
  };
@@ -23,6 +28,6 @@ export declare class Box extends BaseObject<BoxImportData> {
23
28
  constructor(data?: BoxImportData, config?: Partial<BaseObjectConfig>);
24
29
  highlight(): void;
25
30
  unhighlight(): void;
26
- create(params?: Partial<BoxStyle>): Promise<void>;
31
+ create(params?: Partial<BoxStyle & CreateLimitConfig & DrawMethodConfig>): Promise<void>;
27
32
  }
28
- export declare function createBox(boxMesh: BoxMesh, pointSelector: PointSelector): Promise<void>;
33
+ export declare function createBox(boxMesh: BoxMesh, pointSelector: PointSelector, config?: Partial<CreateLimitConfig & DrawMethodConfig>): Promise<void>;
@@ -1,5 +1,6 @@
1
1
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
2
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
3
+ import { CircleMeshEditor } from '../../Editors/CircleMeshEditor';
3
4
  import type { CircleData, CircleMesh } from '../../Meshes/Circle';
4
5
  import { CircleWithEdgeMesh, type CircleWithEdgeMeshStyle } from '../../Meshes/CircleWithEdge';
5
6
  import type { LiteralString } from '../../../typings/utils.type';
@@ -10,6 +11,8 @@ export interface CircleImportData extends BaseImportData, CircleData {
10
11
  export declare class Circle extends BaseObject<CircleImportData> {
11
12
  readonly type = "Circle";
12
13
  circleMesh: CircleWithEdgeMesh;
14
+ get editor(): CircleMeshEditor;
15
+ _editor: CircleMeshEditor;
13
16
  get data(): {
14
17
  center: [number, number, number];
15
18
  normal: [number, number, number];
@@ -3,6 +3,7 @@ import type { CircleStyle } from '../../Meshes/Circle';
3
3
  import { CylinderMesh, type CylinderData } from '../../Meshes/Cylinder';
4
4
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
5
5
  import type { LiteralString } from '../../../typings/utils.type';
6
+ import { CylinderMeshEditor } from '../../Editors/CylinderMeshEditor';
6
7
  type CylinderStyle = CircleStyle;
7
8
  export interface CylinderImportData extends BaseImportData, CylinderData {
8
9
  type: LiteralString<'Cylinder'>;
@@ -11,6 +12,8 @@ export interface CylinderImportData extends BaseImportData, CylinderData {
11
12
  export declare class Cylinder extends BaseObject<CylinderImportData> {
12
13
  readonly type = "Cylinder";
13
14
  cylinderMesh: CylinderMesh;
15
+ get editor(): CylinderMeshEditor;
16
+ _editor: CylinderMeshEditor;
14
17
  get data(): {
15
18
  bottomCenter: [number, number, number];
16
19
  topCenter: [number, number, number];
@@ -1,5 +1,6 @@
1
1
  import { LineMesh, type LineData, type LineMeshStyle } from '../../Meshes/Line';
2
2
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
3
+ import { LineEditor } from './Editor';
3
4
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
5
6
  import type { CreateLimitConfig } from '../../typings/style';
@@ -11,6 +12,8 @@ export interface LineImportData extends BaseImportData, LineData {
11
12
  export declare class Line extends BaseObject<LineImportData> {
12
13
  readonly type = "Line";
13
14
  lineMesh: LineWithDotsMesh;
15
+ get editor(): LineEditor;
16
+ _editor: LineEditor;
14
17
  private creatingObject?;
15
18
  get data(): {
16
19
  points: [number, number, number][];
@@ -1,5 +1,6 @@
1
1
  import { PointMesh, type PointData, type PointStyle } from '../../Meshes/Point';
2
2
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
3
+ import { PointEditor } from './Editor';
3
4
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
5
6
  export interface PointImportData extends BaseImportData, PointData {
@@ -9,6 +10,8 @@ export interface PointImportData extends BaseImportData, PointData {
9
10
  export declare class Point extends BaseObject<PointImportData> {
10
11
  readonly type = "Point";
11
12
  pointMesh: PointMesh;
13
+ get editor(): PointEditor;
14
+ _editor: PointEditor;
12
15
  get data(): {
13
16
  point: [number, number, number];
14
17
  style: {
@@ -1,5 +1,6 @@
1
1
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
2
  import { AreaMesh, type AreaStyle } from '../../Meshes/Area';
3
+ import { PolygonEditor } from './Editor';
3
4
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
5
6
  import type { PolygonData, PolygonStyle } from '../../Meshes/Polygon';
@@ -11,6 +12,8 @@ export interface PolygonImportData extends BaseImportData, PolygonData {
11
12
  export declare class Polygon extends BaseObject<PolygonImportData> {
12
13
  readonly type = "Polygon";
13
14
  areaMesh: AreaMesh;
15
+ get editor(): PolygonEditor;
16
+ _editor: PolygonEditor;
14
17
  private creatingObject?;
15
18
  get data(): {
16
19
  points: [number, number, number][];
@@ -1,5 +1,6 @@
1
1
  import { PolylineMesh, PolylineWithDotsMesh, type PolylineData, type PolylineStyle } from '../../Meshes/Polyline';
2
2
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
3
+ import { PolylineEditor } from './Editor';
3
4
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
5
6
  import type { CreateLimitConfig } from '../../typings/style';
@@ -10,6 +11,8 @@ export interface PolylineImportData extends BaseImportData, PolylineData {
10
11
  export declare class Polyline extends BaseObject<PolylineImportData> {
11
12
  readonly type = "Polyline";
12
13
  polyLineMesh: PolylineWithDotsMesh;
14
+ get editor(): PolylineEditor;
15
+ _editor: PolylineEditor;
13
16
  private creatingObject?;
14
17
  get data(): {
15
18
  points: [number, number, number][];
@@ -1,6 +1,7 @@
1
1
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
2
  import { PrismMesh, type PrismData, type PrismStyle } from '../../Meshes/Prism';
3
3
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
4
+ import { PrismMeshEditor } from '../../Editors/PrismMeshEditor';
4
5
  import type { LiteralString } from '../../../typings/utils.type';
5
6
  export interface PrismImportData extends BaseImportData, PrismData {
6
7
  type: LiteralString<'Prism'>;
@@ -9,6 +10,8 @@ export interface PrismImportData extends BaseImportData, PrismData {
9
10
  export declare class Prism extends BaseObject<PrismImportData> {
10
11
  readonly type = "Prism";
11
12
  prismMesh: PrismMesh;
13
+ get editor(): PrismMeshEditor;
14
+ _editor: PrismMeshEditor;
12
15
  get data(): {
13
16
  readonly points: [number, number, number][];
14
17
  readonly heightPoint: [number, number, number];
@@ -1,5 +1,6 @@
1
1
  import { BaseObject, type BaseImportData, type BaseObjectConfig } from '../Base';
2
2
  import type { PointSelector } from '../../../shared-utils/three/PointSelector';
3
+ import { RectangleMeshEditor } from '../../Editors/RectangleMeshEditor';
3
4
  import type { ArrayPosition } from '../../../PanoTagPlugin';
4
5
  import type { RectangleData, RectangleMesh } from '../../Meshes/Rectangle';
5
6
  import { RectangleWithEdgeMesh, type RectangleWithEdgeMeshStyle } from '../../Meshes/RectangleWithEdge';
@@ -12,10 +13,13 @@ export interface RectangleImportData extends BaseImportData, RectangleData {
12
13
  export declare class Rectangle extends BaseObject<RectangleImportData> {
13
14
  readonly type = "Rectangle";
14
15
  rectangleMesh: RectangleWithEdgeMesh;
16
+ get editor(): RectangleMeshEditor;
17
+ _editor: RectangleMeshEditor;
15
18
  get data(): {
16
19
  points: [ArrayPosition, ArrayPosition, ArrayPosition];
17
20
  style: {
18
21
  color: number;
22
+ opacity: number;
19
23
  lineWidth: number;
20
24
  lineColor: number;
21
25
  };
@@ -31,3 +35,11 @@ export declare class Rectangle extends BaseObject<RectangleImportData> {
31
35
  * @description 创建矩形
32
36
  */
33
37
  export declare function createRectangle(rectangleMesh: RectangleMesh, pointSelector: PointSelector, config?: Partial<CreateLimitConfig & DrawMethodConfig>): Promise<void>;
38
+ /**
39
+ * @description 对角线创建矩形(两步)
40
+ */
41
+ export declare function createRectangleByDiagonal(rectangleMesh: RectangleMesh, pointSelector: PointSelector, config?: Partial<CreateLimitConfig>): Promise<void>;
42
+ /**
43
+ * @description 正常创建矩形(三步)
44
+ */
45
+ export declare function createRectangleByVertex(rectangleMesh: RectangleMesh, pointSelector: PointSelector, config?: Partial<CreateLimitConfig>): Promise<void>;