@realsee/dnalogel 2.28.6 → 2.29.0-dev.1

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 (363) hide show
  1. package/dist/PanoTagPlugin/controller/index.d.ts +7 -0
  2. package/dist/PanoTagPlugin/typings/controller.d.ts +3 -0
  3. package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +7 -4
  4. package/dist/index.cjs.js +48 -48
  5. package/dist/index.js +2683 -2681
  6. package/dist/index.umd.js +49 -49
  7. package/dist/shared-utils/five/FiveDomEvents.d.ts +49 -11
  8. package/dist/shared-utils/three/getObjectVisible.d.ts +5 -0
  9. package/docs/.nojekyll +1 -0
  10. package/docs/assets/highlight.css +120 -0
  11. package/docs/assets/main.js +58 -0
  12. package/docs/assets/search.js +1 -0
  13. package/docs/assets/style.css +1367 -0
  14. package/docs/classes/AreaMakerPluginType.AreaMakerController.html +721 -0
  15. package/docs/classes/AreaMakerPluginType.AreaMakerItem.html +674 -0
  16. package/docs/classes/CSS3DRender.html +769 -0
  17. package/docs/classes/CruisePluginController.html +668 -0
  18. package/docs/classes/GuideLineItem.GuideLineItem.html +487 -0
  19. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +788 -0
  20. package/docs/classes/Magnifier.html +476 -0
  21. package/docs/classes/ModelRoomLabelController.html +394 -0
  22. package/docs/classes/Object3DHelperController.html +636 -0
  23. package/docs/classes/PaintBrush.html +498 -0
  24. package/docs/classes/PanoMeasurePluginLine.html +518 -0
  25. package/docs/classes/PanoMeasurePluginModel.html +567 -0
  26. package/docs/classes/PanoMeasurePluginPoint.html +358 -0
  27. package/docs/classes/PanoMeasurePluginPolyline.html +563 -0
  28. package/docs/classes/PanoTagPluginController.html +1101 -0
  29. package/docs/classes/Util.BetterTween.html +411 -0
  30. package/docs/classes/Util.Interval.html +427 -0
  31. package/docs/classes/Util.LineSegments.html +379 -0
  32. package/docs/classes/Util.Magnifier.html +498 -0
  33. package/docs/classes/Util.Object3D.html +401 -0
  34. package/docs/classes/Util.PointDomHelper.html +402 -0
  35. package/docs/classes/Util.PointHelper.html +393 -0
  36. package/docs/classes/Util.PointSelectorHelper.html +449 -0
  37. package/docs/classes/Util.Rectangle.html +450 -0
  38. package/docs/enums/CameraMovementEffect.html +306 -0
  39. package/docs/enums/ContentType.html +442 -0
  40. package/docs/enums/DIRECTION.html +316 -0
  41. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +316 -0
  42. package/docs/enums/DimensionType.html +306 -0
  43. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +309 -0
  44. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +316 -0
  45. package/docs/enums/PaintBrushTypeEnum.html +309 -0
  46. package/docs/enums/PointType.html +306 -0
  47. package/docs/enums/Rotation.html +313 -0
  48. package/docs/functions/AreaMakerPlugin.html +286 -0
  49. package/docs/functions/CSS3DRenderPlugin.html +284 -0
  50. package/docs/functions/CameraMovementPlugin.html +289 -0
  51. package/docs/functions/CruisePlugin.html +286 -0
  52. package/docs/functions/GuideLinePlugin.html +286 -0
  53. package/docs/functions/ItemLabelPlugin.html +286 -0
  54. package/docs/functions/MapviewFloorplanPlugin.html +286 -0
  55. package/docs/functions/ModelChassisCompassPlugin.html +289 -0
  56. package/docs/functions/ModelEntryDoorGuidePlugin.html +289 -0
  57. package/docs/functions/ModelFloorplanPlugin.html +286 -0
  58. package/docs/functions/ModelItemLabelPlugin.html +286 -0
  59. package/docs/functions/ModelRoomLabelPlugin.html +284 -0
  60. package/docs/functions/ModelTVVideoPlugin.html +286 -0
  61. package/docs/functions/ModelViewPlugin.html +289 -0
  62. package/docs/functions/Object3DHelperPlugin.html +284 -0
  63. package/docs/functions/PanoCompassPlugin.html +286 -0
  64. package/docs/functions/PanoCursorRaycasterPlugin.html +290 -0
  65. package/docs/functions/PanoDoorLabelPlugin.html +286 -0
  66. package/docs/functions/PanoFloorplanRadarPlugin.html +286 -0
  67. package/docs/functions/PanoMeasurePlugin.html +286 -0
  68. package/docs/functions/PanoRulerPlugin.html +289 -0
  69. package/docs/functions/PanoRulerProPlugin.html +289 -0
  70. package/docs/functions/PanoSpatialTagPlugin.html +289 -0
  71. package/docs/functions/PanoTagPlugin.html +291 -0
  72. package/docs/functions/PanoVideoPlugin.html +295 -0
  73. package/docs/functions/PipelinePlugin.html +284 -0
  74. package/docs/functions/TopviewFloorplanPlugin.html +286 -0
  75. package/docs/functions/Util.absoluteUrl.html +321 -0
  76. package/docs/functions/Util.equal.html +333 -0
  77. package/docs/functions/Util.getCoordsFromClient.html +323 -0
  78. package/docs/functions/Util.getCoordsFromElement.html +323 -0
  79. package/docs/functions/Util.getFrameTime.html +315 -0
  80. package/docs/functions/Util.getIntersectFromRelativePosition.html +323 -0
  81. package/docs/functions/Util.getRaycasterFromFivePointer.html +323 -0
  82. package/docs/functions/Util.isAbsoluteURL.html +316 -0
  83. package/docs/functions/Util.isModelLike.html +316 -0
  84. package/docs/functions/Util.isNil.html +324 -0
  85. package/docs/functions/Util.isPanoramaLike.html +316 -0
  86. package/docs/functions/Util.nextFrame.html +329 -0
  87. package/docs/functions/Util.notNil.html +324 -0
  88. package/docs/functions/Util.requestAnimationFrameInterval.html +345 -0
  89. package/docs/functions/Util.tweenProgress.html +318 -0
  90. package/docs/functions/Util.uuid.html +314 -0
  91. package/docs/functions/pluginFlag.html +284 -0
  92. package/docs/index.html +350 -0
  93. package/docs/interfaces/AddTagConfig.html +299 -0
  94. package/docs/interfaces/AreaMakerPluginType.AnimeOptions.html +325 -0
  95. package/docs/interfaces/AreaMakerPluginType.Config.html +330 -0
  96. package/docs/interfaces/AreaMakerPluginType.EventMap.html +616 -0
  97. package/docs/interfaces/AreaMakerPluginType.Params.html +329 -0
  98. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItem.html +379 -0
  99. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItemV1.html +364 -0
  100. package/docs/interfaces/AreaMakerPluginType.ServerDataV1.html +329 -0
  101. package/docs/interfaces/AreaMakerPluginType.ServerDataV2.html +322 -0
  102. package/docs/interfaces/AreaMakerPluginType.ShowHideOptions.html +321 -0
  103. package/docs/interfaces/AreaMakerPluginType.State.html +350 -0
  104. package/docs/interfaces/CSS3DRenderPluginEventMap.html +445 -0
  105. package/docs/interfaces/CSS3DRenderPluginState.html +321 -0
  106. package/docs/interfaces/CameraMovementPluginExportType.html +354 -0
  107. package/docs/interfaces/CruisePluginTypes.Config.html +355 -0
  108. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +357 -0
  109. package/docs/interfaces/CruisePluginTypes.EventMap.html +692 -0
  110. package/docs/interfaces/CruisePluginTypes.MoveAction.html +381 -0
  111. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +417 -0
  112. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +407 -0
  113. package/docs/interfaces/CruisePluginTypes.PluginData.html +347 -0
  114. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +315 -0
  115. package/docs/interfaces/CruisePluginTypes.PluginState.html +404 -0
  116. package/docs/interfaces/EventMap.html +538 -0
  117. package/docs/interfaces/FloorplanBounding.html +328 -0
  118. package/docs/interfaces/FloorplanData.html +331 -0
  119. package/docs/interfaces/FloorplanEntrance.html +356 -0
  120. package/docs/interfaces/FloorplanExtraObject.html +346 -0
  121. package/docs/interfaces/FloorplanExtraObject3D.html +335 -0
  122. package/docs/interfaces/FloorplanFloorData.html +324 -0
  123. package/docs/interfaces/FloorplanImagePosition.html +310 -0
  124. package/docs/interfaces/FloorplanObserver.html +328 -0
  125. package/docs/interfaces/FloorplanOutlineItem.html +324 -0
  126. package/docs/interfaces/FloorplanPosition.html +310 -0
  127. package/docs/interfaces/FloorplanRoomItem.html +375 -0
  128. package/docs/interfaces/FloorplanRoomLabelItem.html +316 -0
  129. package/docs/interfaces/FloorplanServerBounding.html +328 -0
  130. package/docs/interfaces/FloorplanServerComputedData.html +327 -0
  131. package/docs/interfaces/FloorplanServerData.html +310 -0
  132. package/docs/interfaces/FloorplanServerDoorItem.html +327 -0
  133. package/docs/interfaces/FloorplanServerDoorPosition.html +313 -0
  134. package/docs/interfaces/FloorplanServerEntrance.html +356 -0
  135. package/docs/interfaces/FloorplanServerFloorData.html +324 -0
  136. package/docs/interfaces/FloorplanServerImagePosition.html +310 -0
  137. package/docs/interfaces/FloorplanServerObserver.html +328 -0
  138. package/docs/interfaces/FloorplanServerOutlineItem.html +324 -0
  139. package/docs/interfaces/FloorplanServerPosition.html +310 -0
  140. package/docs/interfaces/FloorplanServerRoomItem.html +387 -0
  141. package/docs/interfaces/FloorplanServerRoomLabelItem.html +316 -0
  142. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +319 -0
  143. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +357 -0
  144. package/docs/interfaces/GuideLinePluginType.EventMap.html +521 -0
  145. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +352 -0
  146. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +343 -0
  147. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +410 -0
  148. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +342 -0
  149. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +467 -0
  150. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +339 -0
  151. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +467 -0
  152. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +304 -0
  153. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +325 -0
  154. package/docs/interfaces/GuideLinePluginType.PluginState.html +350 -0
  155. package/docs/interfaces/GuideLinePluginType.Route.html +366 -0
  156. package/docs/interfaces/GuideLinePluginType.RouteConfig.html +348 -0
  157. package/docs/interfaces/HelperOffset.html +328 -0
  158. package/docs/interfaces/ImagePlaneGroup.html +302 -0
  159. package/docs/interfaces/ItemLabelPluginData.html +299 -0
  160. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +384 -0
  161. package/docs/interfaces/ItemLabelPluginParametersType.html +320 -0
  162. package/docs/interfaces/MinMax.html +306 -0
  163. package/docs/interfaces/ModelChassisCompassPluginData.html +306 -0
  164. package/docs/interfaces/ModelChassisCompassPluginExportType.html +342 -0
  165. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +306 -0
  166. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +313 -0
  167. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +350 -0
  168. package/docs/interfaces/ModelItemLabelPluginData.html +299 -0
  169. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +384 -0
  170. package/docs/interfaces/ModelItemLabelPluginParametersType.html +306 -0
  171. package/docs/interfaces/ModelRoomLabelPluginData.html +299 -0
  172. package/docs/interfaces/ModelTVVideoPluginData.html +320 -0
  173. package/docs/interfaces/ModelTVVideoPluginExportType.html +344 -0
  174. package/docs/interfaces/ModelTVVideoPluginParameterType.html +299 -0
  175. package/docs/interfaces/ModelViewPluginExportType.html +412 -0
  176. package/docs/interfaces/Object3DHelperState.html +313 -0
  177. package/docs/interfaces/ObjectHelperControllers.html +320 -0
  178. package/docs/interfaces/PaintBrushAction.html +359 -0
  179. package/docs/interfaces/PaintBrushConfigs.html +357 -0
  180. package/docs/interfaces/PaintBrushState.html +341 -0
  181. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +421 -0
  182. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +278 -0
  183. package/docs/interfaces/PanoMeasureParameterType.html +445 -0
  184. package/docs/interfaces/PanoMeasurePluginLineJson.html +313 -0
  185. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +310 -0
  186. package/docs/interfaces/PanoMeasurePluginPointJson.html +306 -0
  187. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +316 -0
  188. package/docs/interfaces/PanoRulerPluginExportType.html +373 -0
  189. package/docs/interfaces/PanoRulerPluginOptions.html +322 -0
  190. package/docs/interfaces/PanoRulerPluginParameterType.html +313 -0
  191. package/docs/interfaces/PanoRulerProPluginExportType.html +349 -0
  192. package/docs/interfaces/PanoRulerProPluginOptions.html +319 -0
  193. package/docs/interfaces/PanoRulerProPluginParameterType.html +306 -0
  194. package/docs/interfaces/PanoRulerProPluginState.html +313 -0
  195. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +292 -0
  196. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +281 -0
  197. package/docs/interfaces/PanoSpatialTagPluginData.html +349 -0
  198. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +331 -0
  199. package/docs/interfaces/PanoSpatialTagPluginExportType.html +427 -0
  200. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +327 -0
  201. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +348 -0
  202. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +334 -0
  203. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +327 -0
  204. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +319 -0
  205. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +337 -0
  206. package/docs/interfaces/PanoVideoPluginType.PluginData.html +310 -0
  207. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +416 -0
  208. package/docs/interfaces/PanoVideoPluginType.PluginState.html +310 -0
  209. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +345 -0
  210. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +364 -0
  211. package/docs/interfaces/Point.html +313 -0
  212. package/docs/interfaces/Room.html +320 -0
  213. package/docs/interfaces/RoomInfo.html +306 -0
  214. package/docs/interfaces/RoomLabel.html +382 -0
  215. package/docs/interfaces/RoomRules.html +281 -0
  216. package/docs/interfaces/Rooms.html +281 -0
  217. package/docs/interfaces/Scissor.html +340 -0
  218. package/docs/interfaces/State.html +327 -0
  219. package/docs/interfaces/TagCacheInterface.html +358 -0
  220. package/docs/interfaces/TagConfig.html +544 -0
  221. package/docs/interfaces/TagGLTFObjectGroup.html +302 -0
  222. package/docs/interfaces/TagIconUrl.html +359 -0
  223. package/docs/interfaces/TagObjectGroup.html +302 -0
  224. package/docs/interfaces/TagStyle.html +312 -0
  225. package/docs/interfaces/Tags.html +542 -0
  226. package/docs/interfaces/TemporaryState.html +299 -0
  227. package/docs/interfaces/Util.MagnifierParameter.html +386 -0
  228. package/docs/interfaces/Util.MouseGroupParameter.html +345 -0
  229. package/docs/interfaces/Util.PointIntersection.html +360 -0
  230. package/docs/modules/AreaMakerPluginType.html +319 -0
  231. package/docs/modules/CruisePluginTypes.html +324 -0
  232. package/docs/modules/GuideLineItem.html +285 -0
  233. package/docs/modules/GuideLineModeItem.html +290 -0
  234. package/docs/modules/GuideLinePluginType.html +344 -0
  235. package/docs/modules/PanoVideoPluginType.html +297 -0
  236. package/docs/modules/Util.html +345 -0
  237. package/docs/modules.html +532 -0
  238. package/docs/types/AreaMakerPluginType.AreaMakerItemEventMap.html +327 -0
  239. package/docs/types/AreaMakerPluginType.PluginData.html +297 -0
  240. package/docs/types/AreaMakerPluginType.ServerData.html +297 -0
  241. package/docs/types/ArrayPosition.html +275 -0
  242. package/docs/types/AudioAppearance.html +275 -0
  243. package/docs/types/AudioTagTypeConfigKey.html +275 -0
  244. package/docs/types/CSS3DRenderExportType.html +275 -0
  245. package/docs/types/CSS3DRenderPluginExportType.html +275 -0
  246. package/docs/types/CSS3DRenderPluginParameterType.html +275 -0
  247. package/docs/types/ClassFunctionParameters.html +282 -0
  248. package/docs/types/Color.html +275 -0
  249. package/docs/types/ContentTypeConfigKey.html +275 -0
  250. package/docs/types/ContentTypeConfigKeySplit.html +275 -0
  251. package/docs/types/ContentTypeMap.html +275 -0
  252. package/docs/types/Create3DDomContainerReturnType.html +275 -0
  253. package/docs/types/Create3DElementReturnType.html +275 -0
  254. package/docs/types/CruisePluginExportType.html +275 -0
  255. package/docs/types/CruisePluginTypes.CruiseData.html +314 -0
  256. package/docs/types/CruisePluginTypes.MoveEffect.html +291 -0
  257. package/docs/types/DeprecatedMediaPlaneProperty.html +287 -0
  258. package/docs/types/DeprecatedTagProperty.html +290 -0
  259. package/docs/types/Direction-1.html +275 -0
  260. package/docs/types/Direction4.html +275 -0
  261. package/docs/types/ElementRenderer.html +299 -0
  262. package/docs/types/FloorplanRuleLabels.html +278 -0
  263. package/docs/types/FloorplanServerRuleLabels.html +275 -0
  264. package/docs/types/GuideLinePluginExportType.html +275 -0
  265. package/docs/types/GuideLinePluginType.GuideLineItem.html +347 -0
  266. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +368 -0
  267. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +301 -0
  268. package/docs/types/GuideLinePluginType.GuideLineStyle.html +304 -0
  269. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +304 -0
  270. package/docs/types/GuideLinePluginType.PathItem.html +304 -0
  271. package/docs/types/GuideLinePluginType.PluginData.html +313 -0
  272. package/docs/types/HelperEventMap.html +513 -0
  273. package/docs/types/LoadTagConfig.html +275 -0
  274. package/docs/types/MapviewFloorplanPluginParameterType.html +275 -0
  275. package/docs/types/MapviewFloorplanPluginReturnType.html +275 -0
  276. package/docs/types/MediaData.html +291 -0
  277. package/docs/types/MediaStore.html +280 -0
  278. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +282 -0
  279. package/docs/types/ModelFloorplanPluginParameterType.html +275 -0
  280. package/docs/types/ModelFloorplanPluginReturnType.html +275 -0
  281. package/docs/types/ModelRoomLabelPluginParameters.html +275 -0
  282. package/docs/types/ModelRoomLabelPluginReturnType.html +275 -0
  283. package/docs/types/MoveArgs.html +285 -0
  284. package/docs/types/MoveOpts.html +283 -0
  285. package/docs/types/Object3DHelperEventMap.html +368 -0
  286. package/docs/types/ObjectFit.html +275 -0
  287. package/docs/types/PaintBrushEventMap.html +306 -0
  288. package/docs/types/PanoCompassPluginData.html +275 -0
  289. package/docs/types/PanoCompassPluginExportType.html +275 -0
  290. package/docs/types/PanoCompassPluginParameterType.html +275 -0
  291. package/docs/types/PanoFloorplanRadarPluginParameterType.html +275 -0
  292. package/docs/types/PanoFloorplanRadarPluginReturnType.html +275 -0
  293. package/docs/types/PanoIndex.html +275 -0
  294. package/docs/types/PanoMeasurePluginEvent.html +275 -0
  295. package/docs/types/PanoMeasureReturnType.html +275 -0
  296. package/docs/types/PanoSpatialTagPluginId.html +275 -0
  297. package/docs/types/PanoTagPluginExportInterface.html +275 -0
  298. package/docs/types/PanoTagPluginParamsInterface.html +275 -0
  299. package/docs/types/PanoVideoPluginParameterType.html +275 -0
  300. package/docs/types/PanoVideoPluginReturnType.html +275 -0
  301. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +283 -0
  302. package/docs/types/PipelinePluginParameterType.html +275 -0
  303. package/docs/types/PipelinePluginReturnType.html +275 -0
  304. package/docs/types/PlaneTag.html +283 -0
  305. package/docs/types/Point2DTag.html +283 -0
  306. package/docs/types/Point3DTag.html +283 -0
  307. package/docs/types/PointTag.html +280 -0
  308. package/docs/types/PointTagInstance.html +280 -0
  309. package/docs/types/Position.html +275 -0
  310. package/docs/types/RotateArgs.html +287 -0
  311. package/docs/types/RotateOpts.html +283 -0
  312. package/docs/types/RuleLabelsKey.html +275 -0
  313. package/docs/types/RuleLabelsValue.html +275 -0
  314. package/docs/types/StickType.html +275 -0
  315. package/docs/types/Tag.html +341 -0
  316. package/docs/types/Tag2D.html +283 -0
  317. package/docs/types/Tag3D.html +283 -0
  318. package/docs/types/TagConfigByKey.html +280 -0
  319. package/docs/types/TagContentType.html +275 -0
  320. package/docs/types/TagDimensionType.html +277 -0
  321. package/docs/types/TagElement.html +285 -0
  322. package/docs/types/TagEvents.html +328 -0
  323. package/docs/types/TagGLTFObject.html +298 -0
  324. package/docs/types/TagHooks.html +275 -0
  325. package/docs/types/TagId.html +275 -0
  326. package/docs/types/TagInstance.html +347 -0
  327. package/docs/types/TagPointType.html +278 -0
  328. package/docs/types/TagRendererMap.html +280 -0
  329. package/docs/types/TopviewFloorplanPluginParameterType.html +275 -0
  330. package/docs/types/TopviewFloorplanPluginReturnType.html +275 -0
  331. package/docs/types/WorkCode.html +275 -0
  332. package/docs/variables/FLOOR_TYPE_MAP.html +285 -0
  333. package/docs/variables/PLUGIN.html +275 -0
  334. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +278 -0
  335. package/docs/variables/ROOM_TYPE_MAP.html +285 -0
  336. package/docs/variables/defaultGlobalConfig.html +275 -0
  337. package/docs/variables/itemLabelPluginServerParams.html +282 -0
  338. package/docs/variables/modelItemLabelPluginServerParams.html +282 -0
  339. package/docs/variables/modelRoomLabelPluginServerParams.html +282 -0
  340. package/libs/CruisePlugin/Controller.js +1 -1
  341. package/libs/CruisePlugin/index.js +1 -1
  342. package/libs/GuideLinePlugin/Controller.js +1 -1
  343. package/libs/GuideLinePlugin/GuideLineItem.js +1 -1
  344. package/libs/GuideLinePlugin/GuideLineModeItem.js +1 -1
  345. package/libs/GuideLinePlugin/index.js +1 -1
  346. package/libs/PanoTagPlugin/controller/TagComputer.js +141 -135
  347. package/libs/PanoTagPlugin/controller/TagRender.js +1 -1
  348. package/libs/PanoTagPlugin/controller/TagUtil.js +76 -114
  349. package/libs/PanoTagPlugin/controller/index.d.ts +7 -0
  350. package/libs/PanoTagPlugin/controller/index.js +32 -15
  351. package/libs/PanoTagPlugin/index.js +1 -1
  352. package/libs/PanoTagPlugin/typings/controller.d.ts +3 -0
  353. package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +7 -4
  354. package/libs/PanoTagPlugin/typings/tag/TagConfig.js +3 -1
  355. package/libs/PanoTagPlugin/utils/model/mediaPlane.js +3 -1
  356. package/libs/base/BasePlugin.js +1 -1
  357. package/libs/index.js +116 -115
  358. package/libs/shared-utils/five/FiveDomEvents.d.ts +49 -11
  359. package/libs/shared-utils/five/FiveDomEvents.js +100 -77
  360. package/libs/shared-utils/logger.js +1 -1
  361. package/libs/shared-utils/three/getObjectVisible.d.ts +5 -0
  362. package/libs/shared-utils/three/getObjectVisible.js +4 -0
  363. package/package.json +1 -1
