@xeokit/xeokit-sdk 2.6.78-rc2-no-las → 2.6.78

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 (78) hide show
  1. package/dist/xeokit-sdk.cjs.js +32532 -15213
  2. package/dist/xeokit-sdk.es.js +32531 -15214
  3. package/dist/xeokit-sdk.es5.js +29446 -30855
  4. package/dist/xeokit-sdk.min.cjs.js +8 -8
  5. package/dist/xeokit-sdk.min.es.js +8 -8
  6. package/dist/xeokit-sdk.min.es5.js +33 -34
  7. package/package.json +4 -7
  8. package/src/plugins/CxConverterIFCLoaderPlugin/CxConverterIFCLoaderPlugin.js +68 -68
  9. package/src/plugins/CxConverterIFCLoaderPlugin/index.js +1 -1
  10. package/src/plugins/LASLoaderPlugin/index.js +1 -1
  11. package/src/plugins/XKTLoaderPlugin/parsers/ParserV1.js +5 -5
  12. package/src/plugins/XKTLoaderPlugin/parsers/ParserV10.js +5 -5
  13. package/src/plugins/XKTLoaderPlugin/parsers/ParserV12.js +9 -9
  14. package/src/plugins/XKTLoaderPlugin/parsers/ParserV2.js +5 -5
  15. package/src/plugins/XKTLoaderPlugin/parsers/ParserV3.js +5 -5
  16. package/src/plugins/XKTLoaderPlugin/parsers/ParserV4.js +5 -5
  17. package/src/plugins/XKTLoaderPlugin/parsers/ParserV5.js +5 -5
  18. package/src/plugins/XKTLoaderPlugin/parsers/ParserV6.js +5 -5
  19. package/src/plugins/XKTLoaderPlugin/parsers/ParserV7.js +5 -5
  20. package/src/plugins/XKTLoaderPlugin/parsers/ParserV8.js +5 -5
  21. package/src/plugins/XKTLoaderPlugin/parsers/ParserV9.js +5 -5
  22. package/src/plugins/index.js +2 -2
  23. package/src/viewer/scene/Entity.js +6 -0
  24. package/src/viewer/scene/model/SceneModelEntity.js +26 -0
  25. package/src/viewer/scene/model/vbo/batching/triangles/VBOBatchingTrianglesLayer.js +44 -0
  26. package/src/viewer/scene/model/vbo/instancing/triangles/VBOInstancingTrianglesLayer.js +58 -0
  27. package/src/viewer/scene/sectionCaps/SectionCaps.js +33 -27
  28. package/src/viewer/scene/webgl/ArrayBuf.js +20 -0
  29. package/types/plugins/AngleMeasurementsPlugin/AngleMeasurement.d.ts +108 -26
  30. package/types/plugins/CityJSONLoaderPlugin/CityJSONLoaderPlugin.d.ts +14 -3
  31. package/types/plugins/DotBIMLoaderPlugin/DotBIMLoaderPlugin.d.ts +23 -5
  32. package/types/plugins/GLTFLoaderPlugin/GLTFLoaderPlugin.d.ts +25 -5
  33. package/types/plugins/LASLoaderPlugin/LASLoaderPlugin.d.ts +100 -20
  34. package/types/plugins/STLLoaderPlugin/STLLoaderPlugin.d.ts +14 -3
  35. package/types/plugins/WebIFCLoaderPlugin/WebIFCLoaderPlugin.d.ts +83 -18
  36. package/types/plugins/XKTLoaderPlugin/XKTLoaderPlugin.d.ts +106 -21
  37. package/types/viewer/Configs.d.ts +24 -6
  38. package/types/viewer/scene/CameraControl/CameraControl.d.ts +445 -66
  39. package/types/viewer/scene/Component.d.ts +1 -1
  40. package/types/viewer/scene/Entity.d.ts +191 -40
  41. package/types/viewer/scene/camera/Camera.d.ts +170 -50
  42. package/types/viewer/scene/camera/CameraFlightAnimation.d.ts +57 -8
  43. package/types/viewer/scene/camera/CameraPath.d.ts +13 -8
  44. package/types/viewer/scene/camera/CameraPathAnimation.d.ts +22 -4
  45. package/types/viewer/scene/camera/CustomProjection.d.ts +21 -6
  46. package/types/viewer/scene/camera/Frustum.d.ts +90 -18
  47. package/types/viewer/scene/camera/Ortho.d.ts +54 -14
  48. package/types/viewer/scene/camera/Perspective.d.ts +70 -16
  49. package/types/viewer/scene/geometry/ReadableGeometry.d.ts +25 -21
  50. package/types/viewer/scene/geometry/VBOGeometry.d.ts +7 -7
  51. package/types/viewer/scene/lights/AmbientLight.d.ts +26 -4
  52. package/types/viewer/scene/lights/DirLight.d.ts +52 -8
  53. package/types/viewer/scene/lights/PointLight.d.ts +93 -14
  54. package/types/viewer/scene/materials/EdgeMaterial.d.ts +37 -12
  55. package/types/viewer/scene/materials/EmphasisMaterial.d.ts +119 -22
  56. package/types/viewer/scene/materials/Fresnel.d.ts +50 -10
  57. package/types/viewer/scene/materials/LambertMaterial.d.ts +90 -16
  58. package/types/viewer/scene/materials/LinesMaterial.d.ts +25 -7
  59. package/types/viewer/scene/materials/MetallicMaterial.d.ts +127 -40
  60. package/types/viewer/scene/materials/PhongMaterial.d.ts +185 -52
  61. package/types/viewer/scene/materials/PointsMaterial.d.ts +101 -20
  62. package/types/viewer/scene/materials/SpecularMaterial.d.ts +117 -41
  63. package/types/viewer/scene/materials/Texture.d.ts +62 -22
  64. package/types/viewer/scene/models/SceneModel.d.ts +233 -76
  65. package/types/viewer/scene/models/SceneModelEntity.d.ts +217 -51
  66. package/types/viewer/scene/models/SceneModelMesh.d.ts +4 -4
  67. package/types/viewer/scene/models/SceneModelTransform.d.ts +59 -14
  68. package/types/viewer/scene/paths/CubicBezierCurve.d.ts +73 -12
  69. package/types/viewer/scene/paths/Curve.d.ts +19 -6
  70. package/types/viewer/scene/paths/Path.d.ts +57 -10
  71. package/types/viewer/scene/paths/QuadraticBezierCurve.d.ts +57 -10
  72. package/types/viewer/scene/paths/SplineCurve.d.ts +32 -6
  73. package/types/viewer/scene/scene/Scene.d.ts +196 -94
  74. package/types/viewer/scene/sectionPlane/SectionPlane.d.ts +69 -12
  75. package/types/viewer/scene/viewport/Viewport.d.ts +14 -4
  76. package/types/viewer/scene/webgl/PickResult.d.ts +28 -13
  77. package/dist/xeokit-sdk.es5.js.map +0 -1
  78. package/dist/xeokit-sdk.min.es5.js.map +0 -1
