@realsee/dnalogel 3.81.0-alpha.4 → 3.81.0-alpha.5

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 (558) hide show
  1. package/dist/DigitalPerformancePlugin/core/DigitalHuman.d.ts +23 -0
  2. package/dist/DigitalPerformancePlugin/core/DigitalPlayground.d.ts +7 -0
  3. package/dist/DigitalPerformanceV2Plugin/controller/index.d.ts +25 -2
  4. package/dist/DigitalPerformanceV2Plugin/core/Playground.d.ts +2 -0
  5. package/dist/DigitalPerformanceV2Plugin/typings/index.d.ts +2 -0
  6. package/dist/index.cjs.js +34 -34
  7. package/dist/index.js +1687 -1616
  8. package/dist/index.umd.js +34 -34
  9. package/docs/assets/search.js +1 -1
  10. package/docs/classes/AreaMakerPluginType.AreaMakerController.html +2 -2
  11. package/docs/classes/AreaMakerPluginType.AreaMakerItem.html +2 -2
  12. package/docs/classes/CSS3DRender.html +2 -2
  13. package/docs/classes/DigitalHuman.html +13 -4
  14. package/docs/classes/DigitalPerformanceV2.DigitalPerformanceV2PluginController.html +50 -43
  15. package/docs/classes/DigitalPlayground.html +6 -3
  16. package/docs/classes/DigitalStateMachine.html +2 -2
  17. package/docs/classes/GuideLineItem.GuideLineItem.html +2 -2
  18. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +2 -2
  19. package/docs/classes/ModelMakerPluginInstance.html +2 -2
  20. package/docs/classes/ModelMakerPluginType.ModelMakerBoxItem.html +2 -2
  21. package/docs/classes/ModelMakerPluginType.ModelMakerPolygonItem.html +2 -2
  22. package/docs/classes/ModelMakerPluginType.ModelMakerPrismItem.html +2 -2
  23. package/docs/classes/ModelRoomLabelController.html +2 -2
  24. package/docs/classes/MoveController.html +2 -2
  25. package/docs/classes/Object3DHelperController.html +2 -2
  26. package/docs/classes/PaintBrush.html +2 -2
  27. package/docs/classes/PanoMeasurePluginLine.html +2 -2
  28. package/docs/classes/PanoMeasurePluginModel.html +2 -2
  29. package/docs/classes/PanoMeasurePluginPoint.html +2 -2
  30. package/docs/classes/PanoMeasurePluginPolyline.html +2 -2
  31. package/docs/classes/PanoTagPluginController.html +2 -2
  32. package/docs/classes/Sculpt.html +2 -2
  33. package/docs/classes/Util.BetterTween.html +2 -2
  34. package/docs/classes/Util.FiveDomEvents.html +2 -2
  35. package/docs/classes/Util.FivePuppet.html +2 -2
  36. package/docs/classes/Util.Interval.html +2 -2
  37. package/docs/classes/Util.LegacyPointHelper.html +2 -2
  38. package/docs/classes/Util.LightTag.html +2 -2
  39. package/docs/classes/Util.LineSegments.html +2 -2
  40. package/docs/classes/Util.Magnifier.html +2 -2
  41. package/docs/classes/Util.Object3D.html +2 -2
  42. package/docs/classes/Util.PointDomHelper.html +2 -2
  43. package/docs/classes/Util.PointHelper.html +2 -2
  44. package/docs/classes/Util.PointSelector.html +2 -2
  45. package/docs/classes/Util.PointSelectorHelper.html +2 -2
  46. package/docs/classes/Util.Rectangle.html +2 -2
  47. package/docs/classes/Util.sculpt.BaseEditor.html +2 -2
  48. package/docs/classes/Util.sculpt.BoxMesh.html +2 -2
  49. package/docs/classes/Util.sculpt.BoxMeshEditor.html +2 -2
  50. package/docs/classes/Util.sculpt.CircleMesh.html +2 -2
  51. package/docs/classes/Util.sculpt.CircleMeshEditor.html +2 -2
  52. package/docs/classes/Util.sculpt.CircleWithEdgeMesh.html +2 -2
  53. package/docs/classes/Util.sculpt.CylinderMesh.html +2 -2
  54. package/docs/classes/Util.sculpt.CylinderMeshEditor.html +2 -2
  55. package/docs/classes/Util.sculpt.LineMesh.html +2 -2
  56. package/docs/classes/Util.sculpt.PointMesh.html +2 -2
  57. package/docs/classes/Util.sculpt.PolygonMesh.html +2 -2
  58. package/docs/classes/Util.sculpt.PrismMesh.html +2 -2
  59. package/docs/classes/Util.sculpt.PrismMeshEditor.html +2 -2
  60. package/docs/classes/Util.sculpt.RectangleMesh.html +2 -2
  61. package/docs/classes/Util.sculpt.RectangleMeshEditor.html +2 -2
  62. package/docs/classes/Util.sculpt.RectangleWithEdgeMesh.html +2 -2
  63. package/docs/classes/WalkController.html +2 -2
  64. package/docs/enums/CameraMovementEffect.html +2 -2
  65. package/docs/enums/ContentType.html +2 -2
  66. package/docs/enums/DIRECTION.html +2 -2
  67. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +2 -2
  68. package/docs/enums/DimensionType.html +2 -2
  69. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +2 -2
  70. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +2 -2
  71. package/docs/enums/PaintBrushTypeEnum.html +2 -2
  72. package/docs/enums/PointType.html +2 -2
  73. package/docs/enums/Rotation.html +2 -2
  74. package/docs/functions/AreaMakerPlugin.html +1 -1
  75. package/docs/functions/CSS3DRenderPlugin.html +1 -1
  76. package/docs/functions/CameraMovementPlugin.html +2 -2
  77. package/docs/functions/CruisePlugin.html +1 -1
  78. package/docs/functions/CurrentPanoImagePlugin.html +1 -1
  79. package/docs/functions/DigitalPerformancePlugin.html +1 -1
  80. package/docs/functions/DigitalPerformanceV2.DigitalPerformanceV2Plugin.html +1 -1
  81. package/docs/functions/FloorplanGuidePlugin.html +1 -1
  82. package/docs/functions/GuideLinePlugin.html +1 -1
  83. package/docs/functions/ItemLabelPlugin.html +1 -1
  84. package/docs/functions/MapviewFloorplanPlugin.html +1 -1
  85. package/docs/functions/MeasurePlugin.html +1 -1
  86. package/docs/functions/ModelChassisCompassPlugin.html +2 -2
  87. package/docs/functions/ModelEntryDoorGuidePlugin.html +2 -2
  88. package/docs/functions/ModelFloorplanPlugin.html +1 -1
  89. package/docs/functions/ModelItemLabelPlugin.html +1 -1
  90. package/docs/functions/ModelMakerPlugin.html +1 -1
  91. package/docs/functions/ModelRoomLabelPlugin.html +1 -1
  92. package/docs/functions/ModelTVVideoPlugin.html +1 -1
  93. package/docs/functions/ModelViewPlugin.html +2 -2
  94. package/docs/functions/MovePlugin.html +1 -1
  95. package/docs/functions/Object3DHelperPlugin.html +1 -1
  96. package/docs/functions/PanoCompassPlugin.html +1 -1
  97. package/docs/functions/PanoCursorRaycasterPlugin.html +2 -2
  98. package/docs/functions/PanoDoorLabelPlugin.html +1 -1
  99. package/docs/functions/PanoFloorplanRadarPlugin.html +1 -1
  100. package/docs/functions/PanoMeasurePlugin.html +1 -1
  101. package/docs/functions/PanoRulerPlugin.html +2 -2
  102. package/docs/functions/PanoRulerProPlugin.html +2 -2
  103. package/docs/functions/PanoSpatialTagPlugin.html +2 -2
  104. package/docs/functions/PanoTagPlugin.html +1 -1
  105. package/docs/functions/PanoVideoPlugin.html +2 -2
  106. package/docs/functions/PipelinePlugin.html +1 -1
  107. package/docs/functions/SculptPlugin.html +2 -2
  108. package/docs/functions/SculptPluginForFive.html +2 -2
  109. package/docs/functions/TopviewFloorplanPlugin.html +1 -1
  110. package/docs/functions/Util.awaitNextFrame.html +1 -1
  111. package/docs/functions/Util.blink.html +2 -2
  112. package/docs/functions/Util.blinkWithPreset.html +2 -2
  113. package/docs/functions/Util.bounding.html +1 -1
  114. package/docs/functions/Util.boundingBox.html +1 -1
  115. package/docs/functions/Util.boundingSphere.html +1 -1
  116. package/docs/functions/Util.boxVertex.html +2 -2
  117. package/docs/functions/Util.boxVertexes.html +1 -1
  118. package/docs/functions/Util.checkFiveModelLoaded.html +2 -2
  119. package/docs/functions/Util.cleanup.html +2 -2
  120. package/docs/functions/Util.convexHull.html +2 -2
  121. package/docs/functions/Util.equal.html +2 -2
  122. package/docs/functions/Util.fiveModelIsLoaded.html +2 -2
  123. package/docs/functions/Util.generatePolygonGeometry.html +2 -2
  124. package/docs/functions/Util.getCoordsFromClient.html +1 -1
  125. package/docs/functions/Util.getCoordsFromElement.html +1 -1
  126. package/docs/functions/Util.getFrameTime.html +2 -2
  127. package/docs/functions/Util.getGeometryArea.html +1 -1
  128. package/docs/functions/Util.getGeometryInfo.html +1 -1
  129. package/docs/functions/Util.getIntersectFromRelativePosition.html +1 -1
  130. package/docs/functions/Util.getRaycasterFromFivePointer.html +1 -1
  131. package/docs/functions/Util.initialCSS3DRender.html +1 -1
  132. package/docs/functions/Util.inside.html +1 -1
  133. package/docs/functions/Util.isModelLike.html +1 -1
  134. package/docs/functions/Util.isNil.html +2 -2
  135. package/docs/functions/Util.isPanoramaLike.html +1 -1
  136. package/docs/functions/Util.lookObject.html +2 -2
  137. package/docs/functions/Util.lookPoint.html +2 -2
  138. package/docs/functions/Util.nextFrame.html +1 -1
  139. package/docs/functions/Util.notNil.html +2 -2
  140. package/docs/functions/Util.reblink.html +2 -2
  141. package/docs/functions/Util.replaceStaticPrefix.html +2 -2
  142. package/docs/functions/Util.requestAnimationFrameInterval.html +2 -2
  143. package/docs/functions/Util.sculpt.createBox.html +1 -1
  144. package/docs/functions/Util.sculpt.createCircle.html +1 -1
  145. package/docs/functions/Util.sculpt.createCylinder.html +1 -1
  146. package/docs/functions/Util.sculpt.createLine.html +2 -2
  147. package/docs/functions/Util.sculpt.createPoint.html +1 -1
  148. package/docs/functions/Util.sculpt.createPolygon.html +1 -1
  149. package/docs/functions/Util.sculpt.createPrism.html +1 -1
  150. package/docs/functions/Util.sculpt.createRectangle.html +2 -2
  151. package/docs/functions/Util.sculpt.transformUnit.html +1 -1
  152. package/docs/functions/Util.sculpt.transformUnitSquare.html +1 -1
  153. package/docs/functions/Util.tag.html +1 -1
  154. package/docs/functions/Util.triangleArea.html +2 -2
  155. package/docs/functions/Util.triangleCenter.html +2 -2
  156. package/docs/functions/Util.tweenProgress.html +1 -1
  157. package/docs/functions/Util.uuid.html +2 -2
  158. package/docs/functions/Util.waitFiveModelLoaded.html +2 -2
  159. package/docs/functions/Util.worldBounding.html +1 -1
  160. package/docs/functions/Util.worldBoundingBox.html +1 -1
  161. package/docs/functions/Util.worldBoundingSphere.html +1 -1
  162. package/docs/functions/createPolyline.html +2 -2
  163. package/docs/functions/pluginFlag.html +1 -1
  164. package/docs/functions/validatePolygon.html +1 -1
  165. package/docs/hierarchy.html +1 -1
  166. package/docs/index.html +2 -2
  167. package/docs/interfaces/AreaMakerPluginType.AnimeOptions.html +2 -2
  168. package/docs/interfaces/AreaMakerPluginType.Config.html +2 -2
  169. package/docs/interfaces/AreaMakerPluginType.EventMap.html +2 -2
  170. package/docs/interfaces/AreaMakerPluginType.Params.html +2 -2
  171. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItem.html +2 -2
  172. package/docs/interfaces/AreaMakerPluginType.ServerAreaMakerItemV1.html +2 -2
  173. package/docs/interfaces/AreaMakerPluginType.ServerDataV1.html +2 -2
  174. package/docs/interfaces/AreaMakerPluginType.ServerDataV2.html +2 -2
  175. package/docs/interfaces/AreaMakerPluginType.ShowHideOptions.html +2 -2
  176. package/docs/interfaces/AreaMakerPluginType.State.html +2 -2
  177. package/docs/interfaces/BoxAnimationConfig.html +2 -2
  178. package/docs/interfaces/BoxPosition.html +2 -2
  179. package/docs/interfaces/CSS3DRenderPluginEventMap.html +2 -2
  180. package/docs/interfaces/CSS3DRenderPluginState.html +2 -2
  181. package/docs/interfaces/CameraMovementPluginExportType.html +2 -2
  182. package/docs/interfaces/ChapterLocation.html +2 -2
  183. package/docs/interfaces/ChapterTimeInfo.html +2 -2
  184. package/docs/interfaces/ContentTypeMapInterface.html +2 -2
  185. package/docs/interfaces/CruisePluginTypes.Config.html +2 -2
  186. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +2 -2
  187. package/docs/interfaces/CruisePluginTypes.EventMap.html +2 -2
  188. package/docs/interfaces/CruisePluginTypes.GuildLineConfig.html +2 -2
  189. package/docs/interfaces/CruisePluginTypes.MoveAction.html +2 -2
  190. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +2 -2
  191. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +2 -2
  192. package/docs/interfaces/CruisePluginTypes.PluginData.html +2 -2
  193. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +2 -2
  194. package/docs/interfaces/CruisePluginTypes.PluginState.html +2 -2
  195. package/docs/interfaces/CurrentPanoImagePluginType.Config.html +2 -2
  196. package/docs/interfaces/CurrentPanoImagePluginType.EventMap.html +2 -2
  197. package/docs/interfaces/CurrentPanoImagePluginType.Params.html +2 -2
  198. package/docs/interfaces/CurrentPanoImagePluginType.ShowHideOptions.html +2 -2
  199. package/docs/interfaces/CurrentPanoImagePluginType.State.html +2 -2
  200. package/docs/interfaces/DigitalCameraKeyframe.html +2 -2
  201. package/docs/interfaces/DigitalCameraPlayer.html +2 -2
  202. package/docs/interfaces/DigitalCameraState.html +2 -2
  203. package/docs/interfaces/DigitalChapter.html +2 -2
  204. package/docs/interfaces/DigitalDataPlayer.html +2 -2
  205. package/docs/interfaces/DigitalDataState.html +2 -2
  206. package/docs/interfaces/DigitalEffectKeyframe.html +2 -2
  207. package/docs/interfaces/DigitalEffectState.html +2 -2
  208. package/docs/interfaces/DigitalItemKeyframe.html +2 -2
  209. package/docs/interfaces/DigitalItemState.html +2 -2
  210. package/docs/interfaces/DigitalModelKeyframe.html +2 -2
  211. package/docs/interfaces/DigitalModelPlayer.html +2 -2
  212. package/docs/interfaces/DigitalModelPlayerEffect.html +2 -2
  213. package/docs/interfaces/DigitalModelPlayerItem.html +2 -2
  214. package/docs/interfaces/DigitalModelState.html +2 -2
  215. package/docs/interfaces/DigitalPerformancePluginConfig.html +2 -2
  216. package/docs/interfaces/DigitalPerformanceV2.CameraState.html +7 -7
  217. package/docs/interfaces/DigitalPerformanceV2.DigitalCameraKeyframe.html +10 -10
  218. package/docs/interfaces/DigitalPerformanceV2.DigitalCameraPlayer.html +3 -3
  219. package/docs/interfaces/DigitalPerformanceV2.DigitalPerformanceV2PluginConfig.html +4 -2
  220. package/docs/interfaces/DigitalPerformanceV2.GroupChapterTimeInfo.html +7 -7
  221. package/docs/interfaces/DigitalPerformanceV2.GroupProgress.html +9 -9
  222. package/docs/interfaces/DigitalPerformanceV2.V2Progress.html +2 -2
  223. package/docs/interfaces/DigitalScript.html +2 -2
  224. package/docs/interfaces/DigitalSubTitleKeyframe.html +2 -2
  225. package/docs/interfaces/DigitalSubTitlePlayer.html +2 -2
  226. package/docs/interfaces/DigitalSubTitleState.html +2 -2
  227. package/docs/interfaces/ExtendedAnimationConfig.html +2 -2
  228. package/docs/interfaces/FloorplanBounding.html +2 -2
  229. package/docs/interfaces/FloorplanData.html +2 -2
  230. package/docs/interfaces/FloorplanEntrance.html +2 -2
  231. package/docs/interfaces/FloorplanExtraObject.html +2 -2
  232. package/docs/interfaces/FloorplanExtraObject3D.html +2 -2
  233. package/docs/interfaces/FloorplanFloorData.html +2 -2
  234. package/docs/interfaces/FloorplanImagePosition.html +2 -2
  235. package/docs/interfaces/FloorplanObserver.html +2 -2
  236. package/docs/interfaces/FloorplanOutlineItem.html +2 -2
  237. package/docs/interfaces/FloorplanPosition.html +2 -2
  238. package/docs/interfaces/FloorplanRoomItem.html +2 -2
  239. package/docs/interfaces/FloorplanRoomLabelItem.html +2 -2
  240. package/docs/interfaces/FloorplanServerBounding.html +2 -2
  241. package/docs/interfaces/FloorplanServerComputedData.html +2 -2
  242. package/docs/interfaces/FloorplanServerData.html +2 -2
  243. package/docs/interfaces/FloorplanServerDoorItem.html +2 -2
  244. package/docs/interfaces/FloorplanServerDoorPosition.html +2 -2
  245. package/docs/interfaces/FloorplanServerEntrance.html +2 -2
  246. package/docs/interfaces/FloorplanServerFloorData.html +2 -2
  247. package/docs/interfaces/FloorplanServerImagePosition.html +2 -2
  248. package/docs/interfaces/FloorplanServerObserver.html +2 -2
  249. package/docs/interfaces/FloorplanServerOutlineItem.html +2 -2
  250. package/docs/interfaces/FloorplanServerPosition.html +2 -2
  251. package/docs/interfaces/FloorplanServerRoomItem.html +2 -2
  252. package/docs/interfaces/FloorplanServerRoomLabelItem.html +2 -2
  253. package/docs/interfaces/GlobalProgress.html +2 -2
  254. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +2 -2
  255. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +2 -2
  256. package/docs/interfaces/GuideLinePluginType.EventMap.html +2 -2
  257. package/docs/interfaces/GuideLinePluginType.ExtraRouteData.html +2 -2
  258. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +2 -2
  259. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +2 -2
  260. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +2 -2
  261. package/docs/interfaces/GuideLinePluginType.GuideLineMeshStyle.html +2 -2
  262. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +2 -2
  263. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +2 -2
  264. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +2 -2
  265. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +2 -2
  266. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +1 -1
  267. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +2 -2
  268. package/docs/interfaces/GuideLinePluginType.PluginState.html +2 -2
  269. package/docs/interfaces/GuideLinePluginType.Route.html +2 -2
  270. package/docs/interfaces/HelperOffset.html +2 -2
  271. package/docs/interfaces/ImagePlaneGroup.html +2 -2
  272. package/docs/interfaces/ItemLabelPluginData.html +2 -2
  273. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +2 -2
  274. package/docs/interfaces/ItemLabelPluginParametersType.html +2 -2
  275. package/docs/interfaces/MinMax.html +2 -2
  276. package/docs/interfaces/ModelChassisCompassPluginData.html +2 -2
  277. package/docs/interfaces/ModelChassisCompassPluginExportType.html +2 -2
  278. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +2 -2
  279. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +2 -2
  280. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +2 -2
  281. package/docs/interfaces/ModelItemLabelPluginData.html +2 -2
  282. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +2 -2
  283. package/docs/interfaces/ModelItemLabelPluginParametersType.html +2 -2
  284. package/docs/interfaces/ModelMakerPluginType.BoxItemObjectData.html +2 -2
  285. package/docs/interfaces/ModelMakerPluginType.EventMap.html +2 -2
  286. package/docs/interfaces/ModelMakerPluginType.PrismItemObjectData.html +2 -2
  287. package/docs/interfaces/ModelMakerPluginType.ServerBaseItem.html +2 -2
  288. package/docs/interfaces/ModelMakerPluginType.ServerBoxItem.html +2 -2
  289. package/docs/interfaces/ModelMakerPluginType.ServerData.html +2 -2
  290. package/docs/interfaces/ModelMakerPluginType.ServerPrismItem.html +2 -2
  291. package/docs/interfaces/ModelMakerPluginType.ServerTrianglesItem.html +2 -2
  292. package/docs/interfaces/ModelMakerPluginType.State.html +2 -2
  293. package/docs/interfaces/ModelMakerPluginType.TrianglesItemObjectData.html +2 -2
  294. package/docs/interfaces/ModelRoomLabelPluginData.html +2 -2
  295. package/docs/interfaces/ModelTVVideoPluginData.html +2 -2
  296. package/docs/interfaces/ModelTVVideoPluginExportType.html +2 -2
  297. package/docs/interfaces/ModelTVVideoPluginParameterType.html +2 -2
  298. package/docs/interfaces/ModelViewPluginExportType.html +2 -2
  299. package/docs/interfaces/Object3DHelperState.html +2 -2
  300. package/docs/interfaces/ObjectHelperControllers.html +2 -2
  301. package/docs/interfaces/PaintBrushAction.html +2 -2
  302. package/docs/interfaces/PaintBrushConfigs.html +2 -2
  303. package/docs/interfaces/PaintBrushState.html +2 -2
  304. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +2 -2
  305. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -1
  306. package/docs/interfaces/PanoMeasureParameterType.html +2 -2
  307. package/docs/interfaces/PanoMeasurePluginLineJson.html +2 -2
  308. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +2 -2
  309. package/docs/interfaces/PanoMeasurePluginPointJson.html +2 -2
  310. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +2 -2
  311. package/docs/interfaces/PanoRulerPluginExportType.html +2 -2
  312. package/docs/interfaces/PanoRulerPluginOptions.html +2 -2
  313. package/docs/interfaces/PanoRulerPluginParameterType.html +2 -2
  314. package/docs/interfaces/PanoRulerProPluginExportType.html +2 -2
  315. package/docs/interfaces/PanoRulerProPluginOptions.html +2 -2
  316. package/docs/interfaces/PanoRulerProPluginParameterType.html +2 -2
  317. package/docs/interfaces/PanoRulerProPluginState.html +2 -2
  318. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -1
  319. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -1
  320. package/docs/interfaces/PanoSpatialTagPluginData.html +2 -2
  321. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +2 -2
  322. package/docs/interfaces/PanoSpatialTagPluginExportType.html +2 -2
  323. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +2 -2
  324. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +2 -2
  325. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +2 -2
  326. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +2 -2
  327. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +2 -2
  328. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +2 -2
  329. package/docs/interfaces/PanoVideoPluginType.PluginData.html +2 -2
  330. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +2 -2
  331. package/docs/interfaces/PanoVideoPluginType.PluginState.html +2 -2
  332. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +2 -2
  333. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +2 -2
  334. package/docs/interfaces/PluginEventMap.html +2 -2
  335. package/docs/interfaces/Point.html +2 -2
  336. package/docs/interfaces/ProgressBarEvents.html +2 -2
  337. package/docs/interfaces/Room.html +2 -2
  338. package/docs/interfaces/RoomInfo.html +2 -2
  339. package/docs/interfaces/RoomLabel.html +2 -2
  340. package/docs/interfaces/RoomRules.html +1 -1
  341. package/docs/interfaces/Rooms.html +1 -1
  342. package/docs/interfaces/Scissor.html +2 -2
  343. package/docs/interfaces/SculptConfig.html +2 -2
  344. package/docs/interfaces/State.html +2 -2
  345. package/docs/interfaces/TagCacheInterface.html +2 -2
  346. package/docs/interfaces/TagConfig.html +2 -2
  347. package/docs/interfaces/TagGLTFObjectGroup.html +2 -2
  348. package/docs/interfaces/TagIconAnimationConfig.html +2 -2
  349. package/docs/interfaces/TagIconUrl.html +2 -2
  350. package/docs/interfaces/TagObjectGroup.html +2 -2
  351. package/docs/interfaces/TagState.html +2 -2
  352. package/docs/interfaces/TagStyle.html +2 -2
  353. package/docs/interfaces/Tags.html +2 -2
  354. package/docs/interfaces/TemporaryState.html +2 -2
  355. package/docs/interfaces/TraceManager.html +2 -2
  356. package/docs/interfaces/TracePoint.html +2 -2
  357. package/docs/interfaces/Util.AnimeInstance.html +2 -2
  358. package/docs/interfaces/Util.BlinkAnimeOptions.html +2 -2
  359. package/docs/interfaces/Util.EventHandlerConfig.html +2 -2
  360. package/docs/interfaces/Util.FiveDomEvent.html +2 -2
  361. package/docs/interfaces/Util.FiveDomEventMap.html +2 -2
  362. package/docs/interfaces/Util.LegacyMouseGroupParameter.html +2 -2
  363. package/docs/interfaces/Util.MagnifierParameter.html +2 -2
  364. package/docs/interfaces/Util.MouseGroupParameter.html +2 -2
  365. package/docs/interfaces/Util.ObjectInitialState.html +2 -2
  366. package/docs/interfaces/Util.PointIntersection.html +2 -2
  367. package/docs/interfaces/Util.PointSelectorHelperConfig.html +2 -2
  368. package/docs/interfaces/Util.ReBlinkAnimeOptions.html +2 -2
  369. package/docs/modules/AreaMakerPluginType.html +2 -2
  370. package/docs/modules/CruisePluginTypes.html +2 -2
  371. package/docs/modules/CurrentPanoImagePluginType.html +2 -2
  372. package/docs/modules/DigitalPerformanceV2.html +2 -2
  373. package/docs/modules/GuideLineItem.html +2 -2
  374. package/docs/modules/GuideLineModeItem.html +2 -2
  375. package/docs/modules/GuideLinePluginType.html +2 -2
  376. package/docs/modules/ModelMakerPluginType.html +2 -2
  377. package/docs/modules/PanoVideoPluginType.html +2 -2
  378. package/docs/modules/SculptData.html +2 -2
  379. package/docs/modules/SculptType.html +2 -2
  380. package/docs/modules/Util.html +2 -2
  381. package/docs/modules/Util.sculpt.html +2 -2
  382. package/docs/modules.html +2 -2
  383. package/docs/types/AddObject3DHelperConfig.html +2 -2
  384. package/docs/types/AreaMakerPluginType.AreaMakerItemEventMap.html +2 -2
  385. package/docs/types/AreaMakerPluginType.ItemRenderer.html +1 -1
  386. package/docs/types/AreaMakerPluginType.PluginData.html +2 -2
  387. package/docs/types/AreaMakerPluginType.ServerData.html +2 -2
  388. package/docs/types/ArrayPosition.html +1 -1
  389. package/docs/types/AudioAppearance.html +1 -1
  390. package/docs/types/BoxTag.html +2 -2
  391. package/docs/types/CSS3DRenderExportType.html +1 -1
  392. package/docs/types/CSS3DRenderPluginExportType.html +1 -1
  393. package/docs/types/CSS3DRenderPluginParameterType.html +1 -1
  394. package/docs/types/ClassFunctionParameters.html +1 -1
  395. package/docs/types/Color.html +1 -1
  396. package/docs/types/ContentTypeConfigKey.html +1 -1
  397. package/docs/types/ContentTypeConfigKeySplit.html +1 -1
  398. package/docs/types/ContentTypeMap.html +1 -1
  399. package/docs/types/Create3DDomContainerReturnType.html +1 -1
  400. package/docs/types/Create3DElementReturnType.html +1 -1
  401. package/docs/types/CruisePluginExportType.html +1 -1
  402. package/docs/types/CruisePluginTypes.CruiseData.html +2 -2
  403. package/docs/types/CruisePluginTypes.MoveEffect.html +1 -1
  404. package/docs/types/CurrentPanoImagePluginExportType.html +1 -1
  405. package/docs/types/DeprecatedMediaPlaneProperty.html +2 -2
  406. package/docs/types/DeprecatedTagProperty.html +2 -2
  407. package/docs/types/DigitalPerformancePluginExportInterface.html +1 -1
  408. package/docs/types/DigitalPerformancePluginParamsInterface.html +1 -1
  409. package/docs/types/DigitalPerformanceV2.CameraCoordinateSpace.html +2 -2
  410. package/docs/types/DigitalPerformanceV2.CameraTransition.html +2 -2
  411. package/docs/types/DigitalPerformanceV2.DigitalPerformanceV2PluginExportInterface.html +1 -1
  412. package/docs/types/DigitalPerformanceV2.DigitalPerformanceV2PluginParamsInterface.html +1 -1
  413. package/docs/types/DigitalPerformanceV2.V2ProgressListener.html +1 -1
  414. package/docs/types/Direction-1.html +1 -1
  415. package/docs/types/Direction4.html +1 -1
  416. package/docs/types/ElementRenderer.html +2 -2
  417. package/docs/types/FloorplanGuidePluginParameterType.html +1 -1
  418. package/docs/types/FloorplanGuidePluginReturnType.html +1 -1
  419. package/docs/types/FloorplanRuleLabels.html +2 -2
  420. package/docs/types/FloorplanServerRuleLabels.html +1 -1
  421. package/docs/types/GuideLinePluginExportType.html +1 -1
  422. package/docs/types/GuideLinePluginType.GuideLineItem.html +2 -2
  423. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +1 -1
  424. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +1 -1
  425. package/docs/types/GuideLinePluginType.GuideLineStyle.html +2 -2
  426. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +2 -2
  427. package/docs/types/GuideLinePluginType.PathItem.html +2 -2
  428. package/docs/types/GuideLinePluginType.PluginData.html +2 -2
  429. package/docs/types/GuideLinePluginType.RouteConfig.html +2 -2
  430. package/docs/types/HelperEventMap.html +1 -1
  431. package/docs/types/InternalHelperEventMap.html +1 -1
  432. package/docs/types/KeyframeType.html +1 -1
  433. package/docs/types/MapviewFloorplanPluginParameterType.html +1 -1
  434. package/docs/types/MapviewFloorplanPluginReturnType.html +1 -1
  435. package/docs/types/MaskPosition.html +2 -2
  436. package/docs/types/MaskTag.html +2 -2
  437. package/docs/types/MeasureEndReason.html +1 -1
  438. package/docs/types/MeasurePluginConfig.html +2 -2
  439. package/docs/types/MeasurePluginEventMap.html +1 -1
  440. package/docs/types/MediaData.html +2 -2
  441. package/docs/types/MediaStore.html +1 -1
  442. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +1 -1
  443. package/docs/types/ModelFloorplanPluginParameterType.html +1 -1
  444. package/docs/types/ModelFloorplanPluginReturnType.html +1 -1
  445. package/docs/types/ModelId.html +1 -1
  446. package/docs/types/ModelMakerPluginType.ElementRenderer.html +1 -1
  447. package/docs/types/ModelMakerPluginType.ItemType.html +2 -2
  448. package/docs/types/ModelMakerPluginType.MarkerItem.html +1 -1
  449. package/docs/types/ModelMakerPluginType.ServerItem.html +2 -2
  450. package/docs/types/ModelRoomLabelPluginParameters.html +1 -1
  451. package/docs/types/ModelRoomLabelPluginReturnType.html +1 -1
  452. package/docs/types/MoveArgs.html +2 -2
  453. package/docs/types/MoveOpts.html +2 -2
  454. package/docs/types/Object3DHelperEventMap.html +1 -1
  455. package/docs/types/ObjectFit.html +1 -1
  456. package/docs/types/PaintBrushEventMap.html +1 -1
  457. package/docs/types/PanoCompassPluginData.html +1 -1
  458. package/docs/types/PanoCompassPluginExportType.html +1 -1
  459. package/docs/types/PanoCompassPluginParameterType.html +1 -1
  460. package/docs/types/PanoFloorplanRadarPluginParameterType.html +1 -1
  461. package/docs/types/PanoFloorplanRadarPluginReturnType.html +1 -1
  462. package/docs/types/PanoIndex.html +1 -1
  463. package/docs/types/PanoMeasurePluginEvent.html +1 -1
  464. package/docs/types/PanoMeasureReturnType.html +1 -1
  465. package/docs/types/PanoSpatialTagPluginId.html +1 -1
  466. package/docs/types/PanoTagPluginExportInterface.html +1 -1
  467. package/docs/types/PanoTagPluginParamsInterface.html +1 -1
  468. package/docs/types/PanoVideoPluginParameterType.html +1 -1
  469. package/docs/types/PanoVideoPluginReturnType.html +1 -1
  470. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +2 -2
  471. package/docs/types/PipelinePluginParameterType.html +1 -1
  472. package/docs/types/PipelinePluginReturnType.html +1 -1
  473. package/docs/types/PlaneTag.html +2 -2
  474. package/docs/types/Point2DTag.html +2 -2
  475. package/docs/types/Point3DTag.html +2 -2
  476. package/docs/types/PointTagInstance.html +1 -1
  477. package/docs/types/PolygonPosition.html +2 -2
  478. package/docs/types/PolygonTag.html +2 -2
  479. package/docs/types/Position.html +1 -1
  480. package/docs/types/PositionFrom.html +1 -1
  481. package/docs/types/ProgressListener.html +1 -1
  482. package/docs/types/RotateArgs.html +2 -2
  483. package/docs/types/RotateOpts.html +2 -2
  484. package/docs/types/RuleLabelsKey.html +1 -1
  485. package/docs/types/RuleLabelsValue.html +1 -1
  486. package/docs/types/ScaleCallback.html +1 -1
  487. package/docs/types/ScalePosition.html +2 -2
  488. package/docs/types/SculptData.BoxData.html +1 -1
  489. package/docs/types/SculptData.CircleData.html +1 -1
  490. package/docs/types/SculptData.CylinderData.html +1 -1
  491. package/docs/types/SculptData.PointData.html +1 -1
  492. package/docs/types/SculptData.PolygonData.html +1 -1
  493. package/docs/types/SculptData.PolylineData.html +1 -1
  494. package/docs/types/SculptData.PrismData.html +1 -1
  495. package/docs/types/SculptData.RectangleData.html +1 -1
  496. package/docs/types/SculptType.Theme.html +2 -2
  497. package/docs/types/StateType.html +1 -1
  498. package/docs/types/StickType.html +1 -1
  499. package/docs/types/Tag.html +2 -2
  500. package/docs/types/Tag2D.html +2 -2
  501. package/docs/types/Tag3D.html +2 -2
  502. package/docs/types/TagClickParams.html +1 -1
  503. package/docs/types/TagConfigByKey.html +1 -1
  504. package/docs/types/TagContentType.html +1 -1
  505. package/docs/types/TagContentTypeMapping.html +1 -1
  506. package/docs/types/TagDimensionType.html +1 -1
  507. package/docs/types/TagElement.html +2 -2
  508. package/docs/types/TagEvents.html +1 -1
  509. package/docs/types/TagGLTFObject.html +1 -1
  510. package/docs/types/TagHooks.html +1 -1
  511. package/docs/types/TagId.html +1 -1
  512. package/docs/types/TagInstance.html +1 -1
  513. package/docs/types/TagPlacement.html +2 -2
  514. package/docs/types/TagPointType.html +2 -2
  515. package/docs/types/TagRendererMap.html +1 -1
  516. package/docs/types/TopviewFloorplanPluginParameterType.html +1 -1
  517. package/docs/types/TopviewFloorplanPluginReturnType.html +1 -1
  518. package/docs/types/Util.ActionIfNoIntersection.html +1 -1
  519. package/docs/types/Util.AdherePoint.html +2 -2
  520. package/docs/types/Util.PointSelectorConfig.html +1 -1
  521. package/docs/types/Util.SupportedTarget.html +2 -2
  522. package/docs/types/Util.Target.html +2 -2
  523. package/docs/types/Util.ThreeObject.html +2 -2
  524. package/docs/types/WorkCode.html +1 -1
  525. package/docs/variables/FLOOR_TYPE_MAP.html +2 -2
  526. package/docs/variables/PLUGIN.html +1 -1
  527. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +2 -2
  528. package/docs/variables/ROOM_TYPE_MAP.html +2 -2
  529. package/docs/variables/Util.ANIME_PRESETS.html +2 -2
  530. package/docs/variables/Util.CURRENT_PANO_IMAGE_DEFAULT_IMAGE.html +2 -2
  531. package/docs/variables/Util.DEFAULT_ANIME_CONFIG.html +2 -2
  532. package/docs/variables/Util.DEFAULT_STATIC_PREFIX.html +2 -2
  533. package/docs/variables/Util.DNALOGEL_DEFAULT_ASSETS.html +2 -2
  534. package/docs/variables/Util.ENTRY_DOOR_DEFAULT_IMAGE.html +2 -2
  535. package/docs/variables/Util.FLOORPLAN_DEFAULT_IMAGE.html +2 -2
  536. package/docs/variables/Util.GUIDELINE_DEFAULT_ARROW_TEXTURE.html +2 -2
  537. package/docs/variables/Util.GUIDELINE_WHITE_ARROW_TEXTURE.html +2 -2
  538. package/docs/variables/Util.MODEL_CHASSIS_COMPASS_DEFAULT_MODEL.html +2 -2
  539. package/docs/variables/Util.MODEL_ENTRY_DOOR_GUIDE_PLUGIN_DEFAULT_MODEL.html +2 -2
  540. package/docs/variables/Util.PANO_COMPASS_DEFAULT_IMAGE.html +2 -2
  541. package/docs/variables/Util.PANO_SPATIAL_TAG_BLUR_IMAGE.html +2 -2
  542. package/docs/variables/Util.PANO_TAG_DEFAULT_LINK_ICON.html +2 -2
  543. package/docs/variables/defaultGlobalConfig.html +1 -1
  544. package/docs/variables/itemLabelPluginServerParams.html +1 -1
  545. package/docs/variables/modelItemLabelPluginServerParams.html +1 -1
  546. package/docs/variables/modelRoomLabelPluginServerParams.html +1 -1
  547. package/libs/DigitalPerformancePlugin/core/DigitalHuman.d.ts +23 -0
  548. package/libs/DigitalPerformancePlugin/core/DigitalHuman.js +169 -137
  549. package/libs/DigitalPerformancePlugin/core/DigitalPlayground.d.ts +7 -0
  550. package/libs/DigitalPerformancePlugin/core/DigitalPlayground.js +81 -70
  551. package/libs/DigitalPerformanceV2Plugin/controller/index.d.ts +25 -2
  552. package/libs/DigitalPerformanceV2Plugin/controller/index.js +91 -67
  553. package/libs/DigitalPerformanceV2Plugin/core/Playground.d.ts +2 -0
  554. package/libs/DigitalPerformanceV2Plugin/core/Playground.js +6 -2
  555. package/libs/DigitalPerformanceV2Plugin/typings/index.d.ts +2 -0
  556. package/libs/base/BasePlugin.js +1 -1
  557. package/libs/shared-utils/logger.js +1 -1
  558. package/package.json +1 -1
