@xeokit/xeokit-sdk 2.2.5 → 2.3.0-beta-2

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 (120) hide show
  1. package/dist/web-ifc.wasm +0 -0
  2. package/dist/xeokit-sdk.cjs.js +87051 -79967
  3. package/dist/xeokit-sdk.es.js +87051 -79967
  4. package/dist/xeokit-sdk.min.cjs.js +1 -1
  5. package/dist/xeokit-sdk.min.es.js +1 -1
  6. package/package.json +18 -22
  7. package/types/extras/ContextMenu/ContextMenu.d.ts +125 -0
  8. package/types/extras/ContextMenu/index.d.ts +1 -0
  9. package/types/extras/index.d.ts +1 -0
  10. package/types/index.d.ts +3 -0
  11. package/types/plugins/AngleMeasurementsPlugin/AngleMeasurement.d.ts +144 -0
  12. package/types/plugins/AngleMeasurementsPlugin/AngleMeasurementsControl.d.ts +67 -0
  13. package/types/plugins/AngleMeasurementsPlugin/AngleMeasurementsPlugin.d.ts +99 -0
  14. package/types/plugins/AngleMeasurementsPlugin/index.d.ts +1 -0
  15. package/types/plugins/AnnotationsPlugin/Annotation.d.ts +135 -0
  16. package/types/plugins/AnnotationsPlugin/AnnotationsPlugin.d.ts +150 -0
  17. package/types/plugins/AnnotationsPlugin/index.d.ts +2 -0
  18. package/types/plugins/AxisGizmoPlugin/AxisGizmoPlugin.d.ts +28 -0
  19. package/types/plugins/AxisGizmoPlugin/index.d.ts +1 -0
  20. package/types/plugins/BCFViewpointsPlugin/BCFViewpointsPlugin.d.ts +146 -0
  21. package/types/plugins/BCFViewpointsPlugin/index.d.ts +1 -0
  22. package/types/plugins/CityJSONLoaderPlugin/CityJSONLoaderPlugin.d.ts +81 -0
  23. package/types/plugins/CityJSONLoaderPlugin/index.d.ts +1 -0
  24. package/types/plugins/DistanceMeasurementsPlugin/DistanceMeasurement.d.ts +137 -0
  25. package/types/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsControl.d.ts +65 -0
  26. package/types/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsPlugin.d.ts +135 -0
  27. package/types/plugins/DistanceMeasurementsPlugin/index.d.ts +1 -0
  28. package/types/plugins/FastNavPlugin/FastNavPlugin.d.ts +203 -0
  29. package/types/plugins/FastNavPlugin/index.d.ts +1 -0
  30. package/types/plugins/GLTFLoaderPlugin/GLTFLoaderPlugin.d.ts +140 -0
  31. package/types/plugins/GLTFLoaderPlugin/index.d.ts +1 -0
  32. package/types/plugins/LASLoaderPlugin/LASLoaderPlugin.d.ts +146 -0
  33. package/types/plugins/LASLoaderPlugin/index.d.ts +1 -0
  34. package/types/plugins/NavCubePlugin/NavCubePlugin.d.ts +160 -0
  35. package/types/plugins/NavCubePlugin/index.d.ts +1 -0
  36. package/types/plugins/OBJLoaderPlugin/OBJLoaderPlugin.d.ts +44 -0
  37. package/types/plugins/OBJLoaderPlugin/index.d.ts +1 -0
  38. package/types/plugins/STLLoaderPlugin/STLLoaderPlugin.d.ts +88 -0
  39. package/types/plugins/STLLoaderPlugin/index.d.ts +1 -0
  40. package/types/plugins/SectionPlanesPlugin/SectionPlanesPlugin.d.ts +103 -0
  41. package/types/plugins/SectionPlanesPlugin/index.d.ts +1 -0
  42. package/types/plugins/SkyboxesPlugin/SkyboxesPlugin.d.ts +34 -0
  43. package/types/plugins/SkyboxesPlugin/index.d.ts +1 -0
  44. package/types/plugins/StoreyViewsPlugin/Storey.d.ts +47 -0
  45. package/types/plugins/StoreyViewsPlugin/StoreyMap.d.ts +41 -0
  46. package/types/plugins/StoreyViewsPlugin/StoreyViewsPlugin.d.ts +180 -0
  47. package/types/plugins/StoreyViewsPlugin/index.d.ts +1 -0
  48. package/types/plugins/TreeViewPlugin/ModelTreeView.d.ts +24 -0
  49. package/types/plugins/TreeViewPlugin/TreeViewNode.d.ts +66 -0
  50. package/types/plugins/TreeViewPlugin/TreeViewPlugin.d.ts +150 -0
  51. package/types/plugins/TreeViewPlugin/index.d.ts +1 -0
  52. package/types/plugins/ViewCullPlugin/ViewCullPlugin.d.ts +34 -0
  53. package/types/plugins/ViewCullPlugin/index.d.ts +1 -0
  54. package/types/plugins/WebIFCLoaderPlugin/WebIFCLoaderPlugin.d.ts +230 -0
  55. package/types/plugins/WebIFCLoaderPlugin/index.d.ts +1 -0
  56. package/types/plugins/XKTLoaderPlugin/XKTLoaderPlugin.d.ts +277 -0
  57. package/types/plugins/XKTLoaderPlugin/index.d.ts +1 -0
  58. package/types/plugins/XML3DLoaderPlugin/XML3DLoaderPlugin.d.ts +65 -0
  59. package/types/plugins/XML3DLoaderPlugin/index.d.ts +1 -0
  60. package/types/plugins/index.d.ts +34 -0
  61. package/types/viewer/Configs.d.ts +20 -0
  62. package/types/viewer/Plugin.d.ts +69 -0
  63. package/types/viewer/Viewer.d.ts +212 -0
  64. package/types/viewer/index.d.ts +6 -0
  65. package/types/viewer/localization/LocaleService.d.ts +183 -0
  66. package/types/viewer/metadata/IFCObjectDefaults.d.ts +9 -0
  67. package/types/viewer/metadata/MetaModel.d.ts +65 -0
  68. package/types/viewer/metadata/MetaObject.d.ts +74 -0
  69. package/types/viewer/metadata/MetaScene.d.ts +135 -0
  70. package/types/viewer/metadata/Property.d.ts +29 -0
  71. package/types/viewer/metadata/PropertySet.d.ts +31 -0
  72. package/types/viewer/metadata/index.d.ts +6 -0
  73. package/types/viewer/scene/CameraControl/CameraControl.d.ts +681 -0
  74. package/types/viewer/scene/Component.d.ts +155 -0
  75. package/types/viewer/scene/Entity.d.ts +394 -0
  76. package/types/viewer/scene/camera/Camera.d.ts +364 -0
  77. package/types/viewer/scene/camera/CameraFlightAnimation.d.ts +167 -0
  78. package/types/viewer/scene/camera/CameraPath.d.ts +28 -0
  79. package/types/viewer/scene/camera/CameraPathAnimation.d.ts +95 -0
  80. package/types/viewer/scene/camera/CustomProjection.d.ts +57 -0
  81. package/types/viewer/scene/camera/Frustum.d.ts +166 -0
  82. package/types/viewer/scene/camera/Ortho.d.ts +115 -0
  83. package/types/viewer/scene/camera/Perspective.d.ts +136 -0
  84. package/types/viewer/scene/camera/index.d.ts +4 -0
  85. package/types/viewer/scene/geometry/Geometry.d.ts +7 -0
  86. package/types/viewer/scene/geometry/ReadableGeometry.d.ts +95 -0
  87. package/types/viewer/scene/geometry/index.d.ts +1 -0
  88. package/types/viewer/scene/index.d.ts +17 -0
  89. package/types/viewer/scene/marker/Marker.d.ts +136 -0
  90. package/types/viewer/scene/marker/index.d.ts +1 -0
  91. package/types/viewer/scene/materials/EdgeMaterial.d.ts +83 -0
  92. package/types/viewer/scene/materials/EmphasisMaterial.d.ts +241 -0
  93. package/types/viewer/scene/materials/Fresnel.d.ts +148 -0
  94. package/types/viewer/scene/materials/LinesMaterial.d.ts +71 -0
  95. package/types/viewer/scene/materials/Material.d.ts +3 -0
  96. package/types/viewer/scene/materials/PhongMaterial.d.ts +468 -0
  97. package/types/viewer/scene/materials/PointsMaterial.d.ts +206 -0
  98. package/types/viewer/scene/materials/Texture.d.ts +260 -0
  99. package/types/viewer/scene/materials/index.d.ts +6 -0
  100. package/types/viewer/scene/math/math.d.ts +56 -0
  101. package/types/viewer/scene/mementos/CameraMemento.d.ts +28 -0
  102. package/types/viewer/scene/mementos/ModelMemento.d.ts +44 -0
  103. package/types/viewer/scene/mementos/ObjectsMemento.d.ts +39 -0
  104. package/types/viewer/scene/mementos/index.d.ts +3 -0
  105. package/types/viewer/scene/mesh/Mesh.d.ts +786 -0
  106. package/types/viewer/scene/mesh/index.d.ts +1 -0
  107. package/types/viewer/scene/models/PerformanceModel/PerformanceModel.d.ts +622 -0
  108. package/types/viewer/scene/models/PerformanceModel/PerformanceNode.d.ts +302 -0
  109. package/types/viewer/scene/models/PerformanceModel/index.d.ts +2 -0
  110. package/types/viewer/scene/models/index.d.ts +1 -0
  111. package/types/viewer/scene/nodes/Node.d.ts +664 -0
  112. package/types/viewer/scene/nodes/index.d.ts +1 -0
  113. package/types/viewer/scene/postfx/SAO.d.ts +209 -0
  114. package/types/viewer/scene/scene/Scene.d.ts +771 -0
  115. package/types/viewer/scene/sectionPlane/SectionPlane.d.ts +93 -0
  116. package/types/viewer/scene/sectionPlane/index.d.ts +1 -0
  117. package/types/viewer/scene/viewport/Viewport.d.ts +23 -0
  118. package/types/viewer/scene/viewport/index.d.ts +1 -0
  119. package/types/viewer/scene/webgl/PickResult.d.ts +103 -0
  120. package/types/viewer/scene/webgl/index.d.ts +1 -0
