@realsee/dnalogel 3.37.2 → 3.39.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 (420) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/GuideLinePlugin/Controller.d.ts +14 -1
  3. package/dist/GuideLinePlugin/GuideLineModeItem.d.ts +13 -2
  4. package/dist/GuideLinePlugin/typing.d.ts +15 -2
  5. package/dist/GuideLinePlugin/utils/createLineGeometry.d.ts +11 -1
  6. package/dist/ModelMakerPlugin/Controller.d.ts +8 -1
  7. package/dist/ModelMakerPlugin/index.d.ts +1 -0
  8. package/dist/Sculpt/Meshes/Box.d.ts +1 -0
  9. package/dist/Sculpt/Meshes/Line.d.ts +2 -0
  10. package/dist/Sculpt/Meshes/Polyline.d.ts +1 -0
  11. package/dist/Sculpt/Objects/Base/index.d.ts +6 -0
  12. package/dist/Sculpt/utils/color.d.ts +7 -1
  13. package/dist/Sculpt/utils/three/ColoredMesh.d.ts +3 -0
  14. package/dist/index.cjs.js +87 -55
  15. package/dist/index.js +4957 -4826
  16. package/dist/index.umd.js +76 -44
  17. package/docs/assets/search.js +1 -1
  18. package/docs/classes/AreaMakerPluginType.AreaMakerController.html +3 -3
  19. package/docs/classes/AreaMakerPluginType.AreaMakerItem.html +3 -3
  20. package/docs/classes/CSS3DRender.html +3 -3
  21. package/docs/classes/GuideLineItem.GuideLineItem.html +7 -7
  22. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +64 -50
  23. package/docs/classes/ModelMakerPluginInstance.html +26 -16
  24. package/docs/classes/ModelRoomLabelController.html +3 -3
  25. package/docs/classes/MoveController.html +3 -3
  26. package/docs/classes/Object3DHelperController.html +3 -3
  27. package/docs/classes/PaintBrush.html +3 -3
  28. package/docs/classes/PanoMeasurePluginLine.html +3 -3
  29. package/docs/classes/PanoMeasurePluginModel.html +3 -3
  30. package/docs/classes/PanoMeasurePluginPoint.html +3 -3
  31. package/docs/classes/PanoMeasurePluginPolyline.html +3 -3
  32. package/docs/classes/PanoTagPluginController.html +3 -3
  33. package/docs/classes/Sculpt.html +3 -3
  34. package/docs/classes/Util.BetterTween.html +3 -3
  35. package/docs/classes/Util.Interval.html +3 -3
  36. package/docs/classes/Util.LineSegments.html +3 -3
  37. package/docs/classes/Util.Magnifier.html +3 -3
  38. package/docs/classes/Util.Object3D.html +3 -3
  39. package/docs/classes/Util.PointDomHelper.html +3 -3
  40. package/docs/classes/Util.PointHelper.html +3 -3
  41. package/docs/classes/Util.PointSelectorHelper.html +3 -3
  42. package/docs/classes/Util.Rectangle.html +3 -3
  43. package/docs/classes/WalkController.html +3 -3
  44. package/docs/enums/CameraMovementEffect.html +3 -3
  45. package/docs/enums/ContentType.html +3 -3
  46. package/docs/enums/DIRECTION.html +3 -3
  47. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +3 -3
  48. package/docs/enums/DimensionType.html +3 -3
  49. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +3 -3
  50. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +3 -3
  51. package/docs/enums/PaintBrushTypeEnum.html +3 -3
  52. package/docs/enums/PointType.html +3 -3
  53. package/docs/enums/Rotation.html +3 -3
  54. package/docs/functions/AreaMakerPlugin.html +3 -3
  55. package/docs/functions/CSS3DRenderPlugin.html +3 -3
  56. package/docs/functions/CameraMovementPlugin.html +3 -3
  57. package/docs/functions/CruisePlugin.html +3 -3
  58. package/docs/functions/CurrentPanoImagePlugin.html +3 -3
  59. package/docs/functions/GuideLinePlugin.html +3 -3
  60. package/docs/functions/ItemLabelPlugin.html +3 -3
  61. package/docs/functions/MapviewFloorplanPlugin.html +3 -3
  62. package/docs/functions/ModelChassisCompassPlugin.html +3 -3
  63. package/docs/functions/ModelEntryDoorGuidePlugin.html +3 -3
  64. package/docs/functions/ModelFloorplanPlugin.html +3 -3
  65. package/docs/functions/ModelItemLabelPlugin.html +3 -3
  66. package/docs/functions/ModelMakerPlugin.html +4 -4
  67. package/docs/functions/ModelRoomLabelPlugin.html +3 -3
  68. package/docs/functions/ModelTVVideoPlugin.html +3 -3
  69. package/docs/functions/ModelViewPlugin.html +3 -3
  70. package/docs/functions/MovePlugin.html +3 -3
  71. package/docs/functions/Object3DHelperPlugin.html +3 -3
  72. package/docs/functions/PanoCompassPlugin.html +3 -3
  73. package/docs/functions/PanoCursorRaycasterPlugin.html +3 -3
  74. package/docs/functions/PanoDoorLabelPlugin.html +3 -3
  75. package/docs/functions/PanoFloorplanRadarPlugin.html +3 -3
  76. package/docs/functions/PanoMeasurePlugin.html +3 -3
  77. package/docs/functions/PanoRulerPlugin.html +3 -3
  78. package/docs/functions/PanoRulerProPlugin.html +3 -3
  79. package/docs/functions/PanoSpatialTagPlugin.html +3 -3
  80. package/docs/functions/PanoTagPlugin.html +3 -3
  81. package/docs/functions/PanoVideoPlugin.html +3 -3
  82. package/docs/functions/PipelinePlugin.html +3 -3
  83. package/docs/functions/SculptPlugin.html +3 -3
  84. package/docs/functions/TopviewFloorplanPlugin.html +3 -3
  85. package/docs/functions/Util.absoluteUrl.html +3 -3
  86. package/docs/functions/Util.awaitNextFrame.html +3 -3
  87. package/docs/functions/Util.blink.html +3 -3
  88. package/docs/functions/Util.checkFiveModelLoaded.html +3 -3
  89. package/docs/functions/Util.equal.html +3 -3
  90. package/docs/functions/Util.getCoordsFromClient.html +3 -3
  91. package/docs/functions/Util.getCoordsFromElement.html +3 -3
  92. package/docs/functions/Util.getFrameTime.html +3 -3
  93. package/docs/functions/Util.getIntersectFromRelativePosition.html +3 -3
  94. package/docs/functions/Util.getRaycasterFromFivePointer.html +3 -3
  95. package/docs/functions/Util.isAbsoluteURL.html +3 -3
  96. package/docs/functions/Util.isModelLike.html +3 -3
  97. package/docs/functions/Util.isNil.html +3 -3
  98. package/docs/functions/Util.isPanoramaLike.html +3 -3
  99. package/docs/functions/Util.nextFrame.html +3 -3
  100. package/docs/functions/Util.notNil.html +3 -3
  101. package/docs/functions/Util.reblink.html +3 -3
  102. package/docs/functions/Util.requestAnimationFrameInterval.html +3 -3
  103. package/docs/functions/Util.tweenProgress.html +3 -3
  104. package/docs/functions/Util.uuid.html +3 -3
  105. package/docs/functions/pluginFlag.html +3 -3
  106. package/docs/index.html +4 -4
  107. package/docs/interfaces/AddTagConfig.html +3 -3
  108. package/docs/interfaces/AreaMakerPluginType.AnimeOptions.html +3 -3
  109. package/docs/interfaces/AreaMakerPluginType.Config.html +3 -3
  110. package/docs/interfaces/AreaMakerPluginType.EventMap.html +3 -3
  111. package/docs/interfaces/AreaMakerPluginType.Params.html +3 -3
  112. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItem.html +3 -3
  113. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItemV1.html +3 -3
  114. package/docs/interfaces/AreaMakerPluginType.ServerDataV1.html +3 -3
  115. package/docs/interfaces/AreaMakerPluginType.ServerDataV2.html +3 -3
  116. package/docs/interfaces/AreaMakerPluginType.ShowHideOptions.html +3 -3
  117. package/docs/interfaces/AreaMakerPluginType.State.html +3 -3
  118. package/docs/interfaces/CSS3DRenderPluginEventMap.html +3 -3
  119. package/docs/interfaces/CSS3DRenderPluginState.html +3 -3
  120. package/docs/interfaces/CameraMovementPluginExportType.html +3 -3
  121. package/docs/interfaces/ContentTypeMapInterface.html +3 -3
  122. package/docs/interfaces/CruisePluginTypes.Config.html +3 -3
  123. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +3 -3
  124. package/docs/interfaces/CruisePluginTypes.EventMap.html +3 -3
  125. package/docs/interfaces/CruisePluginTypes.GuildLineConfig.html +3 -3
  126. package/docs/interfaces/CruisePluginTypes.MoveAction.html +3 -3
  127. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +3 -3
  128. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +3 -3
  129. package/docs/interfaces/CruisePluginTypes.PluginData.html +3 -3
  130. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +3 -3
  131. package/docs/interfaces/CruisePluginTypes.PluginState.html +3 -3
  132. package/docs/interfaces/CurrentPanoImagePluginType.Config.html +3 -3
  133. package/docs/interfaces/CurrentPanoImagePluginType.EventMap.html +3 -3
  134. package/docs/interfaces/CurrentPanoImagePluginType.Params.html +3 -3
  135. package/docs/interfaces/CurrentPanoImagePluginType.ShowHideOptions.html +3 -3
  136. package/docs/interfaces/CurrentPanoImagePluginType.State.html +3 -3
  137. package/docs/interfaces/EventMap.html +3 -3
  138. package/docs/interfaces/FloorplanBounding.html +3 -3
  139. package/docs/interfaces/FloorplanData.html +3 -3
  140. package/docs/interfaces/FloorplanEntrance.html +3 -3
  141. package/docs/interfaces/FloorplanExtraObject.html +3 -3
  142. package/docs/interfaces/FloorplanExtraObject3D.html +3 -3
  143. package/docs/interfaces/FloorplanFloorData.html +3 -3
  144. package/docs/interfaces/FloorplanImagePosition.html +3 -3
  145. package/docs/interfaces/FloorplanObserver.html +3 -3
  146. package/docs/interfaces/FloorplanOutlineItem.html +3 -3
  147. package/docs/interfaces/FloorplanPosition.html +3 -3
  148. package/docs/interfaces/FloorplanRoomItem.html +3 -3
  149. package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
  150. package/docs/interfaces/FloorplanServerBounding.html +3 -3
  151. package/docs/interfaces/FloorplanServerComputedData.html +3 -3
  152. package/docs/interfaces/FloorplanServerData.html +3 -3
  153. package/docs/interfaces/FloorplanServerDoorItem.html +3 -3
  154. package/docs/interfaces/FloorplanServerDoorPosition.html +3 -3
  155. package/docs/interfaces/FloorplanServerEntrance.html +3 -3
  156. package/docs/interfaces/FloorplanServerFloorData.html +3 -3
  157. package/docs/interfaces/FloorplanServerImagePosition.html +3 -3
  158. package/docs/interfaces/FloorplanServerObserver.html +3 -3
  159. package/docs/interfaces/FloorplanServerOutlineItem.html +3 -3
  160. package/docs/interfaces/FloorplanServerPosition.html +3 -3
  161. package/docs/interfaces/FloorplanServerRoomItem.html +3 -3
  162. package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
  163. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +7 -7
  164. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +16 -9
  165. package/docs/interfaces/GuideLinePluginType.EventMap.html +8 -8
  166. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +7 -7
  167. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +5 -5
  168. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +14 -14
  169. package/docs/interfaces/GuideLinePluginType.GuideLineMeshStyle.html +5 -5
  170. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +7 -7
  171. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +20 -20
  172. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +6 -6
  173. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +55 -26
  174. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +4 -4
  175. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +5 -5
  176. package/docs/interfaces/GuideLinePluginType.PluginState.html +5 -5
  177. package/docs/interfaces/GuideLinePluginType.Route.html +8 -16
  178. package/docs/interfaces/GuideLinePluginType.RouteConfig.html +5 -12
  179. package/docs/interfaces/HelperOffset.html +3 -3
  180. package/docs/interfaces/ImagePlaneGroup.html +3 -3
  181. package/docs/interfaces/ItemLabelPluginData.html +3 -3
  182. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +3 -3
  183. package/docs/interfaces/ItemLabelPluginParametersType.html +3 -3
  184. package/docs/interfaces/MinMax.html +3 -3
  185. package/docs/interfaces/ModelChassisCompassPluginData.html +3 -3
  186. package/docs/interfaces/ModelChassisCompassPluginExportType.html +3 -3
  187. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +3 -3
  188. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +3 -3
  189. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +3 -3
  190. package/docs/interfaces/ModelItemLabelPluginData.html +3 -3
  191. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +3 -3
  192. package/docs/interfaces/ModelItemLabelPluginParametersType.html +3 -3
  193. package/docs/interfaces/ModelMakerPluginType.EventMap.html +3 -3
  194. package/docs/interfaces/ModelMakerPluginType.ServerBaseItem.html +3 -3
  195. package/docs/interfaces/ModelMakerPluginType.ServerBoxItem.html +3 -3
  196. package/docs/interfaces/ModelMakerPluginType.ServerData.html +3 -3
  197. package/docs/interfaces/ModelMakerPluginType.ServerPrismItem.html +3 -3
  198. package/docs/interfaces/ModelMakerPluginType.ServerTrianglesItem.html +3 -3
  199. package/docs/interfaces/ModelMakerPluginType.State.html +3 -3
  200. package/docs/interfaces/ModelRoomLabelPluginData.html +3 -3
  201. package/docs/interfaces/ModelTVVideoPluginData.html +3 -3
  202. package/docs/interfaces/ModelTVVideoPluginExportType.html +3 -3
  203. package/docs/interfaces/ModelTVVideoPluginParameterType.html +3 -3
  204. package/docs/interfaces/ModelViewPluginExportType.html +3 -3
  205. package/docs/interfaces/Object3DHelperState.html +3 -3
  206. package/docs/interfaces/ObjectHelperControllers.html +3 -3
  207. package/docs/interfaces/PaintBrushAction.html +3 -3
  208. package/docs/interfaces/PaintBrushConfigs.html +3 -3
  209. package/docs/interfaces/PaintBrushState.html +3 -3
  210. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +3 -3
  211. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +3 -3
  212. package/docs/interfaces/PanoMeasureParameterType.html +3 -3
  213. package/docs/interfaces/PanoMeasurePluginLineJson.html +3 -3
  214. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +3 -3
  215. package/docs/interfaces/PanoMeasurePluginPointJson.html +3 -3
  216. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +3 -3
  217. package/docs/interfaces/PanoRulerPluginExportType.html +3 -3
  218. package/docs/interfaces/PanoRulerPluginOptions.html +3 -3
  219. package/docs/interfaces/PanoRulerPluginParameterType.html +3 -3
  220. package/docs/interfaces/PanoRulerProPluginExportType.html +3 -3
  221. package/docs/interfaces/PanoRulerProPluginOptions.html +3 -3
  222. package/docs/interfaces/PanoRulerProPluginParameterType.html +3 -3
  223. package/docs/interfaces/PanoRulerProPluginState.html +3 -3
  224. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +3 -3
  225. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +3 -3
  226. package/docs/interfaces/PanoSpatialTagPluginData.html +3 -3
  227. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +3 -3
  228. package/docs/interfaces/PanoSpatialTagPluginExportType.html +3 -3
  229. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +3 -3
  230. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +3 -3
  231. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +3 -3
  232. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +3 -3
  233. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +3 -3
  234. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +3 -3
  235. package/docs/interfaces/PanoVideoPluginType.PluginData.html +3 -3
  236. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +3 -3
  237. package/docs/interfaces/PanoVideoPluginType.PluginState.html +3 -3
  238. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +3 -3
  239. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +3 -3
  240. package/docs/interfaces/Point.html +3 -3
  241. package/docs/interfaces/Room.html +3 -3
  242. package/docs/interfaces/RoomInfo.html +3 -3
  243. package/docs/interfaces/RoomLabel.html +3 -3
  244. package/docs/interfaces/RoomRules.html +3 -3
  245. package/docs/interfaces/Rooms.html +3 -3
  246. package/docs/interfaces/Scissor.html +3 -3
  247. package/docs/interfaces/State.html +3 -3
  248. package/docs/interfaces/TagCacheInterface.html +3 -3
  249. package/docs/interfaces/TagConfig.html +3 -3
  250. package/docs/interfaces/TagGLTFObjectGroup.html +3 -3
  251. package/docs/interfaces/TagIconUrl.html +3 -3
  252. package/docs/interfaces/TagObjectGroup.html +3 -3
  253. package/docs/interfaces/TagStyle.html +3 -3
  254. package/docs/interfaces/Tags.html +3 -3
  255. package/docs/interfaces/TemporaryState.html +3 -3
  256. package/docs/interfaces/Util.BlinkAnimeOptions.html +3 -3
  257. package/docs/interfaces/Util.MagnifierParameter.html +3 -3
  258. package/docs/interfaces/Util.MouseGroupParameter.html +3 -3
  259. package/docs/interfaces/Util.PointIntersection.html +3 -3
  260. package/docs/interfaces/Util.ReBlinkAnimeOptions.html +3 -3
  261. package/docs/modules/AreaMakerPluginType.html +3 -3
  262. package/docs/modules/CruisePluginTypes.html +3 -3
  263. package/docs/modules/CurrentPanoImagePluginType.html +3 -3
  264. package/docs/modules/GuideLineItem.html +3 -3
  265. package/docs/modules/GuideLineModeItem.html +3 -3
  266. package/docs/modules/GuideLinePluginType.html +3 -3
  267. package/docs/modules/ModelMakerPluginType.html +3 -3
  268. package/docs/modules/PanoVideoPluginType.html +3 -3
  269. package/docs/modules/SculptData.html +3 -3
  270. package/docs/modules/Util.html +3 -3
  271. package/docs/modules.html +4 -4
  272. package/docs/types/AddObject3DHelperConfig.html +3 -3
  273. package/docs/types/AreaMakerPluginType.AreaMakerItemEventMap.html +3 -3
  274. package/docs/types/AreaMakerPluginType.ItemRenderer.html +3 -3
  275. package/docs/types/AreaMakerPluginType.PluginData.html +3 -3
  276. package/docs/types/AreaMakerPluginType.ServerData.html +3 -3
  277. package/docs/types/ArrayPosition.html +3 -3
  278. package/docs/types/AudioAppearance.html +3 -3
  279. package/docs/types/CSS3DRenderExportType.html +3 -3
  280. package/docs/types/CSS3DRenderPluginExportType.html +3 -3
  281. package/docs/types/CSS3DRenderPluginParameterType.html +3 -3
  282. package/docs/types/ClassFunctionParameters.html +3 -3
  283. package/docs/types/Color.html +3 -3
  284. package/docs/types/ContentTypeConfigKey.html +3 -3
  285. package/docs/types/ContentTypeConfigKeySplit.html +3 -3
  286. package/docs/types/ContentTypeMap.html +3 -3
  287. package/docs/types/Create3DDomContainerReturnType.html +3 -3
  288. package/docs/types/Create3DElementReturnType.html +3 -3
  289. package/docs/types/CruisePluginExportType.html +3 -3
  290. package/docs/types/CruisePluginTypes.CruiseData.html +3 -3
  291. package/docs/types/CruisePluginTypes.MoveEffect.html +3 -3
  292. package/docs/types/CurrentPanoImagePluginExportType.html +3 -3
  293. package/docs/types/DeprecatedMediaPlaneProperty.html +3 -3
  294. package/docs/types/DeprecatedTagProperty.html +3 -3
  295. package/docs/types/Direction-1.html +3 -3
  296. package/docs/types/Direction4.html +3 -3
  297. package/docs/types/ElementRenderer.html +3 -3
  298. package/docs/types/FloorplanRuleLabels.html +3 -3
  299. package/docs/types/FloorplanServerRuleLabels.html +3 -3
  300. package/docs/types/GuideLinePluginExportType.html +4 -4
  301. package/docs/types/GuideLinePluginType.GuideLineItem.html +4 -4
  302. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +4 -4
  303. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +4 -4
  304. package/docs/types/GuideLinePluginType.GuideLineStyle.html +4 -4
  305. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +4 -4
  306. package/docs/types/GuideLinePluginType.PathItem.html +4 -4
  307. package/docs/types/GuideLinePluginType.PluginData.html +4 -4
  308. package/docs/types/HelperEventMap.html +3 -3
  309. package/docs/types/InternalHelperEventMap.html +3 -3
  310. package/docs/types/LoadTagConfig.html +3 -3
  311. package/docs/types/MapviewFloorplanPluginParameterType.html +3 -3
  312. package/docs/types/MapviewFloorplanPluginReturnType.html +3 -3
  313. package/docs/types/MediaData.html +3 -3
  314. package/docs/types/MediaStore.html +3 -3
  315. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +3 -3
  316. package/docs/types/ModelFloorplanPluginParameterType.html +3 -3
  317. package/docs/types/ModelFloorplanPluginReturnType.html +3 -3
  318. package/docs/types/ModelId.html +3 -3
  319. package/docs/types/ModelMakerPluginType.ElementRenderer.html +3 -3
  320. package/docs/types/ModelMakerPluginType.ItemType.html +3 -3
  321. package/docs/types/ModelRoomLabelPluginParameters.html +3 -3
  322. package/docs/types/ModelRoomLabelPluginReturnType.html +3 -3
  323. package/docs/types/MoveArgs.html +3 -3
  324. package/docs/types/MoveOpts.html +3 -3
  325. package/docs/types/Object3DHelperEventMap.html +3 -3
  326. package/docs/types/ObjectFit.html +3 -3
  327. package/docs/types/PaintBrushEventMap.html +3 -3
  328. package/docs/types/PanoCompassPluginData.html +3 -3
  329. package/docs/types/PanoCompassPluginExportType.html +3 -3
  330. package/docs/types/PanoCompassPluginParameterType.html +3 -3
  331. package/docs/types/PanoFloorplanRadarPluginParameterType.html +3 -3
  332. package/docs/types/PanoFloorplanRadarPluginReturnType.html +3 -3
  333. package/docs/types/PanoIndex.html +3 -3
  334. package/docs/types/PanoMeasurePluginEvent.html +3 -3
  335. package/docs/types/PanoMeasureReturnType.html +3 -3
  336. package/docs/types/PanoSpatialTagPluginId.html +3 -3
  337. package/docs/types/PanoTagPluginExportInterface.html +3 -3
  338. package/docs/types/PanoTagPluginParamsInterface.html +3 -3
  339. package/docs/types/PanoVideoPluginParameterType.html +3 -3
  340. package/docs/types/PanoVideoPluginReturnType.html +3 -3
  341. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +3 -3
  342. package/docs/types/PipelinePluginParameterType.html +3 -3
  343. package/docs/types/PipelinePluginReturnType.html +3 -3
  344. package/docs/types/PlaneTag.html +3 -3
  345. package/docs/types/Point2DTag.html +3 -3
  346. package/docs/types/Point3DTag.html +3 -3
  347. package/docs/types/PointTag.html +3 -3
  348. package/docs/types/PointTagInstance.html +3 -3
  349. package/docs/types/Position.html +3 -3
  350. package/docs/types/PositionFrom.html +3 -3
  351. package/docs/types/RotateArgs.html +3 -3
  352. package/docs/types/RotateOpts.html +3 -3
  353. package/docs/types/RuleLabelsKey.html +3 -3
  354. package/docs/types/RuleLabelsValue.html +3 -3
  355. package/docs/types/ScaleCallback.html +3 -3
  356. package/docs/types/ScalePosition.html +3 -3
  357. package/docs/types/SculptData.BoxData.html +3 -3
  358. package/docs/types/SculptData.CircleData.html +3 -3
  359. package/docs/types/SculptData.CylinderData.html +3 -3
  360. package/docs/types/SculptData.PointData.html +3 -3
  361. package/docs/types/SculptData.PolygonData.html +3 -3
  362. package/docs/types/SculptData.PolylineData.html +3 -3
  363. package/docs/types/SculptData.PrismData.html +3 -3
  364. package/docs/types/SculptData.RectangleData.html +3 -3
  365. package/docs/types/StickType.html +3 -3
  366. package/docs/types/Tag.html +3 -3
  367. package/docs/types/Tag2D.html +3 -3
  368. package/docs/types/Tag3D.html +3 -3
  369. package/docs/types/TagConfigByKey.html +3 -3
  370. package/docs/types/TagContentType.html +3 -3
  371. package/docs/types/TagContentTypeMapping.html +3 -3
  372. package/docs/types/TagDimensionType.html +3 -3
  373. package/docs/types/TagElement.html +3 -3
  374. package/docs/types/TagEvents.html +3 -3
  375. package/docs/types/TagGLTFObject.html +3 -3
  376. package/docs/types/TagHooks.html +3 -3
  377. package/docs/types/TagId.html +3 -3
  378. package/docs/types/TagInstance.html +3 -3
  379. package/docs/types/TagPointType.html +3 -3
  380. package/docs/types/TagRendererMap.html +3 -3
  381. package/docs/types/TopviewFloorplanPluginParameterType.html +3 -3
  382. package/docs/types/TopviewFloorplanPluginReturnType.html +3 -3
  383. package/docs/types/WorkCode.html +3 -3
  384. package/docs/variables/FLOOR_TYPE_MAP.html +3 -3
  385. package/docs/variables/PLUGIN.html +3 -3
  386. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +3 -3
  387. package/docs/variables/ROOM_TYPE_MAP.html +3 -3
  388. package/docs/variables/defaultGlobalConfig.html +3 -3
  389. package/docs/variables/itemLabelPluginServerParams.html +3 -3
  390. package/docs/variables/modelItemLabelPluginServerParams.html +3 -3
  391. package/docs/variables/modelRoomLabelPluginServerParams.html +3 -3
  392. package/libs/CruisePlugin/index.js +1 -1
  393. package/libs/GuideLinePlugin/Controller.d.ts +14 -1
  394. package/libs/GuideLinePlugin/Controller.js +34 -32
  395. package/libs/GuideLinePlugin/GuideLineItem/index.js +57 -56
  396. package/libs/GuideLinePlugin/GuideLineItem.js +1 -1
  397. package/libs/GuideLinePlugin/GuideLineModeItem/index.js +176 -121
  398. package/libs/GuideLinePlugin/GuideLineModeItem.d.ts +13 -2
  399. package/libs/GuideLinePlugin/typing.d.ts +15 -2
  400. package/libs/GuideLinePlugin/utils/createLineGeometry.d.ts +11 -1
  401. package/libs/GuideLinePlugin/utils/createLineGeometry.js +70 -36
  402. package/libs/ModelMakerPlugin/Controller.d.ts +8 -1
  403. package/libs/ModelMakerPlugin/Controller.js +111 -99
  404. package/libs/ModelMakerPlugin/index.d.ts +1 -0
  405. package/libs/Sculpt/Meshes/Box.d.ts +1 -0
  406. package/libs/Sculpt/Meshes/Box.js +22 -17
  407. package/libs/Sculpt/Meshes/Line.d.ts +2 -0
  408. package/libs/Sculpt/Meshes/Line.js +56 -39
  409. package/libs/Sculpt/Meshes/Point.js +31 -31
  410. package/libs/Sculpt/Meshes/Polyline.d.ts +1 -0
  411. package/libs/Sculpt/Meshes/Polyline.js +41 -36
  412. package/libs/Sculpt/Objects/Base/index.d.ts +6 -0
  413. package/libs/Sculpt/Objects/Base/index.js +25 -25
  414. package/libs/Sculpt/utils/color.d.ts +7 -1
  415. package/libs/Sculpt/utils/three/ColoredMesh.d.ts +3 -0
  416. package/libs/Sculpt/utils/three/ColoredMesh.js +44 -25
  417. package/libs/base/BasePlugin.js +1 -1
  418. package/libs/index.js +1 -1
  419. package/libs/shared-utils/logger.js +1 -1
  420. package/package.json +1 -1