@@ -1,131 +1,133 @@
1
1
  var g = Object.defineProperty;
2
- var u = (o, t, i) => t in o ? g(o, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : o[t] = i;
3
- var m = (o, t, i) => (u(o, typeof t != "symbol" ? t + "" : t, i), i);
4
- var p = (o, t, i) => new Promise((e, a) => {
5
- var r = (l) => {
2
+ var u = (m, t, e) => t in m ? g(m, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : m[t] = e;
3
+ var o = (m, t, e) => (u(m, typeof t != "symbol" ? t + "" : t, e), e);
4
+ var h = (m, t, e) => new Promise((i, a) => {
5
+ var r = (s) => {
6
6
  try {
7
- s(i.next(l));
8
- } catch (h) {
9
- a(h);
7
+ l(e.next(s));
8
+ } catch (p) {
9
+ a(p);
10
10
  }
11
- }, n = (l) => {
11
+ }, n = (s) => {
12
12
  try {
13
- s(i.throw(l));
14
- } catch (h) {
15
- a(h);
13
+ l(e.throw(s));
14
+ } catch (p) {
15
+ a(p);
16
16
  }
17
- }, s = (l) => l.done ? e(l.value) : Promise.resolve(l.value).then(r, n);
18
- s((i = i.apply(o, t)).next());
17
+ }, l = (s) => s.done ? i(s.value) : Promise.resolve(s.value).then(r, n);
18
+ l((e = e.apply(m, t)).next());
19
19
  });
20
20
  import * as d from "three";
21
21
  import { GLTFLoader as M } from "@realsee/five/gltf-loader";
22
22
  import { DigitalHuman as y } from "./DigitalHuman.js";
23
- import { loadGltf as A } from "@realsee/five";
23
+ import { loadGltf as T } from "@realsee/five";
24
24
  import "./DigitalStateMachine.js";
25
25
  import "./Trace.js";
26
- class T {
26
+ class k {
27
27
  constructor(t = !1) {
28
- m(this, "gltfLoader");
29
- m(this, "script");
30
- m(this, "currentChapter");
31
- m(this, "digitalHumanMap");
32
- m(this, "digitalItemMap");
33
- m(this, "skeletalAnimationMap");
34
- m(this, "debugMode");
28
+ o(this, "gltfLoader");
29
+ o(this, "script");
30
+ o(this, "currentChapter");
31
+ o(this, "digitalHumanMap");
32
+ o(this, "digitalItemMap");
33
+ o(this, "skeletalAnimationMap");
34
+ o(this, "debugMode");
35
+ /** 运动轨迹线开关(默认关闭)。应用到已加载及后续加载的所有 DigitalHuman。 */
36
+ o(this, "showTrace", !1);
35
37
  this.gltfLoader = new M(), this.digitalHumanMap = /* @__PURE__ */ new Map(), this.digitalItemMap = /* @__PURE__ */ new Map(), this.skeletalAnimationMap = /* @__PURE__ */ new Map(), this.script = null, this.currentChapter = null, this.debugMode = t;
36
38
  }
37
39
  setScript(t) {
38
40
  this.script = t;
39
41
  }
40
- loadModel(t, i) {
41
- return p(this, null, function* () {
42
- const e = i ? `${t}_${i}` : t;
43
- if (this.digitalHumanMap.has(e)) {
44
- const a = this.digitalHumanMap.get(e);
42
+ loadModel(t, e) {
43
+ return h(this, null, function* () {
44
+ const i = e ? `${t}_${e}` : t;
45
+ if (this.digitalHumanMap.has(i)) {
46
+ const a = this.digitalHumanMap.get(i);
45
47
  return Promise.resolve(a);
46
48
  } else
47
49
  return new Promise((a, r) => {
48
50
  t.endsWith(".gltf") || t.endsWith(".glb") ? this.loadGLTF(t).then((n) => {
49
- const s = n.scene, l = new y(s, this);
50
- this.digitalHumanMap.set(e, l), a(l);
51
+ const l = n.scene, s = new y(l, this);
52
+ s.setTraceVisible(this.showTrace), this.digitalHumanMap.set(i, s), a(s);
51
53
  }) : r(new Error("不支持的模型格式"));
52
54
  });
53
55
  });
54
56
  }
55
- loadModels(t, i) {
56
- return p(this, null, function* () {
57
- return i && i.length === t.length ? Promise.all(t.map((e, a) => this.loadModel(e, i[a]))) : Promise.all(t.map((e) => this.loadModel(e)));
57
+ loadModels(t, e) {
58
+ return h(this, null, function* () {
59
+ return e && e.length === t.length ? Promise.all(t.map((i, a) => this.loadModel(i, e[a]))) : Promise.all(t.map((i) => this.loadModel(i)));
58
60
  });
59
61
  }
60
62
  // 加载骨骼动画,暂且认为一个glb只包含一个骨骼动画
61
63
  loadAnimation(t) {
62
- return p(this, null, function* () {
64
+ return h(this, null, function* () {
63
65
  if (this.skeletalAnimationMap.has(t)) {
64
- const i = this.skeletalAnimationMap.get(t);
65
- return Promise.resolve(i);
66
+ const e = this.skeletalAnimationMap.get(t);
67
+ return Promise.resolve(e);
66
68
  } else
67
- return new Promise((i, e) => {
69
+ return new Promise((e, i) => {
68
70
  this.loadGLTF(t).then((a) => {
69
71
  const n = a.animations[0];
70
- this.skeletalAnimationMap.set(t, n), i(n);
72
+ this.skeletalAnimationMap.set(t, n), e(n);
71
73
  });
72
74
  });
73
75
  });
74
76
  }
75
77
  loadAnimations(t) {
76
- return p(this, null, function* () {
77
- return Promise.all(t.map((i) => this.loadAnimation(i)));
78
+ return h(this, null, function* () {
79
+ return Promise.all(t.map((e) => this.loadAnimation(e)));
78
80
  });
79
81
  }
80
82
  getAnimation(t) {
81
83
  return this.skeletalAnimationMap.get(t) || null;
82
84
  }
83
- getDigitalHuman(t, i) {
84
- const e = i ? `${t}_${i}` : t;
85
- return this.digitalHumanMap.get(e) || null;
85
+ getDigitalHuman(t, e) {
86
+ const i = e ? `${t}_${e}` : t;
87
+ return this.digitalHumanMap.get(i) || null;
86
88
  }
87
89
  playByChapter(t) {
88
- return p(this, null, function* () {
90
+ return h(this, null, function* () {
89
91
  if (!t || !Array.isArray(t.players))
90
92
  throw new Error("Invalid chapter: chapter or chapter.players is undefined");
91
93
  this.currentChapter = t;
92
- const i = t.players.filter((a) => a.type === "model");
94
+ const e = t.players.filter((a) => a.type === "model");
93
95
  this.digitalHumanMap.forEach((a) => {
94
96
  a.model.visible = !1, a.container.visible = !1;
95
97
  });
96
- const e = [];
97
- for (let a = 0; a < i.length; a++) {
98
- const r = i[a], n = `${r.model}_${r.id}`, s = this.digitalHumanMap.get(n);
99
- s && (s.model.visible = !0, s.container.visible = !0, e.push(s.play({ keyframes: r.keyframes, items: [], effects: [] })));
98
+ const i = [];
99
+ for (let a = 0; a < e.length; a++) {
100
+ const r = e[a], n = `${r.model}_${r.id}`, l = this.digitalHumanMap.get(n);
101
+ l && (l.model.visible = !0, l.container.visible = !0, i.push(l.play({ keyframes: r.keyframes, items: [], effects: [] })));
100
102
  }
101
- return Promise.all(e);
103
+ return Promise.all(i);
102
104
  });
103
105
  }
104
- loadItems(t, i) {
105
- return p(this, null, function* () {
106
- return Promise.all(t.map((e) => this.loadItem(e, i == null ? void 0 : i.get(e))));
106
+ loadItems(t, e) {
107
+ return h(this, null, function* () {
108
+ return Promise.all(t.map((i) => this.loadItem(i, e == null ? void 0 : e.get(i))));
107
109
  });
108
110
  }
109
- loadItem(t, i) {
110
- return p(this, null, function* () {
111
+ loadItem(t, e) {
112
+ return h(this, null, function* () {
111
113
  if (this.digitalItemMap.has(t)) {
112
- const e = this.digitalItemMap.get(t);
113
- return Promise.resolve(e);
114
+ const i = this.digitalItemMap.get(t);
115
+ return Promise.resolve(i);
114
116
  } else
115
- return new Promise((e, a) => {
117
+ return new Promise((i, a) => {
116
118
  t.endsWith(".gltf") || t.endsWith(".glb") ? this.loadGLTF(t).then((r) => {
117
119
  const n = r.scene;
118
- if (i && (i != null && i.position) && (i != null && i.rotation)) {
119
- const [s, l, h] = i.position;
120
- n.position.set(s * 0.01, -l * 0.01, -h * 0.01);
120
+ if (e && (e != null && e.position) && (e != null && e.rotation)) {
121
+ const [l, s, p] = e.position;
122
+ n.position.set(l * 0.01, -s * 0.01, -p * 0.01);
121
123
  const c = new d.Euler(
122
- d.MathUtils.degToRad(i.rotation[0]),
123
- d.MathUtils.degToRad(i.rotation[1]),
124
- d.MathUtils.degToRad(i.rotation[2])
124
+ d.MathUtils.degToRad(e.rotation[0]),
125
+ d.MathUtils.degToRad(e.rotation[1]),
126
+ d.MathUtils.degToRad(e.rotation[2])
125
127
  );
126
128
  n.quaternion.setFromEuler(c);
127
129
  }
128
- this.digitalItemMap.set(t, n), e(n);
130
+ this.digitalItemMap.set(t, n), i(n);
129
131
  }) : a(new Error("不支持的模型格式"));
130
132
  });
131
133
  });
@@ -149,8 +151,17 @@ class T {
149
151
  });
150
152
  }
151
153
  setTimelineTo(t) {
152
- this.digitalHumanMap.forEach((i) => {
153
- i.state.currentTime = t;
154
+ this.digitalHumanMap.forEach((e) => {
155
+ e.state.currentTime = t;
156
+ });
157
+ }
158
+ /**
159
+ * 运动轨迹线开关(默认关闭)。作用于当前所有 DigitalHuman,并记忆给后续加载的模型。
160
+ * 仅 debug / 特殊需求由业务经插件显式开启。
161
+ */
162
+ setTraceVisible(t) {
163
+ this.showTrace = t, this.digitalHumanMap.forEach((e) => {
164
+ e.setTraceVisible(t);
154
165
  });
155
166
  }
156
167
  /**
@@ -162,12 +173,12 @@ class T {
162
173
  }), this.digitalHumanMap.clear(), this.digitalItemMap.clear(), this.skeletalAnimationMap.clear();
163
174
  }
164
175
  loadGLTF(t) {
165
- return A(t).then((i) => {
166
- const e = i == null ? void 0 : i.upAxis;
167
- return i && e === "Z" && i.scene && (i.scene.rotateX(-Math.PI / 2), i.scene.updateMatrixWorld(!0)), i;
176
+ return T(t).then((e) => {
177
+ const i = e == null ? void 0 : e.upAxis;
178
+ return e && i === "Z" && e.scene && (e.scene.rotateX(-Math.PI / 2), e.scene.updateMatrixWorld(!0)), e;
168
179
  });
169
180
  }
170
181
  }
171
182
  export {
172
- T as DigitalPlayground
183
+ k as DigitalPlayground
173
184
  };
@@ -106,6 +106,14 @@ export default class DigitalPerformanceV2PluginController {
106
106
  * `null`(整体)表示未启用该能力(不触碰楼层可见性)。由消费方经 `setChapterFloorMap` 注入。
107
107
  */
108
108
  private chapterFloorMap;
109
+ /**
110
+ * 楼层可见性作用的目标模型(`show(floorIndex)` 的接收者)。
111
+ * - `null`:回退到 `five.model`(= `modelScene.models[0]`,单 VR 即唯一模型)。
112
+ * - 沙盘/联合现场:`five.model` 恒为 models[0],未必是当前播放的子 VR,故消费方须显式注入
113
+ * 动画所属子 VR 的模型(`five.models.find(m => m.name === resourceCode)`),否则楼层隔离会落到
114
+ * 错误模型,被播放子 VR 保持全楼层可见(表现为「跨楼层动画所有楼层同时高亮」)。
115
+ */
116
+ private chapterFloorModel;
109
117
  /** five 'modeChange' 楼层重放监听的反订阅句柄(chapterFloorMap 启用时挂载,停用/reset/dispose 时清理) */
110
118
  private unsubFloorModeChange;
111
119
  constructor(five: Five, config?: DigitalPerformanceV2PluginConfig);
@@ -159,6 +167,11 @@ export default class DigitalPerformanceV2PluginController {
159
167
  continueForEdit(): Promise<void>;
160
168
  /** 运镜开关:关闭后播放仅驱动模型动画,不接管 five 相机(立即生效) */
161
169
  setCameraDirectionEnabled(enabled: boolean): void;
170
+ /**
171
+ * 人物运动轨迹线开关(默认关闭、不显示)。仅 debug / 特殊需求由业务显式开启。
172
+ * 立即作用于当前所有 DigitalHuman,并记忆给后续加载的模型。
173
+ */
174
+ setTraceVisible(visible: boolean): void;
162
175
  /**
163
176
  * 加法式:设置「章节索引 → 楼层」映射,启用「播放/切章时 Mapview 只显示当前章节所在楼层」。
164
177
  * - number:该章节单一楼层;null:该章节内跨楼层 → 显示全部;映射缺项按显示全部处理。
@@ -166,15 +179,25 @@ export default class DigitalPerformanceV2PluginController {
166
179
  * - 传入 null:停用该能力(不再随章节应用),但**不主动恢复**楼层可见性(恢复由 `reset()` 负责)。
167
180
  * 楼层可见性是 five 空间模型的显隐(`five.model.show`),与运镜相机接管相互独立。
168
181
  * 各消费方(workshop 编辑端 / NextVR 展示端)自行从各自数据算好映射注入,保证两端行为一致(parity)。
182
+ *
183
+ * @param model 楼层可见性作用的目标模型(缺省/undefined/null 回退到 `five.model`)。
184
+ * 单 VR 场景无需传(`five.model` 即唯一模型);沙盘/联合现场须传动画所属子 VR 的模型
185
+ * (`five.models.find(m => m.name === resourceCode)`),否则楼层隔离会落到 models[0] 而非播放中的子 VR,
186
+ * 导致跨楼层动画所有楼层同时高亮。传入 null 时清空目标模型回退到 `five.model`。
169
187
  */
170
- setChapterFloorMap(map: Record<number, number | null> | null): void;
188
+ setChapterFloorMap(map: Record<number, number | null> | null, model?: {
189
+ show?: (floorIndex?: number) => void;
190
+ } | null): void;
171
191
  /** 监听 five 'modeChange':模态切换后(延后一帧)重放当前章节楼层,避免被外部 UI 覆盖(只挂一次) */
172
192
  private hookFloorModeChange;
173
193
  /** 取消 'modeChange' 楼层重放监听 */
174
194
  private unhookFloorModeChange;
175
195
  /** 按章节楼层映射对指定章节应用楼层可见性(映射未启用时 no-op) */
176
196
  private applyChapterFloor;
177
- /** 显示指定楼层(传 undefined 显示全部)。安全访问 five.model.show,避免类型/运行时缺失。 */
197
+ /**
198
+ * 显示指定楼层(传 undefined 显示全部)。安全访问 model.show,避免类型/运行时缺失。
199
+ * 目标模型优先用消费方注入的 `chapterFloorModel`(沙盘下为播放中的子 VR),缺省回退 `five.model`。
200
+ */
178
201
  private showModelFloor;
179
202
  /**
180
203
  * seek 预览:跳转到指定时间并渲染当前帧(不改变播放/暂停状态)。
@@ -11,24 +11,24 @@ var k = (p, e, t) => e in p ? R(p, e, { enumerable: !0, configurable: !0, writab
11
11
  };
12
12
  var h = (p, e, t) => (k(p, typeof e != "symbol" ? e + "" : e, t), t);
13
13
  var m = (p, e, t) => new Promise((r, a) => {
14
- var s = (i) => {
14
+ var s = (n) => {
15
15
  try {
16
- o(t.next(i));
16
+ o(t.next(n));
17
17
  } catch (l) {
18
18
  a(l);
19
19
  }
20
- }, n = (i) => {
20
+ }, i = (n) => {
21
21
  try {
22
- o(t.throw(i));
22
+ o(t.throw(n));
23
23
  } catch (l) {
24
24
  a(l);
25
25
  }
26
- }, o = (i) => i.done ? r(i.value) : Promise.resolve(i.value).then(s, n);
26
+ }, o = (n) => n.done ? r(n.value) : Promise.resolve(n.value).then(s, i);
27
27
  o((t = t.apply(p, e)).next());
28
28
  });
29
29
  import * as T from "three";
30
30
  import { PerformancePlayground as A, getChapterModelDuration as I, getChapterDuration as N } from "../core/Playground.js";
31
- import { CameraTrack as O } from "../core/CameraTrack.js";
31
+ import { CameraTrack as V } from "../core/CameraTrack.js";
32
32
  import "../../DigitalPerformancePlugin/core/DigitalPlayground.js";
33
33
  import "@realsee/five/gltf-loader";
34
34
  import "../../DigitalPerformancePlugin/core/DigitalHuman.js";
@@ -39,12 +39,12 @@ import "../core/PerformanceClock.js";
39
39
  import "../core/CameraDirector.js";
40
40
  import "../core/FiveModelCameraBridge.js";
41
41
  import "../core/CameraSampler.js";
42
- const V = "Dnalogel-DigitalPerformanceV2Plugin", L = "five-world";
42
+ const O = "Dnalogel-DigitalPerformanceV2Plugin", L = "five-world";
43
43
  class $ {
44
44
  constructor(e, t = {}) {
45
45
  h(this, "five");
46
46
  h(this, "config");
47
- h(this, "NAME", V);
47
+ h(this, "NAME", O);
48
48
  h(this, "playground");
49
49
  h(this, "state", {
50
50
  enabled: !0,
@@ -84,27 +84,36 @@ class $ {
84
84
  * `null`(整体)表示未启用该能力(不触碰楼层可见性)。由消费方经 `setChapterFloorMap` 注入。
85
85
  */
86
86
  h(this, "chapterFloorMap", null);
87
+ /**
88
+ * 楼层可见性作用的目标模型(`show(floorIndex)` 的接收者)。
89
+ * - `null`:回退到 `five.model`(= `modelScene.models[0]`,单 VR 即唯一模型)。
90
+ * - 沙盘/联合现场:`five.model` 恒为 models[0],未必是当前播放的子 VR,故消费方须显式注入
91
+ * 动画所属子 VR 的模型(`five.models.find(m => m.name === resourceCode)`),否则楼层隔离会落到
92
+ * 错误模型,被播放子 VR 保持全楼层可见(表现为「跨楼层动画所有楼层同时高亮」)。
93
+ */
94
+ h(this, "chapterFloorModel", null);
87
95
  /** five 'modeChange' 楼层重放监听的反订阅句柄(chapterFloorMap 启用时挂载,停用/reset/dispose 时清理) */
88
96
  h(this, "unsubFloorModeChange", null);
89
- this.five = e, this.config = g({ autoPlay: !1, loop: !1, debug: !1 }, t), this.playground = new A(e, this.config.debug), this.unsubClockTick = this.playground.getClock().onTick(() => this.emitProgress());
97
+ this.five = e, this.config = g({ autoPlay: !1, loop: !1, debug: !1, showTrace: !1 }, t), this.playground = new A(e, this.config.debug), this.unsubClockTick = this.playground.getClock().onTick(() => this.emitProgress());
90
98
  }
91
99
  /** 加载剧本:预加载资源 + 将模型加入 five 场景;autoPlay 时自动播放首章 */
92
100
  loadScript(e) {
93
101
  return m(this, null, function* () {
102
+ var t;
94
103
  if (this.state.currentScript = e, this.playground.setScript(e), this.groupChapterTimeMapCache = null, this.groupChapterTimeMapCacheScript = null, this.chapterFloorMap = null, yield this.preloadResources(e), this.five && this.five.scene) {
95
- yield new Promise((r) => requestAnimationFrame(() => r()));
96
- let t = 0;
97
- if (e.chapters.forEach((r) => {
98
- r.players.forEach((a) => {
99
- if (a.type === "model") {
100
- const s = this.playground.loader.getDigitalHuman(a.model, a.id);
101
- s != null && s.container && (this.five.scene.add(s.container), t++);
104
+ yield new Promise((a) => requestAnimationFrame(() => a()));
105
+ let r = 0;
106
+ if (e.chapters.forEach((a) => {
107
+ a.players.forEach((s) => {
108
+ if (s.type === "model") {
109
+ const i = this.playground.loader.getDigitalHuman(s.model, s.id);
110
+ i != null && i.container && (this.five.scene.add(i.container), r++);
102
111
  }
103
112
  });
104
- }), t === 0)
113
+ }), r === 0)
105
114
  throw new Error("没有模型被添加到场景中");
106
115
  }
107
- this.config.autoPlay && e.chapters.length > 0 && (yield this.playChapter(e.chapters[0]));
116
+ this.playground.setTraceVisible((t = this.config.showTrace) != null ? t : !1), this.config.autoPlay && e.chapters.length > 0 && (yield this.playChapter(e.chapters[0]));
108
117
  });
109
118
  }
110
119
  /** 播放指定章节 */
@@ -226,6 +235,13 @@ class $ {
226
235
  setCameraDirectionEnabled(e) {
227
236
  this.playground.setCameraDirectionEnabled(e);
228
237
  }
238
+ /**
239
+ * 人物运动轨迹线开关(默认关闭、不显示)。仅 debug / 特殊需求由业务显式开启。
240
+ * 立即作用于当前所有 DigitalHuman,并记忆给后续加载的模型。
241
+ */
242
+ setTraceVisible(e) {
243
+ this.playground.setTraceVisible(e);
244
+ }
229
245
  /**
230
246
  * 加法式:设置「章节索引 → 楼层」映射,启用「播放/切章时 Mapview 只显示当前章节所在楼层」。
231
247
  * - number:该章节单一楼层;null:该章节内跨楼层 → 显示全部;映射缺项按显示全部处理。
@@ -233,11 +249,16 @@ class $ {
233
249
  * - 传入 null:停用该能力(不再随章节应用),但**不主动恢复**楼层可见性(恢复由 `reset()` 负责)。
234
250
  * 楼层可见性是 five 空间模型的显隐(`five.model.show`),与运镜相机接管相互独立。
235
251
  * 各消费方(workshop 编辑端 / NextVR 展示端)自行从各自数据算好映射注入,保证两端行为一致(parity)。
252
+ *
253
+ * @param model 楼层可见性作用的目标模型(缺省/undefined/null 回退到 `five.model`)。
254
+ * 单 VR 场景无需传(`five.model` 即唯一模型);沙盘/联合现场须传动画所属子 VR 的模型
255
+ * (`five.models.find(m => m.name === resourceCode)`),否则楼层隔离会落到 models[0] 而非播放中的子 VR,
256
+ * 导致跨楼层动画所有楼层同时高亮。传入 null 时清空目标模型回退到 `five.model`。
236
257
  */
237
- setChapterFloorMap(e) {
238
- if (this.chapterFloorMap = e, e) {
239
- const t = this.getCurrentChapterIndex();
240
- this.applyChapterFloor(t >= 0 ? t : 0), this.hookFloorModeChange();
258
+ setChapterFloorMap(e, t) {
259
+ if (this.chapterFloorMap = e, arguments.length >= 2 && (this.chapterFloorModel = t != null ? t : null), e) {
260
+ const r = this.getCurrentChapterIndex();
261
+ this.applyChapterFloor(r >= 0 ? r : 0), this.hookFloorModeChange();
241
262
  } else
242
263
  this.unhookFloorModeChange();
243
264
  }
@@ -274,11 +295,14 @@ class $ {
274
295
  const t = e in this.chapterFloorMap ? this.chapterFloorMap[e] : null;
275
296
  this.showModelFloor(typeof t == "number" ? t : void 0);
276
297
  }
277
- /** 显示指定楼层(传 undefined 显示全部)。安全访问 five.model.show,避免类型/运行时缺失。 */
298
+ /**
299
+ * 显示指定楼层(传 undefined 显示全部)。安全访问 model.show,避免类型/运行时缺失。
300
+ * 目标模型优先用消费方注入的 `chapterFloorModel`(沙盘下为播放中的子 VR),缺省回退 `five.model`。
301
+ */
278
302
  showModelFloor(e) {
279
- var r, a, s;
280
- const t = (r = this.five) == null ? void 0 : r.model;
281
- typeof e == "number" ? (a = t == null ? void 0 : t.show) == null || a.call(t, e) : (s = t == null ? void 0 : t.show) == null || s.call(t);
303
+ var r, a, s, i;
304
+ const t = (a = this.chapterFloorModel) != null ? a : (r = this.five) == null ? void 0 : r.model;
305
+ typeof e == "number" ? (s = t == null ? void 0 : t.show) == null || s.call(t, e) : (i = t == null ? void 0 : t.show) == null || i.call(t);
282
306
  }
283
307
  /**
284
308
  * seek 预览:跳转到指定时间并渲染当前帧(不改变播放/暂停状态)。
@@ -300,17 +324,17 @@ class $ {
300
324
  return a;
301
325
  if (!(Number.isFinite(e) && e >= 0))
302
326
  return this.rejectKeyframe("time 必须为非负有限数");
303
- const s = this.ensureCameraPlayer(), n = this.captureCameraPose(), o = this.resolveFov(t), i = {
327
+ const s = this.ensureCameraPlayer(), i = this.captureCameraPose(), o = this.resolveFov(t), n = {
304
328
  timeStamp: e,
305
- target: n.target,
306
- longitude: n.longitude,
307
- latitude: n.latitude,
308
- distance: n.distance,
329
+ target: i.target,
330
+ longitude: i.longitude,
331
+ latitude: i.latitude,
332
+ distance: i.distance,
309
333
  fov: o
310
334
  };
311
- r != null && r.transition && (i.transition = r.transition), r != null && r.thumbnail && (i.thumbnail = r.thumbnail);
335
+ r != null && r.transition && (n.transition = r.transition), r != null && r.thumbnail && (n.thumbnail = r.thumbnail);
312
336
  const l = s.keyframes.findIndex((c) => c.timeStamp === e);
313
- return l >= 0 ? s.keyframes[l] = i : s.keyframes.push(i), s.keyframes.sort((c, u) => c.timeStamp - u.timeStamp), this.afterKeyframesChanged(s);
337
+ return l >= 0 ? s.keyframes[l] = n : s.keyframes.push(n), s.keyframes.sort((c, u) => c.timeStamp - u.timeStamp), this.afterKeyframesChanged(s);
314
338
  }
315
339
  /**
316
340
  * 更新指定下标关键帧:合并 patch 中出现的字段,按 timeStamp 重排序。
@@ -326,7 +350,7 @@ class $ {
326
350
  if (t.timeStamp !== void 0 && !(Number.isFinite(t.timeStamp) && t.timeStamp >= 0))
327
351
  return this.rejectKeyframe("time 必须为非负有限数");
328
352
  const s = g(g({}, a.keyframes[e]), t);
329
- return a.keyframes[e] = s, a.keyframes.sort((n, o) => n.timeStamp - o.timeStamp), this.afterKeyframesChanged(a);
353
+ return a.keyframes[e] = s, a.keyframes.sort((i, o) => i.timeStamp - o.timeStamp), this.afterKeyframesChanged(a);
330
354
  }
331
355
  /** 移除指定下标关键帧。拒绝(保持序列不变):未加载 script / 无章节 / index 越界。 */
332
356
  removeCameraKeyframe(e) {
@@ -396,9 +420,9 @@ class $ {
396
420
  const s = Number(a);
397
421
  if (!Number.isInteger(s) || s < 0 || s >= t.length)
398
422
  return;
399
- const n = t[s], o = e[s];
400
- let i = n.players.find((u) => u.type === "camera");
401
- i || (i = { name: (l = o.name) != null ? l : "camera", type: "camera", keyframes: [] }, n.players.push(i)), i.keyframes = [...(c = o.keyframes) != null ? c : []].sort((u, f) => u.timeStamp - f.timeStamp), o.coordinateSpace && (i.coordinateSpace = o.coordinateSpace);
423
+ const i = t[s], o = e[s];
424
+ let n = i.players.find((u) => u.type === "camera");
425
+ n || (n = { name: (l = o.name) != null ? l : "camera", type: "camera", keyframes: [] }, i.players.push(n)), n.keyframes = [...(c = o.keyframes) != null ? c : []].sort((u, f) => u.timeStamp - f.timeStamp), o.coordinateSpace && (n.coordinateSpace = o.coordinateSpace);
402
426
  });
403
427
  const r = this.cameraPlayerOf(this.state.currentChapter);
404
428
  r && this.playground.setCameraKeyframes(r.keyframes);
@@ -447,16 +471,16 @@ class $ {
447
471
  var E, C, v, K;
448
472
  if (S.type !== "model")
449
473
  return;
450
- const w = S, P = (v = (C = (E = this.playground) == null ? void 0 : E.loader) == null ? void 0 : C.getDigitalHuman) == null ? void 0 : v.call(C, w.model, w.id), y = P == null ? void 0 : P.container;
474
+ const b = S, P = (v = (C = (E = this.playground) == null ? void 0 : E.loader) == null ? void 0 : C.getDigitalHuman) == null ? void 0 : v.call(C, b.model, b.id), y = P == null ? void 0 : P.container;
451
475
  if (!y)
452
476
  return;
453
477
  (K = y.updateWorldMatrix) == null || K.call(y, !0, !0);
454
- const b = new T.Box3().setFromObject(y);
455
- b.isEmpty() || (a.union(b), s = !0);
478
+ const w = new T.Box3().setFromObject(y);
479
+ w.isEmpty() || (a.union(w), s = !0);
456
480
  }), !s || a.isEmpty())
457
481
  return;
458
- const n = a.getCenter(new T.Vector3()), o = a.getSize(new T.Vector3()).length(), i = (M = (F = (d = this.five).getCurrentState) == null ? void 0 : F.call(d)) != null ? M : {}, l = typeof i.longitude == "number" ? i.longitude : Math.PI / 4, c = typeof i.latitude == "number" ? i.latitude : Math.PI / 5, u = typeof i.fov == "number" && i.fov > 0 ? i.fov : 60, f = this.clamp(o * 2.5, 4, 14);
459
- return { target: n, longitude: l, latitude: c, distance: f, fov: u };
482
+ const i = a.getCenter(new T.Vector3()), o = a.getSize(new T.Vector3()).length(), n = (M = (F = (d = this.five).getCurrentState) == null ? void 0 : F.call(d)) != null ? M : {}, l = typeof n.longitude == "number" ? n.longitude : Math.PI / 4, c = typeof n.latitude == "number" ? n.latitude : Math.PI / 5, u = typeof n.fov == "number" && n.fov > 0 ? n.fov : 60, f = this.clamp(o * 2.5, 4, 14);
483
+ return { target: i, longitude: l, latitude: c, distance: f, fov: u };
460
484
  }
461
485
  /**
462
486
  * 设为当前编辑章节(不开始播放)。该次调用内联动完成:
@@ -510,8 +534,8 @@ class $ {
510
534
  else if (s)
511
535
  s.keyframes = this.cloneKeyframes(r);
512
536
  else {
513
- const n = { name: "camera", type: "camera", keyframes: this.cloneKeyframes(r) };
514
- a.players.push(n);
537
+ const i = { name: "camera", type: "camera", keyframes: this.cloneKeyframes(r) };
538
+ a.players.push(i);
515
539
  }
516
540
  });
517
541
  const t = this.cameraPlayerOf(this.state.currentChapter);
@@ -522,8 +546,8 @@ class $ {
522
546
  const e = this.playground.getClock(), t = e.getTime();
523
547
  let r = e.getDuration();
524
548
  r <= 0 && this.state.currentChapter && (r = N(this.state.currentChapter));
525
- const a = this.getChapters(), s = this.state.currentChapter, n = s ? a.findIndex((o) => o === s || o.name === s.name) : -1;
526
- return { currentTime: t, totalTime: r, currentChapterIndex: n, totalChapters: a.length };
549
+ const a = this.getChapters(), s = this.state.currentChapter, i = s ? a.findIndex((o) => o === s || o.name === s.name) : -1;
550
+ return { currentTime: t, totalTime: r, currentChapterIndex: i, totalChapters: a.length };
527
551
  }
528
552
  /** 注册进度监听;返回反订阅函数 */
529
553
  onProgressChanged(e) {
@@ -545,8 +569,8 @@ class $ {
545
569
  const t = this.getChapters(), r = [];
546
570
  let a = 0;
547
571
  for (let s = 0; s < t.length; s++) {
548
- const n = I(t[s]), o = a, i = o + n;
549
- r.push({ index: s, name: t[s].name, startTime: o, endTime: i, duration: n }), a = i;
572
+ const i = I(t[s]), o = a, n = o + i;
573
+ r.push({ index: s, name: t[s].name, startTime: o, endTime: n, duration: i }), a = n;
550
574
  }
551
575
  return this.groupChapterTimeMapCache = r, this.groupChapterTimeMapCacheScript = e, r;
552
576
  }
@@ -561,14 +585,14 @@ class $ {
561
585
  const e = this.getProgress(), t = this.getGroupChapterTimeMap(), r = t.length === 0 ? 0 : t[t.length - 1].endTime, a = e.currentChapterIndex;
562
586
  let s = 0;
563
587
  if (a >= 0 && a < t.length) {
564
- const o = t[a].startTime, i = this.clamp(e.currentTime, 0, t[a].duration);
565
- s = this.clamp(o + i, 0, r);
588
+ const o = t[a].startTime, n = this.clamp(e.currentTime, 0, t[a].duration);
589
+ s = this.clamp(o + n, 0, r);
566
590
  }
567
- const n = r > 0 ? this.clamp(s / r * 100, 0, 100) : 0;
591
+ const i = r > 0 ? this.clamp(s / r * 100, 0, 100) : 0;
568
592
  return {
569
593
  groupCurrentTime: s,
570
594
  groupTotalTime: r,
571
- percentage: n,
595
+ percentage: i,
572
596
  currentChapterIndex: a,
573
597
  currentChapterTime: e.currentTime,
574
598
  currentChapterTotalTime: e.totalTime,
@@ -605,12 +629,12 @@ class $ {
605
629
  const t = this.getGroupChapterTimeMap();
606
630
  if (t.length === 0)
607
631
  return { success: !1, error: "无章节" };
608
- const r = t[t.length - 1].endTime, a = this.clamp(e, 0, r), { index: s, localTime: n } = this.mapGroupTimeToChapter(a, t), o = s !== this.getCurrentChapterIndex();
632
+ const r = t[t.length - 1].endTime, a = this.clamp(e, 0, r), { index: s, localTime: i } = this.mapGroupTimeToChapter(a, t), o = s !== this.getCurrentChapterIndex();
609
633
  if (this.state.playing && this.state.continuousPlaying && o)
610
- return this.seekRedirect = { index: s, fromTime: n }, this.playground.abortCurrentPlay(), { success: !0 };
611
- o && this.setCurrentChapterForPlayback(s, n);
612
- const i = this.setTimelineTo(n);
613
- return this.emitProgress(), i;
634
+ return this.seekRedirect = { index: s, fromTime: i }, this.playground.abortCurrentPlay(), { success: !0 };
635
+ o && this.setCurrentChapterForPlayback(s, i);
636
+ const n = this.setTimelineTo(i);
637
+ return this.emitProgress(), n;
614
638
  }
615
639
  /** 跳转到组级百分比 [0,100](= seekToGroupTime(clamp(pct,0,100)/100 * groupTotalTime)) */
616
640
  seekToGroupPercentage(e) {
@@ -651,28 +675,28 @@ class $ {
651
675
  }
652
676
  /** 重置播放(保留已加载资源) */
653
677
  reset() {
654
- this.playground.reset(), this.state.playing = !1, this.state.continuousPlaying = !1, this.state.currentChapter = null, this.state.selectedShotIndex = null, this.seekRedirect = null, this.chapterFloorMap && (this.showModelFloor(), this.chapterFloorMap = null), this.unhookFloorModeChange(), this.emitProgress();
678
+ this.playground.reset(), this.state.playing = !1, this.state.continuousPlaying = !1, this.state.currentChapter = null, this.state.selectedShotIndex = null, this.seekRedirect = null, this.chapterFloorMap && (this.showModelFloor(), this.chapterFloorMap = null), this.chapterFloorModel = null, this.unhookFloorModeChange(), this.emitProgress();
655
679
  }
656
680
  /** 销毁插件、释放资源 */
657
681
  dispose() {
658
- this.unsubClockTick && (this.unsubClockTick(), this.unsubClockTick = null), this.chapterFloorMap && (this.showModelFloor(), this.chapterFloorMap = null), this.unhookFloorModeChange(), this.progressListeners.clear(), this.keyframesChangedListeners.clear(), this.currentChapterChangedListeners.clear(), this.groupProgressListeners.clear(), this.cameraEditSnapshot = null, this.playground.dispose();
682
+ this.unsubClockTick && (this.unsubClockTick(), this.unsubClockTick = null), this.chapterFloorMap && (this.showModelFloor(), this.chapterFloorMap = null), this.chapterFloorModel = null, this.unhookFloorModeChange(), this.progressListeners.clear(), this.keyframesChangedListeners.clear(), this.currentChapterChangedListeners.clear(), this.groupProgressListeners.clear(), this.cameraEditSnapshot = null, this.playground.dispose();
659
683
  }
660
684
  /** 预加载模型 / 动画 / 道具(复用 Shared_Core 加载) */
661
685
  preloadResources(e) {
662
686
  return m(this, null, function* () {
663
- const t = [], r = [], a = /* @__PURE__ */ new Set(), s = [], n = /* @__PURE__ */ new Map();
687
+ const t = [], r = [], a = /* @__PURE__ */ new Set(), s = [], i = /* @__PURE__ */ new Map();
664
688
  e.chapters.forEach((o) => {
665
- o.players.forEach((i) => {
666
- if (i.type !== "model")
689
+ o.players.forEach((n) => {
690
+ if (n.type !== "model")
667
691
  return;
668
- const l = i;
669
- t.push(l.model), r.push(i.id), l.keyframes.forEach((c) => {
692
+ const l = n;
693
+ t.push(l.model), r.push(n.id), l.keyframes.forEach((c) => {
670
694
  var f, d;
671
695
  if (!c.animation)
672
696
  return;
673
697
  a.add(c.animation.url);
674
698
  const u = c.animation.item;
675
- u && (s.push(u.url), n.set(u.url, {
699
+ u && (s.push(u.url), i.set(u.url, {
676
700
  position: (f = u.position) != null ? f : [0, 0, 0],
677
701
  rotation: (d = u.rotation) != null ? d : [0, 0, 0]
678
702
  }));
@@ -680,7 +704,7 @@ class $ {
680
704
  });
681
705
  }), yield Promise.all([
682
706
  this.playground.loader.loadModels(t, r),
683
- this.playground.loader.loadItems(s, n),
707
+ this.playground.loader.loadItems(s, i),
684
708
  this.playground.loader.loadAnimations(Array.from(a))
685
709
  ]);
686
710
  });
@@ -786,7 +810,7 @@ class $ {
786
810
  const r = this.cameraPlayerOf(t[e]);
787
811
  if (!r || r.keyframes.length === 0)
788
812
  return null;
789
- const a = new O();
813
+ const a = new V();
790
814
  return a.setKeyframes(r.keyframes), a;
791
815
  }
792
816
  /** 深拷贝关键帧序列(数组字段亦深拷贝),供快照/还原使用(Mapview 位姿) */
@@ -72,6 +72,8 @@ export declare class PerformancePlayground {
72
72
  setTimelineTo(time: number): void;
73
73
  /** 运镜开关(透传到 CameraDirector,立即生效) */
74
74
  setCameraDirectionEnabled(enabled: boolean): void;
75
+ /** 运动轨迹线开关(默认关闭;透传到 loader,作用于全部 DigitalHuman) */
76
+ setTraceVisible(visible: boolean): void;
75
77
  /**
76
78
  * 加法式新增:立即将一个 CameraState 应用到 five(透传到 CameraDirector,复用其桥实例)。
77
79
  * 供 controller 的「章节默认视角」应用使用;不改变播放/时钟状态、不绑定轨道。