@@ -11,7 +11,9 @@ export declare interface ILASDefaultDataSource {
11
11
  */
12
12
  getLAS(src: string | number, ok: (LAS: ArrayBuffer) => void, error: (e: Error) => void): void;
13
13
 
14
- cacheBuster: boolean;
14
+ get cacheBuster(): boolean;
15
+
16
+ set cacheBuster(value: boolean);
15
17
  }
16
18
 
17
19
  export declare type LASLoaderPluginConfiguration = {
@@ -75,31 +77,58 @@ export declare class LASLoaderPlugin extends Plugin {
75
77
  constructor(viewer: Viewer, cfg?: LASLoaderPluginConfiguration);
76
78
 
77
79
  /**
78
- * Custom data source through which the LASLoaderPlugin can load LAS files.
80
+ * Sets a custom data source through which the LASLoaderPlugin can load LAS files.
81
+ *
82
+ * Default value is {@link LASDefaultDataSource}, which loads via HTTP.
83
+ *
84
+ * @type {ILASDefaultDataSource}
85
+ */
86
+ set dataSource(arg: ILASDefaultDataSource);
87
+
88
+ /**
89
+ * Gets the custom data source through which the LASLoaderPlugin can load LAS files.
79
90
  *
80
91
  * Default value is {@link LASDefaultDataSource}, which loads via HTTP.
81
92
  *
82
93
  * @type {ILASDefaultDataSource}
83
94
  */
84
- dataSource: ILASDefaultDataSource;
95
+ get dataSource(): ILASDefaultDataSource;
85
96
 
86
97
  /**
87
98
  * Configures LASLoaderPlugin to load every **n** points.
88
99
  *
89
100
  * Default value is ````1````.
90
101
  *
91
- * @type {Number}
102
+ * @param {Number} value The **n**th point that LASLoaderPlugin will read.
103
+ */
104
+ set skip(value: number);
105
+
106
+ /**
107
+ * When LASLoaderPlugin is configured to load every **n** points, returns the value of **n**.
108
+ *
109
+ * Default value is ````1````.
110
+ *
111
+ * @returns {Number} The **n**th point that LASLoaderPlugin will read.
92
112
  */
93
- skip: number;
113
+ get skip(): number;
94
114
 
95
115
  /**
96
116
  * Configures if LASLoaderPlugin assumes that LAS positions are stored in 64-bit floats instead of 32-bit.
97
117
  *
98
118
  * Default value is ````false````.
99
119
  *
100
- * @type {Boolean}
120
+ * @param {Boolean} value True if LASLoaderPlugin assumes that positions are stored in 64-bit floats instead of 32-bit.
101
121
  */
102
- fp64: boolean;
122
+ set fp64(value: boolean);
123
+
124
+ /**
125
+ * Gets if LASLoaderPlugin assumes that LAS positions are stored in 64-bit floats instead of 32-bit.
126
+ *
127
+ * Default value is ````false````.
128
+ *
129
+ * @returns {Boolean} True if LASLoaderPlugin assumes that positions are stored in 64-bit floats instead of 32-bit.
130
+ */
131
+ get fp64(): boolean;
103
132
 
104
133
  /**
105
134
  * Configures whether LASLoaderPlugin assumes that LAS colors are encoded using 8 or 16 bits.
@@ -108,9 +137,31 @@ export declare class LASLoaderPlugin extends Plugin {
108
137
  *
109
138
  * Note: LAS specification recommends 16 bits.
110
139
  *
111
- * @type {Number|String}
140
+ * @param {Number|String} value Valid values are 8, 16 and "auto".
141
+ */
142
+ set colorDepth(value: 8 | 16 | "auto");
143
+
144
+ /**
145
+ * Gets whether LASLoaderPlugin assumes that LAS colors are encoded using 8 or 16 bits.
146
+ *
147
+ * Default value is ````8````.
148
+ *
149
+ * Note: LAS specification recommends 16 bits.
150
+ *
151
+ * @returns {Number|String} Possible returned values are 8, 16 and "auto".
112
152
  */
113
- colorDepth: 8 | 16 | "auto";
153
+ get colorDepth(): 8 | 16 | "auto";
154
+
155
+ /**
156
+ * Gets if LASLoaderPlugin immediately centers LAS positions.
157
+ *
158
+ * If this is ````true```` then centering is the first thing that happens to LAS positions as they are loaded.
159
+ *
160
+ * Default value is ````false````.
161
+ *
162
+ * @returns {Boolean} True if LASLoaderPlugin immediately centers LAS positions.
163
+ */
164
+ get center():number[];
114
165
 
115
166
  /**
116
167
  * Configures if LASLoaderPlugin immediately centers LAS positions.
@@ -119,40 +170,69 @@ export declare class LASLoaderPlugin extends Plugin {
119
170
  *
120
171
  * Default value is ````false````.
121
172
  *
122
- * @type {Number[]}
173
+ * @param {Boolean} value True if LASLoaderPlugin immediately centers LAS positions.
123
174
  */
124
- center: number[];
175
+ set center(value:number[]);
125
176
 
126
177
  /**
127
- * Current transformation to apply to LAS positions as they are loaded.
178
+ * Gets the current transformation to apply to LAS positions as they are loaded.
128
179
  *
129
180
  * If this is ````true```` then LAS positions will be transformed right after they are centered.
130
181
  *
131
182
  * Default value is null.
132
183
  *
133
- * @type {Number[]|null}
184
+ * @returns {Number[]|null} A 16-element array containing a 4x4 transformation matrix.
185
+ */
186
+ get transform(): number[];
187
+
188
+ /**
189
+ * Sets the current transformation to apply to LAS positions as they are loaded.
190
+ *
191
+ * Default value is null.
192
+ *
193
+ * @param {Number[]|null} transform A 16-element array containing a 4x4 transformation matrix.
134
194
  */
135
- transform: number[];
195
+ set transform(transform: number[]);
136
196
 
137
197
  /**
138
- * Current rotations to apply to LAS positions as they are loaded.
198
+ * Gets the current rotations to apply to LAS positions as they are loaded.
139
199
  *
140
200
  * Rotations are an array of three Euler angles in degrees, for each of the X, Y and Z axis, applied in that order.
141
201
  *
142
202
  * Default value is null.
143
203
  *
144
- * @type {Number[]|null}
204
+ * @returns {Number[]|null} If defined, an array of three Euler angles in degrees, for each of the X, Y and Z axis. Null if undefined.
205
+ */
206
+ get rotate():number[];
207
+
208
+ /**
209
+ * Sets the current rotations to apply to LAS positions as they are loaded.
210
+ *
211
+ * Rotations are an array of three Euler angles in degrees, for each of the X, Y and Z axis, applied in that order.
212
+ *
213
+ * Default value is null.
214
+ *
215
+ * @param {Number[]|null} rotate Array of three Euler angles in degrees, for each of the X, Y and Z axis.
216
+ */
217
+ set rotate(rotate:number[]) ;
218
+
219
+ /**
220
+ * Gets if LAS positions are rotated 90 degrees about X as they are loaded.
221
+ *
222
+ * Default value is ````false````.
223
+ *
224
+ * @returns {*}
145
225
  */
146
- rotate: number[];
226
+ get rotateX() :boolean;
147
227
 
148
228
  /**
149
- * Configures if LAS positions are rotated 90 degrees about X as they are loaded.
229
+ * Sets if LAS positions are rotated 90 degrees about X as they are loaded.
150
230
  *
151
231
  * Default value is ````false````.
152
232
  *
153
- * @type {Boolean}
233
+ * @param rotateX
154
234
  */
155
- rotateX: boolean;
235
+ set rotateX(rotateX:boolean);
156
236
 
157
237
  /**
158
238
  * Loads an ````LAS```` model into this LASLoaderPlugin's {@link Viewer}.
@@ -10,7 +10,9 @@ export declare interface ISTLDefaultDataSource {
10
10
  */
11
11
  getSTL(src: string | number, ok: Function, error: Function): void;
12
12
 
13
- cacheBuster: boolean;
13
+ get cacheBuster(): boolean;
14
+
15
+ set cacheBuster(value: boolean);
14
16
  }
15
17
 
16
18
  export declare type STLLoaderPluginCOnfiguration = {
@@ -63,13 +65,22 @@ export declare class STLLoaderPlugin extends Plugin {
63
65
  constructor(viewer: Viewer, cfg?: STLLoaderPluginCOnfiguration);
64
66
 
65
67
  /**
66
- * Custom data source through which the STLLoaderPlugin can load STL files.
68
+ * Sets a custom data source through which the STLLoaderPlugin can load STL files.
69
+ *
70
+ * Default value is {@link STLDefaultDataSource}, which loads via an XMLHttpRequest.
71
+ *
72
+ * @type {ISTLDefaultDataSource}
73
+ */
74
+ set dataSource(arg: ISTLDefaultDataSource);
75
+
76
+ /**
77
+ * Gets the custom data source through which the STLLoaderPlugin can load STL files.
67
78
  *
68
79
  * Default value is {@link STLDefaultDataSource}, which loads via an XMLHttpRequest.
69
80
  *
70
81
  * @type {ISTLDefaultDataSource}
71
82
  */
72
- dataSource: ISTLDefaultDataSource;
83
+ get dataSource(): ISTLDefaultDataSource;
73
84
 
74
85
  /**
75
86
  * Loads an STL model from a file into this STLLoaderPlugin's {@link Viewer}.
@@ -14,7 +14,9 @@ import { ModelStats } from "../index";
14
14
  */
15
15
  getIFC(src: string | number, ok: (buffer: ArrayBuffer)=> void, error: (e: Error)=> void): void;
16
16
 
17
- cacheBuster: boolean;
17
+ get cacheBuster(): boolean;
18
+
19
+ set cacheBuster(value: boolean);
18
20
  }
19
21
 
20
22
  export declare type WebIFCLoaderPluginConfiguration = {
@@ -82,25 +84,43 @@ export declare class WebIFCLoaderPlugin extends Plugin {
82
84
  constructor(viewer: Viewer, cfg?: WebIFCLoaderPluginConfiguration);
83
85
 
84
86
  /**
85
- * Custom data source through which the WebIFCLoaderPlugin can load IFC files.
87
+ * Sets a custom data source through which the WebIFCLoaderPlugin can load IFC files.
86
88
  *
87
89
  * Default value is {@link WebIFCDefaultDataSource}, which loads via HTTP.
88
90
  *
89
91
  * @type {Object}
90
92
  */
91
- dataSource: IWebIFCDefaultDataSource;
93
+ set dataSource(arg: IWebIFCDefaultDataSource);
94
+
95
+ /**
96
+ * Gets the custom data source through which the WebIFCLoaderPlugin can load IFC files.
97
+ *
98
+ * Default value is {@link WebIFCDefaultDataSource}, which loads via HTTP.
99
+ *
100
+ * @type {Object}
101
+ */
102
+ get dataSource(): IWebIFCDefaultDataSource;
103
+
104
+ /**
105
+ * Sets map of initial default states for each loaded {@link Entity} that represents an object.
106
+ *
107
+ * Default value is {@link IFCObjectDefaults}.
108
+ *
109
+ * @type {IFCObjectDefaults}
110
+ */
111
+ set objectDefaults(arg: IFCObjectDefaults);
92
112
 
93
113
  /**
94
- * Map of initial default states for each loaded {@link Entity} that represents an object.
114
+ * Gets map of initial default states for each loaded {@link Entity} that represents an object.
95
115
  *
96
116
  * Default value is {@link IFCObjectDefaults}.
97
117
  *
98
118
  * @type {IFCObjectDefaults}
99
119
  */
100
- objectDefaults: IFCObjectDefaults;
120
+ get objectDefaults(): IFCObjectDefaults;
101
121
 
102
122
  /**
103
- * Whitelist of the IFC types loaded by this WebIFCLoaderPlugin.
123
+ * Sets the whitelist of the IFC types loaded by this WebIFCLoaderPlugin.
104
124
  *
105
125
  * When loading IFC models, causes this WebIFCLoaderPlugin to only load objects whose types are in this
106
126
  * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
@@ -109,10 +129,34 @@ export declare class WebIFCLoaderPlugin extends Plugin {
109
129
  *
110
130
  * @type {String[]}
111
131
  */
112
- includeTypes: string[];
132
+ set includeTypes(arg: string[]);
113
133
 
114
134
  /**
115
- * Blacklist of IFC types that are never loaded by this WebIFCLoaderPlugin.
135
+ * Gets the whitelist of the IFC types loaded by this WebIFCLoaderPlugin.
136
+ *
137
+ * When loading IFC models, causes this WebIFCLoaderPlugin to only load objects whose types are in this
138
+ * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
139
+ *
140
+ * Default value is ````undefined````.
141
+ *
142
+ * @type {String[]}
143
+ */
144
+ get includeTypes(): string[];
145
+
146
+ /**
147
+ * Sets the blacklist of IFC types that are never loaded by this WebIFCLoaderPlugin.
148
+ *
149
+ * When IFC models, causes this WebIFCLoaderPlugin to **not** load objects whose types are in this
150
+ * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
151
+ *
152
+ * Default value is ````undefined````.
153
+ *
154
+ * @type {String[]}
155
+ */
156
+ set excludeTypes(arg: string[]);
157
+
158
+ /**
159
+ * Gets the blacklist of IFC types that are never loaded by this WebIFCLoaderPlugin.
116
160
  *
117
161
  * When loading IFC models, causes this WebIFCLoaderPlugin to **not** load objects whose types are in this
118
162
  * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
@@ -121,10 +165,10 @@ export declare class WebIFCLoaderPlugin extends Plugin {
121
165
  *
122
166
  * @type {String[]}
123
167
  */
124
- excludeTypes: string[];
168
+ get excludeTypes(): string[];
125
169
 
126
170
  /**
127
- * Whether to load objects that don't have IFC types.
171
+ * Sets whether we load objects that don't have IFC types.
128
172
  *
129
173
  * When loading IFC models and this is ````true````, WebIFCLoaderPlugin will not load objects
130
174
  * that don't have IFC types.
@@ -133,21 +177,33 @@ export declare class WebIFCLoaderPlugin extends Plugin {
133
177
  *
134
178
  * @type {Boolean}
135
179
  */
136
- excludeUnclassifiedObjects: boolean;
180
+ set excludeUnclassifiedObjects(arg: boolean);
137
181
 
138
182
  /**
139
- * The ````IFC```` format versions supported by this WebIFCLoaderPlugin.
140
- * @type {string[]}
183
+ * Gets whether we load objects that don't have IFC types.
184
+ *
185
+ * When loading IFC models and this is ````true````, WebIFCLoaderPlugin will not load objects
186
+ * that don't have IFC types.
187
+ *
188
+ * Default value is ````false````.
189
+ *
190
+ * @type {Boolean}
191
+ */
192
+ get excludeUnclassifiedObjects(): boolean;
193
+
194
+ /**
195
+ * Gets the ````IFC```` format versions supported by this WebIFCLoaderPlugin.
196
+ * @returns {string[]}
141
197
  */
142
- readonly supportedVersions: string[];
198
+ get supportedVersions(): string[];
143
199
 
144
200
  /**
145
- * Whether WebIFCLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
201
+ * Sets whether WebIFCLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
146
202
  *
147
- * Set this ````true```` when you need to load multiple instances of the same model, to avoid ID clashes
203
+ * Set this ````true```` when you need to load multiple instances of the same model, to avoid ID clashes
148
204
  * between the objects in the different instances.
149
205
  *
150
- * When loading a model with this set ````true````, then each {@link Entity.id} and {@link MetaObject.id} will be
206
+ * When we load a model with this set ````true````, then each {@link Entity.id} and {@link MetaObject.id} will be
151
207
  * prefixed by the ID of the model, ie. ````<modelId>.<objectId>````.
152
208
  *
153
209
  * {@link Entity.originalSystemId} and {@link MetaObject.originalSystemId} will always hold the original, un-prefixed, ID values.
@@ -158,7 +214,16 @@ export declare class WebIFCLoaderPlugin extends Plugin {
158
214
  *
159
215
  * @type {Boolean}
160
216
  */
161
- globalizeObjectIds: boolean;
217
+ set globalizeObjectIds(arg: boolean);
218
+
219
+ /**
220
+ * Gets whether WebIFCLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
221
+ *
222
+ * Default value is ````false````.
223
+ *
224
+ * @type {Boolean}
225
+ */
226
+ get globalizeObjectIds(): boolean;
162
227
 
163
228
  /**
164
229
  * Loads an ````IFC```` model into this WebIFCLoaderPlugin's {@link Viewer}.
@@ -103,7 +103,9 @@ export declare interface IXKTDefaultDataSource {
103
103
  */
104
104
  getXKT(src: string | number, ok: (buffer: ArrayBuffer) => void, error: (e: Error) => void): void;
105
105
 
106
- cacheBuster: boolean;
106
+ get cacheBuster(): boolean;
107
+
108
+ set cacheBuster(value: boolean);
107
109
  }
108
110
 
109
111
  /**
@@ -120,23 +122,51 @@ export declare class XKTLoaderPlugin extends Plugin {
120
122
  constructor(viewer: Viewer, cfg?: XKTLoaderPluginConfiguration);
121
123
 
122
124
  /**
123
- * Custom data source through which the XKTLoaderPlugin can load models and metadata.
125
+ * Sets a custom data source through which the XKTLoaderPlugin can load models and metadata.
124
126
  *
125
127
  * Default value is {@link XKTDefaultDataSource}, which loads via HTTP.
126
128
  *
127
129
  * @type {IXKTDefaultDataSource}
128
130
  */
129
- dataSource: IXKTDefaultDataSource;
131
+ set dataSource(arg: IXKTDefaultDataSource);
130
132
 
131
133
  /**
132
- * Map of initial default states for each loaded {@link Entity} that represents an object.
134
+ * Gets the custom data source through which the XKTLoaderPlugin can load models and metadata.
135
+ *
136
+ * Default value is {@link XKTDefaultDataSource}, which loads via HTTP.
137
+ *
138
+ * @type {IXKTDefaultDataSource}
139
+ */
140
+ get dataSource(): IXKTDefaultDataSource;
141
+
142
+ /**
143
+ * Sets map of initial default states for each loaded {@link Entity} that represents an object.
133
144
  *
134
145
  * @type {IFCObjectDefaults}
135
146
  */
136
- objectDefaults: IFCObjectDefaults;
147
+ set objectDefaults(arg: IFCObjectDefaults);
148
+
149
+ /**
150
+ * Gets map of initial default states for each loaded {@link Entity} that represents an object.
151
+ *
152
+ * @type {IFCObjectDefaults}
153
+ */
154
+ get objectDefaults(): IFCObjectDefaults;
155
+
156
+ /**
157
+ * Sets the whitelist of the IFC types loaded by this XKTLoaderPlugin.
158
+ *
159
+ * When loading models with metadata, causes this XKTLoaderPlugin to only load objects whose types are in this
160
+ * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
161
+ *
162
+ * Default value is ````undefined````.
163
+ *
164
+ * @type {String[]}
165
+ */
166
+ set includeTypes(arg: string[]);
137
167
 
138
168
  /**
139
- * The whitelist of the IFC types loaded by this XKTLoaderPlugin.
169
+ * Gets the whitelist of the IFC types loaded by this XKTLoaderPlugin.
140
170
  *
141
171
  * When loading models with metadata, causes this XKTLoaderPlugin to only load objects whose types are in this
142
172
  * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
@@ -145,10 +175,23 @@ export declare class XKTLoaderPlugin extends Plugin {
145
175
  *
146
176
  * @type {String[]}
147
177
  */
148
- includeTypes: string[];
178
+
179
+ get includeTypes(): string[];
180
+
181
+ /**
182
+ * Sets the blacklist of IFC types that are never loaded by this XKTLoaderPlugin.
183
+ *
184
+ * When loading models with metadata, causes this XKTLoaderPlugin to **not** load objects whose types are in this
185
+ * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
186
+ *
187
+ * Default value is ````undefined````.
188
+ *
189
+ * @type {String[]}
190
+ */
191
+ set excludeTypes(arg: string[]);
149
192
 
150
193
  /**
151
- * The blacklist of IFC types that are never loaded by this XKTLoaderPlugin.
194
+ * Gets the blacklist of IFC types that are never loaded by this XKTLoaderPlugin.
152
195
  *
153
196
  * When loading models with metadata, causes this XKTLoaderPlugin to **not** load objects whose types are in this
154
197
  * list. An object's type is indicated by its {@link MetaObject}'s {@link MetaObject.type}.
@@ -157,10 +200,10 @@ export declare class XKTLoaderPlugin extends Plugin {
157
200
  *
158
201
  * @type {String[]}
159
202
  */
160
- excludeTypes: string[];
203
+ get excludeTypes(): string[];
161
204
 
162
205
  /**
163
- * The whitelist of the specified elements loaded by this XKTLoaderPlugin.
206
+ * Sets the whitelist of the specified elements by this XKTLoaderPlugin.
164
207
  *
165
208
  * When loading models with metadata, causes this XKTLoaderPlugin to only load objects whose ids are in this
166
209
  * list. An object's id is indicated by its {@link MetaObject}'s {@link MetaObject#id}.
@@ -169,10 +212,34 @@ export declare class XKTLoaderPlugin extends Plugin {
169
212
  *
170
213
  * @type {String[]}
171
214
  */
172
- includeIds: string[];
215
+ set includeIds(arg: string[]);
173
216
 
174
217
  /**
175
- * Whether to exclude objects that don't have IFC types.
218
+ * Gets the whitelist of the specified elements loaded by this XKTLoaderPlugin.
219
+ *
220
+ * When loading models with metadata, causes this XKTLoaderPlugin to only load objects whose ids are in this
221
+ * list. An object's id is indicated by its {@link MetaObject}'s {@link MetaObject#id}.
222
+ *
223
+ * Default value is ````undefined````.
224
+ *
225
+ * @type {String[]}
226
+ */
227
+ get includeIds(): string[];
228
+
229
+ /**
230
+ * Sets whether we load objects that don't have IFC types.
231
+ *
232
+ * When loading models with metadata and this is ````true````, XKTLoaderPlugin will not load objects
233
+ * that don't have IFC types.
234
+ *
235
+ * Default value is ````false````.
236
+ *
237
+ * @type {Boolean}
238
+ */
239
+ set excludeUnclassifiedObjects(arg: boolean);
240
+
241
+ /**
242
+ * Gets whether we load objects that don't have IFC types.
176
243
  *
177
244
  * When loading models with metadata and this is ````true````, XKTLoaderPlugin will not load objects
178
245
  * that don't have IFC types.
@@ -181,10 +248,10 @@ export declare class XKTLoaderPlugin extends Plugin {
181
248
  *
182
249
  * @type {Boolean}
183
250
  */
184
- excludeUnclassifiedObjects: boolean;
251
+ get excludeUnclassifiedObjects(): boolean;
185
252
 
186
253
  /**
187
- * Whether XKTLoaderPlugin enables geometry reuse when loading models.
254
+ * Sets whether XKTLoaderPlugin enables geometry reuse when loading models.
188
255
  *
189
256
  * Default value is ````true````.
190
257
  *
@@ -198,18 +265,27 @@ export declare class XKTLoaderPlugin extends Plugin {
198
265
  *
199
266
  * @type {Boolean}
200
267
  */
201
- reuseGeometries: boolean;
268
+ set reuseGeometries(arg: boolean);
202
269
 
203
270
  /**
204
- * The ````.xkt```` format versions supported by this XKTLoaderPlugin.
205
- * @type {string[]}
271
+ * Gets whether XKTLoaderPlugin enables geometry reuse when loading models.
272
+ *
273
+ * Default value is ````true````.
274
+ *
275
+ * @type {Boolean}
206
276
  */
207
- readonly supportedVersions: string[];
277
+ get reuseGeometries(): boolean;
208
278
 
209
279
  /**
210
- * Whether XKTLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
280
+ * Gets the ````.xkt```` format versions supported by this XKTLoaderPlugin/
281
+ * @returns {string[]}
282
+ */
283
+ get supportedVersions(): string[];
284
+
285
+ /**
286
+ * Sets whether XKTLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
211
287
  *
212
- * Set this ````true```` when you need to load multiple instances of the same model, to avoid ID clashes
288
+ * Set this ````true```` when you need to load multiple instances of the same model, to avoid ID clashes
213
289
  * between the objects in the different instances.
214
290
  *
215
291
  * When we load a model with this set ````true````, then each {@link Entity.id} and {@link MetaObject.id} will be
@@ -223,7 +299,16 @@ export declare class XKTLoaderPlugin extends Plugin {
223
299
  *
224
300
  * @type {Boolean}
225
301
  */
226
- globalizeObjectIds: boolean;
302
+ set globalizeObjectIds(arg: boolean);
303
+
304
+ /**
305
+ * Gets whether XKTLoaderPlugin globalizes each {@link Entity.id} and {@link MetaObject.id} as it loads a model.
306
+ *
307
+ * Default value is ````false````.
308
+ *
309
+ * @type {Boolean}
310
+ */
311
+ get globalizeObjectIds(): boolean;
227
312
 
228
313
 
229
314
  /**
@@ -3,26 +3,44 @@
3
3
  */
4
4
  export declare abstract class Configs {
5
5
  /**
6
- * Whether double precision mode is enabled for Viewers.
6
+ * Sets whether double precision mode is enabled for Viewers.
7
7
  *
8
8
  * When double precision mode is enabled (default), Viewers will accurately render models that contain
9
9
  * double-precision coordinates, without jittering.
10
+ *
11
+ */
12
+ set doublePrecisionEnabled(doublePrecision: boolean);
13
+
14
+ /**
15
+ * Gets whether double precision mode is enabled for all Viewers.
16
+ *
17
+ * @returns {Boolean}
10
18
  */
11
- static doublePrecisionEnabled: boolean;
19
+ get doublePrecisionEnabled(): boolean;
12
20
 
13
21
  /**
14
- * The maximum data texture height.
22
+ * Sets the maximum data texture height.
15
23
  *
16
24
  * Should be a multiple of 1024. Default is 4096, which is the maximum allowed value.
17
25
  */
18
- static maxDataTextureHeight: number;
26
+ set maxDataTextureHeight(value: number);
19
27
 
20
28
  /**
21
- * The maximum batched geometry VBO size.
29
+ * Gets maximum data texture height.
30
+ */
31
+ get maxDataTextureHeight(): number;
32
+
33
+ /**
34
+ * Sets the maximum batched geometry VBO size.
22
35
  *
23
36
  * Default value is 5000000, which is the maximum size.
24
37
  *
25
38
  * Minimum size is 100000.
26
39
  */
27
- static maxGeometryBatchSize: number;
40
+ set maxGeometryBatchSize(value: number);
41
+
42
+ /**
43
+ * Gets the maximum batched geometry VBO size.
44
+ */
45
+ get maxGeometryBatchSize(): number;
28
46
  }