@archilogic/floor-plan-sdk 5.0.0-rc.9 → 5.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.
- package/dist/fpe.d.ts +1 -0
- package/dist/fpe.js +66 -50
- package/dist/fpe.umd.cjs +2 -2
- package/package.json +1 -1
package/dist/fpe.d.ts
CHANGED
|
@@ -1413,6 +1413,7 @@ declare class LayoutElementBase extends LayoutNodeBase {
|
|
|
1413
1413
|
geometries: GeometryOperationJson[];
|
|
1414
1414
|
insertElement(element: LayoutElement): void;
|
|
1415
1415
|
getTransform(): Transform3d;
|
|
1416
|
+
getWorldTransform(): Transform3d;
|
|
1416
1417
|
getBoundingBox(localTransform?: boolean): TransformBoundingBox3d;
|
|
1417
1418
|
removeElement(element: LayoutElement): void;
|
|
1418
1419
|
copyForClone(element: LayoutElement): void;
|
package/dist/fpe.js
CHANGED
|
@@ -2,7 +2,7 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
3
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
4
|
/*!
|
|
5
|
-
Archilogic Floor Plan Engine SDK v5.0.0
|
|
5
|
+
Archilogic Floor Plan Engine SDK v5.0.0 webgl build 240902-153859-ffc346
|
|
6
6
|
|
|
7
7
|
Copyright (c) 2024 Archilogic AG. All rights reserved.
|
|
8
8
|
|
|
@@ -1512,22 +1512,22 @@ var ClipperLib;
|
|
|
1512
1512
|
if (this.m_CurrentLM === null)
|
|
1513
1513
|
return;
|
|
1514
1514
|
this.m_Scanbeam = null;
|
|
1515
|
-
var
|
|
1516
|
-
while (
|
|
1517
|
-
this.InsertScanbeam(
|
|
1518
|
-
var e2 =
|
|
1515
|
+
var lm = this.m_MinimaList;
|
|
1516
|
+
while (lm !== null) {
|
|
1517
|
+
this.InsertScanbeam(lm.Y);
|
|
1518
|
+
var e2 = lm.LeftBound;
|
|
1519
1519
|
if (e2 !== null) {
|
|
1520
1520
|
e2.Curr.X = e2.Bot.X;
|
|
1521
1521
|
e2.Curr.Y = e2.Bot.Y;
|
|
1522
1522
|
e2.OutIdx = ClipperLib2.ClipperBase.Unassigned;
|
|
1523
1523
|
}
|
|
1524
|
-
e2 =
|
|
1524
|
+
e2 = lm.RightBound;
|
|
1525
1525
|
if (e2 !== null) {
|
|
1526
1526
|
e2.Curr.X = e2.Bot.X;
|
|
1527
1527
|
e2.Curr.Y = e2.Bot.Y;
|
|
1528
1528
|
e2.OutIdx = ClipperLib2.ClipperBase.Unassigned;
|
|
1529
1529
|
}
|
|
1530
|
-
|
|
1530
|
+
lm = lm.Next;
|
|
1531
1531
|
}
|
|
1532
1532
|
this.m_ActiveEdges = null;
|
|
1533
1533
|
}
|
|
@@ -1900,12 +1900,12 @@ var ClipperLib;
|
|
|
1900
1900
|
this.m_GhostJoins.push(j2);
|
|
1901
1901
|
}
|
|
1902
1902
|
InsertLocalMinimaIntoAEL(botY) {
|
|
1903
|
-
var
|
|
1903
|
+
var lm = {};
|
|
1904
1904
|
var lb;
|
|
1905
1905
|
var rb;
|
|
1906
|
-
while (this.PopLocalMinima(botY,
|
|
1907
|
-
lb =
|
|
1908
|
-
rb =
|
|
1906
|
+
while (this.PopLocalMinima(botY, lm)) {
|
|
1907
|
+
lb = lm.v.LeftBound;
|
|
1908
|
+
rb = lm.v.RightBound;
|
|
1909
1909
|
var Op1 = null;
|
|
1910
1910
|
if (lb === null) {
|
|
1911
1911
|
this.InsertEdgeIntoAEL(rb, null);
|
|
@@ -6950,6 +6950,9 @@ class LayoutElementBase extends LayoutNodeBase {
|
|
|
6950
6950
|
getTransform() {
|
|
6951
6951
|
return getBaseTransform3d();
|
|
6952
6952
|
}
|
|
6953
|
+
getWorldTransform() {
|
|
6954
|
+
return this.getTransform();
|
|
6955
|
+
}
|
|
6953
6956
|
getBoundingBox(localTransform = false) {
|
|
6954
6957
|
return {
|
|
6955
6958
|
min: [0, 0, 0],
|
|
@@ -12230,7 +12233,7 @@ function getOpeningElement$1(layout, openingElementJson) {
|
|
|
12230
12233
|
function doGetTransformElement$1(element, elementJson) {
|
|
12231
12234
|
var _a;
|
|
12232
12235
|
let { position, rotation, rotationAxis } = elementJson;
|
|
12233
|
-
element.setTransform(position, rotation ?? 0, rotationAxis);
|
|
12236
|
+
element.setTransform(position ?? [0, 0, 0], rotation ?? 0, rotationAxis);
|
|
12234
12237
|
if (elementJson.parameters) {
|
|
12235
12238
|
let skipElementCreation = !!((_a = elementJson.elements) == null ? void 0 : _a.length);
|
|
12236
12239
|
setElementParameters(element, elementJson.parameters, skipElementCreation);
|
|
@@ -14299,7 +14302,7 @@ function un(t2, e2, r2) {
|
|
|
14299
14302
|
var i2 = e2[0], n2 = e2[1], s2 = e2[2], o2 = r2[3] * i2 + r2[7] * n2 + r2[11] * s2 + r2[15];
|
|
14300
14303
|
return o2 = o2 || 1, t2[0] = (r2[0] * i2 + r2[4] * n2 + r2[8] * s2 + r2[12]) / o2, t2[1] = (r2[1] * i2 + r2[5] * n2 + r2[9] * s2 + r2[13]) / o2, t2[2] = (r2[2] * i2 + r2[6] * n2 + r2[10] * s2 + r2[14]) / o2, t2;
|
|
14301
14304
|
}
|
|
14302
|
-
var
|
|
14305
|
+
var Ue = Ar, Lo = No;
|
|
14303
14306
|
(function() {
|
|
14304
14307
|
var t2 = M$4();
|
|
14305
14308
|
return function(e2, r2, i2, n2, s2, o2) {
|
|
@@ -14749,7 +14752,7 @@ function it(t2, e2, r2, i2, n2, s2, o2) {
|
|
|
14749
14752
|
if (t2) {
|
|
14750
14753
|
!o2 && s2 && Ko(t2, i2, n2, s2);
|
|
14751
14754
|
for (var l2 = t2, a2, u2; t2.prev !== t2.next; ) {
|
|
14752
|
-
if (a2 = t2.prev, u2 = t2.next, s2 ?
|
|
14755
|
+
if (a2 = t2.prev, u2 = t2.next, s2 ? Wo(t2, i2, n2, s2) : Uo(t2)) {
|
|
14753
14756
|
e2.push(a2.i / r2 | 0), e2.push(t2.i / r2 | 0), e2.push(u2.i / r2 | 0), st(t2), t2 = u2.next, l2 = u2.next;
|
|
14754
14757
|
continue;
|
|
14755
14758
|
}
|
|
@@ -14760,7 +14763,7 @@ function it(t2, e2, r2, i2, n2, s2, o2) {
|
|
|
14760
14763
|
}
|
|
14761
14764
|
}
|
|
14762
14765
|
}
|
|
14763
|
-
function
|
|
14766
|
+
function Uo(t2) {
|
|
14764
14767
|
var e2 = t2.prev, r2 = t2, i2 = t2.next;
|
|
14765
14768
|
if (D$1(e2, r2, i2) >= 0)
|
|
14766
14769
|
return false;
|
|
@@ -14771,7 +14774,7 @@ function Wo(t2) {
|
|
|
14771
14774
|
}
|
|
14772
14775
|
return true;
|
|
14773
14776
|
}
|
|
14774
|
-
function
|
|
14777
|
+
function Wo(t2, e2, r2, i2) {
|
|
14775
14778
|
var n2 = t2.prev, s2 = t2, o2 = t2.next;
|
|
14776
14779
|
if (D$1(n2, s2, o2) >= 0)
|
|
14777
14780
|
return false;
|
|
@@ -15512,7 +15515,7 @@ function $l(t2, e2) {
|
|
|
15512
15515
|
let r2 = new Array(3 * e2.length), i2 = M$4(), n2 = M$4(), s2 = M$4(), o2 = M$4(), l2 = M$4(), a2 = M$4(), u2 = 0;
|
|
15513
15516
|
for (let f3 = 0; f3 < e2.length; f3 += 3) {
|
|
15514
15517
|
let c2 = e2[f3], d2 = e2[f3 + 1], h2 = e2[f3 + 2];
|
|
15515
|
-
De(t2, i2, 3 * c2), De(t2, n2, 3 * d2), De(t2, s2, 3 * h2),
|
|
15518
|
+
De(t2, i2, 3 * c2), De(t2, n2, 3 * d2), De(t2, s2, 3 * h2), Ue(o2, n2, i2), Ue(l2, s2, i2), de(a2, o2, l2), ie(a2, a2), Be(r2, a2, u2 + 0), Be(r2, a2, u2 + 3), Be(r2, a2, u2 + 6), u2 += 9;
|
|
15516
15519
|
}
|
|
15517
15520
|
return r2;
|
|
15518
15521
|
}
|
|
@@ -15520,7 +15523,7 @@ function Vl(t2, e2) {
|
|
|
15520
15523
|
let r2 = new Array(3 * e2.length), i2 = M$4(), n2 = M$4(), s2 = M$4(), o2 = M$4(), l2 = M$4(), a2 = M$4(), u2 = e2.length / 3, f3 = new Array(u2), c2 = 0;
|
|
15521
15524
|
for (let p2 = 0; p2 < e2.length; p2 += 3) {
|
|
15522
15525
|
let g2 = e2[p2], m2 = e2[p2 + 1], y2 = e2[p2 + 2];
|
|
15523
|
-
De(t2, i2, 3 * g2), De(t2, n2, 3 * m2), De(t2, s2, 3 * y2),
|
|
15526
|
+
De(t2, i2, 3 * g2), De(t2, n2, 3 * m2), De(t2, s2, 3 * y2), Ue(o2, n2, i2), Ue(l2, s2, i2), de(a2, o2, l2), ie(a2, a2), f3[c2++] = {
|
|
15524
15527
|
index1: g2,
|
|
15525
15528
|
index2: m2,
|
|
15526
15529
|
index3: y2,
|
|
@@ -15563,13 +15566,13 @@ function Gl(t2, e2) {
|
|
|
15563
15566
|
let r2 = new Array(2 * e2.length), i2 = M$4(), n2 = M$4(), s2 = M$4(), o2 = M$4(), l2 = M$4(), a2 = M$4(), u2 = 0;
|
|
15564
15567
|
for (let f3 = 0; f3 < e2.length; f3 += 3) {
|
|
15565
15568
|
let c2 = e2[f3], d2 = e2[f3 + 1], h2 = e2[f3 + 2];
|
|
15566
|
-
xr(t2, i2, 3 * c2), xr(t2, n2, 3 * d2), xr(t2, s2, 3 * h2),
|
|
15569
|
+
xr(t2, i2, 3 * c2), xr(t2, n2, 3 * d2), xr(t2, s2, 3 * h2), Ue(o2, n2, i2), Ue(l2, s2, i2), de(a2, o2, l2), ie(a2, a2), a2[0] = Math.abs(a2[0]), a2[1] = Math.abs(a2[1]), a2[2] = Math.abs(a2[2]);
|
|
15567
15570
|
let p2, g2;
|
|
15568
15571
|
a2[0] >= a2[1] && a2[0] >= a2[2] ? (p2 = 2, g2 = 1) : a2[1] >= a2[0] && a2[1] >= a2[2] ? (p2 = 0, g2 = 2) : (p2 = 0, g2 = 1), r2[u2++] = i2[p2], r2[u2++] = i2[g2], r2[u2++] = n2[p2], r2[u2++] = n2[g2], r2[u2++] = s2[p2], r2[u2++] = s2[g2];
|
|
15569
15572
|
}
|
|
15570
15573
|
return r2;
|
|
15571
15574
|
}
|
|
15572
|
-
function
|
|
15575
|
+
function Ul(t2, e2) {
|
|
15573
15576
|
let r2 = new Array(2 * e2.length), i2 = 0;
|
|
15574
15577
|
for (let n2 = 0; n2 < e2.length; n2++) {
|
|
15575
15578
|
let s2 = 3 * e2[n2], o2 = t2[s2], l2 = t2[s2 + 1], a2 = t2[s2 + 2], u2 = 0.5 + Math.atan2(o2, a2) / (2 * Math.PI), f3 = 0.5 + Math.asin(l2) / Math.PI;
|
|
@@ -15577,7 +15580,7 @@ function Wl(t2, e2) {
|
|
|
15577
15580
|
}
|
|
15578
15581
|
return r2;
|
|
15579
15582
|
}
|
|
15580
|
-
function
|
|
15583
|
+
function Wl(t2) {
|
|
15581
15584
|
let { normal: e2, size: r2, doubleSided: i2 } = t2, s2 = kr([0, 0, 0], e2, r2).flat(), o2 = [0, 1, 2, 0, 2, 3], l2 = [
|
|
15582
15585
|
{ index: 0, count: 2 }
|
|
15583
15586
|
];
|
|
@@ -15826,7 +15829,7 @@ function Vr(t2, e2, r2, i2 = []) {
|
|
|
15826
15829
|
let s2 = [], o2;
|
|
15827
15830
|
switch (t2.type) {
|
|
15828
15831
|
case "geometry:plane":
|
|
15829
|
-
o2 =
|
|
15832
|
+
o2 = Wl(t2);
|
|
15830
15833
|
break;
|
|
15831
15834
|
case "geometry:cuboid":
|
|
15832
15835
|
o2 = Hl(t2);
|
|
@@ -15860,7 +15863,7 @@ function Vr(t2, e2, r2, i2 = []) {
|
|
|
15860
15863
|
if (u2 == "automatic" || u2 === "spherical")
|
|
15861
15864
|
for (let f3 of s2) {
|
|
15862
15865
|
let { vertices: c2, indices: d2 } = f3;
|
|
15863
|
-
f3.uvs = u2 === "automatic" ? Gl(c2, d2) :
|
|
15866
|
+
f3.uvs = u2 === "automatic" ? Gl(c2, d2) : Ul(c2, d2);
|
|
15864
15867
|
}
|
|
15865
15868
|
return s2;
|
|
15866
15869
|
}
|
|
@@ -15873,9 +15876,9 @@ function Bn(t2) {
|
|
|
15873
15876
|
r2 = t2[s2], i2 = t2[s2 + 1], n2 = t2[s2 + 2], e2.min[0] = Math.min(e2.min[0], r2), e2.max[0] = Math.max(e2.max[0], r2), e2.min[1] = Math.min(e2.min[1], i2), e2.max[1] = Math.max(e2.max[1], i2), e2.min[2] = Math.min(e2.min[2], n2), e2.max[2] = Math.max(e2.max[2], n2);
|
|
15874
15877
|
return e2;
|
|
15875
15878
|
}
|
|
15876
|
-
var
|
|
15879
|
+
var U$1 = [];
|
|
15877
15880
|
for (var Sr = 0; Sr < 256; ++Sr)
|
|
15878
|
-
|
|
15881
|
+
U$1.push((Sr + 256).toString(16).substr(1));
|
|
15879
15882
|
function ni(t2, e2) {
|
|
15880
15883
|
let { position: r2, rotation: i2, rotationAxis: n2 } = t2.getTransform(), s2 = qr(r2, i2, n2);
|
|
15881
15884
|
return e2 && ln(s2, e2, s2), s2;
|
|
@@ -15914,7 +15917,7 @@ yi.prototype = {
|
|
|
15914
15917
|
};
|
|
15915
15918
|
Ss.exports = yi;
|
|
15916
15919
|
Ss.exports.TinyEmitter = yi;
|
|
15917
|
-
const
|
|
15920
|
+
const gp = ["SITE", "FACTORY", "NOTDEFINED"], yp = [
|
|
15918
15921
|
"SINGLE_SWING_LEFT",
|
|
15919
15922
|
"SINGLE_SWING_RIGHT",
|
|
15920
15923
|
"DOUBLE_DOOR_SINGLE_SWING",
|
|
@@ -15933,7 +15936,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
15933
15936
|
"ROLLINGUP",
|
|
15934
15937
|
"USERDEFINED",
|
|
15935
15938
|
"NOTDEFINED"
|
|
15936
|
-
],
|
|
15939
|
+
], Ip = [
|
|
15937
15940
|
"ALUMINIUM",
|
|
15938
15941
|
"HIGH_GRADE_STEEL",
|
|
15939
15942
|
"STEEL",
|
|
@@ -15943,7 +15946,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
15943
15946
|
"PLASTIC",
|
|
15944
15947
|
"USERDEFINED",
|
|
15945
15948
|
"NOTDEFINED"
|
|
15946
|
-
],
|
|
15949
|
+
], Ep = [
|
|
15947
15950
|
"ACCESSORY_ASSEMBLY",
|
|
15948
15951
|
"ARCH",
|
|
15949
15952
|
"BEAM_GRID",
|
|
@@ -15955,7 +15958,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
15955
15958
|
"TRUSS",
|
|
15956
15959
|
"USERDEFINED",
|
|
15957
15960
|
"NOTDEFINED"
|
|
15958
|
-
],
|
|
15961
|
+
], vp = ["INTERNAL", "EXTERNAL", "NOTDEFINED"], bp = ["HANDRAIL", "GUARDRAIL", "BALUSTRADE", "USERDEFINED", "NOTDEFINED"], xp = ["FLOOR", "ROOF", "LANDING", "BASESLAB", "USERDEFINED", "NOTDEFINED"], Sp = [
|
|
15959
15962
|
"STRAIGHT_RUN_STAIR",
|
|
15960
15963
|
"TWO_STRAIGHT_RUN_STAIR",
|
|
15961
15964
|
"QUARTER_WINDING_STAIR",
|
|
@@ -16003,7 +16006,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16003
16006
|
"TIMEUNIT",
|
|
16004
16007
|
"VOLUMEUNIT",
|
|
16005
16008
|
"USERDEFINED"
|
|
16006
|
-
],
|
|
16009
|
+
], wp = [
|
|
16007
16010
|
"EXA",
|
|
16008
16011
|
"PETA",
|
|
16009
16012
|
"TERA",
|
|
@@ -16020,7 +16023,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16020
16023
|
"PICO",
|
|
16021
16024
|
"FEMTO",
|
|
16022
16025
|
"ATTO"
|
|
16023
|
-
],
|
|
16026
|
+
], Tp = [
|
|
16024
16027
|
"AMPERE",
|
|
16025
16028
|
"BECQUEREL",
|
|
16026
16029
|
"CANDELA",
|
|
@@ -16178,8 +16181,8 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16178
16181
|
"IfcRoot",
|
|
16179
16182
|
"IfcTypeObject",
|
|
16180
16183
|
"IfcTypeProduct",
|
|
16181
|
-
{ name: "OperationType", type: "enum", oneOf:
|
|
16182
|
-
{ name: "ConstructionType", type: "enum", oneOf:
|
|
16184
|
+
{ name: "OperationType", type: "enum", oneOf: yp },
|
|
16185
|
+
{ name: "ConstructionType", type: "enum", oneOf: Ip },
|
|
16183
16186
|
{ name: "ParameterTakesPrecedence", type: "boolean" },
|
|
16184
16187
|
{ name: "Sizeable", type: "boolean" }
|
|
16185
16188
|
],
|
|
@@ -16192,8 +16195,8 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16192
16195
|
"IfcObject",
|
|
16193
16196
|
"IfcProduct",
|
|
16194
16197
|
"IfcElement",
|
|
16195
|
-
{ name: "AssemblyPlace", optional: true, type: "enum", oneOf:
|
|
16196
|
-
{ name: "PredefinedType", optional: true, type: "enum", oneOf:
|
|
16198
|
+
{ name: "AssemblyPlace", optional: true, type: "enum", oneOf: gp },
|
|
16199
|
+
{ name: "PredefinedType", optional: true, type: "enum", oneOf: Ep }
|
|
16197
16200
|
],
|
|
16198
16201
|
// SweptArea: IfcProfileDef
|
|
16199
16202
|
// Position: IfcAxis2Placement3D
|
|
@@ -16388,7 +16391,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16388
16391
|
"IfcObject",
|
|
16389
16392
|
"IfcProduct",
|
|
16390
16393
|
"IfcElement",
|
|
16391
|
-
{ name: "PredefinedType", type: "enum", oneOf:
|
|
16394
|
+
{ name: "PredefinedType", type: "enum", oneOf: bp }
|
|
16392
16395
|
],
|
|
16393
16396
|
// IFCMEASUREWITHUNIT
|
|
16394
16397
|
IFCRATIOMEASURE: [{ name: "Measure", type: "real" }],
|
|
@@ -16488,8 +16491,8 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16488
16491
|
IFCSIUNIT: [
|
|
16489
16492
|
{ name: "asterisk", type: "value" },
|
|
16490
16493
|
{ name: "UnitType", type: "enum", oneOf: Yi },
|
|
16491
|
-
{ name: "Prefix", type: "enum", optional: true, oneOf:
|
|
16492
|
-
{ name: "Name", type: "enum", optional: true, oneOf:
|
|
16494
|
+
{ name: "Prefix", type: "enum", optional: true, oneOf: wp },
|
|
16495
|
+
{ name: "Name", type: "enum", optional: true, oneOf: Tp }
|
|
16493
16496
|
],
|
|
16494
16497
|
// PredefinedType: OPTIONAL IfcSlabTypeEnum
|
|
16495
16498
|
IFCSLAB: [
|
|
@@ -16497,7 +16500,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16497
16500
|
"IfcObject",
|
|
16498
16501
|
"IfcProduct",
|
|
16499
16502
|
"IfcElement",
|
|
16500
|
-
{ name: "PredefinedType", type: "enum", oneOf:
|
|
16503
|
+
{ name: "PredefinedType", type: "enum", oneOf: xp }
|
|
16501
16504
|
],
|
|
16502
16505
|
// InteriorOrExteriorSpace: IfcInternalOrExternalEnum
|
|
16503
16506
|
// ElevationWithFlooring: OPTIONAL IfcLengthMeasure
|
|
@@ -16509,7 +16512,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16509
16512
|
{
|
|
16510
16513
|
name: "InteriorOrExteriorSpace",
|
|
16511
16514
|
type: "enum",
|
|
16512
|
-
oneOf:
|
|
16515
|
+
oneOf: vp
|
|
16513
16516
|
},
|
|
16514
16517
|
{ name: "ElevationWithFlooring", type: "real", optional: true }
|
|
16515
16518
|
],
|
|
@@ -16519,7 +16522,7 @@ const mp = ["SITE", "FACTORY", "NOTDEFINED"], gp = [
|
|
|
16519
16522
|
"IfcObject",
|
|
16520
16523
|
"IfcProduct",
|
|
16521
16524
|
"IfcElement",
|
|
16522
|
-
{ name: "ShapeType", type: "enum", oneOf:
|
|
16525
|
+
{ name: "ShapeType", type: "enum", oneOf: Sp }
|
|
16523
16526
|
],
|
|
16524
16527
|
// NumberOfRiser: OPTIONAL INTEGER
|
|
16525
16528
|
// NumberOfTreads: OPTIONAL INTEGER
|
|
@@ -16614,11 +16617,11 @@ function Ks(t2) {
|
|
|
16614
16617
|
let o2 = Ks(s2)[s2];
|
|
16615
16618
|
r2[n2].push(...o2);
|
|
16616
16619
|
} else
|
|
16617
|
-
|
|
16620
|
+
Rp(s2) && r2[n2].push(s2);
|
|
16618
16621
|
}));
|
|
16619
16622
|
return r2;
|
|
16620
16623
|
}
|
|
16621
|
-
function
|
|
16624
|
+
function Rp(t2) {
|
|
16622
16625
|
const e2 = [
|
|
16623
16626
|
"boolean",
|
|
16624
16627
|
"enum",
|
|
@@ -16689,10 +16692,10 @@ function mr(t2, e2 = Ge(), r2 = /* @__PURE__ */ new Map(), i2 = true) {
|
|
|
16689
16692
|
}
|
|
16690
16693
|
return n2;
|
|
16691
16694
|
}
|
|
16692
|
-
var
|
|
16695
|
+
var W$1 = [];
|
|
16693
16696
|
for (var Nr = 0; Nr < 256; ++Nr)
|
|
16694
|
-
|
|
16695
|
-
function
|
|
16697
|
+
W$1.push((Nr + 256).toString(16).substr(1));
|
|
16698
|
+
function Yh(t2, e2, r2) {
|
|
16696
16699
|
let i2 = ye(...t2), n2 = ye(...e2), s2 = ye(...r2), o2 = M$4(), l2 = M$4(), a2 = M$4();
|
|
16697
16700
|
return Ar(o2, i2, s2), Ar(l2, n2, s2), de(a2, o2, l2), ie(a2, a2), [...a2];
|
|
16698
16701
|
}
|
|
@@ -16704,7 +16707,7 @@ function so(t2) {
|
|
|
16704
16707
|
}
|
|
16705
16708
|
for (let c2 = 0; c2 < e2.length; c2 += 3) {
|
|
16706
16709
|
let d2 = e2[c2], h2 = e2[c2 + 1], p2 = e2[c2 + 2];
|
|
16707
|
-
|
|
16710
|
+
Yh(i2[d2], i2[h2], i2[p2])[1] < 0.01 || s2.push([n2[d2], n2[h2], n2[p2]]);
|
|
16708
16711
|
}
|
|
16709
16712
|
let l2 = [], a2 = [[]];
|
|
16710
16713
|
if (!s2.length)
|
|
@@ -16715,7 +16718,7 @@ function so(t2) {
|
|
|
16715
16718
|
er(c2) ? a2[0].push(c2) : l2.push(c2);
|
|
16716
16719
|
return { outlines: l2, holes: a2, boundingBox: o2 };
|
|
16717
16720
|
}
|
|
16718
|
-
function
|
|
16721
|
+
function am(t2, e2 = {}) {
|
|
16719
16722
|
let r2 = e2.applyElementMatrix ? ni(t2, e2.parentMatrix) : void 0, i2 = mr(t2, r2, e2.resources), n2 = [];
|
|
16720
16723
|
for (let s2 of i2)
|
|
16721
16724
|
for (let o2 of s2.meshes)
|
|
@@ -17868,7 +17871,20 @@ function getWallContours(layout) {
|
|
|
17868
17871
|
if (openingContours.length) {
|
|
17869
17872
|
polygons = polygonWithHolesDifference(polygons, openingContours).polygons;
|
|
17870
17873
|
}
|
|
17871
|
-
|
|
17874
|
+
const cleanedPolygons = [];
|
|
17875
|
+
for (const polygonWithHoles of polygons) {
|
|
17876
|
+
const cleanPolygonWithHoles = [];
|
|
17877
|
+
for (const polygon of polygonWithHoles) {
|
|
17878
|
+
let cleanedPolygon = cleanPolygon(polygon, 1e-3);
|
|
17879
|
+
if (cleanedPolygon.length) {
|
|
17880
|
+
cleanPolygonWithHoles.push(cleanedPolygon);
|
|
17881
|
+
}
|
|
17882
|
+
}
|
|
17883
|
+
if (cleanPolygonWithHoles.length) {
|
|
17884
|
+
cleanedPolygons.push(cleanPolygonWithHoles);
|
|
17885
|
+
}
|
|
17886
|
+
}
|
|
17887
|
+
return cleanedPolygons;
|
|
17872
17888
|
}
|
|
17873
17889
|
const _FloorPlanCore = class _FloorPlanCore2 {
|
|
17874
17890
|
constructor({ options = {} } = {}) {
|
|
@@ -18187,7 +18203,7 @@ function getElementAnnotations(element) {
|
|
|
18187
18203
|
return shapes;
|
|
18188
18204
|
}
|
|
18189
18205
|
function getShapesFromMesh(element) {
|
|
18190
|
-
const meshContours =
|
|
18206
|
+
const meshContours = am(element).sort((a2, b2) => {
|
|
18191
18207
|
if (a2.boundingBox.max[1] < b2.boundingBox.max[1]) return -1;
|
|
18192
18208
|
else return 1;
|
|
18193
18209
|
});
|