@shapediver/viewer.shared.types 2.12.7 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/implementation/data/GeometryData.d.ts +24 -30
  2. package/dist/implementation/data/GeometryData.d.ts.map +1 -1
  3. package/dist/implementation/data/GeometryData.js +100 -106
  4. package/dist/implementation/data/GeometryData.js.map +1 -1
  5. package/dist/implementation/data/HTMLElementAnchorData.d.ts.map +1 -1
  6. package/dist/implementation/data/HTMLElementAnchorData.js +3 -14
  7. package/dist/implementation/data/HTMLElementAnchorData.js.map +1 -1
  8. package/dist/implementation/material/AbstractMaterialData.d.ts +11 -8
  9. package/dist/implementation/material/AbstractMaterialData.d.ts.map +1 -1
  10. package/dist/implementation/material/AbstractMaterialData.js +32 -9
  11. package/dist/implementation/material/AbstractMaterialData.js.map +1 -1
  12. package/dist/implementation/material/MapData.d.ts +9 -3
  13. package/dist/implementation/material/MapData.d.ts.map +1 -1
  14. package/dist/implementation/material/MapData.js +24 -6
  15. package/dist/implementation/material/MapData.js.map +1 -1
  16. package/dist/implementation/material/MaterialBasicLineData.d.ts +15 -0
  17. package/dist/implementation/material/MaterialBasicLineData.d.ts.map +1 -0
  18. package/dist/implementation/material/MaterialBasicLineData.js +91 -0
  19. package/dist/implementation/material/MaterialBasicLineData.js.map +1 -0
  20. package/dist/implementation/material/MaterialGemData.d.ts.map +1 -1
  21. package/dist/implementation/material/MaterialGemData.js +23 -14
  22. package/dist/implementation/material/MaterialGemData.js.map +1 -1
  23. package/dist/implementation/material/MaterialMultiPointData.d.ts +102 -0
  24. package/dist/implementation/material/MaterialMultiPointData.d.ts.map +1 -0
  25. package/dist/implementation/material/MaterialMultiPointData.js +603 -0
  26. package/dist/implementation/material/MaterialMultiPointData.js.map +1 -0
  27. package/dist/implementation/material/MaterialPointData.d.ts +20 -0
  28. package/dist/implementation/material/MaterialPointData.d.ts.map +1 -0
  29. package/dist/implementation/material/MaterialPointData.js +132 -0
  30. package/dist/implementation/material/MaterialPointData.js.map +1 -0
  31. package/dist/implementation/material/MaterialSpecularGlossinessData.d.ts.map +1 -1
  32. package/dist/implementation/material/MaterialSpecularGlossinessData.js +9 -0
  33. package/dist/implementation/material/MaterialSpecularGlossinessData.js.map +1 -1
  34. package/dist/implementation/material/MaterialStandardData.d.ts.map +1 -1
  35. package/dist/implementation/material/MaterialStandardData.js +9 -0
  36. package/dist/implementation/material/MaterialStandardData.js.map +1 -1
  37. package/dist/implementation/material/MaterialUnlitData.d.ts.map +1 -1
  38. package/dist/implementation/material/MaterialUnlitData.js +9 -0
  39. package/dist/implementation/material/MaterialUnlitData.js.map +1 -1
  40. package/dist/index.d.ts +42 -34
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +40 -31
  43. package/dist/index.js.map +1 -1
  44. package/dist/interfaces/data/material/IMapData.d.ts +3 -1
  45. package/dist/interfaces/data/material/IMapData.d.ts.map +1 -1
  46. package/dist/interfaces/data/material/IMaterialAbstractData.d.ts +47 -44
  47. package/dist/interfaces/data/material/IMaterialAbstractData.d.ts.map +1 -1
  48. package/dist/interfaces/data/material/IMaterialAbstractData.js +10 -7
  49. package/dist/interfaces/data/material/IMaterialAbstractData.js.map +1 -1
  50. package/dist/interfaces/data/material/IMaterialBasicLineData.d.ts +7 -0
  51. package/dist/interfaces/data/material/IMaterialBasicLineData.d.ts.map +1 -0
  52. package/dist/interfaces/data/material/IMaterialBasicLineData.js +4 -0
  53. package/dist/interfaces/data/material/IMaterialBasicLineData.js.map +1 -0
  54. package/dist/interfaces/data/material/IMaterialMultiPointData.d.ts +94 -0
  55. package/dist/interfaces/data/material/IMaterialMultiPointData.d.ts.map +1 -0
  56. package/dist/interfaces/data/material/IMaterialMultiPointData.js +4 -0
  57. package/dist/interfaces/data/material/IMaterialMultiPointData.js.map +1 -0
  58. package/dist/interfaces/data/material/IMaterialPointData.d.ts +12 -0
  59. package/dist/interfaces/data/material/IMaterialPointData.d.ts.map +1 -0
  60. package/dist/interfaces/data/material/IMaterialPointData.js +3 -0
  61. package/dist/interfaces/data/material/IMaterialPointData.js.map +1 -0
  62. package/dist/interfaces/events/EventResponseMapping.d.ts +20 -8
  63. package/dist/interfaces/events/EventResponseMapping.d.ts.map +1 -1
  64. package/dist/interfaces/events/EventResponseMapping.js.map +1 -1
  65. package/dist/interfaces/events/ICameraEvent.d.ts +8 -1
  66. package/dist/interfaces/events/ICameraEvent.d.ts.map +1 -1
  67. package/dist/interfaces/events/IOutputEvent.d.ts +20 -4
  68. package/dist/interfaces/events/IOutputEvent.d.ts.map +1 -1
  69. package/dist/interfaces/events/IParameterEvent.d.ts +16 -0
  70. package/dist/interfaces/events/IParameterEvent.d.ts.map +1 -0
  71. package/dist/interfaces/events/IParameterEvent.js +3 -0
  72. package/dist/interfaces/events/IParameterEvent.js.map +1 -0
  73. package/dist/interfaces/events/IRenderingEvent.d.ts +7 -0
  74. package/dist/interfaces/events/IRenderingEvent.d.ts.map +1 -0
  75. package/dist/interfaces/events/IRenderingEvent.js +3 -0
  76. package/dist/interfaces/events/IRenderingEvent.js.map +1 -0
  77. package/dist/interfaces/events/ISceneEvent.d.ts +9 -2
  78. package/dist/interfaces/events/ISceneEvent.d.ts.map +1 -1
  79. package/dist/interfaces/events/ISessionEvent.d.ts +8 -1
  80. package/dist/interfaces/events/ISessionEvent.d.ts.map +1 -1
  81. package/dist/interfaces/events/ITaskEvent.d.ts +31 -8
  82. package/dist/interfaces/events/ITaskEvent.d.ts.map +1 -1
  83. package/dist/interfaces/events/ITaskEvent.js +7 -0
  84. package/dist/interfaces/events/ITaskEvent.js.map +1 -1
  85. package/dist/interfaces/events/IViewportEvent.d.ts +5 -1
  86. package/dist/interfaces/events/IViewportEvent.d.ts.map +1 -1
  87. package/dist/types.d.ts +46 -1
  88. package/dist/types.d.ts.map +1 -1
  89. package/dist/types.js +4 -0
  90. package/dist/types.js.map +1 -1
  91. package/package.json +6 -5
  92. package/src/implementation/data/GeometryData.ts +139 -140
  93. package/src/implementation/data/HTMLElementAnchorData.ts +3 -14
  94. package/src/implementation/material/AbstractMaterialData.ts +48 -20
  95. package/src/implementation/material/MapData.ts +32 -8
  96. package/src/implementation/material/MaterialBasicLineData.ts +99 -0
  97. package/src/implementation/material/MaterialGemData.ts +23 -14
  98. package/src/implementation/material/MaterialMultiPointData.ts +659 -0
  99. package/src/implementation/material/MaterialPointData.ts +136 -0
  100. package/src/implementation/material/MaterialSpecularGlossinessData.ts +9 -0
  101. package/src/implementation/material/MaterialStandardData.ts +9 -0
  102. package/src/implementation/material/MaterialUnlitData.ts +9 -0
  103. package/src/index.ts +92 -57
  104. package/src/interfaces/data/material/IMapData.ts +3 -1
  105. package/src/interfaces/data/material/IMaterialAbstractData.ts +64 -51
  106. package/src/interfaces/data/material/IMaterialBasicLineData.ts +20 -0
  107. package/src/interfaces/data/material/IMaterialMultiPointData.ts +112 -0
  108. package/src/interfaces/data/material/IMaterialPointData.ts +26 -0
  109. package/src/interfaces/events/EventResponseMapping.ts +29 -8
  110. package/src/interfaces/events/ICameraEvent.ts +12 -1
  111. package/src/interfaces/events/IOutputEvent.ts +24 -4
  112. package/src/interfaces/events/IParameterEvent.ts +21 -0
  113. package/src/interfaces/events/IRenderingEvent.ts +7 -0
  114. package/src/interfaces/events/ISceneEvent.ts +13 -2
  115. package/src/interfaces/events/ISessionEvent.ts +13 -2
  116. package/src/interfaces/events/ITaskEvent.ts +43 -8
  117. package/src/interfaces/events/IViewportEvent.ts +9 -1
  118. package/src/types.ts +67 -2