package/libs/index.js CHANGED
@@ -1,58 +1,58 @@
1
1
  import { consoleVersion as o } from "./shared-utils/logger.js";
2
2
  import { autoFixOffscreenCanvas as r } from "./shared-utils/offscreenCanvas.js";
3
- import { PaintBrush as cp } from "./components/PaintBrush/index.js";
4
- import { PaintBrushTypeEnum as Np } from "./components/PaintBrush/typings.js";
5
- import { ModelViewPlugin as wp } from "./ModelViewPlugin/Plugin.js";
6
- import { CSS3DRenderPlugin as Hp } from "./CSS3DRenderPlugin/index.js";
7
- import { PanoCursorRaycasterPlugin as jp } from "./PanoCursorRaycasterPlugin/index.js";
8
- import { ModelRoomLabelPlugin as kp, modelRoomLabelPluginServerParams as qp } from "./ModelRoomLabelPlugin/index.js";
9
- import { FLOOR_PLAN_ATTACHED_TO as Jp } from "./floorplan/constant.js";
10
- import { ModelFloorplanPlugin as Qp } from "./floorplan/ModelFloorplanPlugin/index.js";
11
- import { MapviewFloorplanPlugin as Xp } from "./floorplan/MapviewFloorplanPlugin/index.js";
12
- import { TopviewFloorplanPlugin as oe } from "./floorplan/TopviewFloorplanPlugin/index.js";
13
- import { PanoFloorplanRadarPlugin as te } from "./floorplan/PanoFloorplanRadarPlugin/index.js";
14
- import { FLOOR_TYPE_MAP as me, ROOM_FETILE_TYPE_MAP as pe, ROOM_TYPE_MAP as ee } from "./floorplan/typings/floorplanServerData.js";
15
- import { ModelChassisCompassPlugin as le } from "./ModelChassisCompassPlugin/Plugin.js";
16
- import { ModelEntryDoorGuidePlugin as Pe } from "./ModelEntryDoorGuidePlugin/Plugin.js";
17
- import { CameraMovementPlugin as ue } from "./CameraMovementPlugin/CameraMovementPlugin.js";
18
- import { CameraMovementEffect as ge, Rotation as se } from "./CameraMovementPlugin/typing.js";
19
- import { PanoRulerPlugin as Me } from "./PanoRulerPlugin/Plugin.js";
20
- import { PanoRulerProPlugin as Le } from "./PanoRulerProPlugin/index.js";
21
- import { PanoCompassPlugin as _e } from "./PanoCompassPlugin/index.js";
22
- import { PanoMeasurePlugin as Re } from "./PanoMeasurePlugin/index.js";
23
- import { PanoSpatialTagPlugin as Oe } from "./PanoSpatialTagPlugin/Plugin.js";
24
- import { modelItemLabelPluginServerParams as Ae } from "./ModelItemLabelPlugin/index.js";
25
- import { ModelTVVideoPlugin as De } from "./ModelTVVideoPlugin/Plugin.js";
26
- import { DIRECTION as be } from "./ModelTVVideoPlugin/typings.js";
27
- import { itemLabelPluginServerParams as Ye } from "./ItemLabelPlugin/index.js";
28
- import { PanoDoorLabelPlugin as ce } from "./PanoDoorLabelPlugin/index.js";
29
- import { GuideLinePlugin as Ne } from "./GuideLinePlugin/index.js";
30
- import { CruisePlugin as we } from "./CruisePlugin/index.js";
31
- import { PanoTagPlugin as He } from "./PanoTagPlugin/index.js";
32
- import { Object3DHelperPlugin as je } from "./Object3DHelperPlugin/index.js";
33
- import { PanoVideoPlugin as ke } from "./PanoVideoPlugin/index.js";
34
- import { PipelinePlugin as ze } from "./PipelinePlugin/index.js";
35
- import { AreaMakerPlugin as Ke } from "./AreaMakerPlugin/index.js";
36
- import { index as We } from "./shared-utils/index.js";
37
- import { CSS3DRender as Ze } from "./CSS3DRenderPlugin/utils/three/CSS3DRender.js";
38
- import { Model as rn } from "./PanoMeasurePlugin/Model/index.js";
39
- import { default as mn } from "./PanoMeasurePlugin/Model/point.js";
40
- import { default as en } from "./PanoMeasurePlugin/Model/line.js";
41
- import { Polyline as ln } from "./PanoMeasurePlugin/Model/polyline.js";
42
- import { default as Pn } from "./PanoMeasurePlugin/Modules/Magnifier.js";
43
- import { DISPLAY_STRATEGY_TYPE as un } from "./ModelItemLabelPlugin/typings.js";
44
- import { ModelItemLabelPlugin as gn } from "./ModelItemLabelPlugin/ModelItemLabelPlugin.js";
45
- import { ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE as dn } from "./ItemLabelPlugin/typings.js";
46
- import { Plugin as Tn } from "./ItemLabelPlugin/Plugin.js";
47
- import { GuideLineItem$1 as Cn } from "./GuideLinePlugin/GuideLineItem/index.js";
48
- import { GuideLineModeItem$1 as En } from "./GuideLinePlugin/GuideLineModeItem/index.js";
49
- import { default as In } from "./CruisePlugin/Controller.js";
50
- import { typing as yn } from "./CruisePlugin/typing/index.js";
51
- import { default as Sn, pluginFlag as Dn } from "./PanoTagPlugin/controller/index.js";
52
- import { defaultGlobalConfig as bn } from "./PanoTagPlugin/typings/tag/TagConfig.js";
53
- import { ContentType as Yn, DimensionType as vn, PointType as cn } from "./PanoTagPlugin/Archive/deprecated.js";
54
- import { Object3DHelperController as Nn, PLUGIN as hn } from "./Object3DHelperPlugin/Controller.js";
55
- import { typings as Bn } from "./PanoVideoPlugin/typings/index.js";
3
+ import { PaintBrush as Vp } from "./components/PaintBrush/index.js";
4
+ import { PaintBrushTypeEnum as hp } from "./components/PaintBrush/typings.js";
5
+ import { ModelViewPlugin as Bp } from "./ModelViewPlugin/Plugin.js";
6
+ import { CSS3DRenderPlugin as Up } from "./CSS3DRenderPlugin/index.js";
7
+ import { PanoCursorRaycasterPlugin as $p } from "./PanoCursorRaycasterPlugin/index.js";
8
+ import { ModelRoomLabelPlugin as qp, modelRoomLabelPluginServerParams as zp } from "./ModelRoomLabelPlugin/index.js";
9
+ import { FLOOR_PLAN_ATTACHED_TO as Kp } from "./floorplan/constant.js";
10
+ import { ModelFloorplanPlugin as Wp } from "./floorplan/ModelFloorplanPlugin/index.js";
11
+ import { MapviewFloorplanPlugin as Zp } from "./floorplan/MapviewFloorplanPlugin/index.js";
12
+ import { TopviewFloorplanPlugin as re } from "./floorplan/TopviewFloorplanPlugin/index.js";
13
+ import { PanoFloorplanRadarPlugin as ie } from "./floorplan/PanoFloorplanRadarPlugin/index.js";
14
+ import { FLOOR_TYPE_MAP as pe, ROOM_FETILE_TYPE_MAP as ee, ROOM_TYPE_MAP as ne } from "./floorplan/typings/floorplanServerData.js";
15
+ import { ModelChassisCompassPlugin as ae } from "./ModelChassisCompassPlugin/Plugin.js";
16
+ import { ModelEntryDoorGuidePlugin as fe } from "./ModelEntryDoorGuidePlugin/Plugin.js";
17
+ import { CameraMovementPlugin as xe } from "./CameraMovementPlugin/CameraMovementPlugin.js";
18
+ import { CameraMovementEffect as se, Rotation as de } from "./CameraMovementPlugin/typing.js";
19
+ import { PanoRulerPlugin as Te } from "./PanoRulerPlugin/Plugin.js";
20
+ import { PanoRulerProPlugin as Ce } from "./PanoRulerProPlugin/index.js";
21
+ import { PanoCompassPlugin as Ee } from "./PanoCompassPlugin/index.js";
22
+ import { PanoMeasurePlugin as Ie } from "./PanoMeasurePlugin/index.js";
23
+ import { PanoSpatialTagPlugin as ye } from "./PanoSpatialTagPlugin/Plugin.js";
24
+ import { modelItemLabelPluginServerParams as Se } from "./ModelItemLabelPlugin/index.js";
25
+ import { ModelTVVideoPlugin as Ge } from "./ModelTVVideoPlugin/Plugin.js";
26
+ import { DIRECTION as Fe } from "./ModelTVVideoPlugin/typings.js";
27
+ import { itemLabelPluginServerParams as ve } from "./ItemLabelPlugin/index.js";
28
+ import { PanoDoorLabelPlugin as Ve } from "./PanoDoorLabelPlugin/index.js";
29
+ import { GuideLinePlugin as he } from "./GuideLinePlugin/index.js";
30
+ import { CruisePlugin as Be } from "./CruisePlugin/index.js";
31
+ import { PanoTagPlugin as Ue } from "./PanoTagPlugin/index.js";
32
+ import { Object3DHelperPlugin as $e } from "./Object3DHelperPlugin/index.js";
33
+ import { PanoVideoPlugin as qe } from "./PanoVideoPlugin/index.js";
34
+ import { PipelinePlugin as Je } from "./PipelinePlugin/index.js";
35
+ import { AreaMakerPlugin as Qe } from "./AreaMakerPlugin/index.js";
36
+ import { index as Xe } from "./shared-utils/index.js";
37
+ import { CSS3DRender as on } from "./CSS3DRenderPlugin/utils/three/CSS3DRender.js";
38
+ import { Model as tn } from "./PanoMeasurePlugin/Model/index.js";
39
+ import { default as pn } from "./PanoMeasurePlugin/Model/point.js";
40
+ import { default as nn } from "./PanoMeasurePlugin/Model/line.js";
41
+ import { Polyline as an } from "./PanoMeasurePlugin/Model/polyline.js";
42
+ import { default as fn } from "./PanoMeasurePlugin/Modules/Magnifier.js";
43
+ import { DISPLAY_STRATEGY_TYPE as xn } from "./ModelItemLabelPlugin/typings.js";
44
+ import { ModelItemLabelPlugin as sn } from "./ModelItemLabelPlugin/ModelItemLabelPlugin.js";
45
+ import { ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE as Mn } from "./ItemLabelPlugin/typings.js";
46
+ import { Plugin as Ln } from "./ItemLabelPlugin/Plugin.js";
47
+ import { GuideLineItem$1 as _n } from "./GuideLinePlugin/GuideLineItem/index.js";
48
+ import { GuideLineModeItem$1 as Rn } from "./GuideLinePlugin/GuideLineModeItem/index.js";
49
+ import { default as On } from "./CruisePlugin/Controller.js";
50
+ import { typing as An } from "./CruisePlugin/typing/index.js";
51
+ import { default as Dn, pluginFlag as Gn } from "./PanoTagPlugin/controller/index.js";
52
+ import { defaultGlobalConfig as Fn } from "./PanoTagPlugin/typings/tag/TagConfig.js";
53
+ import { ContentType as vn, DimensionType as cn, PointType as Vn } from "./PanoTagPlugin/Archive/deprecated.js";
54
+ import { Object3DHelperController as hn, PLUGIN as wn } from "./Object3DHelperPlugin/Controller.js";
55
+ import { typings as Hn } from "./PanoVideoPlugin/typings/index.js";
56
56
  import "./components/PaintBrush/Controller.js";
