@thatopen/components 2.4.4 → 2.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/Components/index.d.ts +1 -1
- package/dist/index.cjs +77 -36
- package/dist/index.min.cjs +3 -3
- package/dist/index.min.mjs +3 -3
- package/dist/index.mjs +77 -36
- package/dist/namespace.d.ts +4281 -4281
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ export declare class Components implements Disposable {
|
|
|
6
6
|
/**
|
|
7
7
|
* The version of the @thatopen/components library.
|
|
8
8
|
*/
|
|
9
|
-
static readonly release = "2.4.
|
|
9
|
+
static readonly release = "2.4.5";
|
|
10
10
|
/** {@link Disposable.onDisposed} */
|
|
11
11
|
readonly onDisposed: Event<void>;
|
|
12
12
|
/**
|
package/dist/index.cjs
CHANGED
|
@@ -6312,7 +6312,7 @@ const _Components = class _Components {
|
|
|
6312
6312
|
/**
|
|
6313
6313
|
* The version of the @thatopen/components library.
|
|
6314
6314
|
*/
|
|
6315
|
-
__publicField(_Components, "release", "2.4.
|
|
6315
|
+
__publicField(_Components, "release", "2.4.5");
|
|
6316
6316
|
let Components = _Components;
|
|
6317
6317
|
class SimpleWorld extends Base {
|
|
6318
6318
|
constructor() {
|
|
@@ -12775,6 +12775,9 @@ class ProjectionManager {
|
|
|
12775
12775
|
setupOrthoCamera(height, width) {
|
|
12776
12776
|
this._component.controls.mouseButtons.wheel = CameraControls.ACTION.ZOOM;
|
|
12777
12777
|
this._component.controls.mouseButtons.middle = CameraControls.ACTION.ZOOM;
|
|
12778
|
+
this._component.controls.touches.two = CameraControls.ACTION.TOUCH_ZOOM_TRUCK;
|
|
12779
|
+
this._component.controls.touches.three = CameraControls.ACTION.TOUCH_ZOOM_TRUCK;
|
|
12780
|
+
this._component.controls.dollySpeed = 5;
|
|
12778
12781
|
const pCamera = this._component.threePersp;
|
|
12779
12782
|
const oCamera = this._component.threeOrtho;
|
|
12780
12783
|
oCamera.zoom = 1;
|
|
@@ -12801,6 +12804,9 @@ class ProjectionManager {
|
|
|
12801
12804
|
pCamera.position.copy(oCamera.position);
|
|
12802
12805
|
pCamera.quaternion.copy(oCamera.quaternion);
|
|
12803
12806
|
this._component.controls.mouseButtons.wheel = CameraControls.ACTION.DOLLY;
|
|
12807
|
+
this._component.controls.touches.two = CameraControls.ACTION.TOUCH_DOLLY_TRUCK;
|
|
12808
|
+
this._component.controls.touches.three = CameraControls.ACTION.TOUCH_DOLLY_TRUCK;
|
|
12809
|
+
this._component.controls.dollySpeed = 5;
|
|
12804
12810
|
if (this.matchOrthoDistanceEnabled) {
|
|
12805
12811
|
this._component.controls.distance = this.getDistance();
|
|
12806
12812
|
} else {
|
|
@@ -26753,7 +26759,7 @@ class MiniMap {
|
|
|
26753
26759
|
this._camera.left = frustumSize * aspect / -2;
|
|
26754
26760
|
this._camera.right = frustumSize * aspect / 2;
|
|
26755
26761
|
this._camera.top = frustumSize / 2;
|
|
26756
|
-
this._camera.bottom = -
|
|
26762
|
+
this._camera.bottom = -1 / 2;
|
|
26757
26763
|
this._camera.updateProjectionMatrix();
|
|
26758
26764
|
this.onResize.trigger(size);
|
|
26759
26765
|
}
|
|
@@ -27287,12 +27293,12 @@ const getParameterXML = (name, parameter) => {
|
|
|
27287
27293
|
if (!parameter)
|
|
27288
27294
|
return parameterXML;
|
|
27289
27295
|
if (parameter.type === "simple") {
|
|
27290
|
-
parameterXML = `<
|
|
27296
|
+
parameterXML = `<simpleValue>${parameter.parameter}</simpleValue>`;
|
|
27291
27297
|
}
|
|
27292
27298
|
if (parameter.type === "enumeration") {
|
|
27293
27299
|
const value = parameter.parameter;
|
|
27294
27300
|
parameterXML = `<xs:restriction base="xs:string">
|
|
27295
|
-
${value.map((v) => `<xs:enumeration value="${v}" />`).join("\
|
|
27301
|
+
${value.map((v) => `<xs:enumeration value="${v}" />`).join("\n")}
|
|
27296
27302
|
</xs:restriction>`;
|
|
27297
27303
|
}
|
|
27298
27304
|
if (parameter.type === "pattern") {
|
|
@@ -27301,9 +27307,44 @@ const getParameterXML = (name, parameter) => {
|
|
|
27301
27307
|
<xs:pattern value="${value}" />
|
|
27302
27308
|
</xs:restriction>`;
|
|
27303
27309
|
}
|
|
27304
|
-
|
|
27310
|
+
if (parameter.type === "bounds") {
|
|
27311
|
+
const { min, minInclusive, max, maxInclusive } = parameter.parameter;
|
|
27312
|
+
let minTag = "";
|
|
27313
|
+
if (min !== void 0) {
|
|
27314
|
+
minTag = `<xs:min${minInclusive ? "Inclusive" : "Exclusive"} value="${min}">`;
|
|
27315
|
+
}
|
|
27316
|
+
let maxTag = "";
|
|
27317
|
+
if (max !== void 0) {
|
|
27318
|
+
maxTag = `<xs:max${maxInclusive ? "Inclusive" : "Exclusive"} value="${max}">`;
|
|
27319
|
+
}
|
|
27320
|
+
parameterXML = `<xs:restriction base="xs:double">
|
|
27321
|
+
${minTag}
|
|
27322
|
+
${maxTag}
|
|
27323
|
+
</xs:restriction>`;
|
|
27324
|
+
}
|
|
27325
|
+
if (parameter.type === "length") {
|
|
27326
|
+
const { length, min, max } = parameter.parameter;
|
|
27327
|
+
let lengthTag = "";
|
|
27328
|
+
if (length !== void 0 && min === void 0 && max === void 0) {
|
|
27329
|
+
lengthTag = `<xs:length value="${length}" />`;
|
|
27330
|
+
}
|
|
27331
|
+
let minTag = "";
|
|
27332
|
+
if (min !== void 0 && length === void 0) {
|
|
27333
|
+
minTag = `<xs:minLength value="${min}" />`;
|
|
27334
|
+
}
|
|
27335
|
+
let maxTag = "";
|
|
27336
|
+
if (max !== void 0 && length === void 0) {
|
|
27337
|
+
maxTag = `<xs:maxLength value="${max}" />`;
|
|
27338
|
+
}
|
|
27339
|
+
parameterXML = `<xs:restriction base="xs:string">
|
|
27340
|
+
${lengthTag}
|
|
27341
|
+
${minTag}
|
|
27342
|
+
${maxTag}
|
|
27343
|
+
</xs:restriction>`;
|
|
27344
|
+
}
|
|
27345
|
+
const xml = `<${name[0].toLowerCase() + name.slice(1)}>
|
|
27305
27346
|
${parameterXML}
|
|
27306
|
-
|
|
27347
|
+
</${name[0].toLowerCase() + name.slice(1)}>`;
|
|
27307
27348
|
return xml;
|
|
27308
27349
|
};
|
|
27309
27350
|
class IDSAttribute extends IDSFacet {
|
|
@@ -27322,10 +27363,10 @@ class IDSAttribute extends IDSFacet {
|
|
|
27322
27363
|
attributes += `cardinality="${this.cardinality}"`;
|
|
27323
27364
|
attributes += this.instructions ? `instructions="${this.instructions}"` : "";
|
|
27324
27365
|
}
|
|
27325
|
-
return `<
|
|
27366
|
+
return `<attribute ${attributes}>
|
|
27326
27367
|
${nameXML}
|
|
27327
27368
|
${valueXML}
|
|
27328
|
-
</
|
|
27369
|
+
</attribute>`;
|
|
27329
27370
|
}
|
|
27330
27371
|
// This can be very ineficcient as we do not have an easy way to get an entity based on an attribute
|
|
27331
27372
|
// Right now, all entities must be iterated.
|
|
@@ -27461,10 +27502,10 @@ class IDSClassification extends IDSFacet {
|
|
|
27461
27502
|
attributes += this.uri ? `uri=${this.uri}` : "";
|
|
27462
27503
|
attributes += this.instructions ? `instructions="${this.instructions}"` : "";
|
|
27463
27504
|
}
|
|
27464
|
-
return `<
|
|
27505
|
+
return `<classification ${attributes}>
|
|
27465
27506
|
${systemXML}
|
|
27466
27507
|
${valueXML}
|
|
27467
|
-
</
|
|
27508
|
+
</classification>`;
|
|
27468
27509
|
}
|
|
27469
27510
|
async getEntities(model, collector = {}) {
|
|
27470
27511
|
var _a;
|
|
@@ -27742,10 +27783,10 @@ class IDSEntity extends IDSFacet {
|
|
|
27742
27783
|
attributes += `cardinality="${this.cardinality}"`;
|
|
27743
27784
|
attributes += this.instructions ? `instructions="${this.instructions}"` : "";
|
|
27744
27785
|
}
|
|
27745
|
-
return `<
|
|
27786
|
+
return `<entity ${attributes}>
|
|
27746
27787
|
${nameXML}
|
|
27747
27788
|
${predefinedTypeXML}
|
|
27748
|
-
</
|
|
27789
|
+
</entity>`;
|
|
27749
27790
|
}
|
|
27750
27791
|
// IFCSURFACESTYLEREFRACTION is not present in the FragmentsGroup
|
|
27751
27792
|
// IFCSURFACESTYLERENDERING is not present in the FragmentsGroup
|
|
@@ -27883,11 +27924,11 @@ class IDSProperty extends IDSFacet {
|
|
|
27883
27924
|
attributes += this.uri ? `uri=${this.uri}` : "";
|
|
27884
27925
|
attributes += this.instructions ? `instructions="${this.instructions}"` : "";
|
|
27885
27926
|
}
|
|
27886
|
-
return `<
|
|
27927
|
+
return `<property ${dataTypeXML} ${attributes}>
|
|
27887
27928
|
${propertySetXML}
|
|
27888
27929
|
${baseNameXML}
|
|
27889
27930
|
${valueXML}
|
|
27890
|
-
</
|
|
27931
|
+
</property>`;
|
|
27891
27932
|
}
|
|
27892
27933
|
async getEntities(model, collector = {}) {
|
|
27893
27934
|
var _a, _b;
|
|
@@ -28306,14 +28347,14 @@ class IDSSpecification {
|
|
|
28306
28347
|
const identifier = this.identifier ? `identifier="${this.identifier}"` : "";
|
|
28307
28348
|
const description = this.description ? `description="${this.description}"` : "";
|
|
28308
28349
|
const instructions = this.instructions ? `instructions="${this.instructions}"` : "";
|
|
28309
|
-
const xml = `<
|
|
28310
|
-
<
|
|
28311
|
-
${[...this.applicability].map((facet) => facet.serialize("applicability"))}
|
|
28312
|
-
</
|
|
28313
|
-
<
|
|
28314
|
-
${[...this.requirements].map((facet) => facet.serialize("requirement"))}
|
|
28315
|
-
</
|
|
28316
|
-
</
|
|
28350
|
+
const xml = `<specification ifcVersion="${[...this.ifcVersion].join(" ")}" ${name} ${identifier} ${description} ${instructions}>
|
|
28351
|
+
<applicability minOccurs="1" maxOccurs="unbounded">
|
|
28352
|
+
${[...this.applicability].map((facet) => facet.serialize("applicability")).join("\n")}
|
|
28353
|
+
</applicability>
|
|
28354
|
+
<requirements>
|
|
28355
|
+
${[...this.requirements].map((facet) => facet.serialize("requirement")).join("\n")}
|
|
28356
|
+
</requirements>
|
|
28357
|
+
</specification>`;
|
|
28317
28358
|
return xml;
|
|
28318
28359
|
}
|
|
28319
28360
|
}
|
|
@@ -28562,22 +28603,22 @@ const _IDSSpecifications = class _IDSSpecifications extends Component {
|
|
|
28562
28603
|
*/
|
|
28563
28604
|
export(info, specifications = this.list.values()) {
|
|
28564
28605
|
const _specifications = specifications ?? this.list;
|
|
28565
|
-
const xml = `<ids
|
|
28606
|
+
const xml = `<ids xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://standards.buildingsmart.org/IDS http://standards.buildingsmart.org/IDS/1.0/ids.xsd" xmlns:ids="http://standards.buildingsmart.org/IDS">
|
|
28566
28607
|
<!-- Made with That Open Engine ${Components.release} (https://github.com/thatopen/engine_components) -->
|
|
28567
|
-
<
|
|
28568
|
-
<
|
|
28569
|
-
${info.copyright ? `<
|
|
28570
|
-
${info.version ? `<
|
|
28571
|
-
${info.description ? `<
|
|
28572
|
-
${info.author ? `<
|
|
28573
|
-
${info.date ? `<
|
|
28574
|
-
${info.purpose ? `<
|
|
28575
|
-
${info.milestone ? `<
|
|
28576
|
-
</
|
|
28577
|
-
<
|
|
28608
|
+
<info>
|
|
28609
|
+
<title>${info.title}</title>
|
|
28610
|
+
${info.copyright ? `<copyright>${info.copyright}</copyright>` : ""}
|
|
28611
|
+
${info.version ? `<version>${info.version}</version>` : ""}
|
|
28612
|
+
${info.description ? `<description>${info.description}</description>` : ""}
|
|
28613
|
+
${info.author ? `<author>${info.author}</author>` : ""}
|
|
28614
|
+
${info.date ? `<date>${info.date.toISOString().split("T")[0]}</date>` : ""}
|
|
28615
|
+
${info.purpose ? `<purpose>${info.purpose}</purpose>` : ""}
|
|
28616
|
+
${info.milestone ? `<milestone>${info.milestone}</milestone>` : ""}
|
|
28617
|
+
</info>
|
|
28618
|
+
<specifications>
|
|
28578
28619
|
${[..._specifications].map((spec) => spec.serialize()).join("\n")}
|
|
28579
|
-
</
|
|
28580
|
-
</ids
|
|
28620
|
+
</specifications>
|
|
28621
|
+
</ids>`;
|
|
28581
28622
|
return xml;
|
|
28582
28623
|
}
|
|
28583
28624
|
};
|