@@ -0,0 +1,136 @@
1
+ import { AbstractMaterialData } from './AbstractMaterialData';
2
+ import { MATERIAL_ALPHA, MATERIAL_SHADING, MATERIAL_SIDE } from '../../interfaces/data/material/IMaterialAbstractData';
3
+ import { IMaterialPointData, IMaterialPointDataProperties } from '../../interfaces/data/material/IMaterialPointData';
4
+
5
+ export class MaterialPointData extends AbstractMaterialData implements IMaterialPointData {
6
+ // #region Properties (2)
7
+
8
+ #size?: number = undefined;
9
+ #sizeAttenuation?: boolean = undefined;
10
+
11
+ // #endregion Properties (2)
12
+
13
+ // #region Constructors (1)
14
+
15
+ /**
16
+ * Creates a material data object.
17
+ *
18
+ * @param _attributes the attributes of the material
19
+ * @param id the id
20
+ */
21
+ constructor(
22
+ properties?: IMaterialPointDataProperties,
23
+ id?: string,
24
+ version?: string
25
+ ) {
26
+ super(properties, id, version);
27
+ if (!properties) return;
28
+ if (properties.size !== undefined) this.size = properties.size;
29
+ if (properties.sizeAttenuation !== undefined) this.sizeAttenuation = properties.sizeAttenuation;
30
+ }
31
+
32
+ // #endregion Constructors (1)
33
+
34
+ // #region Public Accessors (4)
35
+
36
+ public get size(): number | undefined {
37
+ return this.#size;
38
+ }
39
+
40
+ public set size(value: number | undefined) {
41
+ this.#size = value;
42
+ }
43
+
44
+ public get sizeAttenuation(): boolean | undefined {
45
+ return this.#sizeAttenuation;
46
+ }
47
+
48
+ public set sizeAttenuation(value: boolean | undefined) {
49
+ this.#sizeAttenuation = value;
50
+ }
51
+
52
+ // #endregion Public Accessors (4)
53
+
54
+ // #region Public Methods (3)
55
+
56
+ public clone(): IMaterialPointData {
57
+ return new MaterialPointData({
58
+ alphaMap: this.alphaMap,
59
+ alphaCutoff: this.alphaCutoff,
60
+ alphaMode: this.alphaMode,
61
+ aoMap: this.aoMap,
62
+ aoMapIntensity: this.aoMapIntensity,
63
+ bumpMap: this.bumpMap,
64
+ bumpScale: this.bumpScale,
65
+ color: this.color,
66
+ depthTest: this.depthTest,
67
+ depthWrite: this.depthWrite,
68
+ emissiveMap: this.emissiveMap,
69
+ emissiveness: this.emissiveness,
70
+ shading: this.shading,
71
+ map: this.map,
72
+ name: this.name,
73
+ normalMap: this.normalMap,
74
+ normalScale: this.normalScale,
75
+ opacity: this.opacity,
76
+ side: this.side,
77
+ transparent: this.transparent,
78
+ size: this.size,
79
+ sizeAttenuation: this.sizeAttenuation
80
+ }, this.id, this.version);
81
+ }
82
+
83
+ public copy(source: MaterialPointData): void {
84
+ this.alphaCutoff = source.alphaCutoff;
85
+ this.alphaMap = source.alphaMap;
86
+ this.alphaMode = source.alphaMode;
87
+ this.aoMap = source.aoMap;
88
+ this.aoMapIntensity = source.aoMapIntensity;
89
+ this.bumpMap = source.bumpMap;
90
+ this.bumpScale = source.bumpScale;
91
+ this.color = source.color;
92
+ this.depthTest = source.depthTest;
93
+ this.depthWrite = source.depthWrite;
94
+ this.emissiveMap = source.emissiveMap;
95
+ this.emissiveness = source.emissiveness;
96
+ this.materialOutput = source.materialOutput;
97
+ this.map = source.map;
98
+ this.normalMap = source.normalMap;
99
+ this.normalScale = source.normalScale;
100
+ this.opacity = source.opacity;
101
+ this.shading = source.shading;
102
+ this.side = source.side;
103
+ this.transparent = source.transparent;
104
+
105
+ this.size = source.size;
106
+ this.sizeAttenuation = source.sizeAttenuation;
107
+ }
108
+
109
+ public reset(): void {
110
+ this.alphaCutoff = 0;
111
+ this.alphaMap = undefined;
112
+ this.alphaMode = MATERIAL_ALPHA.OPAQUE;
113
+ this.aoMap = undefined;
114
+ this.aoMapIntensity = 1.0;
115
+ this.bumpMap = undefined;
116
+ this.bumpScale = 1.0;
117
+ this.color = '#ffffff';
118
+ this.depthTest = undefined;
119
+ this.depthWrite = undefined;
120
+ this.emissiveMap = undefined;
121
+ this.emissiveness = '#000000';
122
+ this.materialOutput = false;
123
+ this.map = undefined;
124
+ this.normalMap = undefined;
125
+ this.normalScale = 1.0;
126
+ this.opacity = 1.0;
127
+ this.shading = MATERIAL_SHADING.SMOOTH;
128
+ this.side = MATERIAL_SIDE.DOUBLE;
129
+ this.transparent = undefined;
130
+
131
+ this.size = undefined;
132
+ this.sizeAttenuation = undefined;
133
+ }
134
+
135
+ // #endregion Public Methods (3)
136
+ }
@@ -106,6 +106,8 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
106
106
  bumpMap: this.bumpMap,