57
57
  import "./components/PaintBrush/utils.js";
58
58
  import "./components/PaintBrush/tween.js";
@@ -278,7 +278,7 @@ import "./shared-utils/three/loadVideoTexture.js";
278
278
  import "./shared-utils/three/getPositionsByObjectFit.js";
279
279
  import "./shared-utils/three/FragmentTransparencyMaterial.js";
280
280
  import "./shared-utils/five/FiveDomEvents.js";
281
- import "./shared-utils/threex/domevents/index.js";
281
+ import "./shared-utils/three/getObjectVisible.js";
282
282
  import "./shared-utils/five/getFloorIndex.js";
283
283
  import "./shared-utils/util.js";
284
284
  import "./PanoTagPlugin/Components/TagContainer.js";
@@ -372,6 +372,7 @@ import "./shared-utils/Object3DHelper/Helper/BoundingBoxHelper.js";
372
372
  import "./shared-utils/Object3DHelper/utils/boundingBox.js";
373
373
  import "./shared-utils/Object3DHelper/Controller/MoveController.js";
374
374
  import "./shared-utils/Object3DHelper/Base/BaseController.js";
375
+ import "./shared-utils/threex/domevents/index.js";
375
376
  import "./shared-utils/Object3DHelper/utils/getMouseRaycaster.js";
