@shapediver/viewer.shared.types 1.15.6 → 2.0.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 (260) hide show
  1. package/dist/implementation/data/AnimationData.d.ts +32 -0
  2. package/dist/implementation/data/AnimationData.d.ts.map +1 -0
  3. package/dist/{data → implementation/data}/AnimationData.js +8 -3
  4. package/dist/implementation/data/AnimationData.js.map +1 -0
  5. package/dist/implementation/data/BoneData.d.ts +15 -0
  6. package/dist/implementation/data/BoneData.d.ts.map +1 -0
  7. package/dist/implementation/data/BoneData.js +25 -0
  8. package/dist/implementation/data/BoneData.js.map +1 -0
  9. package/dist/{data → implementation/data}/CustomData.d.ts +4 -3
  10. package/dist/implementation/data/CustomData.d.ts.map +1 -0
  11. package/dist/{data → implementation/data}/CustomData.js +0 -0
  12. package/dist/implementation/data/CustomData.js.map +1 -0
  13. package/dist/{data → implementation/data}/GeometryData.d.ts +31 -39
  14. package/dist/implementation/data/GeometryData.d.ts.map +1 -0
  15. package/dist/{data → implementation/data}/GeometryData.js +9 -16
  16. package/dist/implementation/data/GeometryData.js.map +1 -0
  17. package/dist/{data → implementation/data}/HTMLElementAnchorData.d.ts +20 -40
  18. package/dist/implementation/data/HTMLElementAnchorData.d.ts.map +1 -0
  19. package/dist/{data → implementation/data}/HTMLElementAnchorData.js +15 -15
  20. package/dist/implementation/data/HTMLElementAnchorData.js.map +1 -0
  21. package/dist/implementation/material/AbstractMaterialData.d.ts +64 -0
  22. package/dist/implementation/material/AbstractMaterialData.d.ts.map +1 -0
  23. package/dist/{data → implementation}/material/AbstractMaterialData.js +6 -22
  24. package/dist/implementation/material/AbstractMaterialData.js.map +1 -0
  25. package/dist/{data → implementation}/material/MapData.d.ts +4 -16
  26. package/dist/implementation/material/MapData.d.ts.map +1 -0
  27. package/dist/{data → implementation}/material/MapData.js +10 -23
  28. package/dist/implementation/material/MapData.js.map +1 -0
  29. package/dist/implementation/material/MaterialSpecularGlossinessData.d.ts +27 -0
  30. package/dist/implementation/material/MaterialSpecularGlossinessData.d.ts.map +1 -0
  31. package/dist/{data → implementation}/material/MaterialSpecularGlossinessData.js +26 -25
  32. package/dist/implementation/material/MaterialSpecularGlossinessData.js.map +1 -0
  33. package/dist/implementation/material/MaterialStandardData.d.ts +75 -0
  34. package/dist/implementation/material/MaterialStandardData.d.ts.map +1 -0
  35. package/dist/{data → implementation}/material/MaterialStandardData.js +5 -4
  36. package/dist/implementation/material/MaterialStandardData.js.map +1 -0
  37. package/dist/implementation/material/MaterialUnlitData.d.ts +15 -0
  38. package/dist/implementation/material/MaterialUnlitData.d.ts.map +1 -0
  39. package/dist/{data → implementation}/material/MaterialUnlitData.js +5 -5
  40. package/dist/implementation/material/MaterialUnlitData.js.map +1 -0
  41. package/dist/implementation/material/MaterialVariantsData.d.ts +16 -0
  42. package/dist/implementation/material/MaterialVariantsData.d.ts.map +1 -0
  43. package/dist/{data → implementation}/material/MaterialVariantsData.js +0 -0
  44. package/dist/implementation/material/MaterialVariantsData.js.map +1 -0
  45. package/dist/implementation/sdtf/SDTFAttributesData.d.ts +23 -0
  46. package/dist/implementation/sdtf/SDTFAttributesData.d.ts.map +1 -0
  47. package/dist/{data → implementation}/sdtf/SDTFAttributesData.js +0 -0
  48. package/dist/implementation/sdtf/SDTFAttributesData.js.map +1 -0
  49. package/dist/implementation/sdtf/SDTFItemData.d.ts +20 -0
  50. package/dist/implementation/sdtf/SDTFItemData.d.ts.map +1 -0
  51. package/dist/{data → implementation}/sdtf/SDTFItemData.js +0 -0
  52. package/dist/implementation/sdtf/SDTFItemData.js.map +1 -0
  53. package/dist/implementation/sdtf/SDTFOverviewData.d.ts +13 -0
  54. package/dist/implementation/sdtf/SDTFOverviewData.d.ts.map +1 -0
  55. package/dist/{data/sdtf/SDTFAttributeOverview.js → implementation/sdtf/SDTFOverviewData.js} +10 -10
  56. package/dist/{data/sdtf/SDTFAttributeOverview.js.map → implementation/sdtf/SDTFOverviewData.js.map} +1 -1
  57. package/dist/index.d.ts +45 -27
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +32 -30
  60. package/dist/index.js.map +1 -1
  61. package/dist/interfaces/data/IAnimationData.d.ts +27 -0
  62. package/dist/interfaces/data/IAnimationData.d.ts.map +1 -0
  63. package/dist/{events/ISettingsEvent.js → interfaces/data/IAnimationData.js} +1 -1
  64. package/dist/interfaces/data/IAnimationData.js.map +1 -0
  65. package/dist/interfaces/data/IBoneData.d.ts +5 -0
  66. package/dist/interfaces/data/IBoneData.d.ts.map +1 -0
  67. package/dist/{events/IViewerEvent.js → interfaces/data/IBoneData.js} +1 -1
  68. package/dist/interfaces/data/IBoneData.js.map +1 -0
  69. package/dist/interfaces/data/ICustomData.d.ts +8 -0
  70. package/dist/interfaces/data/ICustomData.d.ts.map +1 -0
  71. package/dist/interfaces/data/ICustomData.js +3 -0
  72. package/dist/interfaces/data/ICustomData.js.map +1 -0
  73. package/dist/interfaces/data/IGeometryData.d.ts +61 -0
  74. package/dist/interfaces/data/IGeometryData.d.ts.map +1 -0
  75. package/dist/interfaces/data/IGeometryData.js +14 -0
  76. package/dist/interfaces/data/IGeometryData.js.map +1 -0
  77. package/dist/interfaces/data/IHTMLElementAnchorData.d.ts +49 -0
  78. package/dist/interfaces/data/IHTMLElementAnchorData.d.ts.map +1 -0
  79. package/dist/interfaces/data/IHTMLElementAnchorData.js +3 -0
  80. package/dist/interfaces/data/IHTMLElementAnchorData.js.map +1 -0
  81. package/dist/interfaces/data/material/IMapData.d.ts +31 -0
  82. package/dist/interfaces/data/material/IMapData.d.ts.map +1 -0
  83. package/dist/interfaces/data/material/IMapData.js +20 -0
  84. package/dist/interfaces/data/material/IMapData.js.map +1 -0
  85. package/dist/interfaces/data/material/IMaterialAbstractData.d.ts +59 -0
  86. package/dist/interfaces/data/material/IMaterialAbstractData.d.ts.map +1 -0
  87. package/dist/interfaces/data/material/IMaterialAbstractData.js +21 -0
  88. package/dist/interfaces/data/material/IMaterialAbstractData.js.map +1 -0
  89. package/dist/interfaces/data/material/IMaterialSpecularGlossinessDataProperties.d.ts +19 -0
  90. package/dist/interfaces/data/material/IMaterialSpecularGlossinessDataProperties.d.ts.map +1 -0
  91. package/dist/interfaces/data/material/IMaterialSpecularGlossinessDataProperties.js +4 -0
  92. package/dist/interfaces/data/material/IMaterialSpecularGlossinessDataProperties.js.map +1 -0
  93. package/dist/interfaces/data/material/IMaterialStandardData.d.ts +67 -0
  94. package/dist/interfaces/data/material/IMaterialStandardData.d.ts.map +1 -0
  95. package/dist/interfaces/data/material/IMaterialStandardData.js +4 -0
  96. package/dist/interfaces/data/material/IMaterialStandardData.js.map +1 -0
  97. package/dist/interfaces/data/material/IMaterialUnlitData.d.ts +8 -0
  98. package/dist/interfaces/data/material/IMaterialUnlitData.d.ts.map +1 -0
  99. package/dist/interfaces/data/material/IMaterialUnlitData.js +4 -0
  100. package/dist/interfaces/data/material/IMaterialUnlitData.js.map +1 -0
  101. package/dist/interfaces/data/material/IMaterialVariantsData.d.ts +9 -0
  102. package/dist/interfaces/data/material/IMaterialVariantsData.d.ts.map +1 -0
  103. package/dist/interfaces/data/material/IMaterialVariantsData.js +3 -0
  104. package/dist/interfaces/data/material/IMaterialVariantsData.js.map +1 -0
  105. package/dist/interfaces/events/EventResponseMapping.d.ts +37 -0
  106. package/dist/interfaces/events/EventResponseMapping.d.ts.map +1 -0
  107. package/dist/interfaces/events/EventResponseMapping.js +4 -0
  108. package/dist/interfaces/events/EventResponseMapping.js.map +1 -0
  109. package/dist/interfaces/events/ICameraEvent.d.ts +5 -0
  110. package/dist/interfaces/events/ICameraEvent.d.ts.map +1 -0
  111. package/dist/{events → interfaces/events}/ICameraEvent.js +0 -0
  112. package/dist/interfaces/events/ICameraEvent.js.map +1 -0
  113. package/dist/interfaces/events/IDragEvent.d.ts +8 -0
  114. package/dist/interfaces/events/IDragEvent.d.ts.map +1 -0
  115. package/dist/interfaces/events/IDragEvent.js +3 -0
  116. package/dist/interfaces/events/IDragEvent.js.map +1 -0
  117. package/dist/interfaces/events/IHoverEvent.d.ts +6 -0
  118. package/dist/interfaces/events/IHoverEvent.d.ts.map +1 -0
  119. package/dist/interfaces/events/IHoverEvent.js +3 -0
  120. package/dist/interfaces/events/IHoverEvent.js.map +1 -0
  121. package/dist/interfaces/events/IMultiSelectEvent.d.ts +7 -0
  122. package/dist/interfaces/events/IMultiSelectEvent.d.ts.map +1 -0
  123. package/dist/{events/IEnvironmentEvent.js → interfaces/events/IMultiSelectEvent.js} +1 -1
  124. package/dist/interfaces/events/IMultiSelectEvent.js.map +1 -0
  125. package/dist/interfaces/events/ISceneEvent.d.ts +9 -0
  126. package/dist/interfaces/events/ISceneEvent.d.ts.map +1 -0
  127. package/dist/{events → interfaces/events}/ISceneEvent.js +0 -0
  128. package/dist/interfaces/events/ISceneEvent.js.map +1 -0
  129. package/dist/interfaces/events/ISelectEvent.d.ts +6 -0
  130. package/dist/interfaces/events/ISelectEvent.d.ts.map +1 -0
  131. package/dist/interfaces/events/ISelectEvent.js +3 -0
  132. package/dist/interfaces/events/ISelectEvent.js.map +1 -0
  133. package/dist/{events → interfaces/events}/ISessionEvent.d.ts +0 -0
  134. package/dist/interfaces/events/ISessionEvent.d.ts.map +1 -0
  135. package/dist/{events → interfaces/events}/ISessionEvent.js +0 -0
  136. package/dist/interfaces/events/ISessionEvent.js.map +1 -0
  137. package/dist/{events → interfaces/events}/ITaskEvent.d.ts +3 -3
  138. package/dist/interfaces/events/ITaskEvent.d.ts.map +1 -0
  139. package/dist/interfaces/events/ITaskEvent.js +15 -0
  140. package/dist/interfaces/events/ITaskEvent.js.map +1 -0
  141. package/dist/interfaces/events/IViewportEvent.d.ts +5 -0
  142. package/dist/interfaces/events/IViewportEvent.d.ts.map +1 -0
  143. package/dist/interfaces/events/IViewportEvent.js +3 -0
  144. package/dist/interfaces/events/IViewportEvent.js.map +1 -0
  145. package/dist/interfaces/sdtf/ISDTFAttributeVisualizationData.d.ts +7 -0
  146. package/dist/interfaces/sdtf/ISDTFAttributeVisualizationData.d.ts.map +1 -0
  147. package/dist/interfaces/sdtf/ISDTFAttributeVisualizationData.js +3 -0
  148. package/dist/interfaces/sdtf/ISDTFAttributeVisualizationData.js.map +1 -0
  149. package/dist/interfaces/sdtf/ISDTFAttributesData.d.ts +13 -0
  150. package/dist/interfaces/sdtf/ISDTFAttributesData.d.ts.map +1 -0
  151. package/dist/interfaces/sdtf/ISDTFAttributesData.js +3 -0
  152. package/dist/interfaces/sdtf/ISDTFAttributesData.js.map +1 -0
  153. package/dist/interfaces/sdtf/ISDTFItemData.d.ts +12 -0
  154. package/dist/interfaces/sdtf/ISDTFItemData.d.ts.map +1 -0
  155. package/dist/interfaces/sdtf/ISDTFItemData.js +3 -0
  156. package/dist/interfaces/sdtf/ISDTFItemData.js.map +1 -0
  157. package/dist/interfaces/sdtf/ISDTFOverviewData.d.ts +17 -0
  158. package/dist/interfaces/sdtf/ISDTFOverviewData.d.ts.map +1 -0
  159. package/dist/interfaces/sdtf/ISDTFOverviewData.js +4 -0
  160. package/dist/interfaces/sdtf/ISDTFOverviewData.js.map +1 -0
  161. package/package.json +13 -10
  162. package/src/implementation/data/AnimationData.ts +286 -0
  163. package/src/implementation/data/BoneData.ts +31 -0
  164. package/src/implementation/data/CustomData.ts +51 -0
  165. package/src/implementation/data/GeometryData.ts +399 -0
  166. package/src/implementation/data/HTMLElementAnchorData.ts +365 -0
  167. package/src/implementation/material/AbstractMaterialData.ts +233 -0
  168. package/src/implementation/material/MapData.ts +108 -0
  169. package/src/implementation/material/MaterialSpecularGlossinessData.ts +166 -0
  170. package/src/implementation/material/MaterialStandardData.ts +478 -0
  171. package/src/implementation/material/MaterialUnlitData.ts +91 -0
  172. package/src/implementation/material/MaterialVariantsData.ts +60 -0
  173. package/src/implementation/sdtf/SDTFAttributesData.ts +118 -0
  174. package/src/implementation/sdtf/SDTFItemData.ts +64 -0
  175. package/src/implementation/sdtf/SDTFOverviewData.ts +79 -0
  176. package/src/index.ts +72 -0
  177. package/src/interfaces/data/IAnimationData.ts +42 -0
  178. package/src/interfaces/data/IBoneData.ts +9 -0
  179. package/src/interfaces/data/ICustomData.ts +15 -0
  180. package/src/interfaces/data/IGeometryData.ts +87 -0
  181. package/src/interfaces/data/IHTMLElementAnchorData.ts +66 -0
  182. package/src/interfaces/data/material/IMapData.ts +42 -0
  183. package/src/interfaces/data/material/IMaterialAbstractData.ts +76 -0
  184. package/src/interfaces/data/material/IMaterialSpecularGlossinessDataProperties.ts +29 -0
  185. package/src/interfaces/data/material/IMaterialStandardData.ts +77 -0
  186. package/src/interfaces/data/material/IMaterialUnlitData.ts +12 -0
  187. package/src/interfaces/data/material/IMaterialVariantsData.ts +19 -0
  188. package/src/interfaces/events/EventResponseMapping.ts +37 -0
  189. package/src/interfaces/events/ICameraEvent.ts +5 -0
  190. package/src/interfaces/events/IDragEvent.ts +10 -0
  191. package/src/interfaces/events/IHoverEvent.ts +7 -0
  192. package/src/interfaces/events/IMultiSelectEvent.ts +8 -0
  193. package/src/interfaces/events/ISceneEvent.ts +6 -0
  194. package/src/interfaces/events/ISelectEvent.ts +7 -0
  195. package/src/interfaces/events/ISessionEvent.ts +5 -0
  196. package/src/interfaces/events/ITaskEvent.ts +20 -0
  197. package/src/interfaces/events/IViewportEvent.ts +5 -0
  198. package/src/interfaces/sdtf/ISDTFAttributeVisualizationData.ts +7 -0
  199. package/src/interfaces/sdtf/ISDTFAttributesData.ts +27 -0
  200. package/src/interfaces/sdtf/ISDTFItemData.ts +23 -0
  201. package/src/interfaces/sdtf/ISDTFOverviewData.ts +31 -0
  202. package/tsconfig.json +17 -0
  203. package/dist/data/AnimationData.d.ts +0 -39
  204. package/dist/data/AnimationData.d.ts.map +0 -1
  205. package/dist/data/AnimationData.js.map +0 -1
  206. package/dist/data/CustomData.d.ts.map +0 -1
  207. package/dist/data/CustomData.js.map +0 -1
  208. package/dist/data/GeometryData.d.ts.map +0 -1
  209. package/dist/data/GeometryData.js.map +0 -1
  210. package/dist/data/HTMLElementAnchorData.d.ts.map +0 -1
  211. package/dist/data/HTMLElementAnchorData.js.map +0 -1
  212. package/dist/data/material/AbstractMaterialData.d.ts +0 -96
  213. package/dist/data/material/AbstractMaterialData.d.ts.map +0 -1
  214. package/dist/data/material/AbstractMaterialData.js.map +0 -1
  215. package/dist/data/material/MapData.d.ts.map +0 -1
  216. package/dist/data/material/MapData.js.map +0 -1
  217. package/dist/data/material/MaterialSpecularGlossinessData.d.ts +0 -33
  218. package/dist/data/material/MaterialSpecularGlossinessData.d.ts.map +0 -1
  219. package/dist/data/material/MaterialSpecularGlossinessData.js.map +0 -1
  220. package/dist/data/material/MaterialStandardData.d.ts +0 -105
  221. package/dist/data/material/MaterialStandardData.d.ts.map +0 -1
  222. package/dist/data/material/MaterialStandardData.js.map +0 -1
  223. package/dist/data/material/MaterialUnlitData.d.ts +0 -16
  224. package/dist/data/material/MaterialUnlitData.d.ts.map +0 -1
  225. package/dist/data/material/MaterialUnlitData.js.map +0 -1
  226. package/dist/data/material/MaterialVariantsData.d.ts +0 -15
  227. package/dist/data/material/MaterialVariantsData.d.ts.map +0 -1
  228. package/dist/data/material/MaterialVariantsData.js.map +0 -1
  229. package/dist/data/sdtf/SDTFAttributeOverview.d.ts +0 -22
  230. package/dist/data/sdtf/SDTFAttributeOverview.d.ts.map +0 -1
  231. package/dist/data/sdtf/SDTFAttributeVisualization.d.ts +0 -22
  232. package/dist/data/sdtf/SDTFAttributeVisualization.d.ts.map +0 -1
  233. package/dist/data/sdtf/SDTFAttributeVisualization.js +0 -200
  234. package/dist/data/sdtf/SDTFAttributeVisualization.js.map +0 -1
  235. package/dist/data/sdtf/SDTFAttributesData.d.ts +0 -21
  236. package/dist/data/sdtf/SDTFAttributesData.d.ts.map +0 -1
  237. package/dist/data/sdtf/SDTFAttributesData.js.map +0 -1
  238. package/dist/data/sdtf/SDTFItemData.d.ts +0 -19
  239. package/dist/data/sdtf/SDTFItemData.d.ts.map +0 -1
  240. package/dist/data/sdtf/SDTFItemData.js.map +0 -1
  241. package/dist/events/ICameraEvent.d.ts +0 -5
  242. package/dist/events/ICameraEvent.d.ts.map +0 -1
  243. package/dist/events/ICameraEvent.js.map +0 -1
  244. package/dist/events/IEnvironmentEvent.d.ts +0 -5
  245. package/dist/events/IEnvironmentEvent.d.ts.map +0 -1
  246. package/dist/events/IEnvironmentEvent.js.map +0 -1
  247. package/dist/events/ISceneEvent.d.ts +0 -9
  248. package/dist/events/ISceneEvent.d.ts.map +0 -1
  249. package/dist/events/ISceneEvent.js.map +0 -1
  250. package/dist/events/ISessionEvent.d.ts.map +0 -1
  251. package/dist/events/ISessionEvent.js.map +0 -1
  252. package/dist/events/ISettingsEvent.d.ts +0 -24
  253. package/dist/events/ISettingsEvent.d.ts.map +0 -1
  254. package/dist/events/ISettingsEvent.js.map +0 -1
  255. package/dist/events/ITaskEvent.d.ts.map +0 -1
  256. package/dist/events/ITaskEvent.js +0 -15
  257. package/dist/events/ITaskEvent.js.map +0 -1
  258. package/dist/events/IViewerEvent.d.ts +0 -5
  259. package/dist/events/IViewerEvent.d.ts.map +0 -1
  260. package/dist/events/IViewerEvent.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISceneEvent.js","sourceRoot":"","sources":["../../../src/interfaces/events/ISceneEvent.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