107
107
  bumpScale: this.bumpScale,
108
108
  color: this.color,
109
+ depthTest: this.depthTest,
110
+ depthWrite: this.depthWrite,
109
111
  emissiveMap: this.emissiveMap,
110
112
  emissiveness: this.emissiveness,
111
113
  shading: this.shading,
@@ -115,6 +117,7 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
115
117
  normalScale: this.normalScale,
116
118
  opacity: this.opacity,
117
119
  side: this.side,
120
+ transparent: this.transparent,
118
121
  specular: this.specular,
119
122
  specularMap: this.specularMap,
120
123
  specularGlossinessMap: this.specularGlossinessMap,
@@ -133,6 +136,8 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
133
136
  this.bumpMap = source.bumpMap;
134
137
  this.bumpScale = source.bumpScale;
135
138
  this.color = source.color;
139
+ this.depthTest = source.depthTest;
140
+ this.depthWrite = source.depthWrite;
136
141
  this.emissiveMap = source.emissiveMap;
137
142
  this.emissiveness = source.emissiveness;
138
143
  this.materialOutput = source.materialOutput;
@@ -142,6 +147,7 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
142
147
  this.opacity = source.opacity;
143
148
  this.shading = source.shading;
144
149
  this.side = source.side;
150
+ this.transparent = source.transparent;
145
151
 