376
377
  import "./shared-utils/Object3DHelper/utils/calculateThreeMouse.js";
377
378
  import "./Object3DHelperPlugin/FiveControllerWrapper.js";
@@ -408,65 +409,65 @@ import "./shared-utils/three/getRaycaster.js";
408
409
  r();
409
410
  o();
410
411
  export {
411
- Ke as AreaMakerPlugin,
412
- Ze as CSS3DRender,
413
- Hp as CSS3DRenderPlugin,
414
- ge as CameraMovementEffect,
415
- ue as CameraMovementPlugin,
416
- Yn as ContentType,
417
- we as CruisePlugin,
418
- In as CruisePluginController,
419
- yn as CruisePluginTypes,
420
- be as DIRECTION,
421
- un as DISPLAY_STRATEGY_TYPE,
422
- vn as DimensionType,
423
- Jp as FLOOR_PLAN_ATTACHED_TO,
424
- me as FLOOR_TYPE_MAP,
425
- Cn as GuideLineItem,
426
- En as GuideLineModeItem,
427
- Ne as GuideLinePlugin,
428
- dn as ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE,
429
- Tn as ItemLabelPlugin,
430
- Pn as Magnifier,
431
- Xp as MapviewFloorplanPlugin,
432
- le as ModelChassisCompassPlugin,
433
- Pe as ModelEntryDoorGuidePlugin,
434
- Qp as ModelFloorplanPlugin,
435
- gn as ModelItemLabelPlugin,
436
- kp as ModelRoomLabelPlugin,
437
- De as ModelTVVideoPlugin,
438
- wp as ModelViewPlugin,
439
- Nn as Object3DHelperController,
440
- je as Object3DHelperPlugin,
441
- hn as PLUGIN,
442
- cp as PaintBrush,
443
- Np as PaintBrushTypeEnum,
444
- _e as PanoCompassPlugin,
445
- jp as PanoCursorRaycasterPlugin,
446
- ce as PanoDoorLabelPlugin,
447
- te as PanoFloorplanRadarPlugin,
448
- Re as PanoMeasurePlugin,
449
- en as PanoMeasurePluginLine,
450
- rn as PanoMeasurePluginModel,
451
- mn as PanoMeasurePluginPoint,
452
- ln as PanoMeasurePluginPolyline,
453
- Me as PanoRulerPlugin,
454
- Le as PanoRulerProPlugin,
455
- Oe as PanoSpatialTagPlugin,
456
- He as PanoTagPlugin,
457
- Sn as PanoTagPluginController,
458
- ke as PanoVideoPlugin,
459
- Bn as PanoVideoPluginType,
460
- ze as PipelinePlugin,
461
- cn as PointType,
462
- pe as ROOM_FETILE_TYPE_MAP,
463
- ee as ROOM_TYPE_MAP,
464
- se as Rotation,
465
- oe as TopviewFloorplanPlugin,
466
- We as Util,
467
- bn as defaultGlobalConfig,
468
- Ye as itemLabelPluginServerParams,
469
- Ae as modelItemLabelPluginServerParams,
470
- qp as modelRoomLabelPluginServerParams,
471
- Dn as pluginFlag
412
+ Qe as AreaMakerPlugin,
413
+ on as CSS3DRender,
414
+ Up as CSS3DRenderPlugin,
415
+ se as CameraMovementEffect,
416
+ xe as CameraMovementPlugin,
417
+ vn as ContentType,
418
+ Be as CruisePlugin,
419
+ On as CruisePluginController,
420
+ An as CruisePluginTypes,
421
+ Fe as DIRECTION,
422
+ xn as DISPLAY_STRATEGY_TYPE,
423
+ cn as DimensionType,
424
+ Kp as FLOOR_PLAN_ATTACHED_TO,
425
+ pe as FLOOR_TYPE_MAP,
426
+ _n as GuideLineItem,
427
+ Rn as GuideLineModeItem,
428
+ he as GuideLinePlugin,
429
+ Mn as ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE,
430
+ Ln as ItemLabelPlugin,
431
+ fn as Magnifier,
432
+ Zp as MapviewFloorplanPlugin,
433
+ ae as ModelChassisCompassPlugin,
434
+ fe as ModelEntryDoorGuidePlugin,
435
+ Wp as ModelFloorplanPlugin,
436
+ sn as ModelItemLabelPlugin,
437
+ qp as ModelRoomLabelPlugin,
438
+ Ge as ModelTVVideoPlugin,
439
+ Bp as ModelViewPlugin,
440
+ hn as Object3DHelperController,
441
+ $e as Object3DHelperPlugin,
442
+ wn as PLUGIN,
443
+ Vp as PaintBrush,
444
+ hp as PaintBrushTypeEnum,
445
+ Ee as PanoCompassPlugin,
446
+ $p as PanoCursorRaycasterPlugin,
447
+ Ve as PanoDoorLabelPlugin,
448
+ ie as PanoFloorplanRadarPlugin,
449
+ Ie as PanoMeasurePlugin,
450
+ nn as PanoMeasurePluginLine,
451
+ tn as PanoMeasurePluginModel,
452
+ pn as PanoMeasurePluginPoint,
453
+ an as PanoMeasurePluginPolyline,
454
+ Te as PanoRulerPlugin,
455
+ Ce as PanoRulerProPlugin,
456
+ ye as PanoSpatialTagPlugin,
457
+ Ue as PanoTagPlugin,
458
+ Dn as PanoTagPluginController,
459
+ qe as PanoVideoPlugin,
460
+ Hn as PanoVideoPluginType,
461
+ Je as PipelinePlugin,
462
+ Vn as PointType,
463
+ ee as ROOM_FETILE_TYPE_MAP,
464
+ ne as ROOM_TYPE_MAP,
465
+ de as Rotation,
466
+ re as TopviewFloorplanPlugin,
467
+ Xe as Util,
468
+ Fn as defaultGlobalConfig,
469
+ ve as itemLabelPluginServerParams,
470
+ Se as modelItemLabelPluginServerParams,
471
+ zp as modelRoomLabelPluginServerParams,
472
+ Gn as pluginFlag
472
473
  };