@@ -9,6 +9,7 @@ interface LineGeometryOption {
9
9
  /** 每一段的长度,默认是 0.5 */
10
10
  unitLength: number;
11
11
  skipPositions?: THREE.Vector3[] | null;
12
+ useAutoDepthTest?: boolean;
12
13
  }
13
14
  /** 创建路线的几何体
14
15
  * @param curvePoints 三维点位
@@ -18,8 +19,17 @@ interface LineGeometryOption {
18
19
  */
19
20
  export declare function createLineGeometry(options: LineGeometryOption): {
20
21
  geometry: THREE.BufferGeometry;
21
- maxU: number;
22
+ maxV: number;
23
+ curvePath: any;
24
+ curvePoints: any;
25
+ panoMap?: undefined;
26
+ totalLength?: undefined;
27
+ } | {
28
+ geometry: THREE.BufferGeometry;
29
+ maxV: number;
22
30
  curvePath: THREE.CurvePath<THREE.Vector3>;
23
31
  curvePoints: THREE.Vector3[];
32
+ panoMap: Record<number, number>;
33
+ totalLength: number;
24
34
  };
25
35
  export {};
@@ -1,51 +1,85 @@
1
- import * as n from "three";
2
- import { Vector3 as x } from "three";
3
- import { polylineNormals as G } from "../../vendor/polyline-normals/index.js";
1
+ import * as o from "three";
2
+ import { Vector3 as z } from "three";
3
+ import { polylineNormals as Y } from "../../vendor/polyline-normals/index.js";
4
4
  import "../../vendor/polyline-miter-util/index.js";