@@ -0,0 +1,6 @@
1
+ export * from "./localization/LocaleService";
2
+ export * from "./scene";
3
+ export * from "./Plugin";
4
+ export * from "./Viewer";
5
+ export * from "./Configs";
6
+ export * from "./metadata";
@@ -0,0 +1,183 @@
1
+ export declare type LocaleServiceConfiguration = {
2
+ messages: any;
3
+ locale?: string;
4
+ };
5
+
6
+ /**
7
+ * Localization service for a {@link Viewer}.
8
+ */
9
+ export declare class LocaleService {
10
+ /**
11
+ * @constructor
12
+ * @param {LocaleServiceConfiguration} cfg LocaleService configuration
13
+ */
14
+ constructor(cfg?: LocaleServiceConfiguration);
15
+
16
+ /**
17
+ * Replaces the current set of locale translations.
18
+ *
19
+ * * Fires an "updated" event when done.
20
+ * * Automatically refreshes any plugins that depend on the translations.
21
+ * * Does not change the current locale.
22
+ *
23
+ * ## Usage
24
+ *
25
+ * ````javascript
26
+ * viewer.localeService.setMessages({
27
+ * messages: {
28
+ * "en": { // English
29
+ * "NavCube": {
30
+ * "front": "Front",
31
+ * "back": "Back",
32
+ * "top": "Top",
33
+ * "bottom": "Bottom",
34
+ * "left": "Left",
35
+ * "right": "Right"
36
+ * }
37
+ * },
38
+ * "mi": { // Māori
39
+ * "NavCube": {
40
+ * "front": "Mua",
41
+ * "back": "Tuarā",
42
+ * "top": "Runga",
43
+ * "bottom": "Raro",
44
+ * "left": "Mauī",
45
+ * "right": "Tika"
46
+ * }
47
+ * }
48
+ * }
49
+ * });
50
+ * ````
51
+ *
52
+ * @param {*} messages The new translations.
53
+ */
54
+
55
+ set messages(arg: any);
56
+
57
+ /**
58
+ * Sets the current locale.
59
+ *
60
+ * * Fires an "updated" event when done.
61
+ * * The given locale does not need to be in the list of available locales returned by {@link LocaleService.locales}, since
62
+ * this method assumes that you may want to load the locales at a later point.
63
+ * * Automatically refreshes any plugins that depend on the translations.
64
+ * * We can then get translations for the locale, if translations have been loaded for it, via {@link LocaleService.translate} and {@link LocaleService.translatePlurals}.
65
+ *
66
+ * @param {String} locale The new current locale.
67
+ */
68
+ set locale(arg: string);
69
+
70
+ /**
71
+ * Gets the current locale.
72
+ *
73
+ * @returns {String} The current locale.
74
+ */
75
+ get locale(): string;
76
+
77
+ /**
78
+ * Loads a new set of locale translations, adding them to the existing translations.
79
+ *
80
+ * * Fires an "updated" event when done.
81
+ * * Automatically refreshes any plugins that depend on the translations.
82
+ * * Does not change the current locale.
83
+ *
84
+ * ## Usage
85
+ *
86
+ * ````javascript
87
+ * viewer.localeService.loadMessages({
88
+ * "jp": { // Japanese
89
+ * "NavCube": {
90
+ * "front": "前部",
91
+ * "back": "裏",
92
+ * "top": "上",
93
+ * "bottom": "底",
94
+ * "left": "左",
95
+ * "right": "右"
96
+ * }
97
+ * }
98
+ * });
99
+ * ````
100
+ *
101
+ * @param {*} messages The new translations.
102
+ */
103
+ loadMessages(messages?: any): void;
104
+
105
+ /**
106
+ * Clears all locale translations.
107
+ *
108
+ * * Fires an "updated" event when done.
109
+ * * Does not change the current locale.
110
+ * * Automatically refreshes any plugins that depend on the translations, which will cause those
111
+ * plugins to fall back on their internal hard-coded text values, since this method removes all
112
+ * our translations.
113
+ */
114
+ clearMessages(): void;
115
+
116
+ /**
117
+ * Gets the list of available locales.
118
+ *
119
+ * These are derived from the currently configured set of translations.
120
+ *
121
+ * @returns {String[]} The list of available locales.
122
+ */
123
+
124
+ get locales(): string[];
125
+ /**
126
+ * Translates the given string according to the current locale.
127
+ *
128
+ * Returns null if no translation can be found.
129
+ *
130
+ * @param {String} msg String to translate.
131
+ * @param {*} [args] Extra parameters.
132
+ * @returns {String|null} Translated string if found, else null.
133
+ */
134
+
135
+ translate(msg: string, args?: any): string | null;
136
+
137
+ /**
138
+ * Translates the given phrase according to the current locale.
139
+ *
140
+ * Returns null if no translation can be found.
141
+ *
142
+ * @param {String} msg Phrase to translate.
143
+ * @param {Number} count The plural number.
144
+ * @param {*} [args] Extra parameters.
145
+ * @returns {String|null} Translated string if found, else null.
146
+ */
147
+ translatePlurals(msg: string, count: number, args?: any): string | null;
148
+
149
+ /**
150
+ * Fires an event on this LocaleService.
151
+ *
152
+ * Notifies existing subscribers to the event, optionally retains the event to give to
153
+ * any subsequent notifications on the event as they are made.
154
+ *
155
+ * @param {String} event The event type name.
156
+ * @param {Object} value The event parameters.
157
+ * @param {Boolean} [forget=false] When true, does not retain for subsequent subscribers.
158
+ */
159
+ fire(event: string, value: any, forget?: boolean): void;
160
+
161
+ /**
162
+ * Subscribes to an event on this LocaleService.
163
+ *
164
+ * @param {String} event The event
165
+ * @param {Function} callback Callback fired on the event
166
+ * @return {String} Handle to the subscription, which may be used to unsubscribe with {@link .off}.
167
+ */
168
+ on(event: string, callback: Function): string;
169
+
170
+ /**
171
+ * Cancels an event subscription that was previously made with {@link LocaleService.on}.
172
+ *
173
+ * @param {String} subId Subscription ID
174
+ */
175
+ off(subId: string): void;
176
+
177
+ /**
178
+ * Fires when the messages or the locale are updated
179
+ * @param event The loaded event
180
+ * @param callback Called fired on the event
181
+ */
182
+ on(event: "updated", callback: (e: LocaleService | string) => void): string
183
+ }
@@ -0,0 +1,9 @@
1
+
2
+ export declare type IFCObjectDefaults = {
3
+ [key: string]: {
4
+ colorize?: number[];
5
+ pickable?: boolean;
6
+ visible?: boolean;
7
+ opacity?: number
8
+ }
9
+ };
@@ -0,0 +1,65 @@
1
+ import { MetaScene } from "./MetaScene";
2
+ import { PropertySet } from "./PropertySet";
3
+ import { MetaObject } from "./MetaObject";
4
+
5
+ /**
6
+ * Metadata corresponding to an {@link Entity} that represents a model.
7
+ */
8
+ export declare class MetaModel {
9
+ /**
10
+ * Globally-unique ID.
11
+ *
12
+ * MetaModels are registered by ID in {@link MetaScene.metaModels}.
13
+ *
14
+ * When this MetaModel corresponds to an {@link Entity} then this ID will match the {@link Entity.id}.
15
+ *
16
+ */
17
+ id: string | number;
18
+
19
+ /**
20
+ * The project ID
21
+ */
22
+ projectId: string | number;
23
+
24
+ /**
25
+ * The revision ID, if available.
26
+ */
27
+ revisionId?: string | number;
28
+
29
+ /**
30
+ * The model author, if available.
31
+ */
32
+ author?: string;
33
+
34
+ /**
35
+ * The date the model was created, if available.
36
+ */
37
+ createdAt?: string;
38
+
39
+ /**
40
+ * The application that created the model, if available.
41
+ */
42
+ creatingApplication?: string;
43
+
44
+ /**
45
+ * The model schema version, if available.
46
+ */
47
+ schema?: string;
48
+
49
+ /**
50
+ * Metadata on the {@link Scene}.
51
+ */
52
+ metaScene?: MetaScene;
53
+
54
+ /**
55
+ * The {@link PropertySet}s in this MetaModel.
56
+ */
57
+ propertySets: {
58
+ String: PropertySet;
59
+ };
60
+
61
+ /**
62
+ * The root {@link MetaObject} in this MetaModel's composition structure hierarchy.
63
+ */
64
+ rootMetaObject: MetaObject;
65
+ }
@@ -0,0 +1,74 @@
1
+ import { MetaModel } from "./MetaModel";
2
+ import { PropertySet } from "./PropertySet";
3
+
4
+ /**
5
+ * Metadata corresponding to an {@link Entity} that represents an object.
6
+ */
7
+ export declare class MetaObject {
8
+ /**
9
+ * Model metadata.
10
+ */
11
+ metaModel: MetaModel;
12
+
13
+ /**
14
+ * Globally-unique ID.
15
+ */
16
+ id: string;
17
+
18
+ /**
19
+ * ID of the corresponding object within the originating system, if any.
20
+ */
21
+ originalSystemId: string;
22
+
23
+ /**
24
+ * Human-readable name.
25
+ */
26
+ name: string;
27
+
28
+ /**
29
+ * Type - often an IFC product type.
30
+ */
31
+ type: string;
32
+
33
+ /**
34
+ * Optional {@link PropertySet}s used by this MetaObject.
35
+ */
36
+ propertySets: PropertySet[];
37
+
38
+ /**
39
+ * The parent MetaObject within the structure hierarchy.
40
+ */
41
+ parent?: MetaObject;
42
+
43
+ /**
44
+ * Child ObjectMeta instances within the structure hierarchy.
45
+ */
46
+ children: MetaObject[];
47
+
48
+ /**
49
+ * External application-specific metadata
50
+ */
51
+ external?: any;
52
+
53
+ /**
54
+ * Gets the {@link MetaObject.id}s of the {@link MetaObject}s within the subtree.
55
+ *
56
+ * @returns {String[]} Array of {@link MetaObject.id}s.
57
+ */
58
+ getObjectIDsInSubtree(): string[];
59
+
60
+ /**
61
+ * Iterates over the {@link MetaObject}s within the subtree.
62
+ *
63
+ * @param {Function} callback Callback fired at each {@link MetaObject}.
64
+ */
65
+ withMetaObjectsInSubtree(callback: (metaobect: MetaObject)=> void): void;
66
+
67
+ /**
68
+ * Gets the {@link MetaObject.id}s of the {@link MetaObject}s within the subtree that have the given {@link MetaObject.type}s.
69
+ *
70
+ * @param {String[]} types {@link MetaObject.type} values.
71
+ * @returns {String[]} Array of {@link MetaObject.id}s.
72
+ */
73
+ getObjectIDsInSubtreeByType(types: string[]): string[];
74
+ }
@@ -0,0 +1,135 @@
1
+ import { Viewer } from "../Viewer";
2
+ import { Scene } from "../scene/scene/Scene";
3
+ import { MetaModel } from "./MetaModel";
4
+ import { PropertySet } from "./PropertySet";
5
+ import { MetaObject } from "./MetaObject";
6
+
7
+ /**
8
+ * Metadata corresponding to a {@link Scene}.
9
+ */
10
+ export declare class MetaScene {
11
+ /**
12
+ * The {@link Viewer}.
13
+ * @property viewer
14
+ * @type {Viewer}
15
+ */
16
+ viewer: Viewer;
17
+
18
+ /**
19
+ * The {@link Scene}.
20
+ * @property scene
21
+ * @type {Scene}
22
+ */
23
+ scene: Scene;
24
+
25
+ /**
26
+ * The {@link MetaModel}s belonging to this MetaScene, each mapped to its {@link MetaModel.modelId}.
27
+ *
28
+ * @type {{String:MetaModel}}
29
+ */
30
+ metaModels: {[key: string]: MetaModel};
31
+
32
+ /**
33
+ * The {@link PropertySet}s belonging to this MetaScene, each mapped to its {@link PropertySet.id}.
34
+ *
35
+ * @type {{String:PropertySet}}
36
+ */
37
+ propertySets: {[key: string]: PropertySet};
38
+
39
+ /**
40
+ * The {@link MetaObject}s belonging to this MetaScene, each mapped to its {@link MetaObject.id}.
41
+ *
42
+ * @type {{String:MetaObject}}
43
+ */
44
+ metaObjects: {[key: string]: MetaObject};
45
+
46
+ /**
47
+ * The {@link MetaObject}s belonging to this MetaScene, each mapped to its {@link MetaObject.type}.
48
+ *
49
+ * @type {{String:MetaObject}}
50
+ */
51
+ metaObjectsByType: {[key: string]: MetaObject};
52
+
53
+ /**
54
+ * Subscribes to an event fired at this Viewer.
55
+ *
56
+ * @param {String} event The event
57
+ * @param {Function} callback Callback fired on the event
58
+ */
59
+ on(event: string, callback: ()=> void): void;
60
+
61
+ /**
62
+ * Fires an event at this Viewer.
63
+ *
64
+ * @param {String} event Event name
65
+ * @param {Object} value Event parameters
66
+ */
67
+ fire(event: string, value: any): void;
68
+
69
+ /**
70
+ * Unsubscribes from an event fired at this Viewer.
71
+ * @param event
72
+ */
73
+ off(event: any): void;
74
+
75
+ /**
76
+ * Creates a {@link MetaModel} in this MetaScene.
77
+ *
78
+ * The MetaModel will contain a hierarchy of {@link MetaObject}s, created from the
79
+ * meta objects in ````metaModelData````.
80
+ *
81
+ * The meta object hierarchy in ````metaModelData```` is expected to be non-cyclic, with a single root. If the meta
82
+ * objects are cyclic, then this method will log an error and attempt to recover by creating a dummy root MetaObject
83
+ * of type "Model" and connecting all other MetaObjects as its direct children. If the meta objects contain multiple
84
+ * roots, then this method similarly attempts to recover by creating a dummy root MetaObject of type "Model" and
85
+ * connecting all the root MetaObjects as its children.
86
+ *
87
+ * @param {String} modelId ID for the new {@link MetaModel}, which will have {@link MetaModel.id} set to this value.
88
+ * @param {Object} metaModelData Data for the {@link MetaModel}.
89
+ * @param {Object} [options] Options for creating the {@link MetaModel}.
90
+ * @param {String[]} [options.includeTypes] When provided, only create {@link MetaObject}s with types in this list.
91
+ * @param {String[]} [options.excludeTypes] When provided, never create {@link MetaObject}s with types in this list.
92
+ * @param {Boolean} [options.globalizeObjectIds=false] Whether to globalize each {@link MetaObject.id}. Set this ````true```` when you need to load multiple instances of the same meta model, to avoid ID clashes between the meta objects in the different instances.
93
+ * @returns {MetaModel} The new MetaModel.
94
+ */
95
+ createMetaModel(modelId: string, metaModelData: any, options?: {
96
+ includeTypes?: string[];
97
+ excludeTypes?: string[];
98
+ globalizeObjectIds?: boolean;
99
+ }): MetaModel;
100
+
101
+ /**
102
+ * Removes a {@link MetaModel} from this MetaScene.
103
+ *
104
+ * Fires a "metaModelDestroyed" event with the value of the {@link MetaModel.id}.
105
+ *
106
+ * @param {String} id ID of the target {@link MetaModel}.
107
+ */
108
+ destroyMetaModel(id: string): void;
109
+
110
+ /**
111
+ * Gets the {@link MetaObject.id}s of the {@link MetaObject}s that have the given {@link MetaObject.type}.
112
+ *
113
+ * @param {String} type The type.
114
+ * @returns {String[]} Array of {@link MetaObject.id}s.
115
+ */
116
+ getObjectIDsByType(type: string): string[];
117
+
118
+ /**
119
+ * Gets the {@link MetaObject.id}s of the {@link MetaObject}s within the given subtree.
120
+ *
121
+ * @param {String} id ID of the root {@link MetaObject} of the given subtree.
122
+ * @param {String[]} [includeTypes] Optional list of types to include.
123
+ * @param {String[]} [excludeTypes] Optional list of types to exclude.
124
+ * @returns {String[]} Array of {@link MetaObject.id}s.
125
+ */
126
+ getObjectIDsInSubtree(id: string, includeTypes?: string[], excludeTypes?: string[]): string[];
127
+
128
+ /**
129
+ * Iterates over the {@link MetaObject}s within the subtree.
130
+ *
131
+ * @param {String} id ID of root {@link MetaObject}.
132
+ * @param {Function} callback Callback fired at each {@link MetaObject}.
133
+ */
134
+ withMetaObjectsInSubtree(id: string, callback: ()=> void): void;
135
+ }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * A property within a {@link PropertySet}.
3
+ */
4
+ export declare class Property {
5
+ /**
6
+ * The name of this property.
7
+ */
8
+ name: string;
9
+
10
+ /**
11
+ * The type of this property.
12
+ */
13
+ type: number | string;
14
+
15
+ /**
16
+ * The value of this property.
17
+ */
18
+ value: any;
19
+
20
+ /**
21
+ * The type of this property's value.
22
+ */
23
+ valueType: number | string;
24
+
25
+ /**
26
+ * Informative text to explain the property.
27
+ */
28
+ description: string;
29
+ }
@@ -0,0 +1,31 @@
1
+ import { Property } from "./Property";
2
+
3
+ /**
4
+ * A set of properties associated with one or more {@link MetaObject}s.
5
+ */
6
+ export declare class PropertySet {
7
+ /**
8
+ * Globally-unique ID for this PropertySet.
9
+ */
10
+ id: string;
11
+
12
+ /**
13
+ * ID of the corresponding object within the originating system, if any.
14
+ */
15
+ originalSystemId: string;
16
+
17
+ /**
18
+ * Human-readable name of this PropertySet.
19
+ */
20
+ name: string;
21
+
22
+ /**
23
+ * Type of this PropertySet.
24
+ */
25
+ type: string;
26
+
27
+ /**
28
+ * Properties within this PropertySet.
29
+ */
30
+ properties: Property[];
31
+ }
@@ -0,0 +1,6 @@
1
+ export * from "./MetaModel";
2
+ export * from "./MetaObject";
3
+ export * from "./MetaScene";
4
+ export * from "./Property";
5
+ export * from "./PropertySet";
6
+ export * from "./IFCObjectDefaults";