146
152
  this.glossiness = source.glossiness;
147
153
  this.specular = source.specular;
@@ -160,6 +166,8 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
160
166
  this.bumpMap = undefined;
161
167
  this.bumpScale = 1.0;
162
168
  this.color = '#ffffff';
169
+ this.depthTest = undefined;
170
+ this.depthWrite = undefined;
163
171
  this.emissiveMap = undefined;
164
172
  this.emissiveness = '#000000';
165
173
  this.materialOutput = false;
@@ -169,6 +177,7 @@ export class MaterialSpecularGlossinessData extends AbstractMaterialData impleme
169
177
  this.opacity = 1.0;
170
178
  this.shading = MATERIAL_SHADING.SMOOTH;
171
179
  this.side = MATERIAL_SIDE.DOUBLE;
180
+ this.transparent = undefined;
172
181
 
173
182
  this.glossiness = 1;
174
183
  this.specular = '#ffffff';
@@ -344,6 +344,8 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
344
344
  this.bumpMap = undefined;
345
345
  this.bumpScale = 1.0;
346
346
  this.color = '#ffffff';
347
+ this.depthTest = undefined;
348
+ this.depthWrite = undefined;
347
349
  this.emissiveMap = undefined;
348
350
  this.emissiveness = '#000000';
349
351
  this.materialOutput = false;
@@ -353,6 +355,7 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
353
355
  this.opacity = 1.0;
354
356
  this.shading = MATERIAL_SHADING.SMOOTH;
355
357
  this.side = MATERIAL_SIDE.DOUBLE;
358
+ this.transparent = undefined;
356
359
 
357
360
  this.attenuationColor = '#ffffff';
358
361
  this.attenuationDistance = Infinity;
@@ -396,6 +399,8 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
396
399
  bumpMap: this.bumpMap,
397
400
  bumpScale: this.bumpScale,
398
401
  color: this.color,
402
+ depthTest: this.depthTest,
403
+ depthWrite: this.depthWrite,
399
404
  emissiveMap: this.emissiveMap,
400
405
  emissiveness: this.emissiveness,
401
406
  shading: this.shading,
@@ -410,6 +415,7 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
410
415
  roughness: this.roughness,
411
416
  roughnessMap: this.roughnessMap,
412
417
  side: this.side,
418
+ transparent: this.transparent,
413
419
  clearcoat: this.clearcoat,
414
420
  clearcoatMap: this.clearcoatMap,
415
421
  clearcoatNormalMap: this.clearcoatNormalMap,
@@ -447,6 +453,8 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
447
453
  this.bumpMap = source.bumpMap;
448
454
  this.bumpScale = source.bumpScale;
449
455
  this.color = source.color;
456
+ this.depthTest = source.depthTest;
457
+ this.depthWrite = source.depthWrite;
450
458
  this.emissiveMap = source.emissiveMap;
451
459
  this.emissiveness = source.emissiveness;
452
460
  this.materialOutput = source.materialOutput;
@@ -456,6 +464,7 @@ export class MaterialStandardData extends AbstractMaterialData implements IMater
456
464
  this.opacity = source.opacity;
457
465
  this.shading = source.shading;
458
466
  this.side = source.side;
467
+ this.transparent = source.transparent;
459
468
 
460
469
  this.attenuationColor = source.attenuationColor;
461
470
  this.attenuationDistance = source.attenuationDistance;
@@ -54,6 +54,8 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
54
54
  bumpMap: this.bumpMap,
55
55
  bumpScale: this.bumpScale,
56
56
  color: this.color,
57
+ depthTest: this.depthTest,
58
+ depthWrite: this.depthWrite,
57
59
  emissiveMap: this.emissiveMap,
58
60
  emissiveness: this.emissiveness,
59
61
  shading: this.shading,
@@ -63,6 +65,7 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
63
65
  normalScale: this.normalScale,
64
66
  opacity: this.opacity,
65
67
  side: this.side,
68
+ transparent: this.transparent,
66
69
  envMap: this.envMap
67
70
  }, this.id, this.version);
68
71
  }
@@ -76,6 +79,8 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
76
79
  this.bumpMap = source.bumpMap;
77
80
  this.bumpScale = source.bumpScale;
78
81
  this.color = source.color;
82
+ this.depthTest = source.depthTest;
83
+ this.depthWrite = source.depthWrite;
79
84
  this.emissiveMap = source.emissiveMap;
80
85
  this.emissiveness = source.emissiveness;
81
86
  this.materialOutput = source.materialOutput;
@@ -86,6 +91,7 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
86
91
  this.shading = source.shading;
87
92
  this.side = source.side;
88
93
  this.envMap = source.envMap;
94
+ this.transparent = source.transparent;
89
95
  }
90
96
 