@@ -1,12 +1,42 @@
1
- import type { Five } from '@realsee/five';
2
- import DomEvents, { type DomEventInterface } from '../threex/domevents';
1
+ /**
2
+ * @version 2.29.0
3
+ * 为什么重构?
4
+ * 1. 点击事件没有考虑Five模型
5
+ * 2. 为了在 mouseDown 的时候阻止 five tap 事件,需要提前做碰撞检测,但其实是没必要的,因为触发了 mouseDown 也不一定触发 点击事件 或者 Tap 事件,因为可能物体不可见或者有什么其他的判断
6
+ * 3. 基于第二点,废弃了之前使用浏览器原生事件监听点击的方式,改为使用 wantsTapGesture 的方式
7
+ * 4. 重构之后只会在 wantsTapGesture 事件触发的时候做射线检测
8
+ */
9
+ import { type Five } from '@realsee/five';
3
10
  import type * as THREE from 'three';
4
- export declare class FiveDomEvents extends DomEvents {
11
+ type EventName = 'click';
12
+ type PreventFiveEvent = boolean;
13
+ /**
14
+ * @return {PreventFiveEvent} 返回 false 可以不阻止 five 的 tap 事件; default: true
15
+ */
16
+ type Callback = (event: CallbackEvent) => PreventFiveEvent | void;
17
+ interface EventHandlerConfig {
18
+ /**
19
+ * @default true
20
+ */
21
+ checkVisible?: boolean;
22
+ }
23
+ interface CallbackEvent {
24
+ type: EventName;
25
+ target: THREE.Object3D;
26
+ origDomEvent?: Event;
27
+ intersect: THREE.Raycaster;
28
+ stopPropagation: () => void;
29
+ }
30
+ type Object3DWithEvent = THREE.Object3D & {
31
+ _domEvent?: {
32
+ [key in `${EventName}Handler`]?: Array<[Function, EventHandlerConfig]>;
33
+ };
34
+ };
35
+ export declare class FiveDomEvents {
5
36
  private five;
6
- private mouseInfo?;
7
- private clickHandlerMap;
37
+ private boundObject;
38
+ private extraObjects;
8
39
  constructor(five: Five);
9
- dispose(): void;
10
40
  /**
11
41
  * @description: added 时自动绑定事件,removed时自动解绑事件,也就是说只有物体在场景中的时候才会触发事件
12
42
  * @note: 注意:目前需要触发物体的 added 事件和 removed 事件才会生效
@@ -14,10 +44,18 @@ export declare class FiveDomEvents extends DomEvents {
14
44
  */
15
45
  addAutoBindEventListener(...params: Parameters<InstanceType<typeof FiveDomEvents>['addEventListener']>): void;
16
46
  /**
17
- * @description 递归判断对象及其父对象是否可见
47
+ * @description: add event listener
48
+ * @param params.object: object
49
+ * @param params.event: event name
50
+ * @param params.callback: 返回 false 可以不阻止 five 的 tap 事件; default: true
51
+ * @return {void}
18
52
  */
19
- getObjectVisible: (object?: THREE.Object3D | null) => boolean;
20
- addEventListener<T extends 'click' | 'dblclick' | 'mouseover' | 'mouseout' | 'mousemove' | 'mousedown' | 'mouseup' | 'contextmenu' | 'touchstart' | 'touchend', K extends THREE.Object3D>(object: K, eventName: T, callback: (params: DomEventInterface<T, K>) => void, useCapture?: boolean): void;
21
- removeEventListener(object: THREE.Object3D, eventName: 'click' | 'dblclick' | 'mouseover' | 'mouseout' | 'mousemove' | 'mousedown' | 'mouseup' | 'contextmenu' | 'touchstart' | 'touchend', callback: (params: any) => void, useCapture?: boolean): void;
22
- private preventWhenMouseDown;
53
+ addEventListener(object: Object3DWithEvent, event: EventName, callback: Callback, config?: EventHandlerConfig): void;
54
+ removeEventListener(object: Object3DWithEvent, event: EventName, callback: (e: CallbackEvent) => any, ...args: any[]): void;
55
+ dispose(): void;
56
+ private handleWantsTapGesture;
57
+ private objectIsBound;
58
+ private notify;
59
+ private updateFiveMeshes;
23
60
  }
61
+ export {};
@@ -1,26 +1,82 @@
1
- var a = Object.defineProperty;
2
- var l = (h, o, e) => o in h ? a(h, o, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[o] = e;
3
- var d = (h, o, e) => (l(h, typeof o != "symbol" ? o + "" : o, e), e);
4
- import { DomEvents as c } from "../threex/domevents/index.js";
5
- class D extends c {
1
+ var p = Object.defineProperty, _ = Object.defineProperties;
2
+ var O = Object.getOwnPropertyDescriptors;
3
+ var E = Object.getOwnPropertySymbols;
4
+ var b = Object.prototype.hasOwnProperty, L = Object.prototype.propertyIsEnumerable;
5
+ var v = (s, e, t) => e in s ? p(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t, m = (s, e) => {
6
+ for (var t in e || (e = {}))
7
+ b.call(e, t) && v(s, t, e[t]);
8
+ if (E)
9
+ for (var t of E(e))
10
+ L.call(e, t) && v(s, t, e[t]);
11
+ return s;
12
+ }, c = (s, e) => _(s, O(e));
13
+ var o = (s, e, t) => (v(s, typeof e != "symbol" ? e + "" : e, t), t);
14
+ import { PBMMesh as x } from "@realsee/five";
15
+ import { getObjectVisible as g } from "../three/getObjectVisible.js";
16
+ class y {
6
17
  constructor(e) {
7
- super(e.camera, e.getElement());
8
- d(this, "five");
9
- d(this, "mouseInfo");
10
- d(this, "clickHandlerMap", /* @__PURE__ */ new Map());
11
- /**
12
- * @description 递归判断对象及其父对象是否可见
13
- */
14
- d(this, "getObjectVisible", (e) => e ? e.visible === !1 ? !1 : this.getObjectVisible(e.parent) : !0);
15
- d(this, "preventWhenMouseDown", () => {
16
- var e;
17
- if ((e = this.mouseInfo) != null && e.isDown)
18
- return console.debug("preventWhenMouseDown 1"), !1;
18
+ o(this, "five");
19
+ o(this, "boundObject", {});
20
+ o(this, "extraObjects", []);
21
+ o(this, "handleWantsTapGesture", (e) => {
22
+ var r;
23
+ const t = "click", n = this.boundObject[t];
24
+ if (!n || (n == null ? void 0 : n.length) === 0)
25
+ return;
26
+ console.debug("射线检测");
27
+ const i = (r = e.intersectObjects([...n, ...this.extraObjects], !0)[0]) == null ? void 0 : r.object;
28
+ if (!i || !this.objectIsBound(i))
29
+ return;
30
+ if (this.notify(t, i))
31
+ return !1;
19
32
  });
20
- this.five = e, e.on("wantsMoveToPano", this.preventWhenMouseDown), e.on("wantsTapGesture", this.preventWhenMouseDown);
21
- }
22
- dispose() {
23
- this.five.off("wantsMoveToPano", this.preventWhenMouseDown), this.five.off("wantsTapGesture", this.preventWhenMouseDown), this.clickHandlerMap.clear(), this.mouseInfo = void 0;
33
+ o(this, "objectIsBound", (e) => {
34
+ let t = e._domEvent, n = e.parent;
35
+ for (; typeof t == "undefined" && n; )
36
+ t = n._domEvent, n = n.parent;
37
+ return !!t;
38
+ });
39
+ // eslint-disable-next-line max-params
40
+ o(this, "notify", (e, t, n, f) => {
41
+ const i = t._domEvent;
42
+ if (!i)
43
+ return;
44
+ const h = i[`${e}Handler`];
45
+ if (!h)
46
+ return;
47
+ let r = !1, d = !1;
48
+ for (const [l, a] of h) {
49
+ if (r)
50
+ break;
51
+ if (a != null && a.checkVisible && !g(t))
52
+ continue;
53
+ const u = l({
54
+ type: e,
55
+ target: t,
56
+ origDomEvent: n,
57
+ intersect: f,
58
+ stopPropagation: () => {
59
+ r = !0;
60
+ }
61
+ });
62
+ d === !1 && (d = u != null ? u : !0);
63
+ }
64
+ if (!r) {
65
+ const l = t == null ? void 0 : t.parent;
66
+ if (l) {
67
+ const a = this.notify(e, l, n, f);
68
+ d === !1 && (d = a != null ? a : !0);
69
+ }
70
+ }
71
+ return d;
72
+ });
73
+ o(this, "updateFiveMeshes", () => {
74
+ var e, t;
75
+ this.extraObjects = [], (t = (e = this.five.model) == null ? void 0 : e.originModel) == null || t.traverse((n) => {
76
+ n instanceof x && this.extraObjects.push(n);
77
+ });
78
+ });
79
+ this.five = e, this.updateFiveMeshes(), e.on("modelLoaded", this.updateFiveMeshes), e.on("wantsTapGesture", this.handleWantsTapGesture);
24
80
  }
25
81
  /**
26
82
  * @description: added 时自动绑定事件,removed时自动解绑事件,也就是说只有物体在场景中的时候才会触发事件
@@ -37,64 +93,31 @@ class D extends c {
37
93
  this.removeEventListener(...e);
38
94
  });
39
95
  }
40
- // eslint-disable-next-line max-params
41
- addEventListener(e, t, i, s) {
42
- const r = (u) => {
43
- if (this.getObjectVisible(e) === !1) {
44
- this.mouseInfo = void 0;
45
- return;
46
- }
47
- const n = u.origDomEvent;
48
- this.mouseInfo = {
49
- x: n.clientX,
50
- y: n.clientY,
51
- isDown: !0,
52
- mouseDownTimestamp: Date.now()
53
- };
54
- }, m = (u) => {
55
- if (this.getObjectVisible(e) === !1) {
56
- this.mouseInfo = void 0;
57
- return;
58
- }
59
- const n = u.origDomEvent;
60
- this.mouseInfo && (this.mouseInfo.isDown && this.mouseInfo.x === n.clientX && this.mouseInfo.y === n.clientY && Date.now() - this.mouseInfo.mouseDownTimestamp < 400 && i(n), this.mouseInfo = void 0);
61
- }, f = (u) => {
62
- if (this.getObjectVisible(e) === !1) {
63
- this.mouseInfo = void 0;
64
- return;
65
- }
66
- const n = u.origDomEvent;
67
- this.mouseInfo = {
68
- x: Math.floor(n.touches[0].clientX),
69
- y: Math.floor(n.touches[0].clientY),
70
- isDown: !0,
71
- mouseDownTimestamp: Date.now()
72
- };
73
- }, v = (u) => {
74
- if (this.getObjectVisible(e) === !1) {
75
- this.mouseInfo = void 0;
76
- return;
77
- }
78
- const n = u.origDomEvent;
79
- this.mouseInfo && (this.mouseInfo.isDown && this.mouseInfo.x === Math.floor(n.changedTouches[n.changedTouches.length - 1].clientX) && this.mouseInfo.y === Math.floor(n.changedTouches[n.changedTouches.length - 1].clientY) && Date.now() - this.mouseInfo.mouseDownTimestamp < 400 && i(n), this.mouseInfo = void 0);
80
- };
81
- t === "click" ? (super.addEventListener(e, "mousedown", r, s), super.addEventListener(e, "mouseup", m, s), super.addEventListener(e, "touchstart", f, s), super.addEventListener(e, "touchend", v, s), this.clickHandlerMap.set(i, {
82
- mousedown: r,
83
- mouseup: m,
84
- touchstart: f,
85
- touchend: v
86
- })) : super.addEventListener(e, t, i, s);
96
+ /**
97
+ * @description: add event listener
98
+ * @param params.object: object
99
+ * @param params.event: event name
100
+ * @param params.callback: 返回 false 可以不阻止 five 的 tap 事件; default: true
101
+ * @return {void}
102
+ */
103
+ addEventListener(e, t, n, f) {
104
+ var i;
105
+ e._domEvent || (e._domEvent = {}), e._domEvent[`${t}Handler`] || (e._domEvent[`${t}Handler`] = []), this.boundObject[t] || (this.boundObject[t] = []), e._domEvent[`${t}Handler`].push([n, c(m({}, f), { checkVisible: !0 })]), (i = this.boundObject[t]) == null || i.push(e);
87
106
  }
88
- // eslint-disable-next-line max-params
89
- removeEventListener(e, t, i, s) {
90
- if (t === "click") {
91
- const r = this.clickHandlerMap.get(i);
92
- r && (super.removeEventListener(e, "mousedown", r.mousedown, s), super.removeEventListener(e, "mouseup", r.mouseup, s), super.removeEventListener(e, "touchstart", r.touchstart, s), super.removeEventListener(e, "touchend", r.touchend, s), this.clickHandlerMap.delete(i));
93
- } else
94
- super.removeEventListener(e, t, i, s);
95
- this.mouseInfo = void 0;
107
+ removeEventListener(e, t, n, ...f) {
108
+ var h, r;
109
+ if (!e._domEvent || !e._domEvent[`${t}Handler`])
110
+ return;
111
+ const i = e._domEvent[`${t}Handler`].findIndex((d) => d[0] === n);
112
+ if (i !== -1 && (e._domEvent[`${t}Handler`].splice(i, 1), e._domEvent[`${t}Handler`].length === 0 && delete e._domEvent[`${t}Handler`], e._domEvent && Object.keys(e._domEvent).length === 0 && delete e._domEvent, !e._domEvent)) {
113
+ const d = (h = this.boundObject[t]) == null ? void 0 : h.findIndex((l) => l === e);
114
+ d !== -1 && ((r = this.boundObject[t]) == null || r.splice(d, 1));
115
+ }
116
+ }
117
+ dispose() {
118
+ this.five.off("modelLoaded", this.updateFiveMeshes), this.five.off("wantsTapGesture", this.handleWantsTapGesture), this.boundObject = {}, this.extraObjects = [];
96
119
  }
97
120
  }
98
121
  export {
99
- D as FiveDomEvents
122
+ y as FiveDomEvents
100
123
  };
@@ -1,6 +1,6 @@
1
1
  function A() {
2
2
  console.debug(
3
- "%c %c@realsee/dnalogel %cv2.28.6",
3
+ "%c %c@realsee/dnalogel %cv2.29.0-dev.1",
4
4
  [
5
5
  "background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAMCAMAAACHgmeRAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABLFBMVEUAAAAapPoap/oaqvkbrfkbr/gZnfwZoPsaqfnD4v/E4/8Ylv0clPm93/+/4P/B4f8Yj/683/8Wif+33P8Uhv+x2f8ShP+s1v8Pgf+n0/8Nf/+h0f8Lff8Lff8Nf/9dl/+czv8KfP8KfP+Lxf+Uyv+Xy/+Hwv+Jw/+Mxf+Oxv+RyP8aovsapfoap/oZmfwZm/wZnvsYnPsYkf4YlP0NePsDYfgYcfi43f+63v8Xiv8Xjf4EWfwCV/sWZ/qz2v+02/8Vh/8WiP8EUf8CTf4WXv2u1/+v2P8Thf8Thv8ETf8CR/8VV/+o1f+q1f8Qgv8Rg/8DSv8BRf8UVP+j0v+k0v8OgP8Pgf8DR/8DQv9Nhf+dzv+fz/+Kv/+Vyv+Xy/+azf+Oxv+Qx/+SyP////8MUhLdAAAAK3RSTlMACEWQ2bd98uQECPXxqO7c+Pb49vj2+Pb49vj23Oul8fMHA+TwerXXjEIG2P+bHgAAAAFiS0dEY1y+LaoAAAB+SURBVAjXY2BgZGJmYWVgYGBgY9fW0eVg4ORi4NbTNzDk4eXjZxAwMjYxNTO3EGQQsrSytrG1sxdmEHFwdHJ2cXUTZRBz9/D08vbxFWeQ8PMPCAwKDpFkkAoNC4+IjIqWZpCRlZOPiY2LV2BQVGJQTkhMUlEFWaOmrqGpxQAAyg0S9Dq+VPYAAAAASUVORK5CYII=')",
6
6
  "background-repeat: no-repeat",
@@ -0,0 +1,5 @@
1
+ import type * as THREE from 'three';
2
+ /**
3
+ * @description 递归判断对象及其父对象是否可见
4
+ */
5
+ export declare const getObjectVisible: (object?: THREE.Object3D | null) => boolean;
@@ -0,0 +1,4 @@
1
+ const r = (e) => e ? e.visible === !1 ? !1 : r(e.parent) : !0;
2
+ export {
3
+ r as getObjectVisible
4
+ };
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "repository": "https://github.com/realsee-developer/dnalogel.git",
8
8
  "description": "如视 VR 看房插件合集",
9
9
  "private": false,
10
- "version": "2.28.6",
10
+ "version": "2.29.0-dev.1",
11
11
  "license": "SEE LICENSE IN TERMS.txt",
12
12
  "scripts": {
13
13
  "clean": "rm -rf components dist docs libs types ./vite.config.js.timestamp*",