2
+ import { IViewportEvent } from "./IViewportEvent";
3
+ export interface ISelectEvent extends IViewportEvent {
4
+ node: ITreeNode;
5
+ }
6
+ //# sourceMappingURL=ISelectEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectEvent.d.ts","sourceRoot":"","sources":["../../../src/interfaces/events/ISelectEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,YAAa,SAAQ,cAAc;IAEhD,IAAI,EAAE,SAAS,CAAA;CAClB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISelectEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISelectEvent.js","sourceRoot":"","sources":["../../../src/interfaces/events/ISelectEvent.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISessionEvent.d.ts","sourceRoot":"","sources":["../../../src/interfaces/events/ISessionEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,MAAM,WAAW,aAAc,SAAQ,MAAM;IACzC,SAAS,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISessionEvent.js","sourceRoot":"","sources":["../../../src/interfaces/events/ISessionEvent.ts"],"names":[],"mappings":""}
@@ -1,16 +1,16 @@
1
1
  import { IEvent } from "@shapediver/viewer.shared.services";
2
- export declare enum TASKTYPE {
2
+ export declare enum TASK_TYPE {
3
3
  AR_LOADING = "ar_loading",
4
4
  ENVIRONMENT_MAP_LOADING = "environment_map_loading",
5
5
  SESSION_CUSTOMIZATION = "session_customization",
6
6
  SESSION_CREATION = "session_creation",
7
7
  SESSION_INITIAL_OUTPUTS_LOADED = "session_initial_outputs_loaded",
8
8
  SESSION_OUTPUTS_UPDATE = "session_outputs_update",
9
- VIEWER_CREATION = "viewer_creation",
9
+ VIEWPORT_CREATION = "viewer_creation",
10
10
  EXPORT_REQUEST = "export_request"
11
11
  }
12
12
  export interface ITaskEvent extends IEvent {
13
- type: TASKTYPE;
13
+ type: TASK_TYPE;
14
14
  id: string;
15
15
  progress: number;
16
16
  data?: any;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITaskEvent.d.ts","sourceRoot":"","sources":["../../../src/interfaces/events/ITaskEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,oBAAY,SAAS;IACjB,UAAU,eAAe;IACzB,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;IAC/C,gBAAgB,qBAAqB;IACrC,8BAA8B,mCAAmC;IACjE,sBAAsB,2BAA2B;IACjD,iBAAiB,oBAAoB;IACrC,cAAc,mBAAmB;CACpC;AAED,MAAM,WAAW,UAAW,SAAQ,MAAM;IACtC,IAAI,EAAE,SAAS,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TASK_TYPE = void 0;
4
+ var TASK_TYPE;
5
+ (function (TASK_TYPE) {
6
+ TASK_TYPE["AR_LOADING"] = "ar_loading";
7
+ TASK_TYPE["ENVIRONMENT_MAP_LOADING"] = "environment_map_loading";
8
+ TASK_TYPE["SESSION_CUSTOMIZATION"] = "session_customization";
9
+ TASK_TYPE["SESSION_CREATION"] = "session_creation";
10
+ TASK_TYPE["SESSION_INITIAL_OUTPUTS_LOADED"] = "session_initial_outputs_loaded";
11
+ TASK_TYPE["SESSION_OUTPUTS_UPDATE"] = "session_outputs_update";
12
+ TASK_TYPE["VIEWPORT_CREATION"] = "viewer_creation";
13
+ TASK_TYPE["EXPORT_REQUEST"] = "export_request";
14
+ })(TASK_TYPE = exports.TASK_TYPE || (exports.TASK_TYPE = {}));
15
+ //# sourceMappingURL=ITaskEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITaskEvent.js","sourceRoot":"","sources":["../../../src/interfaces/events/ITaskEvent.ts"],"names":[],"mappings":";;;AAEA,IAAY,SASX;AATD,WAAY,SAAS;IACjB,sCAAyB,CAAA;IACzB,gEAAmD,CAAA;IACnD,4DAA+C,CAAA;IAC/C,kDAAqC,CAAA;IACrC,8EAAiE,CAAA;IACjE,8DAAiD,CAAA;IACjD,kDAAqC,CAAA;IACrC,8CAAiC,CAAA;AACrC,CAAC,EATW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QASpB"}
@@ -0,0 +1,5 @@
1
+ import { IEvent } from "@shapediver/viewer.shared.services";
2
+ export interface IViewportEvent extends IEvent {
3
+ viewportId: string;
4
+ }
5
+ //# sourceMappingURL=IViewportEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IViewportEvent.d.ts","sourceRoot":"","sources":["../../../src/interfaces/events/IViewportEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,MAAM,WAAW,cAAe,SAAQ,MAAM;IAC1C,UAAU,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IViewportEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IViewportEvent.js","sourceRoot":"","sources":["../../../src/interfaces/events/IViewportEvent.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { mat4 } from "gl-matrix";
2
+ import { IMaterialAbstractData } from "../data/material/IMaterialAbstractData";
3
+ export interface ISDTFAttributeVisualizationData {
4
+ material: IMaterialAbstractData;
5
+ matrix: mat4;
6
+ }
7
+ //# sourceMappingURL=ISDTFAttributeVisualizationData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFAttributeVisualizationData.d.ts","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFAttributeVisualizationData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAE/E,MAAM,WAAW,+BAA+B;IAC5C,QAAQ,EAAE,qBAAqB,CAAC;IAChC,MAAM,EAAE,IAAI,CAAA;CACf"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISDTFAttributeVisualizationData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFAttributeVisualizationData.js","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFAttributeVisualizationData.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import { ITreeNodeData } from "@shapediver/viewer.shared.node-tree";
2
+ import { SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1';
3
+ export interface ISDTFAttributeData {
4
+ readonly typeHint: SdtfTypeHintName | string;
5
+ readonly value: any;
6
+ }
7
+ export interface ISDTFAttributesData extends ITreeNodeData {
8
+ readonly attributes: {
9
+ [key: string]: ISDTFAttributeData;
10
+ };
11
+ clone(): ISDTFAttributesData;
12
+ }
13
+ //# sourceMappingURL=ISDTFAttributesData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFAttributesData.d.ts","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFAttributesData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE1D,MAAM,WAAW,kBAAkB;IAGjC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;CAGrB;AAED,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IAGxD,QAAQ,CAAC,UAAU,EAAE;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAClC,CAAC;IAMF,KAAK,IAAI,mBAAmB,CAAC;CAG9B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISDTFAttributesData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFAttributesData.js","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFAttributesData.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import { ITreeNodeData } from "@shapediver/viewer.shared.node-tree";
2
+ import { ISDTFAttributeData } from "./ISDTFAttributesData";
3
+ import { SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1';
4
+ export interface ISDTFItemData extends ITreeNodeData {
5
+ readonly attributes: {
6
+ [key: string]: ISDTFAttributeData;
7
+ };
8
+ readonly typeHint: SdtfTypeHintName | string;
9
+ readonly value: any;
10
+ clone(): ISDTFItemData;
11
+ }
12
+ //# sourceMappingURL=ISDTFItemData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFItemData.d.ts","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFItemData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE1D,MAAM,WAAW,aAAc,SAAQ,aAAa;IAGhD,QAAQ,CAAC,UAAU,EAAE;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KACpC,CAAA;IAED,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAAA;IAC5C,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;IAMpB,KAAK,IAAI,aAAa,CAAC;CAG1B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ISDTFItemData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFItemData.js","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFItemData.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import { ITreeNodeData } from "@shapediver/viewer.shared.node-tree";
2
+ import { SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1';
3
+ export interface ISDTFOverview {
4
+ [key: string]: {
5
+ typeHint: SdtfTypeHintName | string;
6
+ count: number;
7
+ values?: string[];
8
+ min?: number;
9
+ max?: number;
10
+ }[];
11
+ }
12
+ export interface ISDTFOverviewData extends ITreeNodeData {
13
+ readonly overview: ISDTFOverview;
14
+ clone(): ISDTFOverviewData;
15
+ merge(data: ISDTFOverviewData): void;
16
+ }
17
+ //# sourceMappingURL=ISDTFOverviewData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFOverviewData.d.ts","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFOverviewData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE1D,MAAM,WAAW,aAAa;IAG1B,CAAC,GAAG,EAAE,MAAM,GAAG;QACX,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CAGP;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IAGpD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAMjC,KAAK,IAAI,iBAAiB,CAAC;IAC3B,KAAK,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAGxC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ ;
4
+ //# sourceMappingURL=ISDTFOverviewData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISDTFOverviewData.js","sourceRoot":"","sources":["../../../src/interfaces/sdtf/ISDTFOverviewData.ts"],"names":[],"mappings":";;AAeC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapediver/viewer.shared.types",
3
- "version": "1.15.6",
3
+ "version": "2.0.1",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "Michael Oppitz <michael@shapediver.com>",
@@ -10,7 +10,11 @@
10
10
  "test": "__tests__"
11
11
  },
12
12
  "files": [
13
- "dist"
13
+ "dist",
14
+ "src",
15
+ "package.json",
16
+ "README.md",
17
+ "tsconfig.json"
14
18
  ],
15
19
  "publishConfig": {
16
20
  "access": "public"
@@ -20,11 +24,10 @@
20
24
  "url": "git+https://github.com/shapediver/Viewer.git"
21
25
  },
22
26
  "scripts": {
23
- "test": "bash ../../scripts/test.sh",
24
27
  "check": "tsc --noEmit",
25
- "build": "bash ../../scripts/build.sh",
26
- "build-watch": "bash ../../scripts/build-watch.sh",
27
- "build-dep": "bash ../../scripts/build-dep.sh"
28
+ "build": "bash ../../scripts/building/build.sh",
29
+ "build-watch": "bash ../../scripts/building/build-watch.sh",
30
+ "build-dep": "bash ../../scripts/building/build-dep.sh"
28
31
  },
29
32
  "bugs": {
30
33
  "url": "https://github.com/shapediver/Viewer/issues"
@@ -37,11 +40,11 @@
37
40
  },
38
41
  "dependencies": {
39
42
  "@shapediver/sdk.sdtf-v1": "1.0.0",
40
- "@shapediver/viewer.shared.math": "1.15.6",
41
- "@shapediver/viewer.shared.node-tree": "1.15.6",
42
- "@shapediver/viewer.shared.services": "1.15.6",
43
+ "@shapediver/viewer.shared.math": "2.0.1",
44
+ "@shapediver/viewer.shared.node-tree": "2.0.1",
45
+ "@shapediver/viewer.shared.services": "2.0.1",
43
46
  "gl-matrix": "3.3.0",
44
47
  "tsyringe": "^4.5.0"
45
48
  },
46
- "gitHead": "a127cf8efdcfdbfc99a94ce223475ecc82556952"
49
+ "gitHead": "439d43d5219976059b89ab173d54cdafdd1f5c20"
47
50
  }
@@ -0,0 +1,286 @@
1
+ import { AbstractTreeNodeData, ITransformation, ITreeNode, ITreeNodeData } from '@shapediver/viewer.shared.node-tree'
2
+ import { mat4, quat, vec3, vec4 } from 'gl-matrix';
3
+ import { IAnimationData, IAnimationTrack } from '../../interfaces/data/IAnimationData';
4
+
5
+
6
+ export class AnimationData extends AbstractTreeNodeData implements IAnimationData {
7
+ // #region Properties (8)
8
+
9
+ #animate: boolean = false;
10
+ #animationTime: number = 0;
11
+ #duration: number;
12
+ #name: string;
13
+ #repeat: boolean = false;
14
+ #start: number;
15
+ #started: boolean = false;
16
+ #tracks: IAnimationTrack[];
17
+ #reset: boolean = true;
18
+ #nodeIds: string[] = [];
19
+
20
+ // #endregion Properties (8)
21
+
22
+ // #region Constructors (1)
23
+
24
+ /**
25
+ * Creates a custom data node.
26
+ *
27
+ * @param _data the data as key- value pairs
28
+ * @param id the id
29
+ */
30
+ constructor(
31
+ name: string,
32
+ tracks: IAnimationTrack[],
33
+ start: number,
34
+ duration: number,
35
+ id?: string
36
+ ) {
37
+ super(id);
38
+ this.#name = name;
39
+ this.#tracks = tracks;
40
+ this.#start = start;
41
+ this.#duration = duration;
42
+ }
43
+
44
+ // #endregion Constructors (1)
45
+
46
+ // #region Public Accessors (9)
47
+
48
+ public get animate(): boolean {
49
+ return this.#animate;
50
+ }
51
+
52
+ public get animationTime(): number {
53
+ return this.#animationTime;
54
+ }
55
+
56
+ public set animationTime(value: number) {
57
+ this.#animationTime = value;
58
+ }
59
+
60
+ public get duration(): number {
61
+ return this.#duration;
62
+ }
63
+
64
+ public get name(): string {
65
+ return this.#name;
66
+ }
67
+
68
+ public get repeat(): boolean {
69
+ return this.#repeat;
70
+ }
71
+
72
+ public set repeat(value: boolean) {
73
+ this.#repeat = value;
74
+ }
75
+
76
+ public get reset(): boolean {
77
+ return this.#reset;
78
+ }
79
+
80
+ public set reset(value: boolean) {
81
+ this.#reset = value;
82
+ }
83
+
84
+ public get start(): number {
85
+ return this.#start;
86
+ }
87
+
88
+ public get tracks(): IAnimationTrack[] {
89
+ return this.#tracks;
90
+ }
91
+
92
+ // #endregion Public Accessors (9)
93
+
94
+ // #region Public Methods (5)
95
+
96
+ /**
97
+ * Clones the scene graph data.
98
+ */
99
+ public clone(): IAnimationData {
100
+ return new AnimationData(this.name, this.#tracks, this.start, this.duration, this.id);
101
+ }
102
+
103
+ public continueAnimation() {
104
+ if (this.#started) this.#animate = true;
105
+ }
106
+
107
+ public pauseAnimation() {
108
+ if (this.#started) this.#animate = false;
109
+ }
110
+
111
+ public startAnimation() {
112
+ this.#animationTime = 0;
113
+ this.#animate = true;
114
+ this.#started = true;
115
+ this.#nodeIds = [];
116
+
117
+ for (let i = 0; i < this.#tracks.length; i++) {
118
+ const track = this.#tracks[i];
119
+ if(this.#nodeIds.includes(track.node.id)) continue;
120
+ this.#nodeIds.push(track.node.id)
121
+ const idleTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix');
122
+ if (idleTransformation) {
123
+ track.previousMatrix = {
124
+ id: idleTransformation.id,
125
+ matrix: mat4.clone(idleTransformation.matrix)
126
+ }
127
+ idleTransformation.matrix = mat4.create();
128
+ continue;
129
+ }
130
+
131
+ switch (track.path) {
132
+ case 'scale':
133
+ const idleTransformationScale = track.node.transformations.find(t => t.id === 'gltf_matrix_scale');
134
+ if (idleTransformationScale) {
135
+ track.previousMatrix = {
136
+ id: idleTransformationScale.id,
137
+ matrix: mat4.clone(idleTransformationScale.matrix)
138
+ }
139
+ continue;
140
+ }
141
+
142
+ break;
143
+
144
+ case 'rotation':
145
+ const idleTransformationRotation = track.node.transformations.find(t => t.id === 'gltf_matrix_rotation');
146
+ if (idleTransformationRotation) {
147
+ track.previousMatrix = {
148
+ id: idleTransformationRotation.id,
149
+ matrix: mat4.clone(idleTransformationRotation.matrix)
150
+ }
151
+ continue;
152
+ }
153
+
154
+ break;
155
+
156
+ case 'translation':
157
+ const idleTransformationTranslation = track.node.transformations.find(t => t.id === 'gltf_matrix_translation');
158
+ if (idleTransformationTranslation) {
159
+ track.previousMatrix = {
160
+ id: idleTransformationTranslation.id,
161
+ matrix: mat4.clone(idleTransformationTranslation.matrix)
162
+ }
163
+ continue;
164
+ }
165
+ break;
166
+ }
167
+ }
168
+ }
169
+
170
+ public stopAnimation() {
171
+ if (this.reset) {
172
+ for (let i = 0; i < this.#tracks.length; i++) {
173
+ const track = this.#tracks[i];
174
+ const id = this.id + '_' + i;
175
+ const prevAnimation = track.node.transformations.filter(t => t.id === id);
176
+ track.node.transformations = track.node.transformations.filter((el) => {
177
+ return !prevAnimation.includes(el);
178
+ });
179
+
180
+ if (track.previousMatrix) {
181
+ if (track.previousMatrix.id === 'gltf_matrix') {
182
+ const transformation = track.node.transformations.find(t => t.id === 'gltf_matrix')!;
183
+ transformation.matrix = track.previousMatrix.matrix;
184
+ const translationTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_translation')!;
185
+ translationTransformation.matrix = mat4.create();
186
+ const rotationTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_rotation')!;
187
+ rotationTransformation.matrix = mat4.create();
188
+ const scaleTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_scale')!;
189
+ scaleTransformation.matrix = mat4.create();
190
+ continue;
191
+ } else {
192
+ switch (track.path) {
193
+ case 'scale':
194
+ const idleTransformationScale = track.node.transformations.find(t => t.id === 'gltf_matrix_scale')!;
195
+ idleTransformationScale.matrix = track.previousMatrix.matrix;
196
+ continue;
197
+ case 'rotation':
198
+ const idleTransformationRotation = track.node.transformations.find(t => t.id === 'gltf_matrix_rotation')!;
199
+ idleTransformationRotation.matrix = track.previousMatrix.matrix;
200
+ continue;
201
+ case 'translation':
202
+ const idleTransformationTranslation = track.node.transformations.find(t => t.id === 'gltf_matrix_translation')!;
203
+ idleTransformationTranslation.matrix = track.previousMatrix.matrix;
204
+ continue;
205
+ }
206
+ }
207
+ } else if(!this.#nodeIds.includes(track.node.id)) {
208
+ const idleTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix');
209
+ if (idleTransformation) {
210
+ idleTransformation.matrix = mat4.create();
211
+ } else {
212
+ const idleTransformationScale = track.node.transformations.find(t => t.id === 'gltf_matrix_scale');
213
+ if (idleTransformationScale) idleTransformationScale.matrix = mat4.create();
214
+
215
+ const idleTransformationRotation = track.node.transformations.find(t => t.id === 'gltf_matrix_rotation');
216
+ if (idleTransformationRotation) idleTransformationRotation.matrix = mat4.create();
217
+
218
+ const idleTransformationTranslation = track.node.transformations.find(t => t.id === 'gltf_matrix_translation');
219
+ if (idleTransformationTranslation) idleTransformationTranslation.matrix = mat4.create();
220
+ }
221
+ }
222
+ }
223
+ } else {
224
+ for (let i = 0; i < this.#tracks.length; i++) {
225
+ const track = this.#tracks[i];
226
+ const id = this.id + '_' + i;
227
+
228
+ const prevAnimation = track.node.transformations.filter(t => t.id === id);
229
+ track.node.transformations = track.node.transformations.filter((el) => {
230
+ return !prevAnimation.includes(el);
231
+ });
232
+
233
+ const j = track.times.length - 1;
234
+
235
+ let translationTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_translation');
236
+ if (!translationTransformation) {
237
+ translationTransformation = {
238
+ id: 'gltf_matrix_translation',
239
+ matrix: mat4.create()
240
+ }
241
+ track.node.transformations.push(translationTransformation)
242
+ }
243
+
244
+ let rotationTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_rotation');
245
+ if (!rotationTransformation) {
246
+ rotationTransformation = {
247
+ id: 'gltf_matrix_rotation',
248
+ matrix: mat4.create()
249
+ }
250
+ track.node.transformations.push(rotationTransformation)
251
+ }
252
+
253
+ let scaleTransformation = track.node.transformations.find(t => t.id === 'gltf_matrix_scale');
254
+ if (!scaleTransformation) {
255
+ scaleTransformation = {
256
+ id: 'gltf_matrix_scale',
257
+ matrix: mat4.create()
258
+ }
259
+ track.node.transformations.push(scaleTransformation)
260
+ }
261
+
262
+ switch (track.path) {
263
+ case 'scale':
264
+ let vectorScale: vec3 = vec3.fromValues(track.values[j * 3 + 0], track.values[j * 3 + 1], track.values[j * 3 + 2]);
265
+ scaleTransformation.matrix = mat4.fromScaling(mat4.create(), vectorScale);
266
+ continue;
267
+ case 'rotation':
268
+ let quaternion: quat = quat.fromValues(track.values[j * 4 + 0], track.values[j * 4 + 1], track.values[j * 4 + 2], track.values[j * 4 + 3]);
269
+ rotationTransformation.matrix = mat4.fromQuat(mat4.create(), quaternion);
270
+ continue;
271
+ case 'translation':
272
+ let vectorTranslation: vec3 = vec3.fromValues(track.values[j * 3 + 0], track.values[j * 3 + 1], track.values[j * 3 + 2]);
273
+ translationTransformation.matrix = mat4.fromTranslation(mat4.create(), vectorTranslation);
274
+ continue;
275
+ }
276
+ }
277
+
278
+
279
+ }
280
+ this.#animationTime = -1;
281
+ this.#started = false;
282
+ this.#animate = false;
283
+ }
284
+
285
+ // #endregion Public Methods (5)
286
+ }
@@ -0,0 +1,31 @@
1
+ import { AbstractTreeNodeData, ITreeNodeData } from '@shapediver/viewer.shared.node-tree'
2
+ import { IBoneData } from '../../interfaces/data/IBoneData';
3
+
4
+ export class BoneData extends AbstractTreeNodeData implements IBoneData {
5
+
6
+ // #region Constructors (1)
7
+
8
+ /**
9
+ * Creates a Bone data node.
10
+ *
11
+ * @param id the id
12
+ */
13
+ constructor(
14
+ id?: string
15
+ ) {
16
+ super(id);
17
+ }
18
+
19
+ // #endregion Constructors (1)
20
+
21
+ // #region Public Methods (1)
22
+
23
+ /**
24
+ * Clones the scene graph data.
25
+ */
26
+ public clone(): IBoneData {
27
+ return new BoneData(this.id);
28
+ }
29
+
30
+ // #endregion Public Methods (1)
31
+ }
@@ -0,0 +1,51 @@
1
+ import { AbstractTreeNodeData, ITreeNodeData } from '@shapediver/viewer.shared.node-tree'
2
+ import { ICustomData } from '../../interfaces/data/ICustomData';
3
+
4
+ export class CustomData extends AbstractTreeNodeData implements ICustomData {
5
+ // #region Properties (1)
6
+
7
+ #data: { [key: string]: any };
8
+
9
+ // #endregion Properties (1)
10
+
11
+ // #region Constructors (1)
12
+
13
+ /**
14
+ * Creates a custom data node.
15
+ *
16
+ * @param _data the data as key- value pairs
17
+ * @param id the id
18
+ */
19
+ constructor(
20
+ data: { [key: string]: any },
21
+ id?: string
22
+ ) {
23
+ super(id);
24
+ this.#data = data;
25
+ }
26
+
27
+ // #endregion Constructors (1)
28
+
29
+ // #region Public Accessors (2)
30
+
31
+ public get data(): { [key: string]: any } {
32
+ return this.#data;
33
+ }
34
+
35
+ public set data(value: { [key: string]: any }) {
36
+ this.#data = value;
37
+ }
38
+
39
+ // #endregion Public Accessors (2)
40
+
41
+ // #region Public Methods (1)
42
+
43
+ /**
44
+ * Clones the scene graph data.
45
+ */
46
+ public clone(): ICustomData {
47
+ return new CustomData({ ...this.data }, this.id);
48
+ }
49
+
50
+ // #endregion Public Methods (1)
51
+ }