91
97
  public reset(): void {
@@ -97,6 +103,8 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
97
103
  this.bumpMap = undefined;
98
104
  this.bumpScale = 1.0;
99
105
  this.color = '#ffffff';
106
+ this.depthTest = undefined;
107
+ this.depthWrite = undefined;
100
108
  this.emissiveMap = undefined;
101
109
  this.emissiveness = '#000000';
102
110
  this.materialOutput = false;
@@ -106,6 +114,7 @@ export class MaterialUnlitData extends AbstractMaterialData implements IMaterial
106
114
  this.opacity = 1.0;
107
115
  this.shading = MATERIAL_SHADING.SMOOTH;
108
116
  this.side = MATERIAL_SIDE.DOUBLE;
117
+ this.transparent = undefined;
109
118
  this.envMap = undefined;
110
119
  }
111
120
 
package/src/index.ts CHANGED
@@ -1,80 +1,115 @@
1
- import { CustomData } from './implementation/data/CustomData'
2
- import { AttributeData, GeometryData, PrimitiveData } from './implementation/data/GeometryData'
1
+ import { AbstractMaterialData } from './implementation/material/AbstractMaterialData';
2
+ import { AnimationData } from './implementation/data/AnimationData';
3
+ import { AttributeData, GeometryData, PrimitiveData } from './implementation/data/GeometryData';
4
+ import { BoneData } from './implementation/data/BoneData';
5
+ import {
6
+ Color,
7
+ ISessionSettingsSections,
8
+ ISettingsSections,
9
+ IViewportSettingsSections,
10
+ PARAMETER_TYPE,
11
+ PARAMETER_VISUALIZATION
12
+ } from './types';
13
+ import { CustomData } from './implementation/data/CustomData';
14
+ import { EventResponseMapping } from './interfaces/events/EventResponseMapping';
15
+ import {
16
+ HTMLElementAnchorCustomData,
17
+ HTMLElementAnchorData,
18
+ HTMLElementAnchorImageData,
19
+ HTMLElementAnchorTextData
20
+ } from './implementation/data/HTMLElementAnchorData';
21
+ import { IAnchorDataImage, IAnchorDataText, IHTMLElementAnchorData } from './interfaces/data/IHTMLElementAnchorData';
22
+ import { IAnimationData, IAnimationTrack } from './interfaces/data/IAnimationData';
23
+ import {
24
+ IAttributeData,
25
+ IGeometryData,
26
+ IPrimitiveData,
27
+ PRIMITIVE_MODE
28
+ } from './interfaces/data/IGeometryData';
29
+ import { IBoneData } from './interfaces/data/IBoneData';
30
+ import { ICameraEvent } from './interfaces/events/ICameraEvent';
31
+ import { ICustomData } from './interfaces/data/ICustomData';
32
+ import { IMapData, TEXTURE_FILTERING, TEXTURE_WRAPPING } from './interfaces/data/material/IMapData';
33
+ import {
34
+ IMaterialAbstractData,
35
+ IMaterialAbstractDataProperties,
36
+ MATERIAL_ALPHA,
37
+ MATERIAL_SHADING,
38
+ MATERIAL_SIDE,
39
+ MATERIAL_TYPE
40
+ } from './interfaces/data/material/IMaterialAbstractData';
41
+ import { IMaterialBasicLineData, IMaterialBasicLineDataProperties } from './interfaces/data/material/IMaterialBasicLineData';
42
+ import { IMaterialGemData, IMaterialGemDataProperties } from './interfaces/data/material/IMaterialGemDataProperties';
43
+ import { IMaterialMultiPointData, IMaterialMultiPointDataProperties } from './interfaces/data/material/IMaterialMultiPointData';
44
+ import { IMaterialPointData, IMaterialPointDataProperties } from './interfaces/data/material/IMaterialPointData';
45
+ import { IMaterialShadowData, IMaterialShadowDataProperties } from './interfaces/data/material/IMaterialShadowData';
46
+ import { IMaterialSpecularGlossinessData, IMaterialSpecularGlossinessDataProperties } from './interfaces/data/material/IMaterialSpecularGlossinessDataProperties';
47
+ import { IMaterialStandardData, IMaterialStandardDataProperties } from './interfaces/data/material/IMaterialStandardData';
48
+ import { IMaterialUnlitData, IMaterialUnlitDataProperties } from './interfaces/data/material/IMaterialUnlitData';
49
+ import { IMaterialVariantsData } from './interfaces/data/material/IMaterialVariantsData';
50
+ import { IOutputEvent } from './interfaces/events/IOutputEvent';
51
+ import { ISceneEvent } from './interfaces/events/ISceneEvent';
52
+ import { ISDTFAttributeData, ISDTFAttributesData } from './interfaces/sdtf/ISDTFAttributesData';
53
+ import { ISDTFAttributeVisualizationData } from './interfaces/sdtf/ISDTFAttributeVisualizationData';
54
+ import { ISDTFItemData } from './interfaces/sdtf/ISDTFItemData';
55
+ import { ISDTFOverview, ISDTFOverviewData } from './interfaces/sdtf/ISDTFOverviewData';
56
+ import { ISessionEvent } from './interfaces/events/ISessionEvent';
57
+ import { ITaskEvent, TASK_TYPE } from './interfaces/events/ITaskEvent';
58
+ import { IViewportEvent } from './interfaces/events/IViewportEvent';
59
+ import { MapData } from './implementation/material/MapData';
60
+ import { MaterialBasicLineData } from './implementation/material/MaterialBasicLineData';
61
+ import { MaterialGemData } from './implementation/material/MaterialGemData';
62
+ import { MaterialMultiPointData } from './implementation/material/MaterialMultiPointData';
63
+ import { MaterialPointData } from './implementation/material/MaterialPointData';
64
+ import { MaterialShadowData } from './implementation/material/MaterialShadowData';
65
+ import { MaterialSpecularGlossinessData } from './implementation/material/MaterialSpecularGlossinessData';
66
+ import { MaterialUnlitData } from './implementation/material/MaterialUnlitData';
67
+ import { MaterialVariantsData } from './implementation/material/MaterialVariantsData';
68
+ import { SDTFAttributeData, SDTFAttributesData } from './implementation/sdtf/SDTFAttributesData';
69
+ import { SDTFItemData } from './implementation/sdtf/SDTFItemData';
70
+ import { SDTFOverviewData } from './implementation/sdtf/SDTFOverviewData';
71
+ import { SdtfPrimitiveTypeGuard } from '@shapediver/sdk.sdtf-primitives';
72
+ import { SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1';
3
73
  import {
4
74
  MaterialStandardData,
5
- } from './implementation/material/MaterialStandardData'
6
- import { HTMLElementAnchorCustomData, HTMLElementAnchorData, HTMLElementAnchorImageData, HTMLElementAnchorTextData } from './implementation/data/HTMLElementAnchorData'
7
- import { SDTFItemData } from './implementation/sdtf/SDTFItemData'
8
- import { AnimationData } from './implementation/data/AnimationData'
9
- import { IViewportEvent } from './interfaces/events/IViewportEvent'
10
- import { ISessionEvent } from './interfaces/events/ISessionEvent'
11
- import { ICameraEvent } from './interfaces/events/ICameraEvent'
12
- import { ISceneEvent } from './interfaces/events/ISceneEvent'
13
- import { ITaskEvent, TASK_TYPE } from './interfaces/events/ITaskEvent'
14
- import { MaterialVariantsData } from './implementation/material/MaterialVariantsData'
15
- import { MapData } from './implementation/material/MapData'
16
- import { MaterialSpecularGlossinessData } from './implementation/material/MaterialSpecularGlossinessData'
17
- import { MaterialUnlitData } from './implementation/material/MaterialUnlitData'
18
- import { IAnchorDataImage, IAnchorDataText, IHTMLElementAnchorData } from './interfaces/data/IHTMLElementAnchorData'
19
- import { IMaterialAbstractData, IMaterialAbstractDataProperties, MATERIAL_ALPHA, MATERIAL_SHADING, MATERIAL_SIDE, MATERIAL_TYPE } from './interfaces/data/material/IMaterialAbstractData'
20
- import { IAttributeData, IGeometryData, IPrimitiveData, PRIMITIVE_MODE } from './interfaces/data/IGeometryData'
21
- import { TEXTURE_WRAPPING, TEXTURE_FILTERING, IMapData } from './interfaces/data/material/IMapData'
22
- import { IMaterialSpecularGlossinessData, IMaterialSpecularGlossinessDataProperties } from './interfaces/data/material/IMaterialSpecularGlossinessDataProperties'
23
- import { IMaterialStandardData, IMaterialStandardDataProperties } from './interfaces/data/material/IMaterialStandardData'
24
- import { IMaterialUnlitData, IMaterialUnlitDataProperties } from './interfaces/data/material/IMaterialUnlitData'
25
- import { IMaterialVariantsData } from './interfaces/data/material/IMaterialVariantsData'
26
- import { IAnimationData, IAnimationTrack } from './interfaces/data/IAnimationData'
27
- import { ICustomData } from './interfaces/data/ICustomData'
28
- import { AbstractMaterialData } from './implementation/material/AbstractMaterialData'
29
- import { ISDTFOverview, ISDTFOverviewData } from './interfaces/sdtf/ISDTFOverviewData'
30
- import { SDTFAttributeData, SDTFAttributesData } from './implementation/sdtf/SDTFAttributesData'
31
- import { SDTFOverviewData } from './implementation/sdtf/SDTFOverviewData'
32
- import { ISDTFAttributesData, ISDTFAttributeData } from './interfaces/sdtf/ISDTFAttributesData'
33
- import { ISDTFItemData } from './interfaces/sdtf/ISDTFItemData'
34
- import { ISDTFAttributeVisualizationData } from './interfaces/sdtf/ISDTFAttributeVisualizationData'
35
- import { EventResponseMapping } from './interfaces/events/EventResponseMapping'
36
- import { IBoneData } from './interfaces/data/IBoneData'
37
- import { BoneData } from './implementation/data/BoneData'
38
- import { SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1'
39
- import { SdtfPrimitiveTypeGuard } from '@shapediver/sdk.sdtf-primitives'
40
- import { MaterialGemData } from './implementation/material/MaterialGemData'
41
- import { IMaterialGemData, IMaterialGemDataProperties } from './interfaces/data/material/IMaterialGemDataProperties'
42
- import { MaterialShadowData } from './implementation/material/MaterialShadowData'
43
- import { IMaterialShadowData, IMaterialShadowDataProperties } from './interfaces/data/material/IMaterialShadowData'
44
- import { Color } from './types'
45
- import { IOutputEvent } from './interfaces/events/IOutputEvent'
75
+ } from './implementation/material/MaterialStandardData';
76
+ import { IRenderingEvent } from './interfaces/events/IRenderingEvent';
77
+ import { IParameterEvent } from './interfaces/events/IParameterEvent';
46
78
 
47
79
  export {
48
- IMaterialStandardData, MaterialStandardData, IMaterialStandardDataProperties,
80
+ IMaterialStandardData, MaterialStandardData, IMaterialStandardDataProperties,
49
81
  IMaterialAbstractData, IMaterialAbstractDataProperties, AbstractMaterialData,
50
- IMaterialUnlitData, MaterialUnlitData, IMaterialUnlitDataProperties,
51
- IMaterialShadowData, MaterialShadowData, IMaterialShadowDataProperties,
52
- IMaterialSpecularGlossinessData, MaterialSpecularGlossinessData, IMaterialSpecularGlossinessDataProperties,
53
- IMaterialGemData, MaterialGemData, IMaterialGemDataProperties,
82
+ IMaterialUnlitData, MaterialUnlitData, IMaterialUnlitDataProperties,
83
+ IMaterialShadowData, MaterialShadowData, IMaterialShadowDataProperties,
84
+ IMaterialSpecularGlossinessData, MaterialSpecularGlossinessData, IMaterialSpecularGlossinessDataProperties,
85
+ IMaterialGemData, MaterialGemData, IMaterialGemDataProperties,
86
+ IMaterialPointData, MaterialPointData, IMaterialPointDataProperties,
87
+ IMaterialMultiPointData, MaterialMultiPointData, IMaterialMultiPointDataProperties,
88
+ IMaterialBasicLineData, MaterialBasicLineData, IMaterialBasicLineDataProperties,
54
89
  IMapData, MapData, MATERIAL_SIDE, MATERIAL_ALPHA, MATERIAL_SHADING, MATERIAL_TYPE, TEXTURE_WRAPPING, TEXTURE_FILTERING
55
- }
90
+ };
56
91
 