5
5
  import "../../vendor/gl-vec2/add.js";
6
6
  import "../../vendor/gl-vec2/set.js";
7
7
  import "../../vendor/gl-vec2/normalize.js";
8
8
  import "../../vendor/gl-vec2/subtract.js";
9
9
  import "../../vendor/gl-vec2/dot.js";
10
- const z = 2, M = 3, X = 3, k = 2;
11
- function Q(e) {
12
- const i = e.width, g = e.unitLength / i, c = i / 2, E = e.path;
13
- if (E.length === 0)
14
- return { geometry: new n.BufferGeometry(), maxU: 0, curvePath: null, curvePoints: null };
15
- const u = new n.CurvePath();
16
- E.forEach((t) => {
17
- const l = I(t);
18
- l && u.add(l);
10
+ const Z = 2, $ = 3, j = 3, q = 2;
11
+ function at(n) {
12
+ const _ = n.width, w = n.unitLength, f = _ / 2, x = n.path;
13
+ if (x.length === 0)
14
+ return { geometry: new o.BufferGeometry(), maxV: 0, curvePath: null, curvePoints: null };
15
+ const u = new o.CurvePath();
16
+ x.forEach((t) => {
17
+ const c = J(t);
18
+ c && u.add(c);
19
19
  });
20
- const w = Math.ceil(u.getLength() * 100);
21
- u.arcLengthDivisions = w;
22
- const o = u.getPoints(w), y = o.length, L = G(o.map((t) => [t.x, t.z])), B = (y - 1) * z * M, d = 2 * y, C = d * X, U = d * k, r = new Uint32Array(B), s = new Float32Array(C), a = new Float32Array(U);
23
- let N = 0, P = 0;
24
- for (let t = 0; t < o.length; t++) {
25
- const [l, R] = L[t][0], T = o[t], { x: A, y: _, z: b } = T, v = new x(A + l * c, _ + 0.05, b + R * c);
26
- s[t * 6 + 0] = v.x, s[t * 6 + 1] = v.y, s[t * 6 + 2] = v.z;
27
- const f = new x(A - l * c, _ + 0.05, b - R * c);
28
- s[t * 6 + 3] = f.x, s[t * 6 + 4] = f.y, s[t * 6 + 5] = f.z, N += t > 0 ? o[t - 1].clone().sub(o[t]).length() : 0;
29
- const h = N / i / g;
30
- if (P = h, a[t * 4 + 0] = 0, a[t * 4 + 1] = h, a[t * 4 + 2] = 1, a[t * 4 + 3] = h, e.skipPositions) {
31
- const V = new n.Vector3().lerpVectors(v, f, 0.5);
32
- if (e.skipPositions.some((F) => F.distanceTo(V) < 0.26))
33
- continue;
20
+ const T = Math.ceil(u.getLength() * 100);
21
+ u.arcLengthDivisions = T;
22
+ const s = u.getPoints(T), V = s.length, X = Y(s.map((t) => [t.x, t.z])), O = (V - 1) * Z * $, C = 2 * V, S = C * j, W = C * q, r = new Uint32Array(O), a = new Float32Array(S), d = new Float32Array(W), B = u.getLength();
23
+ let l = 0, D = 0, M = {};
24
+ const v = n.path[0].points.map((t) => new o.Vector3().fromArray(t)), y = n.path[0].panoIndexList ? [...n.path[0].panoIndexList] : void 0, k = (() => {
25
+ const t = [];
26
+ for (let e = 0; e < v.length; e++) {
27
+ const i = v[e];
28
+ if (e === 0)
29
+ t.push(0);
30
+ else {
31
+ const h = v[e - 1];
32
+ t.push(i.distanceTo(h) + t[e - 1]);
33
+ }
34
34
  }
35
- t !== o.length - 1 && (r[t * 6 + 0] = t * 2 + 0, r[t * 6 + 1] = t * 2 + 2, r[t * 6 + 2] = t * 2 + 1, r[t * 6 + 3] = t * 2 + 2, r[t * 6 + 4] = t * 2 + 3, r[t * 6 + 5] = t * 2 + 1);
35
+ const c = t.at(-1), g = [];
36
+ for (let e = 0; e < t.length; e++) {
37
+ const i = t[e], h = e === 0 ? 0 : t[e - 1], P = e === t.length - 1 ? c : t[e + 1], m = i - Math.min(0.3, (i - h) / 2), p = i + Math.min(0.3, (P - i) / 2);
38
+ g.push([B * (m / c), B * (p / c)]);
39
+ }
40
+ return g;
41
+ })();
42
+ let E = [];
43
+ for (let t = 0; t < s.length; t++) {
44
+ const [c, g] = X[t][0], e = s[t], { x: i, y: h, z: P } = e, m = new z(i + c * f, h + 0.05, P + g * f);
45
+ a[t * 6 + 0] = m.x, a[t * 6 + 1] = m.y, a[t * 6 + 2] = m.z;
46
+ const p = new z(i - c * f, h + 0.05, P - g * f);
47
+ a[t * 6 + 3] = p.x, a[t * 6 + 4] = p.y, a[t * 6 + 5] = p.z, l += t > 0 ? s[t - 1].clone().sub(s[t]).length() : 0;
48
+ const L = l / w;
49
+ D = L, d[t * 4 + 0] = 0, d[t * 4 + 1] = L, d[t * 4 + 2] = 1, d[t * 4 + 3] = L;
50
+ const I = new o.Vector3().lerpVectors(m, p, 0.5);
51
+ if (n.skipPositions && n.skipPositions.some((N) => N.distanceTo(I) < 0.26))
52
+ continue;
53
+ const U = v[0];
54
+ if (n.useAutoDepthTest && U && y) {
55
+ const R = y[0], [N, F] = k[0];
56
+ if (l > N && l < F && E.push({
57
+ distance: U.distanceTo(I),
58
+ index: t
59
+ }), l >= F || t === s.length - 1) {
60
+ const H = Math.min(...E.map((b) => b.distance)), G = E.find((b) => b.distance === H);
61
+ if (E = [], v.shift(), y.shift(), k.shift(), G)
62
+ M[R] = G.index;
63
+ else {
64
+ console.error(`can not find the min distance ${R}`);
65
+ continue;
66
+ }
67
+ }
68
+ }
69
+ t !== s.length - 1 && (r[t * 6 + 0] = t * 2 + 0, r[t * 6 + 1] = t * 2 + 2, r[t * 6 + 2] = t * 2 + 1, r[t * 6 + 3] = t * 2 + 2, r[t * 6 + 4] = t * 2 + 3, r[t * 6 + 5] = t * 2 + 1);
36
70
  }
37
- const m = new n.BufferGeometry();
38
- return m.setAttribute("position", new n.BufferAttribute(s, 3)), m.setAttribute("uv", new n.BufferAttribute(a, 2)), m.setIndex(new n.BufferAttribute(r, 1)), { geometry: m, maxU: P, curvePath: u, curvePoints: o };
71
+ const A = new o.BufferGeometry();
72
+ return A.setAttribute("position", new o.BufferAttribute(a, 3)), A.setAttribute("uv", new o.BufferAttribute(d, 2)), A.setIndex(new o.BufferAttribute(r, 1)), { geometry: A, maxV: D, curvePath: u, curvePoints: s, panoMap: M, totalLength: l };
39
73
  }
40
- function I(e) {
41
- if (O(e)) {
42
- const i = [e.closed, e.curve_type, e.tension], p = e.points.map((c) => new n.Vector3().fromArray(c));
43
- return new n.CatmullRomCurve3(p, ...i);
74
+ function J(n) {
75
+ if (K(n)) {
76
+ const _ = [n.closed, n.curve_type, n.tension], w = n.points.map((x) => new o.Vector3().fromArray(x));
77
+ return new o.CatmullRomCurve3(w, ..._);
44
78
  }
45
79
  }
46
- function O(e) {
47
- return e.type === "CatmullRomCurve3";
80
+ function K(n) {
81
+ return n.type === "CatmullRomCurve3";
48
82
  }
49
83
  export {
50
- Q as createLineGeometry
84
+ at as createLineGeometry
51
85
  };
@@ -13,14 +13,21 @@ export declare class Controller extends BasePlugin.Controller<PluginType.State,
13
13
  private zFightingOffset;
14
14
  private tagWrapper;
15
15
  private occlusionVisibility;
16
+ private occlusionMode;
16
17
  constructor(five: Five, config?: {
17
18
  tagContainerZIndex?: number;
18
19
  /**
19
- * @description 是否以一种半透明的方式显示遮挡的部分
20
+ * @description 是否显示遮挡的部分
20
21
  * @params 所有模式下都显示被遮挡的部分, false: 所有模式下不显示被遮挡的部分, ['Mapview', ...]: 指定模式下显示被遮挡的部分
21
22
  * @default false
22
23
  */
23
24
  occlusionVisibility?: boolean | FiveMode[];
25
+ /**
26
+ * @description 当 occlusionVisibility 为true时,以哪种方式显示被遮挡的部分
27
+ * @params 'depthTest': 关闭深度测试, 'translucence': 半透明
28
+ * @default 'translucence'
29
+ */
30
+ occlusionMode?: 'translucence' | 'depthTest';
24
31
  });
25
32
  load(serverData: PluginType.ServerData): Promise<void>;
26
33
  setState(targetState: Partial<PluginType.State>): void;
@@ -1,40 +1,40 @@
1
- var k = Object.defineProperty;
2
- var P = (h, a, e) => a in h ? k(h, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[a] = e;
3
- var n = (h, a, e) => (P(h, typeof a != "symbol" ? a + "" : a, e), e);
4
- var V = (h, a, e) => new Promise((i, r) => {
5
- var t = (s) => {
1
+ var I = Object.defineProperty;
2
+ var D = (l, a, e) => a in l ? I(l, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : l[a] = e;
3
+ var r = (l, a, e) => (D(l, typeof a != "symbol" ? a + "" : a, e), e);
4
+ var j = (l, a, e) => new Promise((t, s) => {
5
+ var p = (h) => {
6
6
  try {
7
- o(e.next(s));
8
- } catch (d) {
9
- r(d);
7
+ i(e.next(h));
8
+ } catch (m) {
9
+ s(m);
10
10
  }
11
- }, l = (s) => {
11
+ }, n = (h) => {
12
12
  try {
13
- o(e.throw(s));
14
- } catch (d) {
15
- r(d);
13
+ i(e.throw(h));
14
+ } catch (m) {
15
+ s(m);
16
16
  }
17
- }, o = (s) => s.done ? i(s.value) : Promise.resolve(s.value).then(t, l);
18
- o((e = e.apply(h, a)).next());
17
+ }, i = (h) => h.done ? t(h.value) : Promise.resolve(h.value).then(p, n);
18
+ i((e = e.apply(l, a)).next());
19
19
  });
20
- import { Controller as F } from "../base/BasePluginWithData.js";
21
- import * as p from "three";
22
- import { ModelMakerBoxItem as A } from "./item/boxItem.js";
23
- import { PrismMesh as C } from "../Sculpt/Meshes/Prism.js";
24
- import { anyPositionToVector3 as I } from "../shared-utils/positionToVector3.js";
25
- import { PolygonWithEdgeMesh as D } from "../Sculpt/Meshes/PolygonWithEdge.js";
20
+ import { Controller as T } from "../base/BasePluginWithData.js";
21
+ import * as c from "three";
22
+ import { ModelMakerBoxItem as H } from "./item/boxItem.js";
23
+ import { PrismMesh as k } from "../Sculpt/Meshes/Prism.js";
24
+ import { anyPositionToVector3 as L } from "../shared-utils/positionToVector3.js";
25
+ import { PolygonWithEdgeMesh as S } from "../Sculpt/Meshes/PolygonWithEdge.js";
26
26
  import "hammerjs";
27
27
  import "../vendor/@tweenjs/tween/dist/tween.esm.js.js";
28
28
  import "../CSS3DRenderPlugin/utils/three/CSS3DRender.js";
29
29
  import "../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
30
- import { waitFiveModelLoaded as T } from "../shared-utils/five/fiveModelLoad.js";
30
+ import { waitFiveModelLoaded as z } from "../shared-utils/five/fiveModelLoad.js";
31
31
  import "animejs";
32
- import { notNil as R } from "../shared-utils/isNil.js";
33
- import { tagRendererMap as H } from "./utils/tagRenderer.js";
34
- import { ModelMakerPrismItem as L } from "./item/prismItem.js";
35
- import { ModelMakerPolygonItem as S } from "./item/polygonItem.js";
36
- import { boxVertex as u } from "../shared-utils/Object3DHelper/utils/boundingBox.js";
37
- import { getFiveDomEvent as z } from "./utils/getFiveDomEvent.js";
32
+ import { notNil as P } from "../shared-utils/isNil.js";
33
+ import { tagRendererMap as O } from "./utils/tagRenderer.js";
34
+ import { ModelMakerPrismItem as B } from "./item/prismItem.js";
35
+ import { ModelMakerPolygonItem as Q } from "./item/polygonItem.js";
36
+ import { boxVertex as g } from "../shared-utils/Object3DHelper/utils/boundingBox.js";
37
+ import { getFiveDomEvent as q } from "./utils/getFiveDomEvent.js";
38
38
  import "../base/BasePlugin.js";
39
39
  import "../shared-utils/Subscribe.js";
40
40
  import "../shared-utils/url/absoluteUrl.js";
@@ -79,119 +79,131 @@ import "../shared-utils/tag.js";
79
79
  import "../shared-utils/five/vector3ToScreen.js";
80
80
  import "../shared-utils/five/FiveDomEvents.js";
81
81
  import "../shared-utils/five/calculateThreeMouse.js";
82
- class Ke extends F {
83
- constructor(e, i) {
84
- var r;
82
+ class Xe extends T {
83
+ constructor(e, t) {
84
+ var s, p;
85
85
  super(e);
86
- n(this, "state");
87
- n(this, "items", []);
88
- n(this, "group", new p.Group());
89
- n(this, "data");
90
- n(this, "tagRendererMap", {});
91
- n(this, "fiveDomEvents");
92
- n(this, "zFightingOffset", 0);
93
- n(this, "tagWrapper");
94
- n(this, "occlusionVisibility");
95
- n(this, "onFiveModeChange", (e) => {
96
- const i = this.occlusionVisibility;
97
- Array.isArray(i) && this.items.forEach((r) => {
98
- r.model.setStyle instanceof Function && r.model.setStyle({ occlusionVisibility: i.includes(e) });
86
+ r(this, "state");
87
+ r(this, "items", []);
88
+ r(this, "group", new c.Group());
89
+ r(this, "data");
90
+ r(this, "tagRendererMap", {});
91
+ r(this, "fiveDomEvents");
92
+ r(this, "zFightingOffset", 0);
93
+ r(this, "tagWrapper");
94
+ r(this, "occlusionVisibility");
95
+ r(this, "occlusionMode");
96
+ r(this, "onFiveModeChange", (e) => {
97
+ const t = this.occlusionVisibility;
98
+ Array.isArray(t) && this.items.forEach((s) => {
99
+ s.model.setStyle instanceof Function && s.model.setStyle({ occlusionVisibility: t.includes(e) });
99
100
  });
100
101
  });
101
- n(this, "handleEnable", () => {
102
- var e, i;
103
- this.five.scene.add(this.group), (i = (e = this.five.getElement()) == null ? void 0 : e.parentElement) == null || i.appendChild(this.tagWrapper), this.five.needsRender = !0, this.onFiveModeChange(this.five.getCurrentState().mode), this.five.on("modeChange", this.onFiveModeChange);
102
+ r(this, "handleEnable", () => {
103
+ var e, t;
104
+ this.five.scene.add(this.group), (t = (e = this.five.getElement()) == null ? void 0 : e.parentElement) == null || t.appendChild(this.tagWrapper), this.five.needsRender = !0, this.onFiveModeChange(this.five.getCurrentState().mode), this.five.on("modeChange", this.onFiveModeChange);
104
105
  });
105
- n(this, "handleDisable", () => {
106
+ r(this, "handleDisable", () => {
106
107
  this.five.scene.remove(this.group), this.tagWrapper.remove(), this.five.needsRender = !0, this.five.off("modeChange", this.onFiveModeChange);
107
108
  });
108
- n(this, "updateTagRenderer", () => {
109
+ r(this, "updateTagRenderer", () => {
109
110
  this.items.forEach((e) => {
110
- var r;
111
- const i = (r = this.tagRendererMap[e.type]) != null ? r : H[e.type];
112
- i && e.__renderer !== i && (e.__renderer = i, typeof e.__disposeRenderer == "function" && e.__disposeRenderer(), e.tag.container.innerHTML = "", e.__disposeRenderer = i(e.tag.container, e));
111
+ var s;
112
+ const t = (s = this.tagRendererMap[e.type]) != null ? s : O[e.type];
113
+ t && e.__renderer !== t && (e.__renderer = t, typeof e.__disposeRenderer == "function" && e.__disposeRenderer(), e.tag.container.innerHTML = "", e.__disposeRenderer = t(e.tag.container, e));
113
114
  });
114
115
  });
115
- this.group.name = "ModelMakerPluginGroup", this.state = { enabled: !0, visible: !0 }, this.occlusionVisibility = (r = i == null ? void 0 : i.occlusionVisibility) != null ? r : !1, this.fiveDomEvents = z(e), this.tagWrapper = (() => {
116
- var l;
117
- const t = document.createElement("div");
118
- return t.style.position = "absolute", t.style.top = "0", t.style.left = "0", t.style.width = "100%", t.style.height = "100%", t.style.pointerEvents = "none", t.style.zIndex = `${(l = i == null ? void 0 : i.tagContainerZIndex) != null ? l : ""}`, t;
116
+ this.group.name = "ModelMakerPluginGroup", this.state = { enabled: !0, visible: !0 }, this.occlusionVisibility = (s = t == null ? void 0 : t.occlusionVisibility) != null ? s : !1, this.occlusionMode = (p = t == null ? void 0 : t.occlusionMode) != null ? p : "translucence", this.fiveDomEvents = q(e), this.tagWrapper = (() => {
117
+ var i;
118
+ const n = document.createElement("div");
119
+ return n.style.position = "absolute", n.style.top = "0", n.style.left = "0", n.style.width = "100%", n.style.height = "100%", n.style.pointerEvents = "none", n.style.zIndex = `${(i = t == null ? void 0 : t.tagContainerZIndex) != null ? i : ""}`, n;
119
120
  })(), e.scene.add(this.group), this.handleEnable(), window.__MODELMAKER_DEBUG__ = this;
120
121
  }
121
122
  load(e) {
122
- return V(this, null, function* () {
123
- var r;
124
- if (this.clear(), this.data = e, yield T(this.five), this.data !== e)
123
+ return j(this, null, function* () {
124
+ var n;
125
+ if (this.clear(), this.data = e, yield z(this.five), this.data !== e)
125
126
  return;
126
127
  this.clear();
127
- const i = typeof this.occlusionVisibility == "boolean" ? this.occlusionVisibility : !1;
128
- (r = e == null ? void 0 : e.list) == null || r.forEach((t) => {
129
- var l;
130
- if (t.type === "triangles") {
131
- const o = new D();
132
- o.setPoints(t.object_data.points), o.setStyle({
133
- color: t.object_data.color,
134
- opacity: t.object_data.opacity,
135
- lineColor: t.object_data.color,
136
- occlusionVisibility: i
128
+ const t = typeof this.occlusionVisibility == "boolean" ? this.occlusionVisibility : !1, s = this.occlusionMode, p = 1.6;
129
+ (n = e == null ? void 0 : e.list) == null || n.forEach((i) => {
130
+ var h, m, w;
131
+ if (i.type === "triangles") {
132
+ const o = new S();
133
+ o.setPoints(i.object_data.points), o.setStyle({
134
+ color: i.object_data.color,
135
+ opacity: ((h = i.object_data.opacity) != null ? h : 0.4) / 2,
136
+ lineColor: i.object_data.color,
137
+ lineWidth: p,
138
+ occlusionVisibility: t,
139
+ occlusionMode: s
137
140
  }), this.fiveDomEvents.addEventListener(o, "hover", () => o.highlight()), this.fiveDomEvents.addEventListener(o, "unHover", () => o.unhighlight());
138
- const s = new S({
141
+ const d = new Q({
139
142
  five: this.five,
140
143
  tagWrapper: this.tagWrapper,
141
144
  model: o,
142
145
  group: this.group,
143
- type: t.type,
144
- rawData: t
146
+ type: i.type,
147
+ rawData: i
145
148
  });
146
- this.items.push(s);
147
- } else if (t.type === "prism") {
148
- const o = new C();
149
+ this.items.push(d);
150
+ } else if (i.type === "prism") {
151
+ const o = new k();
149
152
  this.zFightingOffset += 1e-4;
150
- const s = t.object_data.points.map((c) => {
151
- var b;
152
- return [c[0], c[1] + ((b = t.object_data.fixedY) != null ? b : 0), c[2]];
153
+ const d = i.object_data.points.map((u) => {
154
+ var y;
155
+ return [u[0], u[1] + ((y = i.object_data.fixedY) != null ? y : 0), u[2]];
153
156
  });
154
- s.push(s[0]);
155
- const d = t.object_data.height + ((l = t.object_data.fixedHeight) != null ? l : 0) + this.zFightingOffset, g = I(s[0]).add(new p.Vector3().setY(d));
156
- o.setPoints({ points: s, heightPoint: g }), o.setStyle({
157
- color: t.object_data.color,
158
- opacity: t.object_data.opacity,
159
- lineColor: t.object_data.color,
160
- occlusionVisibility: i
157
+ d.push(d[0]);
158
+ const v = i.object_data.height + ((m = i.object_data.fixedHeight) != null ? m : 0) + this.zFightingOffset, M = L(d[0]).add(new c.Vector3().setY(v));
159
+ o.setPoints({ points: d, heightPoint: M }), o.setStyle({
160
+ color: i.object_data.color,
161
+ opacity: ((w = i.object_data.opacity) != null ? w : 0.4) / 2,
162
+ lineColor: i.object_data.color,
163
+ lineWidth: p,
164
+ occlusionVisibility: t,
165
+ occlusionMode: s
161
166
  });
162
- const f = new L({
167
+ const f = new B({
163
168
  five: this.five,
164
169
  tagWrapper: this.tagWrapper,
165
170
  model: o,
166
171
  group: this.group,
167
- type: t.type,
168
- rawData: t
172
+ type: i.type,
173
+ rawData: i
169
174
  });
170
175
  this.items.push(f);
171
- } else if (t.type === "box") {
172
- const o = new C(), { start: s, end: d, rotation: g = [0, 0, 0, 0], opacity: f, color: c } = t.object_data, b = new p.Vector3().fromArray(s), y = new p.Vector3().fromArray(d), W = new p.Euler().fromArray(g), v = new p.Quaternion().setFromEuler(W), w = v.clone().inverse(), E = new p.Vector3().lerpVectors(b, y, 0.5), M = E.clone().negate(), _ = b.clone().add(M).applyQuaternion(w), x = y.clone().add(M).applyQuaternion(w), m = new p.Box3(_.clone().max(x), _.clone().min(x));
176
+ } else if (i.type === "box") {
177
+ const o = new k(), { start: d, end: v, rotation: M = [0, 0, 0, 0], opacity: f, color: u } = i.object_data, y = new c.Vector3().fromArray(d), E = new c.Vector3().fromArray(v), F = new c.Euler().fromArray(M), _ = new c.Quaternion().setFromEuler(F), x = _.clone().inverse(), V = new c.Vector3().lerpVectors(y, E, 0.5), C = V.clone().negate(), R = y.clone().add(C).applyQuaternion(x), W = E.clone().add(C).applyQuaternion(x), b = new c.Box3(R.clone().max(W), R.clone().min(W));
173
178
  o.setPoints({
174
- points: [u(m, 2), u(m, 3), u(m, 7), u(m, 6), u(m, 2)],
175
- heightPoint: u(m, 0)
176
- }), o.position.copy(E), o.quaternion.copy(v), o.setStyle({ color: c, opacity: f, lineColor: c, occlusionVisibility: i });
177
- const j = new A({
179
+ points: [g(b, 2), g(b, 3), g(b, 7), g(b, 6), g(b, 2)],
180
+ heightPoint: g(b, 0)
181
+ }), o.position.copy(V), o.quaternion.copy(_), o.setStyle({
182
+ color: u,
183
+ opacity: (f != null ? f : 0.4) / 2,
184
+ lineColor: u,
185
+ lineWidth: p,
186
+ occlusionVisibility: t,
187
+ occlusionMode: s
188
+ });
189
+ const A = new H({
178
190
  five: this.five,
179
191
  tagWrapper: this.tagWrapper,
180
192
  model: o,
181
193
  group: this.group,
182
- type: t.type,
183
- rawData: t
194
+ type: i.type,
195
+ rawData: i
184
196
  });
185
- this.items.push(j);
197
+ this.items.push(A);
186
198
  }
187
199
  }), this.five.needsRender = !0, this.state.enabled ? this.handleEnable() : this.handleDisable(), this.state.visible ? this.handleShow() : this.handleHide(), this.updateTagRenderer(), this.hooks.emit("dataLoaded", e);
188
200
  });
189
201
  }
190
202
  setState(e) {
191
- R(e.enabled) && this.state.enabled !== e.enabled && (this.state.enabled = e.enabled, e.enabled ? this.handleEnable() : this.handleDisable(), this.hooks.emit(e.enabled ? "enable" : "disable", { userAction: "我不知道捏" }), this.hooks.emit("stateChange", { state: this.state, userAction: "我不知道捏" })), R(e.visible) && this.state.visible !== e.visible && (this.state.visible = e.visible, e.visible ? this.handleShow() : this.handleHide(), this.hooks.emit(e.visible ? "show" : "hide", { userAction: "我不知道捏" }), this.hooks.emit("stateChange", { state: this.state, userAction: "我不知道捏" }));
203
+ P(e.enabled) && this.state.enabled !== e.enabled && (this.state.enabled = e.enabled, e.enabled ? this.handleEnable() : this.handleDisable(), this.hooks.emit(e.enabled ? "enable" : "disable", { userAction: "我不知道捏" }), this.hooks.emit("stateChange", { state: this.state, userAction: "我不知道捏" })), P(e.visible) && this.state.visible !== e.visible && (this.state.visible = e.visible, e.visible ? this.handleShow() : this.handleHide(), this.hooks.emit(e.visible ? "show" : "hide", { userAction: "我不知道捏" }), this.hooks.emit("stateChange", { state: this.state, userAction: "我不知道捏" }));
192
204
  }
193
205
  getItemById(e) {
194
- return this.items.find((i) => i.rawData.id === e);
206
+ return this.items.find((t) => t.rawData.id === e);
195
207
  }
196
208
  registerTagRenderer(e) {
197
209
  this.tagRendererMap = e, this.updateTagRenderer();
@@ -225,5 +237,5 @@ class Ke extends F {
225
237
  }
226
238
  }
227
239
  export {
228
- Ke as Controller
240
+ Xe as Controller
229
241
  };
@@ -3,6 +3,7 @@ import { Controller } from './Controller';
3
3
  export declare const ModelMakerPlugin: (five: import("@realsee/five").Five, config?: {
4
4
  tagContainerZIndex?: number;
5
5
  occlusionVisibility?: boolean | import("@realsee/five").Mode[];
6
+ occlusionMode?: "translucence" | "depthTest";
6
7
  }) => ModelMakerPluginType.ModelMakerController;
7
8
  export type { Controller as ModelMakerPluginInstance };
8
9
  export type { ModelMakerPluginType };
@@ -24,6 +24,7 @@ export declare class BoxMesh extends IObject3D {
24
24
  get lineColor(): THREE.Color;
25
25
  get lineWidth(): number;
26
26
  get occlusionVisibility(): boolean;
27
+ get occlusionMode(): "translucence" | "depthTest";
27
28
  constructor(params?: Partial<BoxStyle & BoxData>);
28
29
  setPoints(params: Partial<BoxData>): void;
29
30
  setBottomPoints(points: AnyPositions): void;
@@ -1,7 +1,7 @@
1
- var p = Object.defineProperty;
2
- var a = (e, o, t) => o in e ? p(e, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[o] = t;
3
- var n = (e, o, t) => (a(e, typeof o != "symbol" ? o + "" : o, t), t);
4
- import { IObject3D as d } from "../../shared-utils/three/IObject3D.js";
1
+ var d = Object.defineProperty;
2
+ var p = (e, i, t) => i in e ? d(e, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[i] = t;
3
+ var n = (e, i, t) => (p(e, typeof i != "symbol" ? i + "" : i, t), t);
4
+ import { IObject3D as a } from "../../shared-utils/three/IObject3D.js";
5
5
  import { anyPositionToVector3 as c } from "../../shared-utils/positionToVector3.js";
6
6
  import "hammerjs";
7
7
  import "three";
@@ -12,7 +12,7 @@ import "animejs";
12
12
  import { notNil as r } from "../../shared-utils/isNil.js";
13
13
  import { RectangleWithEdgeMesh as P } from "./RectangleWithEdge.js";
14
14
  import { RectangleMesh as m } from "./Rectangle.js";
15
- class T extends d {
15
+ class T extends a {
16
16
  constructor(t) {
17
17
  super();
18
18
  n(this, "name", "BoxMesh");
@@ -41,40 +41,45 @@ class T extends d {
41
41
  var t;
42
42
  return (t = this.bottomPlane) == null ? void 0 : t.occlusionVisibility;
43
43
  }
44
+ get occlusionMode() {
45
+ var t;
46
+ return (t = this.bottomPlane) == null ? void 0 : t.occlusionMode;
47
+ }
44
48
  setPoints(t) {
45
49
  r(t.heightPoint) && this.setTopHeightPoint(t.heightPoint), r(t.points) && this.setBottomPoints(t.points);
46
50
  }
47
51
  setBottomPoints(t) {
48
- const i = t.map(c).filter(r);
49
- if (i.length < 3) {
52
+ const o = t.map(c).filter(r);
53
+ if (o.length < 3) {
50
54
  console.error("Invalid position");
51
55
  return;
52
56
  }
53
- this.bottomPlane.setPoints(i), this.heightPoint && this.setTopHeightPoint(this.heightPoint);
57
+ this.bottomPlane.setPoints(o), this.heightPoint && this.setTopHeightPoint(this.heightPoint);
54
58
  }
55
59
  setTopHeightPoint(t) {
56
60
  if (!this.bottomPlane.points.length)
57
61
  return;
58
- const i = c(t);
59
- this.heightPoint = i, this.addIfNotExists(this.topPlane);
60
- const h = this.bottomPlane.projectPoint(i), s = i.clone().sub(h), l = this.bottomPlane.points.map((g) => g.clone().add(s));
62
+ const o = c(t);
63
+ this.heightPoint = o, this.addIfNotExists(this.topPlane);
64
+ const h = this.bottomPlane.projectPoint(o), s = o.clone().sub(h), l = this.bottomPlane.points.map((g) => g.clone().add(s));
61
65
  this.topPlane.setPoints(l), this.up.copy(s.clone().normalize()), this.setEdgePlanes();
62
66
  }
63
67
  setEdgePlanes() {
64
68
  for (let t = 0; t < 4; t++) {
65
- let i = this.edgePlanes[t];
66
- i || (this.edgePlanes[t] = new P({
69
+ let o = this.edgePlanes[t];
70
+ o || (this.edgePlanes[t] = new P({
67
71
  color: this.color,
68
72
  lineColor: this.lineColor,
69
73
  lineWidth: this.lineWidth,
70
- occlusionVisibility: this.occlusionVisibility
71
- }), i = this.edgePlanes[t]);
74
+ occlusionVisibility: this.occlusionVisibility,
75
+ occlusionMode: this.occlusionMode
76
+ }), o = this.edgePlanes[t]);
72
77
  const h = this.topPlane.sortedPoint, s = this.bottomPlane.sortedPoint, l = t === 3 ? 0 : t + 1;
73
- i.setPoints([h[t], s[l], s[t]]), this.addIfNotExists(i);
78
+ o.setPoints([h[t], s[l], s[t]]), this.addIfNotExists(o);
74
79
  }
75
80
  }
76
81
  setStyle(t) {
77
- this.planes.forEach((i) => i.setStyle(t));
82
+ this.planes.forEach((o) => o.setStyle(t));
78
83
  }
79
84
  highlight() {
80
85
  this.planes.forEach((t) => t.highlight());
@@ -14,10 +14,12 @@ export declare class LineMesh extends IObject3D {
14
14
  get color(): THREE.Color;
15
15
  get dashed(): boolean;
16
16
  get occlusionVisibility(): boolean;
17
+ get occlusionMode(): "translucence" | "depthTest";
17
18
  protected highlighted: boolean;
18
19
  private line;
19
20
  private backLine;
20
21
  private opacityBeforeHighlight;
22
+ private paramsStyle;
21
23
  constructor(params?: Partial<LineMeshStyle & LineData>);
22
24
  setPoints(points: AnyPositions): void;
23
25
  setResolution(width: number, height: number): void;