57
92
  export {
58
93
  IAnimationData, AnimationData, IAnimationTrack, IGeometryData, IAttributeData, IPrimitiveData, IMaterialVariantsData, GeometryData, AttributeData, PrimitiveData, MaterialVariantsData, PRIMITIVE_MODE
59
- }
94
+ };
60
95
 
61
96
  export {
62
97
  IAnchorDataImage, IAnchorDataText, IHTMLElementAnchorData, HTMLElementAnchorCustomData, HTMLElementAnchorTextData, HTMLElementAnchorImageData, HTMLElementAnchorData
63
- }
98
+ };
64
99
 
65
100
  export {
66
101
  ICustomData, CustomData, IBoneData, BoneData
67
- }
102
+ };
68
103
 
69
104
  export {
70
- EventResponseMapping, IViewportEvent, ISessionEvent, IOutputEvent, ICameraEvent, ISceneEvent, ITaskEvent, TASK_TYPE
71
- }
105
+ EventResponseMapping, IViewportEvent, ISessionEvent, IOutputEvent, ICameraEvent, IRenderingEvent, IParameterEvent, ISceneEvent, ITaskEvent, TASK_TYPE
106
+ };
72
107
 
73
108
  export {
74
109
  ISDTFOverviewData, SDTFOverviewData, ISDTFOverview, SDTFAttributesData, ISDTFAttributesData, ISDTFAttributeData, SDTFAttributeData, SDTFItemData, ISDTFItemData, ISDTFAttributeVisualizationData,
75
110
  SdtfTypeHintName as SDTF_TYPEHINT, SdtfPrimitiveTypeGuard
76
- }
111
+ };
77
112
 
78
113
  export {
79
- Color
80
- }
114
+ Color, PARAMETER_TYPE, PARAMETER_VISUALIZATION, ISettingsSections, ISessionSettingsSections, IViewportSettingsSections
115
+ };
@@ -21,11 +21,13 @@ export enum TEXTURE_FILTERING {
21
21
  export interface IMapData extends ITreeNodeData {
22
22
  // #region Properties (11)
23
23
 
24
+ asData?: boolean;
25
+ data?: number[];
24
26
  blob?: Blob;
25
27
  center: vec2;
26
28
  color?: Color;
27
29
  flipY: boolean;
28
- image: HTMLImageElement;
30
+ image: HTMLImageElement | ArrayBuffer;
29
31
  magFilter: TEXTURE_FILTERING;
30
32
  minFilter: TEXTURE_FILTERING;
31
33
  offset: vec2;
@@ -1,33 +1,47 @@
1
- import { ITreeNodeData } from '@shapediver/viewer.shared.node-tree';
2
1
  import { Color } from '../../../types';
3
2
  import { IMapData } from './IMapData';
3
+ import { ITreeNodeData } from '@shapediver/viewer.shared.node-tree';
4
4
 
5
- export enum MATERIAL_SIDE {
6
- DOUBLE = 'double',
7
- FRONT = 'front',
8
- BACK = 'back'
9
- }
5
+ // #region Interfaces (2)
10
6
 
11
- export enum MATERIAL_ALPHA {
12
- OPAQUE = 'opaque',
13
- MASK = 'mask',
14
- BLEND = 'blend'
15
- }
7
+ export interface IMaterialAbstractData extends ITreeNodeData {
8
+ // #region Properties (21)
16
9
 
17
- export enum MATERIAL_SHADING {
18
- FLAT = 'flat',
19
- SMOOTH = 'smooth'
20
- }
10
+ alphaCutoff: number,
11
+ alphaMap?: IMapData,
12
+ alphaMode: MATERIAL_ALPHA,
13
+ aoMap?: IMapData,
14
+ aoMapIntensity: number,
15
+ bumpMap?: IMapData,
16
+ bumpScale: number,
17
+ color: Color,
18
+ depthTest?: boolean,
19
+ depthWrite?: boolean,
20
+ emissiveMap?: IMapData,
21
+ emissiveness: Color,
22
+ map?: IMapData,
23
+ materialOutput: boolean;
24
+ name?: string,
25
+ normalMap?: IMapData,
26
+ normalScale: number,
27
+ opacity: number,
28
+ shading: MATERIAL_SHADING,
29
+ side: MATERIAL_SIDE,
30
+ transparent?: boolean,
21
31
 
22
- export enum MATERIAL_TYPE {
23
- STANDARD = 'Standard',
24
- SPECULAR_GLOSSINESS = 'SpecularGlossiness',
25
- UNLIT = 'Unlit',
26
- GEM = 'Gem'
32
+ // #endregion Properties (21)
33
+
34
+ // #region Public Methods (3)
35
+
36
+ clone(): IMaterialAbstractData;
37
+ copy(source: IMaterialAbstractData): void
38
+ reset(): void
39
+
40
+ // #endregion Public Methods (3)
27
41
  }
28
42
 
29
43
  export interface IMaterialAbstractDataProperties {
30
- // #region Properties (17)
44
+ // #region Properties (21)
31
45
 
32
46
  alphaCutoff?: number,
33
47
  alphaMap?: IMapData,
@@ -37,6 +51,8 @@ export interface IMaterialAbstractDataProperties {
37
51
  bumpMap?: IMapData,
38
52
  bumpScale?: number,
39
53
  color?: Color,
54
+ depthTest?: boolean,
55
+ depthWrite?: boolean,
40
56
  emissiveMap?: IMapData,
41
57
  emissiveness?: Color,
42
58
  map?: IMapData,
@@ -45,42 +61,39 @@ export interface IMaterialAbstractDataProperties {
45
61
  normalScale?: number,
46
62
  opacity?: number,
47
63
  shading?: MATERIAL_SHADING,
48
- side?: MATERIAL_SIDE
64
+ side?: MATERIAL_SIDE,
65
+ transparent?: boolean,
49
66
  type?: MATERIAL_TYPE
50
67
 
51
- // #endregion Properties (17)
68
+ // #endregion Properties (21)
52
69
  }
53
70
 
54
- export interface IMaterialAbstractData extends ITreeNodeData {
55
- // #region Properties (18)
71
+ // #endregion Interfaces (2)
56
72
 
57
- alphaCutoff: number,
58
- alphaMap?: IMapData,
59
- alphaMode: MATERIAL_ALPHA,
60
- aoMap?: IMapData,
61
- aoMapIntensity: number,
62
- bumpMap?: IMapData,
63
- bumpScale: number,
64
- color: Color,
65
- emissiveMap?: IMapData,
66
- emissiveness: Color,
67
- map?: IMapData,
68
- materialOutput: boolean;
69
- name?: string,
70
- normalMap?: IMapData,
71
- normalScale: number,
72
- opacity: number,
73
- shading: MATERIAL_SHADING,
74
- side: MATERIAL_SIDE,
75
- threeJsObject: { [key: string]: THREE.Material };
73
+ // #region Enums (4)
74
+
75
+ export enum MATERIAL_ALPHA {
76
+ OPAQUE = 'opaque',
77
+ MASK = 'mask',
78
+ BLEND = 'blend'
79
+ }
76
80
 
77
- // #endregion Properties (18)
81
+ export enum MATERIAL_SHADING {
82
+ FLAT = 'flat',
83
+ SMOOTH = 'smooth'
84
+ }
78
85
 
79
- // #region Public Methods (3)
86
+ export enum MATERIAL_SIDE {
87
+ DOUBLE = 'double',
88
+ FRONT = 'front',
89
+ BACK = 'back'
90
+ }
80
91
 
81
- clone(): IMaterialAbstractData;
82
- copy(source: IMaterialAbstractData): void
83
- reset(): void
92
+ export enum MATERIAL_TYPE {
93
+ STANDARD = 'Standard',
94
+ SPECULAR_GLOSSINESS = 'SpecularGlossiness',
95
+ UNLIT = 'Unlit',
96
+ GEM = 'Gem'
97
+ }
84
98
 
85
- // #endregion Public Methods (3)
86
- }
99
+ // #endregion Enums (4)
@@ -0,0 +1,20 @@
1
+ import { IMaterialAbstractData, IMaterialAbstractDataProperties } from './IMaterialAbstractData';
2
+
3
+ // #region Type aliases (1)
4
+
5
+ export type IMaterialBasicLineDataProperties = IMaterialAbstractDataProperties;
6
+
7
+ // #endregion Type aliases (1)
8
+
9
+ // #region Interfaces (1)
10
+
11
+ export interface IMaterialBasicLineData extends IMaterialAbstractData {
12
+ // #region Public Methods (2)
13
+
14
+ clone(): IMaterialBasicLineData;
15
+ copy(source: IMaterialBasicLineData): void;
16
+
17
+ // #endregion Public Methods (2)
18
+ }
19
+
20
+ // #endregion Interfaces (1)