@mlightcad/data-model 1.2.3 → 1.2.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/data-model.cjs +5 -0
- package/dist/data-model.js +1105 -863
- package/dist/dxf-parser-worker.js +1296 -0
- package/lib/converter/AcDbDxfConverter.d.ts +3 -2
- package/lib/converter/AcDbDxfConverter.d.ts.map +1 -1
- package/lib/converter/AcDbDxfConverter.js +25 -4
- package/lib/converter/AcDbDxfConverter.js.map +1 -1
- package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -1
- package/lib/converter/AcDbEntitiyConverter.js +2 -1
- package/lib/converter/AcDbEntitiyConverter.js.map +1 -1
- package/lib/converter/index.d.ts +1 -0
- package/lib/converter/index.d.ts.map +1 -1
- package/lib/converter/index.js +1 -0
- package/lib/converter/index.js.map +1 -1
- package/lib/converter/worker/AcDbBaseWorker.d.ts +36 -0
- package/lib/converter/worker/AcDbBaseWorker.d.ts.map +1 -0
- package/lib/converter/worker/AcDbBaseWorker.js +93 -0
- package/lib/converter/worker/AcDbBaseWorker.js.map +1 -0
- package/lib/converter/worker/AcDbDxfParserWorker.d.ts +2 -0
- package/lib/converter/worker/AcDbDxfParserWorker.d.ts.map +1 -0
- package/lib/converter/worker/AcDbDxfParserWorker.js +76 -0
- package/lib/converter/worker/AcDbDxfParserWorker.js.map +1 -0
- package/lib/converter/worker/AcDbWorkerManager.d.ts +107 -0
- package/lib/converter/worker/AcDbWorkerManager.d.ts.map +1 -0
- package/lib/converter/worker/AcDbWorkerManager.js +360 -0
- package/lib/converter/worker/AcDbWorkerManager.js.map +1 -0
- package/lib/converter/worker/index.d.ts +3 -0
- package/lib/converter/worker/index.d.ts.map +1 -0
- package/lib/converter/worker/index.js +3 -0
- package/lib/converter/worker/index.js.map +1 -0
- package/lib/database/AcDbDatabase.js +3 -3
- package/lib/database/AcDbDatabase.js.map +1 -1
- package/lib/database/AcDbDatabaseConverter.d.ts +69 -1
- package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -1
- package/lib/database/AcDbDatabaseConverter.js +29 -3
- package/lib/database/AcDbDatabaseConverter.js.map +1 -1
- package/package.json +11 -7
- package/dist/data-model.umd.cjs +0 -5
- package/lib/converter/AcDbDxfParseWorker.d.ts +0 -18
- package/lib/converter/AcDbDxfParseWorker.d.ts.map +0 -1
- package/lib/converter/AcDbDxfParseWorker.js +0 -22
- package/lib/converter/AcDbDxfParseWorker.js.map +0 -1
|
@@ -0,0 +1,1296 @@
|
|
|
1
|
+
var g, te, E, h, oe, P, y, C, _, z, se, ce, X, K, ie, le, de, A, F, f, Z, ue, l, v, pe, N, w, me, V, R, fe, J, S, B, _e, Re, H, be, Ie, G, Ee, Ce, Fe, $, T, U, x, L, we, Ve, Be, He, Ge, Ue;
|
|
2
|
+
(g = {})[g.None = 0] = "None", g[g.Anonymous = 1] = "Anonymous", g[g.NonConstant = 2] = "NonConstant", g[g.Xref = 4] = "Xref", g[g.XrefOverlay = 8] = "XrefOverlay", g[g.ExternallyDependent = 16] = "ExternallyDependent", g[g.ResolvedOrDependent = 32] = "ResolvedOrDependent", g[g.ReferencedXref = 64] = "ReferencedXref";
|
|
3
|
+
(te = {})[te.BYBLOCK = 0] = "BYBLOCK", te[te.BYLAYER = 256] = "BYLAYER";
|
|
4
|
+
(E = {})[E.Rotated = 0] = "Rotated", E[E.Aligned = 1] = "Aligned", E[E.Angular = 2] = "Angular", E[E.Diameter = 3] = "Diameter", E[E.Radius = 4] = "Radius", E[E.Angular3Point = 5] = "Angular3Point", E[E.Ordinate = 6] = "Ordinate", E[E.ReferenceIsExclusive = 32] = "ReferenceIsExclusive", E[E.IsOrdinateXTypeFlag = 64] = "IsOrdinateXTypeFlag", E[E.IsCustomTextPositionFlag = 128] = "IsCustomTextPositionFlag";
|
|
5
|
+
(h = {})[h.TopLeft = 1] = "TopLeft", h[h.TopCenter = 2] = "TopCenter", h[h.TopRight = 3] = "TopRight", h[h.MiddleLeft = 4] = "MiddleLeft", h[h.MiddleCenter = 5] = "MiddleCenter", h[h.MiddleRight = 6] = "MiddleRight", h[h.BottomLeft = 7] = "BottomLeft", h[h.BottomCenter = 8] = "BottomCenter", h[h.BottomRight = 9] = "BottomRight";
|
|
6
|
+
(oe = {})[oe.AtLeast = 1] = "AtLeast", oe[oe.Exact = 2] = "Exact";
|
|
7
|
+
var Xe = ((P = {})[P.Center = 0] = "Center", P[P.Above = 1] = "Above", P[P.Outside = 2] = "Outside", P[P.JIS = 3] = "JIS", P[P.Below = 4] = "Below", P), ee = ((y = {})[y.Feet = 0] = "Feet", y[y.None = 1] = "None", y[y.Inch = 2] = "Inch", y[y.FeetAndInch = 3] = "FeetAndInch", y[y.Leading = 4] = "Leading", y[y.Trailing = 8] = "Trailing", y[y.LeadingAndTrailing = 12] = "LeadingAndTrailing", y), jr = ((C = {})[C.None = 0] = "None", C[C.Leading = 1] = "Leading", C[C.Trailing = 2] = "Trailing", C[C.LeadingAndTrailing = 3] = "LeadingAndTrailing", C), zr = ((_ = {})[_.Center = 0] = "Center", _[_.Left = 1] = "Left", _[_.Right = 2] = "Right", _[_.OverFirst = 3] = "OverFirst", _[_.OverSecond = 4] = "OverSecond", _), Xr = ((z = {})[z.Bottom = 0] = "Bottom", z[z.Center = 1] = "Center", z[z.Top = 2] = "Top", z);
|
|
8
|
+
(se = {})[se.PatternFill = 0] = "PatternFill", se[se.SolidFill = 1] = "SolidFill";
|
|
9
|
+
(ce = {})[ce.NonAssociative = 0] = "NonAssociative", ce[ce.Associative = 1] = "Associative";
|
|
10
|
+
(X = {})[X.Normal = 0] = "Normal", X[X.Outer = 1] = "Outer", X[X.Ignore = 2] = "Ignore";
|
|
11
|
+
(K = {})[K.UserDefined = 0] = "UserDefined", K[K.Predefined = 1] = "Predefined", K[K.Custom = 2] = "Custom";
|
|
12
|
+
(ie = {})[ie.NotAnnotated = 0] = "NotAnnotated", ie[ie.Annotated = 1] = "Annotated";
|
|
13
|
+
(le = {})[le.Solid = 0] = "Solid", le[le.Gradient = 1] = "Gradient";
|
|
14
|
+
(de = {})[de.TwoColor = 0] = "TwoColor", de[de.OneColor = 1] = "OneColor";
|
|
15
|
+
var Kr = ((A = {})[A.Default = 0] = "Default", A[A.External = 1] = "External", A[A.Polyline = 2] = "Polyline", A[A.Derived = 4] = "Derived", A[A.Textbox = 8] = "Textbox", A[A.Outermost = 16] = "Outermost", A), Oe = ((F = {})[F.Line = 1] = "Line", F[F.Circular = 2] = "Circular", F[F.Elliptic = 3] = "Elliptic", F[F.Spline = 4] = "Spline", F), Zr = ((f = {})[f.Off = 0] = "Off", f[f.Solid = 1] = "Solid", f[f.Dashed = 2] = "Dashed", f[f.Dotted = 3] = "Dotted", f[f.ShotDash = 4] = "ShotDash", f[f.MediumDash = 5] = "MediumDash", f[f.LongDash = 6] = "LongDash", f[f.DoubleShortDash = 7] = "DoubleShortDash", f[f.DoubleMediumDash = 8] = "DoubleMediumDash", f[f.DoubleLongDash = 9] = "DoubleLongDash", f[f.DoubleMediumLongDash = 10] = "DoubleMediumLongDash", f[f.SparseDot = 11] = "SparseDot", f);
|
|
16
|
+
Zr.Off;
|
|
17
|
+
(Z = {})[Z.Standard = -3] = "Standard", Z[Z.ByLayer = -2] = "ByLayer", Z[Z.ByBlock = -1] = "ByBlock";
|
|
18
|
+
(ue = {})[ue.English = 0] = "English", ue[ue.Metric = 1] = "Metric";
|
|
19
|
+
(l = {})[l.PERSPECTIVE_MODE = 1] = "PERSPECTIVE_MODE", l[l.FRONT_CLIPPING = 2] = "FRONT_CLIPPING", l[l.BACK_CLIPPING = 4] = "BACK_CLIPPING", l[l.UCS_FOLLOW = 8] = "UCS_FOLLOW", l[l.FRONT_CLIP_NOT_AT_EYE = 16] = "FRONT_CLIP_NOT_AT_EYE", l[l.UCS_ICON_VISIBILITY = 32] = "UCS_ICON_VISIBILITY", l[l.UCS_ICON_AT_ORIGIN = 64] = "UCS_ICON_AT_ORIGIN", l[l.FAST_ZOOM = 128] = "FAST_ZOOM", l[l.SNAP_MODE = 256] = "SNAP_MODE", l[l.GRID_MODE = 512] = "GRID_MODE", l[l.ISOMETRIC_SNAP_STYLE = 1024] = "ISOMETRIC_SNAP_STYLE", l[l.HIDE_PLOT_MODE = 2048] = "HIDE_PLOT_MODE", l[l.K_ISO_PAIR_TOP = 4096] = "K_ISO_PAIR_TOP", l[l.K_ISO_PAIR_RIGHT = 8192] = "K_ISO_PAIR_RIGHT", l[l.VIEWPORT_ZOOM_LOCKING = 16384] = "VIEWPORT_ZOOM_LOCKING", l[l.UNUSED = 32768] = "UNUSED", l[l.NON_RECTANGULAR_CLIPPING = 65536] = "NON_RECTANGULAR_CLIPPING", l[l.VIEWPORT_OFF = 131072] = "VIEWPORT_OFF", l[l.GRID_BEYOND_DRAWING_LIMITS = 262144] = "GRID_BEYOND_DRAWING_LIMITS", l[l.ADAPTIVE_GRID_DISPLAY = 524288] = "ADAPTIVE_GRID_DISPLAY", l[l.SUBDIVISION_BELOW_SPACING = 1048576] = "SUBDIVISION_BELOW_SPACING", l[l.GRID_FOLLOWS_WORKPLANE = 2097152] = "GRID_FOLLOWS_WORKPLANE";
|
|
20
|
+
(v = {})[v.OPTIMIZED_2D = 0] = "OPTIMIZED_2D", v[v.WIREFRAME = 1] = "WIREFRAME", v[v.HIDDEN_LINE = 2] = "HIDDEN_LINE", v[v.FLAT_SHADED = 3] = "FLAT_SHADED", v[v.GOURAUD_SHADED = 4] = "GOURAUD_SHADED", v[v.FLAT_SHADED_WITH_WIREFRAME = 5] = "FLAT_SHADED_WITH_WIREFRAME", v[v.GOURAUD_SHADED_WITH_WIREFRAME = 6] = "GOURAUD_SHADED_WITH_WIREFRAME";
|
|
21
|
+
(pe = {})[pe.UCS_UNCHANGED = 0] = "UCS_UNCHANGED", pe[pe.HAS_OWN_UCS = 1] = "HAS_OWN_UCS";
|
|
22
|
+
(N = {})[N.NON_ORTHOGRAPHIC = 0] = "NON_ORTHOGRAPHIC", N[N.TOP = 1] = "TOP", N[N.BOTTOM = 2] = "BOTTOM", N[N.FRONT = 3] = "FRONT", N[N.BACK = 4] = "BACK", N[N.LEFT = 5] = "LEFT", N[N.RIGHT = 6] = "RIGHT";
|
|
23
|
+
(w = {})[w.AS_DISPLAYED = 0] = "AS_DISPLAYED", w[w.WIREFRAME = 1] = "WIREFRAME", w[w.HIDDEN = 2] = "HIDDEN", w[w.RENDERED = 3] = "RENDERED";
|
|
24
|
+
(me = {})[me.ONE_DISTANT_LIGHT = 0] = "ONE_DISTANT_LIGHT", me[me.TWO_DISTANT_LIGHTS = 1] = "TWO_DISTANT_LIGHTS";
|
|
25
|
+
function p(e, a, n) {
|
|
26
|
+
return e.code === a && (n == null || e.value === n);
|
|
27
|
+
}
|
|
28
|
+
function m(e) {
|
|
29
|
+
let a = {};
|
|
30
|
+
e.rewind();
|
|
31
|
+
let n = e.next(), t = n.code;
|
|
32
|
+
if (a.x = n.value, (n = e.next()).code !== t + 10) throw Error("Expected code for point value to be 20 but got " + n.code + ".");
|
|
33
|
+
return a.y = n.value, (n = e.next()).code !== t + 20 ? e.rewind() : a.z = n.value, a;
|
|
34
|
+
}
|
|
35
|
+
let Ye = Symbol();
|
|
36
|
+
function u(e, a) {
|
|
37
|
+
return (n, t, o) => {
|
|
38
|
+
let s = e.reduce((d, D) => {
|
|
39
|
+
D.pushContext && d.push({});
|
|
40
|
+
let M = d[d.length - 1];
|
|
41
|
+
for (let I of typeof D.code == "number" ? [D.code] : D.code) {
|
|
42
|
+
let ae = M[I] ?? (M[I] = []);
|
|
43
|
+
D.isMultiple && ae.length && console.warn(`Snippet ${ae.at(-1).name} for code(${I}) is shadowed by ${D.name}`), ae.push(D);
|
|
44
|
+
}
|
|
45
|
+
return d;
|
|
46
|
+
}, [{}]), i = !1, k = s.length - 1;
|
|
47
|
+
for (; !p(n, 0, "EOF"); ) {
|
|
48
|
+
let d = function(q, Q, Se) {
|
|
49
|
+
return q.find((Le, ne) => {
|
|
50
|
+
var Y;
|
|
51
|
+
return ne >= Se && ((Y = Le[Q]) == null ? void 0 : Y.length);
|
|
52
|
+
});
|
|
53
|
+
}(s, n.code, k), D = d == null ? void 0 : d[n.code].at(-1);
|
|
54
|
+
if (!d || !D) {
|
|
55
|
+
t.rewind();
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
D.isMultiple || d[n.code].pop();
|
|
59
|
+
let { name: M, parser: I, isMultiple: ae } = D, Ae = I == null ? void 0 : I(n, t, o);
|
|
60
|
+
if (Ae === Ye) {
|
|
61
|
+
t.rewind();
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
if (M) {
|
|
65
|
+
let [q, Q] = function(Se, Le) {
|
|
66
|
+
let ne = Le.split("."), Y = Se;
|
|
67
|
+
for (let Me = 0; Me < ne.length - 1; ++Me) {
|
|
68
|
+
let Pe = ne[Me];
|
|
69
|
+
Object.hasOwn(Y, Pe) || (Y[Pe] = {}), Y = Y[Pe];
|
|
70
|
+
}
|
|
71
|
+
return [Y, ne.at(-1)];
|
|
72
|
+
}(o, M);
|
|
73
|
+
ae ? (Object.hasOwn(q, Q) || (q[Q] = []), q[Q].push(Ae)) : q[Q] = Ae;
|
|
74
|
+
}
|
|
75
|
+
D.pushContext && (k -= 1), i = !0, n = t.next();
|
|
76
|
+
}
|
|
77
|
+
return a && Object.setPrototypeOf(o, a), i;
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
function r({ value: e }) {
|
|
81
|
+
return e;
|
|
82
|
+
}
|
|
83
|
+
function c(e, a) {
|
|
84
|
+
return m(a);
|
|
85
|
+
}
|
|
86
|
+
function b({ value: e }) {
|
|
87
|
+
return !!e;
|
|
88
|
+
}
|
|
89
|
+
var qe = [0, 16711680, 16776960, 65280, 65535, 255, 16711935, 16777215, 8421504, 12632256, 16711680, 16744319, 13369344, 13395558, 10027008, 10046540, 8323072, 8339263, 4980736, 4990502, 16727808, 16752511, 13382400, 13401958, 10036736, 10051404, 8331008, 8343359, 4985600, 4992806, 16744192, 16760703, 13395456, 13408614, 10046464, 10056268, 8339200, 8347455, 4990464, 4995366, 16760576, 16768895, 13408512, 13415014, 10056192, 10061132, 8347392, 8351551, 4995328, 4997670, 16776960, 16777087, 13421568, 13421670, 10000384, 10000460, 8355584, 8355647, 5000192, 5000230, 12582656, 14679935, 10079232, 11717734, 7510016, 8755276, 6258432, 7307071, 3755008, 4344870, 8388352, 12582783, 6736896, 10079334, 5019648, 7510092, 4161280, 6258495, 2509824, 3755046, 4194048, 10485631, 3394560, 8375398, 2529280, 6264908, 2064128, 5209919, 1264640, 3099686, 65280, 8388479, 52224, 6736998, 38912, 5019724, 32512, 4161343, 19456, 2509862, 65343, 8388511, 52275, 6737023, 38950, 5019743, 32543, 4161359, 19475, 2509871, 65407, 8388543, 52326, 6737049, 38988, 5019762, 32575, 4161375, 19494, 2509881, 65471, 8388575, 52377, 6737074, 39026, 5019781, 32607, 4161391, 19513, 2509890, 65535, 8388607, 52428, 6737100, 39064, 5019800, 32639, 4161407, 19532, 2509900, 49151, 8380415, 39372, 6730444, 29336, 5014936, 24447, 4157311, 14668, 2507340, 32767, 8372223, 26316, 6724044, 19608, 5010072, 16255, 4153215, 9804, 2505036, 16383, 8364031, 13260, 6717388, 9880, 5005208, 8063, 4149119, 4940, 2502476, 255, 8355839, 204, 6710988, 152, 5000344, 127, 4145023, 76, 2500172, 4129023, 10452991, 3342540, 8349388, 2490520, 6245528, 2031743, 5193599, 1245260, 3089996, 8323327, 12550143, 6684876, 10053324, 4980888, 7490712, 4128895, 6242175, 2490444, 3745356, 12517631, 14647295, 10027212, 11691724, 7471256, 8735896, 6226047, 7290751, 3735628, 4335180, 16711935, 16744447, 13369548, 13395660, 9961624, 9981080, 8323199, 8339327, 4980812, 4990540, 16711871, 16744415, 13369497, 13395634, 9961586, 9981061, 8323167, 8339311, 4980793, 4990530, 16711807, 16744383, 13369446, 13395609, 9961548, 9981042, 8323135, 8339295, 4980774, 4990521, 16711743, 16744351, 13369395, 13395583, 9961510, 9981023, 8323103, 8339279, 4980755, 4990511, 3355443, 5987163, 8684676, 11382189, 14079702, 16777215];
|
|
90
|
+
function Qe(e, a) {
|
|
91
|
+
var o;
|
|
92
|
+
if (!p(e, 1001)) throw Error("XData must starts with code 1001");
|
|
93
|
+
let n = { appName: e.value, value: [] };
|
|
94
|
+
e = a.next();
|
|
95
|
+
let t = [n.value];
|
|
96
|
+
for (; !p(e, 0, "EOF") && e.code >= 1e3; ) {
|
|
97
|
+
let s = t.at(-1);
|
|
98
|
+
switch (e.code) {
|
|
99
|
+
case 1002:
|
|
100
|
+
e.value === "{" ? t.push([]) : (t.pop(), (o = t.at(-1)) == null || o.push(s));
|
|
101
|
+
break;
|
|
102
|
+
case 1e3:
|
|
103
|
+
case 1004:
|
|
104
|
+
case 1040:
|
|
105
|
+
case 1070:
|
|
106
|
+
case 1071:
|
|
107
|
+
s.push({ type: W(e.code), value: e.value });
|
|
108
|
+
break;
|
|
109
|
+
case 1003:
|
|
110
|
+
s.push({ name: "layer", type: W(e.code), value: e.value });
|
|
111
|
+
break;
|
|
112
|
+
case 1005:
|
|
113
|
+
s.push({ name: "handle", type: W(e.code), value: e.value });
|
|
114
|
+
break;
|
|
115
|
+
case 1010:
|
|
116
|
+
s.push({ type: W(e.code), value: m(a) });
|
|
117
|
+
break;
|
|
118
|
+
case 1011:
|
|
119
|
+
s.push({ name: "worldSpacePosition", type: W(e.code), value: m(a) });
|
|
120
|
+
break;
|
|
121
|
+
case 1012:
|
|
122
|
+
s.push({ name: "worldSpaceDisplacement", type: W(e.code), value: m(a) });
|
|
123
|
+
break;
|
|
124
|
+
case 1013:
|
|
125
|
+
s.push({ name: "worldSpaceDirection", type: W(e.code), value: m(a) });
|
|
126
|
+
break;
|
|
127
|
+
case 1041:
|
|
128
|
+
s.push({ name: "distance", type: W(e.code), value: e.value });
|
|
129
|
+
break;
|
|
130
|
+
case 1042:
|
|
131
|
+
s.push({ name: "scale", type: W(e.code), value: e.value });
|
|
132
|
+
}
|
|
133
|
+
e = a.next();
|
|
134
|
+
}
|
|
135
|
+
return a.rewind(), n;
|
|
136
|
+
}
|
|
137
|
+
function W(e) {
|
|
138
|
+
switch (e) {
|
|
139
|
+
case 1e3:
|
|
140
|
+
case 1003:
|
|
141
|
+
case 1005:
|
|
142
|
+
return "string";
|
|
143
|
+
case 1004:
|
|
144
|
+
return "hex";
|
|
145
|
+
case 1040:
|
|
146
|
+
case 1041:
|
|
147
|
+
case 1042:
|
|
148
|
+
return "real";
|
|
149
|
+
case 1070:
|
|
150
|
+
return "integer";
|
|
151
|
+
case 1071:
|
|
152
|
+
return "long";
|
|
153
|
+
case 1010:
|
|
154
|
+
case 1011:
|
|
155
|
+
case 1012:
|
|
156
|
+
case 1013:
|
|
157
|
+
return "point";
|
|
158
|
+
default:
|
|
159
|
+
return "";
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
function je(e, a, n) {
|
|
163
|
+
if (p(a, 102)) return he(a, n), !0;
|
|
164
|
+
switch (a.code) {
|
|
165
|
+
case 0:
|
|
166
|
+
e.type = a.value;
|
|
167
|
+
break;
|
|
168
|
+
case 5:
|
|
169
|
+
e.handle = a.value;
|
|
170
|
+
break;
|
|
171
|
+
case 330:
|
|
172
|
+
e.ownerDictionarySoftId ? e.ownerBlockRecordSoftId = a.value : e.ownerDictionarySoftId = a.value;
|
|
173
|
+
break;
|
|
174
|
+
case 360:
|
|
175
|
+
e.ownerdictionaryHardId = a.value;
|
|
176
|
+
break;
|
|
177
|
+
case 67:
|
|
178
|
+
e.isInPaperSpace = !!a.value;
|
|
179
|
+
break;
|
|
180
|
+
case 8:
|
|
181
|
+
e.layer = a.value;
|
|
182
|
+
break;
|
|
183
|
+
case 6:
|
|
184
|
+
e.lineType = a.value;
|
|
185
|
+
break;
|
|
186
|
+
case 347:
|
|
187
|
+
e.materialObjectHardId = a.value;
|
|
188
|
+
break;
|
|
189
|
+
case 62:
|
|
190
|
+
e.colorIndex = a.value, e.color = qe[Math.abs(a.value)];
|
|
191
|
+
break;
|
|
192
|
+
case 370:
|
|
193
|
+
e.lineweight = a.value;
|
|
194
|
+
break;
|
|
195
|
+
case 48:
|
|
196
|
+
e.lineTypeScale = a.value;
|
|
197
|
+
break;
|
|
198
|
+
case 60:
|
|
199
|
+
e.isVisible = !!a.value;
|
|
200
|
+
break;
|
|
201
|
+
case 92:
|
|
202
|
+
e.proxyByte = a.value;
|
|
203
|
+
break;
|
|
204
|
+
case 310:
|
|
205
|
+
e.proxyEntity = a.value;
|
|
206
|
+
break;
|
|
207
|
+
case 100:
|
|
208
|
+
break;
|
|
209
|
+
case 420:
|
|
210
|
+
e.color = a.value;
|
|
211
|
+
break;
|
|
212
|
+
case 430:
|
|
213
|
+
e.transparency = a.value;
|
|
214
|
+
break;
|
|
215
|
+
case 390:
|
|
216
|
+
e.plotStyleHardId = a.value;
|
|
217
|
+
break;
|
|
218
|
+
case 284:
|
|
219
|
+
e.shadowMode = a.value;
|
|
220
|
+
break;
|
|
221
|
+
case 1001:
|
|
222
|
+
e.xdata = Qe(a, n);
|
|
223
|
+
break;
|
|
224
|
+
default:
|
|
225
|
+
return !1;
|
|
226
|
+
}
|
|
227
|
+
return !0;
|
|
228
|
+
}
|
|
229
|
+
let Jr = 0;
|
|
230
|
+
function er(e) {
|
|
231
|
+
if (!e) throw TypeError("entity cannot be undefined or null");
|
|
232
|
+
e.handle || (e.handle = Jr++);
|
|
233
|
+
}
|
|
234
|
+
(V = {})[V.CAST_AND_RECEIVE = 0] = "CAST_AND_RECEIVE", V[V.CAST = 1] = "CAST", V[V.RECEIVE = 2] = "RECEIVE", V[V.IGNORE = 3] = "IGNORE";
|
|
235
|
+
let O = [{ code: 1001, name: "xdata", parser: Qe }, { code: 284, name: "shadowMode", parser: r }, { code: 390, name: "plotStyleHardId", parser: r }, { code: 440, name: "transparency", parser: r }, { code: 430, name: "colorName", parser: r }, { code: 420, name: "color", parser: r }, { code: 310, name: "proxyEntity", isMultiple: !0, parser: r }, { code: 92, name: "proxyByte", parser: r }, { code: 60, name: "isVisible", parser: b }, { code: 48, name: "lineTypeScale", parser: r }, { code: 370, name: "lineweight", parser: r }, { code: 62, name: "colorIndex", parser(e, a, n) {
|
|
236
|
+
let t = e.value;
|
|
237
|
+
return n.color = qe[Math.abs(t)], t;
|
|
238
|
+
} }, { code: 347, name: "materialObjectHardId", parser: r }, { code: 6, name: "lineType", parser: r }, { code: 8, name: "layer", parser: r }, { code: 410, name: "layoutTabName", parser: r }, { code: 67, name: "isInPaperSpace", parser: b }, { code: 100 }, { code: 160 }, { code: 330, name: "ownerBlockRecordSoftId", parser: r }, { code: 102, parser: he }, { code: 102, parser: he }, { code: 102, parser: he }, { code: 5, name: "handle", parser: r }];
|
|
239
|
+
function he(e, a) {
|
|
240
|
+
for (e = a.next(); !p(e, 102) && !p(e, 0, "EOF"); ) e = a.next();
|
|
241
|
+
}
|
|
242
|
+
function rr(e, a, n) {
|
|
243
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
244
|
+
}
|
|
245
|
+
let $r = { extrusionDirection: { x: 0, y: 0, z: 1 } }, qr = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 100 }, ...O];
|
|
246
|
+
class ar {
|
|
247
|
+
parseEntity(a, n) {
|
|
248
|
+
let t = {};
|
|
249
|
+
return this.parser(n, a, t), t;
|
|
250
|
+
}
|
|
251
|
+
constructor() {
|
|
252
|
+
rr(this, "parser", u(qr, $r));
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
rr(ar, "ForEntityName", "ARC");
|
|
256
|
+
(R = {})[R.NONE = 0] = "NONE", R[R.INVISIBLE = 1] = "INVISIBLE", R[R.CONSTANT = 2] = "CONSTANT", R[R.VERIFICATION_REQUIRED = 4] = "VERIFICATION_REQUIRED", R[R.PRESET = 8] = "PRESET";
|
|
257
|
+
(fe = {})[fe.MULTILINE = 2] = "MULTILINE", fe[fe.CONSTANT_MULTILINE = 4] = "CONSTANT_MULTILINE";
|
|
258
|
+
(J = {})[J.NONE = 0] = "NONE", J[J.MIRRORED_X = 2] = "MIRRORED_X", J[J.MIRRORED_Y = 4] = "MIRRORED_Y";
|
|
259
|
+
var Qr = ((S = {})[S.LEFT = 0] = "LEFT", S[S.CENTER = 1] = "CENTER", S[S.RIGHT = 2] = "RIGHT", S[S.ALIGNED = 3] = "ALIGNED", S[S.MIDDLE = 4] = "MIDDLE", S[S.FIT = 5] = "FIT", S), ea = ((B = {})[B.BASELINE = 0] = "BASELINE", B[B.BOTTOM = 1] = "BOTTOM", B[B.MIDDLE = 2] = "MIDDLE", B[B.TOP = 3] = "TOP", B);
|
|
260
|
+
function nr(e, a, n) {
|
|
261
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
262
|
+
}
|
|
263
|
+
let tr = { thickness: 0, rotation: 0, xScale: 1, obliqueAngle: 0, styleName: "STANDARD", generationFlag: 0, halign: Qr.LEFT, valign: ea.BASELINE, extrusionDirection: { x: 0, y: 0, z: 1 } }, or = [{ code: 73, name: "valign", parser: r }, { code: 100 }, { code: 210, name: "extrusionDirection", parser: c }, { code: 11, name: "endPoint", parser: c }, { code: 72, name: "valign", parser: r }, { code: 72, name: "halign", parser: r }, { code: 71, name: "generationFlag", parser: r }, { code: 7, name: "styleName", parser: r }, { code: 51, name: "obliqueAngle", parser: r }, { code: 41, name: "xScale", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 1, name: "text", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 10, name: "startPoint", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
264
|
+
class sr {
|
|
265
|
+
parseEntity(a, n) {
|
|
266
|
+
let t = {};
|
|
267
|
+
return this.parser(n, a, t), t;
|
|
268
|
+
}
|
|
269
|
+
constructor() {
|
|
270
|
+
nr(this, "parser", u(or, tr));
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
function cr(e, a, n) {
|
|
274
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
275
|
+
}
|
|
276
|
+
nr(sr, "ForEntityName", "TEXT");
|
|
277
|
+
let ra = { ...tr }, aa = [{ code: 2 }, { code: 40, name: "annotationScale", parser: r }, { code: 10, name: "alignmentPoint", parser: c }, { code: 340, name: "secondaryAttributesHardIds", isMultiple: !0, parser: r }, { code: 70, name: "numberOfSecondaryAttributes", parser: r }, { code: 70, name: "isReallyLocked", parser: b }, { code: 70, name: "mtextFlag", parser: r }, { code: 280, name: "isDuplicatedRecord", parser: b }, { code: 100 }, { code: 280, name: "isLocked", parser: b }, { code: 74, name: "valign", parser: r }, { code: 73 }, { code: 70, name: "attributeFlag", parser: r }, { code: 2, name: "tag", parser: r }, { code: 3, name: "prompt", parser: r }, { code: 280 }, { code: 100, name: "subclassMarker", parser: r }, ...or.slice(2)];
|
|
278
|
+
class ir {
|
|
279
|
+
parseEntity(a, n) {
|
|
280
|
+
let t = {};
|
|
281
|
+
return this.parser(n, a, t), t;
|
|
282
|
+
}
|
|
283
|
+
constructor() {
|
|
284
|
+
cr(this, "parser", u(aa, ra));
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
function lr(e, a, n) {
|
|
288
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
289
|
+
}
|
|
290
|
+
cr(ir, "ForEntityName", "ATTDEF");
|
|
291
|
+
let na = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, ta = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
292
|
+
class dr {
|
|
293
|
+
parseEntity(a, n) {
|
|
294
|
+
let t = {};
|
|
295
|
+
return this.parser(n, a, t), t;
|
|
296
|
+
}
|
|
297
|
+
constructor() {
|
|
298
|
+
lr(this, "parser", u(ta, na));
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
lr(dr, "ForEntityName", "CIRCLE");
|
|
302
|
+
class ge {
|
|
303
|
+
parseEntity(a, n) {
|
|
304
|
+
let t = {};
|
|
305
|
+
for (; !p(n, 0, "EOF"); ) {
|
|
306
|
+
if (n.code === 0) {
|
|
307
|
+
a.rewind();
|
|
308
|
+
break;
|
|
309
|
+
}
|
|
310
|
+
(function(o, s, i) {
|
|
311
|
+
switch (s.code) {
|
|
312
|
+
case 100:
|
|
313
|
+
o.subclassMarker = s.value;
|
|
314
|
+
break;
|
|
315
|
+
case 280:
|
|
316
|
+
o.version = s.value;
|
|
317
|
+
break;
|
|
318
|
+
case 2:
|
|
319
|
+
o.name = s.value;
|
|
320
|
+
break;
|
|
321
|
+
case 10:
|
|
322
|
+
o.definitionPoint = m(i);
|
|
323
|
+
break;
|
|
324
|
+
case 11:
|
|
325
|
+
o.textPoint = m(i);
|
|
326
|
+
break;
|
|
327
|
+
case 12:
|
|
328
|
+
o.insertionPoint = m(i);
|
|
329
|
+
break;
|
|
330
|
+
case 13:
|
|
331
|
+
o.subDefinitionPoint1 = m(i);
|
|
332
|
+
break;
|
|
333
|
+
case 14:
|
|
334
|
+
o.subDefinitionPoint2 = m(i);
|
|
335
|
+
break;
|
|
336
|
+
case 15:
|
|
337
|
+
o.centerPoint = m(i);
|
|
338
|
+
break;
|
|
339
|
+
case 16:
|
|
340
|
+
o.arcPoint = m(i);
|
|
341
|
+
break;
|
|
342
|
+
case 70:
|
|
343
|
+
o.dimensionType = s.value;
|
|
344
|
+
break;
|
|
345
|
+
case 71:
|
|
346
|
+
o.attachmentPoint = s.value;
|
|
347
|
+
break;
|
|
348
|
+
case 72:
|
|
349
|
+
o.textLineSpacingStyle = s.value;
|
|
350
|
+
break;
|
|
351
|
+
case 40:
|
|
352
|
+
o.leaderLength = s.value;
|
|
353
|
+
break;
|
|
354
|
+
case 41:
|
|
355
|
+
o.textLineSpacingFactor = s.value;
|
|
356
|
+
break;
|
|
357
|
+
case 42:
|
|
358
|
+
o.measurement = s.value;
|
|
359
|
+
break;
|
|
360
|
+
case 1:
|
|
361
|
+
o.text = s.value;
|
|
362
|
+
break;
|
|
363
|
+
case 50:
|
|
364
|
+
o.rotationAngle = s.value;
|
|
365
|
+
break;
|
|
366
|
+
case 52:
|
|
367
|
+
o.obliqueAngle = s.value;
|
|
368
|
+
break;
|
|
369
|
+
case 53:
|
|
370
|
+
o.textRotation = s.value;
|
|
371
|
+
break;
|
|
372
|
+
case 51:
|
|
373
|
+
o.ocsRotation = s.value;
|
|
374
|
+
break;
|
|
375
|
+
case 210:
|
|
376
|
+
o.extrusionDirection = m(i);
|
|
377
|
+
break;
|
|
378
|
+
case 3:
|
|
379
|
+
o.styleName = s.value;
|
|
380
|
+
break;
|
|
381
|
+
default:
|
|
382
|
+
je(o, s, i);
|
|
383
|
+
}
|
|
384
|
+
})(t, n, a), n = a.next();
|
|
385
|
+
}
|
|
386
|
+
return t;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
function ur(e, a, n) {
|
|
390
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
391
|
+
}
|
|
392
|
+
Re = "DIMENSION", (_e = "ForEntityName") in ge ? Object.defineProperty(ge, _e, { value: Re, enumerable: !0, configurable: !0, writable: !0 }) : ge[_e] = Re;
|
|
393
|
+
let oa = { extrusionDirection: { x: 0, y: 0, z: 1 } }, sa = [{ code: 42, name: "endAngle", parser: r }, { code: 41, name: "startAngle", parser: r }, { code: 40, name: "axisRatio", parser: r }, { code: 210, name: "extrusionDirection", parser: c }, { code: 11, name: "majorAxisEndPoint", parser: c }, { code: 10, name: "center", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
394
|
+
class pr {
|
|
395
|
+
parseEntity(a, n) {
|
|
396
|
+
let t = {};
|
|
397
|
+
return this.parser(n, a, t), t;
|
|
398
|
+
}
|
|
399
|
+
constructor() {
|
|
400
|
+
ur(this, "parser", u(sa, oa));
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
ur(pr, "ForEntityName", "ELLIPSE");
|
|
404
|
+
let mr = [{ code: 330, name: "sourceBoundaryObjects", parser: r, isMultiple: !0 }, { code: 97, name: "numberOfSourceBoundaryObjects", parser: r }], ca = [{ code: 11, name: "end", parser: c }, { code: 10, name: "start", parser: c }], ia = [{ code: 73, name: "isCCW", parser: b }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: c }], la = [{ code: 73, name: "isCCW", parser: b }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 40, name: "lengthOfMinorAxis", parser: r }, { code: 11, name: "end", parser: c }, { code: 10, name: "center", parser: c }], da = [{ code: 13, name: "endTangent", parser: c }, { code: 12, name: "startTangent", parser: c }, { code: 11, name: "fitDatum", isMultiple: !0, parser: c }, { code: 97, name: "numberOfFitData", parser: r }, { code: 10, name: "controlPoints", isMultiple: !0, parser(e, a) {
|
|
405
|
+
let n = { ...m(a), weight: 1 };
|
|
406
|
+
return (e = a.next()).code === 42 ? n.weight = e.value : a.rewind(), n;
|
|
407
|
+
} }, { code: 40, name: "knots", isMultiple: !0, parser: r }, { code: 96, name: "numberOfControlPoints", parser: r }, { code: 95, name: "numberOfKnots", parser: r }, { code: 74, name: "isPeriodic", parser: b }, { code: 73, name: "splineFlag", parser: r }, { code: 94, name: "degree", parser: r }], ua = { [Oe.Line]: ca, [Oe.Circular]: ia, [Oe.Elliptic]: la, [Oe.Spline]: da }, pa = [...mr, { code: 72, name: "edges", parser(e, a) {
|
|
408
|
+
let n = { type: e.value }, t = u(ua[n.type]);
|
|
409
|
+
if (!t) throw Error(`Invalid edge type ${n.type}`);
|
|
410
|
+
return t(e = a.next(), a, n), n;
|
|
411
|
+
}, isMultiple: !0 }, { code: 93, name: "numberOfEdges", parser: r }], ma = [...mr, { code: 10, name: "vertices", parser(e, a) {
|
|
412
|
+
let n = { ...m(a), bulge: 0 };
|
|
413
|
+
return (e = a.next()).code === 42 ? n.bulge = e.value : a.rewind(), n;
|
|
414
|
+
}, isMultiple: !0 }, { code: 93, name: "numberOfVertices", parser: r }, { code: 73, name: "isClosed", parser: b }, { code: 72, name: "hasBulge", parser: b }], fa = [{ code: 49, name: "dashLengths", parser: r, isMultiple: !0 }, { code: 79, name: "numberOfDashLengths", parser: r }, { code: 45, name: "offset", parser: Ke }, { code: 43, name: "base", parser: Ke }, { code: 53, name: "angle", parser: r }];
|
|
415
|
+
function Ke(e, a) {
|
|
416
|
+
let n = e.code + 1, t = { x: e.value, y: 1 };
|
|
417
|
+
return (e = a.next()).code === n ? t.y = e.value : a.rewind(), t;
|
|
418
|
+
}
|
|
419
|
+
function fr(e, a, n) {
|
|
420
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
421
|
+
}
|
|
422
|
+
let ba = { extrusionDirection: { x: 0, y: 0, z: 1 }, gradientRotation: 0, colorTint: 0 }, Ia = [{ code: 470 }, { code: 463 }, { code: 462, name: "colorTint", parser: r }, { code: 461, name: "gradientDefinition", parser: r }, { code: 460, name: "gradientRotation", parser: r }, { code: 453, name: "numberOfColors", parser: r }, { code: 452, name: "gradientColorFlag", parser: r }, { code: 451 }, { code: 450, name: "gradientFlag", parser: r }, { code: 10, name: "seedPoints", parser: c, isMultiple: !0 }, { code: 99 }, { code: 11, name: "offsetVector", parser: c }, { code: 98, name: "numberOfSeedPoints", parser: r }, { code: 47, name: "pixelSize", parser: r }, { code: 53, name: "definitionLines", parser: function(e, a) {
|
|
423
|
+
let n = {};
|
|
424
|
+
return u(fa)(e, a, n), n;
|
|
425
|
+
}, isMultiple: !0 }, { code: 78, name: "numberOfDefinitionLines", parser: r }, { code: 77, name: "isDouble", parser: b }, { code: 73, name: "isAnnotated", parser: b }, { code: 41, name: "patternScale", parser: r }, { code: 52, name: "patternAngle", parser: r }, { code: 76, name: "patternType", parser: r }, { code: 75, name: "hatchStyle", parser: r }, { code: 92, name: "boundaryPaths", parser: function(e, a) {
|
|
426
|
+
let n = { boundaryPathTypeFlag: e.value }, t = n.boundaryPathTypeFlag & Kr.Polyline;
|
|
427
|
+
return e = a.next(), t ? u(ma)(e, a, n) : u(pa)(e, a, n), n;
|
|
428
|
+
}, isMultiple: !0 }, { code: 91, name: "numberOfBoundaryPaths", parser: r }, { code: 71, name: "associativity", parser: r }, { code: 63, name: "patternFillColor", parser: r }, { code: 70, name: "solidFill", parser: r }, { code: 2, name: "patternName", parser: r }, { code: 210, name: "extrusionDirection", parser: c }, { code: 10, name: "elevationPoint", parser: c }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...O];
|
|
429
|
+
class br {
|
|
430
|
+
parseEntity(a, n) {
|
|
431
|
+
let t = {};
|
|
432
|
+
return this.parser(n, a, t), t;
|
|
433
|
+
}
|
|
434
|
+
constructor() {
|
|
435
|
+
fr(this, "parser", u(Ia, ba));
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
fr(br, "ForEntityName", "HATCH");
|
|
439
|
+
(H = {})[H.ShowImage = 1] = "ShowImage", H[H.ShowImageWhenNotAlignedWithScreen = 2] = "ShowImageWhenNotAlignedWithScreen", H[H.UseClippingBoundary = 4] = "UseClippingBoundary", H[H.TransparencyIsOn = 8] = "TransparencyIsOn";
|
|
440
|
+
(be = {})[be.Rectangular = 1] = "Rectangular", be[be.Polygonal = 2] = "Polygonal";
|
|
441
|
+
(Ie = {})[Ie.Outside = 0] = "Outside", Ie[Ie.Inside = 1] = "Inside";
|
|
442
|
+
function Ir(e, a, n) {
|
|
443
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
444
|
+
}
|
|
445
|
+
let Ea = { clippingBoundaryPath: [] }, Oa = [{ code: 90, name: "version", parser: r }, { code: 10, name: "position", parser: c }, { code: 11, name: "uPixel", parser: c }, { code: 12, name: "vPixel", parser: c }, { code: 13, name: "imageSize", parser: c }, { code: 340, name: "imageDefHandle", parser: r }, { code: 70, name: "flags", parser: r }, { code: 280, name: "clipping", parser: r }, { code: 281, name: "brightness", parser: r }, { code: 282, name: "contrast", parser: r }, { code: 283, name: "fade", parser: r }, { code: 360, name: "imageDefReactorHandle", parser: r }, { code: 71, name: "clippingBoundaryType", parser: r }, { code: 91, name: "countBoundaryPoints", parser: r }, { code: 14, name: "clippingBoundaryPath", isMultiple: !0, parser: c }, { code: 290, name: "clipMode", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
446
|
+
class ze {
|
|
447
|
+
parseEntity(a, n) {
|
|
448
|
+
let t = {};
|
|
449
|
+
return this.parser(n, a, t), t;
|
|
450
|
+
}
|
|
451
|
+
constructor() {
|
|
452
|
+
Ir(this, "parser", u(Oa, Ea));
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
function Er(e, a, n) {
|
|
456
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
457
|
+
}
|
|
458
|
+
Ir(ze, "ForEntityName", "IMAGE");
|
|
459
|
+
let Da = { xScale: 1, yScale: 1, zScale: 1, rotation: 0, columnCount: 0, rowCount: 0, columnSpacing: 0, rowSpacing: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, ha = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 45, name: "rowSpacing", parser: r }, { code: 44, name: "columnSpacing", parser: r }, { code: 71, name: "rowCount", parser: r }, { code: 70, name: "columnCount", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 43, name: "zScale", parser: r }, { code: 42, name: "yScale", parser: r }, { code: 41, name: "xScale", parser: r }, { code: 10, name: "insertionPoint", parser: c }, { code: 2, name: "name", parser: r }, { code: 66, name: "isVariableAttributes", parser: b }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
460
|
+
class Or {
|
|
461
|
+
parseEntity(a, n) {
|
|
462
|
+
let t = {};
|
|
463
|
+
return this.parser(n, a, t), t;
|
|
464
|
+
}
|
|
465
|
+
constructor() {
|
|
466
|
+
Er(this, "parser", u(ha, Da));
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
function Dr(e, a, n) {
|
|
470
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
471
|
+
}
|
|
472
|
+
Er(Or, "ForEntityName", "INSERT");
|
|
473
|
+
let ga = { isArrowheadEnabled: !0 }, Ta = [{ code: 213, name: "offsetFromAnnotation", parser: c }, { code: 212, name: "offsetFromBlock", parser: c }, { code: 211, name: "horizontalDirection", parser: c }, { code: 210, name: "normal", parser: c }, { code: 340, name: "associatedAnnotation", parser: r }, { code: 77, name: "byBlockColor", parser: r }, { code: 10, name: "vertices", parser: c, isMultiple: !0 }, { code: 76, name: "numberOfVertices", parser: r }, { code: 41, name: "textWidth", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 75, name: "isHooklineExists", parser: b }, { code: 74, name: "isHooklineSameDirection", parser: b }, { code: 73, name: "leaderCreationFlag", parser: r }, { code: 72, name: "isSpline", parser: b }, { code: 71, name: "isArrowheadEnabled", parser: b }, { code: 3, name: "styleName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
474
|
+
class hr {
|
|
475
|
+
parseEntity(a, n) {
|
|
476
|
+
let t = {};
|
|
477
|
+
return this.parser(n, a, t), t;
|
|
478
|
+
}
|
|
479
|
+
constructor() {
|
|
480
|
+
Dr(this, "parser", u(Ta, ga));
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
Dr(hr, "ForEntityName", "LEADER");
|
|
484
|
+
(G = {})[G.TextAnnotation = 0] = "TextAnnotation", G[G.ToleranceAnnotation = 1] = "ToleranceAnnotation", G[G.BlockReferenceAnnotation = 2] = "BlockReferenceAnnotation", G[G.NoAnnotation = 3] = "NoAnnotation";
|
|
485
|
+
function gr(e, a, n) {
|
|
486
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
487
|
+
}
|
|
488
|
+
let xa = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, ya = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 11, name: "endPoint", parser: c }, { code: 10, name: "startPoint", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
489
|
+
class Tr {
|
|
490
|
+
parseEntity(a, n) {
|
|
491
|
+
let t = {};
|
|
492
|
+
return this.parser(n, a, t), t;
|
|
493
|
+
}
|
|
494
|
+
constructor() {
|
|
495
|
+
gr(this, "parser", u(ya, xa));
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
gr(Tr, "ForEntityName", "LINE");
|
|
499
|
+
(Ee = {})[Ee.IS_CLOSED = 1] = "IS_CLOSED", Ee[Ee.PLINE_GEN = 128] = "PLINE_GEN";
|
|
500
|
+
let va = { flag: 0, elevation: 0, thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, vertices: [] }, Na = { bulge: 0 }, ka = [{ code: 42, name: "bulge", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 91, name: "id", parser: r }, { code: 20, name: "y", parser: r }, { code: 10, name: "x", parser: r }], Aa = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 10, name: "vertices", isMultiple: !0, parser(e, a) {
|
|
501
|
+
let n = {};
|
|
502
|
+
return u(ka, Na)(e, a, n), n;
|
|
503
|
+
} }, { code: 39, name: "thickness", parser: r }, { code: 38, name: "elevation", parser: r }, { code: 43, name: "constantWidth", parser: r }, { code: 70, name: "flag", parser: r }, { code: 90, name: "numberOfVertices", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
504
|
+
class Te {
|
|
505
|
+
parseEntity(a, n) {
|
|
506
|
+
let t = {};
|
|
507
|
+
return u(Aa, va)(n, a, t), t;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
Fe = "LWPOLYLINE", (Ce = "ForEntityName") in Te ? Object.defineProperty(Te, Ce, { value: Fe, enumerable: !0, configurable: !0, writable: !0 }) : Te[Ce] = Fe;
|
|
511
|
+
($ = {})[$.LEFT_TO_RIGHT = 1] = "LEFT_TO_RIGHT", $[$.TOP_TO_BOTTOM = 3] = "TOP_TO_BOTTOM", $[$.BY_STYLE = 5] = "BY_STYLE";
|
|
512
|
+
function Sa(e, a) {
|
|
513
|
+
let n = {};
|
|
514
|
+
for (let t of e) {
|
|
515
|
+
let o = a(t);
|
|
516
|
+
o != null && (n[o] ?? (n[o] = []), n[o].push(t));
|
|
517
|
+
}
|
|
518
|
+
return n;
|
|
519
|
+
}
|
|
520
|
+
function* ke(e, a = 1 / 0, n = 1) {
|
|
521
|
+
for (let t = e; t !== a; t += n) yield t;
|
|
522
|
+
}
|
|
523
|
+
function j(e) {
|
|
524
|
+
return { x: e.x ?? 0, y: e.y ?? 0, z: e.z ?? 0 };
|
|
525
|
+
}
|
|
526
|
+
function xr(e, a, n) {
|
|
527
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
528
|
+
}
|
|
529
|
+
let La = { textStyle: "STANDARD", extrusionDirection: { x: 0, y: 0, z: 1 }, rotation: 0 }, xe = [{ code: 46, name: "annotationHeight", parser: r }, { code: 101, parser(e, a) {
|
|
530
|
+
(function(n) {
|
|
531
|
+
n.rewind();
|
|
532
|
+
let t = n.next();
|
|
533
|
+
if (t.code !== 101) throw Error("Bad call for skipEmbeddedObject()");
|
|
534
|
+
do
|
|
535
|
+
t = n.next();
|
|
536
|
+
while (t.code !== 0);
|
|
537
|
+
n.rewind();
|
|
538
|
+
})(a);
|
|
539
|
+
} }, { code: 50, name: "columnHeight", parser: r }, { code: 49, name: "columnGutter", parser: r }, { code: 48, name: "columnWidth", parser: r }, { code: 79, name: "columnAutoHeight", parser: r }, { code: 78, name: "columnFlowReversed", parser: r }, { code: 76, name: "columnCount", parser: r }, { code: 75, name: "columnType", parser: r }, { code: 441, name: "backgroundFillTransparency", parser: r }, { code: 63, name: "backgroundFillColor", parser: r }, { code: 45, name: "fillBoxScale", parser: r }, { code: [...ke(430, 440)], name: "backgroundColor", parser: r }, { code: [...ke(420, 430)], name: "backgroundColor", parser: r }, { code: 90, name: "backgroundFill", parser: r }, { code: 44, name: "lineSpacing", parser: r }, { code: 73, name: "lineSpacingStyle", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 43 }, { code: 42 }, { code: 11, name: "direction", parser: c }, { code: 210, name: "extrusionDirection", parser: c }, { code: 7, name: "styleName", parser: r }, { code: 3, name: "text", isMultiple: !0, parser: r }, { code: 1, name: "text", isMultiple: !0, parser: r }, { code: 72, name: "drawingDirection", parser: r }, { code: 71, name: "attachmentPoint", parser: r }, { code: 41, name: "width", parser: r }, { code: 40, name: "height", parser: r }, { code: 10, name: "insertionPoint", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
540
|
+
class yr {
|
|
541
|
+
parseEntity(a, n) {
|
|
542
|
+
let t = {};
|
|
543
|
+
return this.parser(n, a, t), t;
|
|
544
|
+
}
|
|
545
|
+
constructor() {
|
|
546
|
+
xr(this, "parser", u(xe, La));
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
function vr(e, a, n) {
|
|
550
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
551
|
+
}
|
|
552
|
+
xr(yr, "ForEntityName", "MTEXT");
|
|
553
|
+
let Ma = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, angle: 0 }, Pa = [{ code: 50, name: "angle", parser: r }, { code: 210, name: "extrusionDirection", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 10, name: "position", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
554
|
+
class Nr {
|
|
555
|
+
parseEntity(a, n) {
|
|
556
|
+
let t = {};
|
|
557
|
+
return this.parser(n, a, t), t;
|
|
558
|
+
}
|
|
559
|
+
constructor() {
|
|
560
|
+
vr(this, "parser", u(Pa, Ma));
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
vr(Nr, "ForEntityName", "POINT");
|
|
564
|
+
(T = {})[T.CLOSED_POLYLINE = 1] = "CLOSED_POLYLINE", T[T.CURVE_FIT = 2] = "CURVE_FIT", T[T.SPLINE_FIT = 4] = "SPLINE_FIT", T[T.POLYLINE_3D = 8] = "POLYLINE_3D", T[T.POLYGON_3D = 16] = "POLYGON_3D", T[T.CLOSED_POLYGON = 32] = "CLOSED_POLYGON", T[T.POLYFACE = 64] = "POLYFACE", T[T.CONTINUOUS = 128] = "CONTINUOUS";
|
|
565
|
+
(U = {})[U.NONE = 0] = "NONE", U[U.QUADRATIC = 5] = "QUADRATIC", U[U.CUBIC = 6] = "CUBIC", U[U.BEZIER = 8] = "BEZIER";
|
|
566
|
+
(x = {})[x.CREATED_BY_CURVE_FIT = 1] = "CREATED_BY_CURVE_FIT", x[x.TANGENT_DEFINED = 2] = "TANGENT_DEFINED", x[x.NOT_USED = 4] = "NOT_USED", x[x.CREATED_BY_SPLINE_FIT = 8] = "CREATED_BY_SPLINE_FIT", x[x.SPLINE_CONTROL_POINT = 16] = "SPLINE_CONTROL_POINT", x[x.FOR_POLYLINE = 32] = "FOR_POLYLINE", x[x.FOR_POLYGON = 64] = "FOR_POLYGON", x[x.POLYFACE = 128] = "POLYFACE";
|
|
567
|
+
function kr(e, a, n) {
|
|
568
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
569
|
+
}
|
|
570
|
+
let _a = { startWidth: 0, endWidth: 0, bulge: 0 }, Ra = [{ code: 91, name: "id", parser: r }, { code: [...ke(71, 75)], name: "faces", isMultiple: !0, parser: r }, { code: 50, name: "tangentDirection", parser: r }, { code: 70, name: "flag", parser: r }, { code: 42, name: "bulge", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 30, name: "z", parser: r }, { code: 20, name: "y", parser: r }, { code: 10, name: "x", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 100 }, ...O];
|
|
571
|
+
class Ar {
|
|
572
|
+
parseEntity(a, n) {
|
|
573
|
+
let t = {};
|
|
574
|
+
return this.parser(n, a, t), t;
|
|
575
|
+
}
|
|
576
|
+
constructor() {
|
|
577
|
+
kr(this, "parser", u(Ra, _a));
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
function Sr(e, a, n) {
|
|
581
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
582
|
+
}
|
|
583
|
+
kr(Ar, "ForEntityName", "VERTEX");
|
|
584
|
+
let Ca = { thickness: 0, flag: 0, startWidth: 0, endWidth: 0, meshMVertexCount: 0, meshNVertexCount: 0, surfaceMDensity: 0, surfaceNDensity: 0, smoothType: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, vertices: [] }, Fa = [{ code: 0, name: "vertices", isMultiple: !0, parser: (e, a) => p(e, 0, "VERTEX") ? (e = a.next(), new Ar().parseEntity(a, e)) : Ye }, { code: 210, name: "extrusionDirection", parser: c }, { code: 75, name: "smoothType", parser: r }, { code: 74, name: "surfaceNDensity", parser: r }, { code: 73, name: "surfaceMDensity", parser: r }, { code: 72, name: "meshNVertexCount", parser: r }, { code: 71, name: "meshMVertexCount", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 70, name: "flag", parser: r }, { code: 39, name: "thickness", parser: r }, { code: 30, name: "elevation", parser: r }, { code: 20 }, { code: 10 }, { code: 66 }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
585
|
+
class Lr {
|
|
586
|
+
parseEntity(a, n) {
|
|
587
|
+
let t = {};
|
|
588
|
+
return this.parser(n, a, t), t;
|
|
589
|
+
}
|
|
590
|
+
constructor() {
|
|
591
|
+
Sr(this, "parser", u(Fa, Ca));
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
function Mr(e, a, n) {
|
|
595
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
596
|
+
}
|
|
597
|
+
Sr(Lr, "ForEntityName", "POLYLINE");
|
|
598
|
+
let wa = { firstPoint: { x: 0, y: 0, z: 1 }, extrusionDirection: { x: 0, y: 0, z: 1 } }, Va = [{ code: 10, name: "firstPoint", parser: c }, { code: 11, name: "unitDirection", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
599
|
+
class Pr {
|
|
600
|
+
parseEntity(a, n) {
|
|
601
|
+
let t = {};
|
|
602
|
+
return this.parser(n, a, t), t;
|
|
603
|
+
}
|
|
604
|
+
constructor() {
|
|
605
|
+
Mr(this, "parser", u(Va, wa));
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
function _r(e, a, n) {
|
|
609
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
610
|
+
}
|
|
611
|
+
Mr(Pr, "ForEntityName", "RAY");
|
|
612
|
+
let Ba = { vertices: [], backLineVertices: [] }, Ha = [{ code: 360, name: "geometrySettingHardId", parser: r }, { code: 12, name: "backLineVertices", isMultiple: !0, parser: c }, { code: 93, name: "numberOfBackLineVertices", parser: r }, { code: 11, name: "vertices", isMultiple: !0, parser: c }, { code: 92, name: "verticesCount", parser: r }, { code: [63, 411], name: "indicatorColor", parser: r }, { code: 70, name: "indicatorTransparency", parser: r }, { code: 41, name: "bottomHeight", parser: r }, { code: 40, name: "topHeight", parser: r }, { code: 10, name: "verticalDirection", parser: c }, { code: 1, name: "name", parser: r }, { code: 91, name: "flag", parser: r }, { code: 90, name: "state", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
613
|
+
class Rr {
|
|
614
|
+
parseEntity(a, n) {
|
|
615
|
+
let t = {};
|
|
616
|
+
return this.parser(n, a, t), t;
|
|
617
|
+
}
|
|
618
|
+
constructor() {
|
|
619
|
+
_r(this, "parser", u(Ha, Ba));
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
function Cr(e, a, n) {
|
|
623
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
624
|
+
}
|
|
625
|
+
_r(Rr, "ForEntityName", "SECTION");
|
|
626
|
+
let Ga = { points: [], thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, Ua = [{ code: 210, name: "extrusionDirection", parser: c }, { code: 39, name: "thickness", parser: r }, { code: [...ke(10, 14)], name: "points", isMultiple: !0, parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
627
|
+
class Fr {
|
|
628
|
+
parseEntity(a, n) {
|
|
629
|
+
let t = {};
|
|
630
|
+
return this.parser(n, a, t), t;
|
|
631
|
+
}
|
|
632
|
+
constructor() {
|
|
633
|
+
Cr(this, "parser", u(Ua, Ga));
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
Cr(Fr, "ForEntityName", "SOLID");
|
|
637
|
+
(L = {})[L.NONE = 0] = "NONE", L[L.CLOSED = 1] = "CLOSED", L[L.PERIODIC = 2] = "PERIODIC", L[L.RATIONAL = 4] = "RATIONAL", L[L.PLANAR = 8] = "PLANAR", L[L.LINEAR = 16] = "LINEAR";
|
|
638
|
+
function wr(e, a, n) {
|
|
639
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
640
|
+
}
|
|
641
|
+
let Wa = { knotTolerance: 1e-6, controlTolerance: 1e-6, fitTolerance: 1e-9, knotValues: [], controlPoints: [], fitPoints: [] }, Ya = [{ code: 11, name: "fitPoints", isMultiple: !0, parser: c }, { code: 10, name: "controlPoints", isMultiple: !0, parser: c }, { code: 41, name: "weights", isMultiple: !0, parser: r }, { code: 40, name: "knots", isMultiple: !0, parser: r }, { code: 13, name: "endTangent", parser: c }, { code: 12, name: "startTangent", parser: c }, { code: 44, name: "fitTolerance", parser: r }, { code: 43, name: "controlTolerance", parser: r }, { code: 42, name: "knotTolerance", parser: r }, { code: 74, name: "numberOfFitPoints", parser: r }, { code: 73, name: "numberOfControlPoints", parser: r }, { code: 72, name: "numberOfKnots", parser: r }, { code: 71, name: "degree", parser: r }, { code: 70, name: "flag", parser: r }, { code: 210, name: "normal", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
642
|
+
class Vr {
|
|
643
|
+
parseEntity(a, n) {
|
|
644
|
+
let t = {};
|
|
645
|
+
return this.parser(n, a, t), t;
|
|
646
|
+
}
|
|
647
|
+
constructor() {
|
|
648
|
+
wr(this, "parser", u(Ya, Wa));
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
wr(Vr, "ForEntityName", "SPLINE");
|
|
652
|
+
class ye {
|
|
653
|
+
parseEntity(a, n) {
|
|
654
|
+
let t = {};
|
|
655
|
+
for (; !a.isEOF(); ) {
|
|
656
|
+
if (n.code === 0) {
|
|
657
|
+
a.rewind();
|
|
658
|
+
break;
|
|
659
|
+
}
|
|
660
|
+
switch (n.code) {
|
|
661
|
+
case 100:
|
|
662
|
+
t.subclassMarker = n.value, n = a.next();
|
|
663
|
+
break;
|
|
664
|
+
case 2:
|
|
665
|
+
t.name = n.value, n = a.next();
|
|
666
|
+
break;
|
|
667
|
+
case 5:
|
|
668
|
+
t.handle = n.value, n = a.next();
|
|
669
|
+
break;
|
|
670
|
+
case 10:
|
|
671
|
+
t.startPoint = j(m(a)), n = a.lastReadGroup;
|
|
672
|
+
break;
|
|
673
|
+
case 11:
|
|
674
|
+
t.directionVector = j(m(a)), n = a.lastReadGroup;
|
|
675
|
+
break;
|
|
676
|
+
case 90:
|
|
677
|
+
t.tableValue = n.value, n = a.next();
|
|
678
|
+
break;
|
|
679
|
+
case 91:
|
|
680
|
+
t.rowCount = n.value, n = a.next();
|
|
681
|
+
break;
|
|
682
|
+
case 92:
|
|
683
|
+
t.columnCount = n.value, n = a.next();
|
|
684
|
+
break;
|
|
685
|
+
case 93:
|
|
686
|
+
t.overrideFlag = n.value, n = a.next();
|
|
687
|
+
break;
|
|
688
|
+
case 94:
|
|
689
|
+
t.borderColorOverrideFlag = n.value, n = a.next();
|
|
690
|
+
break;
|
|
691
|
+
case 95:
|
|
692
|
+
t.borderLineWeightOverrideFlag = n.value, n = a.next();
|
|
693
|
+
break;
|
|
694
|
+
case 96:
|
|
695
|
+
t.borderVisibilityOverrideFlag = n.value, n = a.next();
|
|
696
|
+
break;
|
|
697
|
+
case 141:
|
|
698
|
+
t.rowHeightArr ?? (t.rowHeightArr = []), t.rowHeightArr.push(n.value), n = a.next();
|
|
699
|
+
break;
|
|
700
|
+
case 142:
|
|
701
|
+
t.columnWidthArr ?? (t.columnWidthArr = []), t.columnWidthArr.push(n.value), n = a.next();
|
|
702
|
+
break;
|
|
703
|
+
case 280:
|
|
704
|
+
t.version = n.value, n = a.next();
|
|
705
|
+
break;
|
|
706
|
+
case 310:
|
|
707
|
+
t.bmpPreview ?? (t.bmpPreview = ""), t.bmpPreview += n.value, n = a.next();
|
|
708
|
+
break;
|
|
709
|
+
case 330:
|
|
710
|
+
t.ownerDictionaryId = n.value, n = a.next();
|
|
711
|
+
break;
|
|
712
|
+
case 342:
|
|
713
|
+
t.tableStyleId = n.value, n = a.next();
|
|
714
|
+
break;
|
|
715
|
+
case 343:
|
|
716
|
+
t.blockRecordHandle = n.value, n = a.next();
|
|
717
|
+
break;
|
|
718
|
+
case 170:
|
|
719
|
+
t.attachmentPoint = n.value, n = a.next();
|
|
720
|
+
break;
|
|
721
|
+
case 171:
|
|
722
|
+
t.cells ?? (t.cells = []), t.cells.push(function(o, s) {
|
|
723
|
+
let i = !1, k = !1, d = {};
|
|
724
|
+
for (; !o.isEOF() && s.code !== 0 && !k; ) switch (s.code) {
|
|
725
|
+
case 171:
|
|
726
|
+
if (i) {
|
|
727
|
+
k = !0;
|
|
728
|
+
continue;
|
|
729
|
+
}
|
|
730
|
+
d.cellType = s.value, i = !0, s = o.next();
|
|
731
|
+
break;
|
|
732
|
+
case 172:
|
|
733
|
+
d.flagValue = s.value, s = o.next();
|
|
734
|
+
break;
|
|
735
|
+
case 173:
|
|
736
|
+
d.mergedValue = s.value, s = o.next();
|
|
737
|
+
break;
|
|
738
|
+
case 174:
|
|
739
|
+
d.autoFit = s.value, s = o.next();
|
|
740
|
+
break;
|
|
741
|
+
case 175:
|
|
742
|
+
d.borderWidth = s.value, s = o.next();
|
|
743
|
+
break;
|
|
744
|
+
case 176:
|
|
745
|
+
d.borderHeight = s.value, s = o.next();
|
|
746
|
+
break;
|
|
747
|
+
case 91:
|
|
748
|
+
d.overrideFlag = s.value, s = o.next();
|
|
749
|
+
break;
|
|
750
|
+
case 178:
|
|
751
|
+
d.virtualEdgeFlag = s.value, s = o.next();
|
|
752
|
+
break;
|
|
753
|
+
case 145:
|
|
754
|
+
d.rotation = s.value, s = o.next();
|
|
755
|
+
break;
|
|
756
|
+
case 345:
|
|
757
|
+
d.fieldObjetId = s.value, s = o.next();
|
|
758
|
+
break;
|
|
759
|
+
case 340:
|
|
760
|
+
d.blockTableRecordId = s.value, s = o.next();
|
|
761
|
+
break;
|
|
762
|
+
case 146:
|
|
763
|
+
d.blockScale = s.value, s = o.next();
|
|
764
|
+
break;
|
|
765
|
+
case 177:
|
|
766
|
+
d.blockAttrNum = s.value, s = o.next();
|
|
767
|
+
break;
|
|
768
|
+
case 7:
|
|
769
|
+
d.textStyle = s.value, s = o.next();
|
|
770
|
+
break;
|
|
771
|
+
case 140:
|
|
772
|
+
d.textHeight = s.value, s = o.next();
|
|
773
|
+
break;
|
|
774
|
+
case 170:
|
|
775
|
+
d.attachmentPoint = s.value, s = o.next();
|
|
776
|
+
break;
|
|
777
|
+
case 92:
|
|
778
|
+
d.extendedCellFlags = s.value, s = o.next();
|
|
779
|
+
break;
|
|
780
|
+
case 285:
|
|
781
|
+
d.rightBorderVisibility = !!(s.value ?? !0), s = o.next();
|
|
782
|
+
break;
|
|
783
|
+
case 286:
|
|
784
|
+
d.bottomBorderVisibility = !!(s.value ?? !0), s = o.next();
|
|
785
|
+
break;
|
|
786
|
+
case 288:
|
|
787
|
+
d.leftBorderVisibility = !!(s.value ?? !0), s = o.next();
|
|
788
|
+
break;
|
|
789
|
+
case 289:
|
|
790
|
+
d.topBorderVisibility = !!(s.value ?? !0), s = o.next();
|
|
791
|
+
break;
|
|
792
|
+
case 301:
|
|
793
|
+
(function(D, M, I) {
|
|
794
|
+
for (; I.code !== 304; ) switch (I.code) {
|
|
795
|
+
case 301:
|
|
796
|
+
case 93:
|
|
797
|
+
case 90:
|
|
798
|
+
case 94:
|
|
799
|
+
I = M.next();
|
|
800
|
+
break;
|
|
801
|
+
case 1:
|
|
802
|
+
D.text = I.value, I = M.next();
|
|
803
|
+
break;
|
|
804
|
+
case 300:
|
|
805
|
+
D.attrText = I.value, I = M.next();
|
|
806
|
+
break;
|
|
807
|
+
case 302:
|
|
808
|
+
D.text = I.value ? I.value : D.text, I = M.next();
|
|
809
|
+
break;
|
|
810
|
+
default:
|
|
811
|
+
console.log(`Ignore code: ${I.code}, value: ${I.value}`), I = M.next();
|
|
812
|
+
}
|
|
813
|
+
})(d, o, s), s = o.next();
|
|
814
|
+
break;
|
|
815
|
+
default:
|
|
816
|
+
return d;
|
|
817
|
+
}
|
|
818
|
+
return i = !1, k = !1, d;
|
|
819
|
+
}(a, n)), n = a.lastReadGroup;
|
|
820
|
+
break;
|
|
821
|
+
default:
|
|
822
|
+
je(t, n, a), n = a.next();
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
return t;
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
Ve = "ACAD_TABLE", (we = "ForEntityName") in ye ? Object.defineProperty(ye, we, { value: Ve, enumerable: !0, configurable: !0, writable: !0 }) : ye[we] = Ve;
|
|
829
|
+
class ve {
|
|
830
|
+
parseEntity(a, n) {
|
|
831
|
+
let t = {};
|
|
832
|
+
for (; n !== "EOF"; ) {
|
|
833
|
+
if (n.code === 0) {
|
|
834
|
+
a.rewind();
|
|
835
|
+
break;
|
|
836
|
+
}
|
|
837
|
+
!function(o, s, i) {
|
|
838
|
+
if (i === "EOF") return !1;
|
|
839
|
+
switch (i.code) {
|
|
840
|
+
case 0:
|
|
841
|
+
default:
|
|
842
|
+
return !1;
|
|
843
|
+
case 100:
|
|
844
|
+
o.subclassMarker = i.value;
|
|
845
|
+
break;
|
|
846
|
+
case 10:
|
|
847
|
+
o.viewportCenter = j(m(s));
|
|
848
|
+
break;
|
|
849
|
+
case 40:
|
|
850
|
+
o.width = i.value;
|
|
851
|
+
break;
|
|
852
|
+
case 41:
|
|
853
|
+
o.height = i.value;
|
|
854
|
+
break;
|
|
855
|
+
case 68:
|
|
856
|
+
o.status = i.value;
|
|
857
|
+
break;
|
|
858
|
+
case 69:
|
|
859
|
+
o.viewportId = i.value;
|
|
860
|
+
break;
|
|
861
|
+
case 12:
|
|
862
|
+
o.displayCenter = m(s);
|
|
863
|
+
break;
|
|
864
|
+
case 13:
|
|
865
|
+
o.snapBase = m(s);
|
|
866
|
+
break;
|
|
867
|
+
case 14:
|
|
868
|
+
o.snapSpacing = m(s);
|
|
869
|
+
break;
|
|
870
|
+
case 15:
|
|
871
|
+
o.gridSpacing = m(s);
|
|
872
|
+
break;
|
|
873
|
+
case 16:
|
|
874
|
+
o.viewDirection = j(m(s));
|
|
875
|
+
break;
|
|
876
|
+
case 17:
|
|
877
|
+
o.targetPoint = j(m(s));
|
|
878
|
+
break;
|
|
879
|
+
case 42:
|
|
880
|
+
o.perspectiveLensLength = i.value;
|
|
881
|
+
break;
|
|
882
|
+
case 43:
|
|
883
|
+
o.frontClipZ = i.value;
|
|
884
|
+
break;
|
|
885
|
+
case 44:
|
|
886
|
+
o.backClipZ = i.value;
|
|
887
|
+
break;
|
|
888
|
+
case 45:
|
|
889
|
+
o.viewHeight = i.value;
|
|
890
|
+
break;
|
|
891
|
+
case 50:
|
|
892
|
+
o.snapAngle = i.value;
|
|
893
|
+
break;
|
|
894
|
+
case 51:
|
|
895
|
+
o.viewTwistAngle = i.value;
|
|
896
|
+
break;
|
|
897
|
+
case 72:
|
|
898
|
+
o.circleZoomPercent = i.value;
|
|
899
|
+
break;
|
|
900
|
+
case 331:
|
|
901
|
+
o.frozenLayerIds ?? (o.frozenLayerIds = []), o.frozenLayerIds.push(i.value);
|
|
902
|
+
break;
|
|
903
|
+
case 90:
|
|
904
|
+
o.statusBitFlags = i.value;
|
|
905
|
+
break;
|
|
906
|
+
case 330:
|
|
907
|
+
o.ownerBlockRecordSoftId = i.value;
|
|
908
|
+
break;
|
|
909
|
+
case 340:
|
|
910
|
+
o.clippingBoundaryId = i.value;
|
|
911
|
+
break;
|
|
912
|
+
case 1:
|
|
913
|
+
o.sheetName = i.value;
|
|
914
|
+
break;
|
|
915
|
+
case 281:
|
|
916
|
+
o.renderMode = i.value;
|
|
917
|
+
break;
|
|
918
|
+
case 71:
|
|
919
|
+
o.ucsPerViewport = i.value;
|
|
920
|
+
break;
|
|
921
|
+
case 110:
|
|
922
|
+
o.ucsOrigin = j(m(s));
|
|
923
|
+
break;
|
|
924
|
+
case 111:
|
|
925
|
+
o.ucsXAxis = j(m(s));
|
|
926
|
+
break;
|
|
927
|
+
case 112:
|
|
928
|
+
o.ucsYAxis = j(m(s));
|
|
929
|
+
break;
|
|
930
|
+
case 345:
|
|
931
|
+
o.ucsId = i.value;
|
|
932
|
+
break;
|
|
933
|
+
case 346:
|
|
934
|
+
o.ucsBaseId = i.value;
|
|
935
|
+
break;
|
|
936
|
+
case 79:
|
|
937
|
+
o.orthographicType = i.value;
|
|
938
|
+
break;
|
|
939
|
+
case 146:
|
|
940
|
+
o.elevation = i.value;
|
|
941
|
+
break;
|
|
942
|
+
case 170:
|
|
943
|
+
o.shadePlotMode = i.value;
|
|
944
|
+
break;
|
|
945
|
+
case 61:
|
|
946
|
+
o.majorGridFrequency = i.value;
|
|
947
|
+
break;
|
|
948
|
+
case 332:
|
|
949
|
+
o.backgroundId = i.value;
|
|
950
|
+
break;
|
|
951
|
+
case 333:
|
|
952
|
+
o.shadePlotId = i.value;
|
|
953
|
+
break;
|
|
954
|
+
case 348:
|
|
955
|
+
o.visualStyleId = i.value;
|
|
956
|
+
break;
|
|
957
|
+
case 292:
|
|
958
|
+
o.isDefaultLighting = !!i.value;
|
|
959
|
+
break;
|
|
960
|
+
case 282:
|
|
961
|
+
o.defaultLightingType = i.value;
|
|
962
|
+
break;
|
|
963
|
+
case 141:
|
|
964
|
+
o.brightness = i.value;
|
|
965
|
+
break;
|
|
966
|
+
case 142:
|
|
967
|
+
o.contrast = i.value;
|
|
968
|
+
break;
|
|
969
|
+
case 63:
|
|
970
|
+
case 421:
|
|
971
|
+
case 431:
|
|
972
|
+
o.ambientLightColor = i.value;
|
|
973
|
+
break;
|
|
974
|
+
case 361:
|
|
975
|
+
o.sunId = i.value;
|
|
976
|
+
break;
|
|
977
|
+
case 335:
|
|
978
|
+
case 343:
|
|
979
|
+
case 344:
|
|
980
|
+
case 91:
|
|
981
|
+
o.softPointer = i.value;
|
|
982
|
+
}
|
|
983
|
+
return !0;
|
|
984
|
+
}(t, a, n) && je(t, n, a), n = a.next();
|
|
985
|
+
}
|
|
986
|
+
return t;
|
|
987
|
+
}
|
|
988
|
+
}
|
|
989
|
+
He = "VIEWPORT", (Be = "ForEntityName") in ve ? Object.defineProperty(ve, Be, { value: He, enumerable: !0, configurable: !0, writable: !0 }) : ve[Be] = He;
|
|
990
|
+
class Ne extends ze {
|
|
991
|
+
parseEntity(a, n) {
|
|
992
|
+
return super.parseEntity(a, n);
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
function Br(e, a, n) {
|
|
996
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
997
|
+
}
|
|
998
|
+
Ue = "WIPEOUT", (Ge = "ForEntityName") in Ne ? Object.defineProperty(Ne, Ge, { value: Ue, enumerable: !0, configurable: !0, writable: !0 }) : Ne[Ge] = Ue;
|
|
999
|
+
let ja = { firstPoint: { x: 0, y: 0, z: 1 }, extrusionDirection: { x: 0, y: 0, z: 1 } }, za = [{ code: 10, name: "firstPoint", parser: c }, { code: 11, name: "unitDirection", parser: c }, { code: 100, name: "subclassMarker", parser: r }, ...O];
|
|
1000
|
+
class Hr {
|
|
1001
|
+
parseEntity(a, n) {
|
|
1002
|
+
let t = {};
|
|
1003
|
+
return this.parser(n, a, t), t;
|
|
1004
|
+
}
|
|
1005
|
+
constructor() {
|
|
1006
|
+
Br(this, "parser", u(za, ja));
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1009
|
+
function Gr(e, a, n) {
|
|
1010
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
1011
|
+
}
|
|
1012
|
+
Br(Hr, "ForEntityName", "XLINE");
|
|
1013
|
+
let Xa = { thickness: 0, rotation: 0, scale: 1, obliqueAngle: 0, textStyle: "STANDARD", textGenerationFlag: 0, horizontalJustification: 0, verticalJustification: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, Ka = [...xe.slice(xe.findIndex(({ name: e }) => e === "columnType"), xe.findIndex(({ name: e }) => e === "subclassMarker") + 1), { code: 100 }, { code: 0, parser(e) {
|
|
1014
|
+
if (!p(e, 0, "MTEXT")) return Ye;
|
|
1015
|
+
} }, { code: 2, name: "definitionTag", parser: r }, { code: 40, name: "annotationScale", parser: r }, { code: 10, name: "alignmentPoint", parser: c }, { code: 340, name: "secondaryAttributesHardId", parser: r }, { code: 70, name: "numberOfSecondaryAttributes", parser: r }, { code: 70, name: "isReallyLocked", parser: b }, { code: 70, name: "mtextFlag", parser: r }, { code: 280, name: "isDuplicatedEntriesKeep", parser: b }, { code: 100 }, { code: 280, name: "lockPositionFlag", parser: b }, { code: 210, name: "extrusionDirection", parser: c }, { code: 11, name: "alignmentPoint", parser: c }, { code: 74, name: "verticalJustification", parser: r }, { code: 72, name: "horizontalJustification", parser: r }, { code: 71, name: "textGenerationFlag", parser: r }, { code: 7, name: "textStyle", parser: r }, { code: 51, name: "obliqueAngle", parser: r }, { code: 41, name: "scale", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 73 }, { code: 70, name: "attributeFlag", parser: r }, { code: 2, name: "tag", parser: r }, { code: 280 }, { code: 100, name: "subclassMarker", parser: r }, { code: 1, name: "text", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 10, name: "startPoint", parser: c }, { code: 39, name: "thickness", parser: r }, { code: 100 }, ...O];
|
|
1016
|
+
class Ur {
|
|
1017
|
+
parseEntity(a, n) {
|
|
1018
|
+
let t = {};
|
|
1019
|
+
return this.parser(n, a, t), t;
|
|
1020
|
+
}
|
|
1021
|
+
constructor() {
|
|
1022
|
+
Gr(this, "parser", u(Ka, Xa));
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
Gr(Ur, "ForEntityName", "ATTRIB");
|
|
1026
|
+
let Za = Object.fromEntries([ar, ir, Ur, dr, ge, pr, ze, Or, hr, Tr, Te, yr, Nr, Lr, Pr, Rr, Fr, Vr, ye, sr, br, ve, Ne, Hr].map((e) => [e.ForEntityName, new e()]));
|
|
1027
|
+
function Wr(e, a) {
|
|
1028
|
+
let n = [];
|
|
1029
|
+
for (; !p(e, 0, "EOF"); ) {
|
|
1030
|
+
if (e.code === 0) {
|
|
1031
|
+
if (e.value === "ENDBLK" || e.value === "ENDSEC") {
|
|
1032
|
+
a.rewind();
|
|
1033
|
+
break;
|
|
1034
|
+
}
|
|
1035
|
+
let t = Za[e.value];
|
|
1036
|
+
if (t) {
|
|
1037
|
+
let o = e.value;
|
|
1038
|
+
e = a.next();
|
|
1039
|
+
let s = t.parseEntity(a, e);
|
|
1040
|
+
s.type = o, er(s), n.push(s);
|
|
1041
|
+
} else console.warn(`Unsupported ENTITY type: ${e.value}`);
|
|
1042
|
+
}
|
|
1043
|
+
e = a.next();
|
|
1044
|
+
}
|
|
1045
|
+
return n;
|
|
1046
|
+
}
|
|
1047
|
+
function Ja(e, a) {
|
|
1048
|
+
let n = {};
|
|
1049
|
+
for (; !p(e, 0, "EOF") && !p(e, 0, "ENDSEC"); ) {
|
|
1050
|
+
if (p(e, 0, "BLOCK")) {
|
|
1051
|
+
let t = $a(e = a.next(), a);
|
|
1052
|
+
er(t), t.name && (n[t.name] = t);
|
|
1053
|
+
}
|
|
1054
|
+
e = a.next();
|
|
1055
|
+
}
|
|
1056
|
+
return n;
|
|
1057
|
+
}
|
|
1058
|
+
function $a(e, a) {
|
|
1059
|
+
let n = {};
|
|
1060
|
+
for (; !p(e, 0, "EOF"); ) {
|
|
1061
|
+
if (p(e, 0, "ENDBLK")) {
|
|
1062
|
+
for (e = a.next(); !p(e, 0, "EOF"); ) {
|
|
1063
|
+
if (p(e, 100, "AcDbBlockEnd")) return n;
|
|
1064
|
+
e = a.next();
|
|
1065
|
+
}
|
|
1066
|
+
break;
|
|
1067
|
+
}
|
|
1068
|
+
switch (e.code) {
|
|
1069
|
+
case 1:
|
|
1070
|
+
n.xrefPath = e.value;
|
|
1071
|
+
break;
|
|
1072
|
+
case 2:
|
|
1073
|
+
n.name = e.value;
|
|
1074
|
+
break;
|
|
1075
|
+
case 3:
|
|
1076
|
+
n.name2 = e.value;
|
|
1077
|
+
break;
|
|
1078
|
+
case 5:
|
|
1079
|
+
n.handle = e.value;
|
|
1080
|
+
break;
|
|
1081
|
+
case 8:
|
|
1082
|
+
n.layer = e.value;
|
|
1083
|
+
break;
|
|
1084
|
+
case 10:
|
|
1085
|
+
n.position = m(a);
|
|
1086
|
+
break;
|
|
1087
|
+
case 67:
|
|
1088
|
+
n.paperSpace = !!e.value && e.value == 1;
|
|
1089
|
+
break;
|
|
1090
|
+
case 70:
|
|
1091
|
+
e.value !== 0 && (n.type = e.value);
|
|
1092
|
+
break;
|
|
1093
|
+
case 100:
|
|
1094
|
+
break;
|
|
1095
|
+
case 330:
|
|
1096
|
+
n.ownerHandle = e.value;
|
|
1097
|
+
break;
|
|
1098
|
+
case 0:
|
|
1099
|
+
n.entities = Wr(e, a);
|
|
1100
|
+
}
|
|
1101
|
+
e = a.next();
|
|
1102
|
+
}
|
|
1103
|
+
return n;
|
|
1104
|
+
}
|
|
1105
|
+
function qa(e, a) {
|
|
1106
|
+
let n = null, t = {};
|
|
1107
|
+
for (; !p(e, 0, "EOF") && !p(e, 0, "ENDSEC"); ) e.code === 9 ? n = e.value : e.code === 10 ? t[n] = m(a) : t[n] = e.value, e = a.next();
|
|
1108
|
+
return t;
|
|
1109
|
+
}
|
|
1110
|
+
let Qa = [{ code: 330, name: "imageDefReactorIdSoft", isMultiple: !0, parser: r }, { code: 90, name: "version", parser: r }, { code: 1, name: "fileName", parser: r }, { code: 10, name: "size", parser: c }, { code: 11, name: "sizeOfOnePixel", parser: c }, { code: 280, name: "isLoaded", parser: r }, { code: 281, name: "resolutionUnits", parser: r }, { code: 100, name: "subclassMarker", parser: r }], Yr = [{ code: 333, name: "shadePlotId", parser: r }, { code: 149, name: "imageOriginY", parser: r }, { code: 148, name: "imageOriginX", parser: r }, { code: 147, name: "scaleFactor", parser: r }, { code: 78, name: "shadePlotCustomDPI", parser: r }, { code: 77, name: "shadePlotResolution", parser: r }, { code: 76, name: "shadePlotMode", parser: r }, { code: 75, name: "standardScaleType", parser: r }, { code: 7, name: "currentStyleSheet", parser: r }, { code: 74, name: "plotType", parser: r }, { code: 73, name: "plotRotation", parser: r }, { code: 72, name: "paperUnit", parser: r }, { code: 70, name: "layoutFlag", parser: r }, { code: 143, name: "printScaleDenominator", parser: r }, { code: 142, name: "printScaleNominator", parser: r }, { code: 141, name: "windowAreaYMax", parser: r }, { code: 140, name: "windowAreaYMin", parser: r }, { code: 49, name: "windowAreaXMax", parser: r }, { code: 48, name: "windowAreaXMin", parser: r }, { code: 47, name: "plotOriginY", parser: r }, { code: 46, name: "plotOriginX", parser: r }, { code: 45, name: "paperHeight", parser: r }, { code: 44, name: "paperWidth", parser: r }, { code: 43, name: "marginTop", parser: r }, { code: 42, name: "marginRight", parser: r }, { code: 41, name: "marginBottom", parser: r }, { code: 40, name: "marginLeft", parser: r }, { code: 6, name: "plotViewName", parser: r }, { code: 4, name: "paperSize", parser: r }, { code: 2, name: "configName", parser: r }, { code: 1, name: "pageSetupName", parser: r }, { code: 100, name: "subclassMarker", parser: r }], en = [{ code: 333, name: "shadePlotId", parser: r }, { code: 346, name: "orthographicUcsId", parser: r }, { code: 345, name: "namedUcsId", parser: r }, { code: 331, name: "viewportId", parser: r }, { code: 330, name: "paperSpaceTableId", parser: r }, { code: 76, name: "orthographicType", parser: r }, { code: 17, name: "ucsYAxis", parser: c }, { code: 16, name: "ucsXAxis", parser: c }, { code: 13, name: "ucsOrigin", parser: c }, { code: 146, name: "elevation", parser: r }, { code: 15, name: "maxExtent", parser: c }, { code: 14, name: "minExtent", parser: c }, { code: 12, name: "insertionBase", parser: c }, { code: 11, name: "maxLimit", parser: c }, { code: 10, name: "minLimit", parser: c }, { code: 71, name: "tabOrder", parser: r }, { code: 70, name: "controlFlag", parser: r }, { code: 1, name: "layoutName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...Yr], rn = [{ code: 330, name: "ownerObjectId", parser: r }, { code: 102 }, { code: 360, name: "ownerDictionaryIdHard", parser: r }, { code: 102 }, { code: 102 }, { code: 330, name: "ownerDictionaryIdSoft", parser: r }, { code: 102 }, { code: 102 }, { code: 102 }, { code: 5, name: "handle", parser: r }];
|
|
1111
|
+
function Ze(e) {
|
|
1112
|
+
return e.subclassMarker === "AcDbDictionary";
|
|
1113
|
+
}
|
|
1114
|
+
let an = { LAYOUT: en, PLOTSETTINGS: Yr, DICTIONARY: [{ code: 3, name: "entries", parser: (e, a) => {
|
|
1115
|
+
let n = { name: e.value };
|
|
1116
|
+
return (e = a.next()).code === 350 ? n.objectId = e.value : a.rewind(), n;
|
|
1117
|
+
}, isMultiple: !0 }, { code: 281, name: "recordCloneFlag", parser: r }, { code: 280, name: "isHardOwned", parser: b }, { code: 100, name: "subclassMarker", parser: r }], IMAGEDEF: Qa };
|
|
1118
|
+
function nn(e, a) {
|
|
1119
|
+
let n = [];
|
|
1120
|
+
for (; e.code !== 0 || !["EOF", "ENDSEC"].includes(e.value); ) {
|
|
1121
|
+
let t = e.value, o = an[t];
|
|
1122
|
+
if (e.code === 0 && (o != null && o.length)) {
|
|
1123
|
+
let s = u([...rn, ...o]), i = { name: t };
|
|
1124
|
+
s(e = a.next(), a, i) ? (n.push(i), e = a.peek()) : e = a.next();
|
|
1125
|
+
} else e = a.next();
|
|
1126
|
+
}
|
|
1127
|
+
return { byName: Sa(n, ({ name: t }) => t), byTree: function(t) {
|
|
1128
|
+
let o = Object.fromEntries(t.map((s) => [s.handle, s]));
|
|
1129
|
+
for (let s of t) (!Ze(s) || s.ownerDictionaryIdSoft !== "0") && (s.ownerDictionaryIdSoft && (s.ownerDictionarySoft = o[s.ownerDictionaryIdSoft]), s.ownerDictionaryIdHard && (s.ownerDictionaryHard = o[s.ownerDictionaryIdHard]), s.ownerObjectId && (s.ownerObject = o[s.ownerObjectId])), function(i, k) {
|
|
1130
|
+
Ze(i) && i.entries && (i.entries = Object.fromEntries(i.entries.map(({ name: d, objectId: D }) => [d, k[D]])));
|
|
1131
|
+
}(s, o);
|
|
1132
|
+
return t[0];
|
|
1133
|
+
}(n) };
|
|
1134
|
+
}
|
|
1135
|
+
let re = [{ code: 100, name: "subclassMarker", parser: r }, { code: 330, name: "ownerObjectId", parser: r }, { code: 102, parser(e, a) {
|
|
1136
|
+
for (; !p(e, 0, "EOF") && !p(e, 102, "}"); ) e = a.next();
|
|
1137
|
+
} }, { code: 5, name: "handle", parser: r }], tn = u([{ code: 310, name: "bmpPreview", parser: r }, { code: 281, name: "scalability", parser: r }, { code: 280, name: "explodability", parser: r }, { code: 70, name: "insertionUnits", parser: r }, { code: 340, name: "layoutObjects", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...re]), on = u([...[{ name: "DIMPOST", code: 3 }, { name: "DIMAPOST", code: 4 }, { name: "DIMBLK_OBSOLETE", code: 5 }, { name: "DIMBLK1_OBSOLETE", code: 6 }, { name: "DIMBLK2_OBSOLETE", code: 7 }, { name: "DIMSCALE", code: 40, defaultValue: 1 }, { name: "DIMASZ", code: 41, defaultValue: 0.25 }, { name: "DIMEXO", code: 42, defaultValue: 0.625, defaultValueImperial: 0.0625 }, { name: "DIMDLI", code: 43, defaultValue: 3.75, defaultValueImperial: 0.38 }, { name: "DIMEXE", code: 44, defaultValue: 2.25, defaultValueImperial: 0.28 }, { name: "DIMRND", code: 45, defaultValue: 0 }, { name: "DIMDLE", code: 46, defaultValue: 0 }, { name: "DIMTP", code: 47, defaultValue: 0 }, { name: "DIMTM", code: 48, defaultValue: 0 }, { name: "DIMTXT", code: 140, defaultValue: 2.5, defaultValueImperial: 0.28 }, { name: "DIMCEN", code: 141, defaultValue: 2.5, defaultValueImperial: 0.09 }, { name: "DIMTSZ", code: 142, defaultValue: 0 }, { name: "DIMALTF", code: 143, defaultValue: 25.4 }, { name: "DIMLFAC", code: 144, defaultValue: 1 }, { name: "DIMTVP", code: 145, defaultValue: 0 }, { name: "DIMTFAC", code: 146, defaultValue: 1 }, { name: "DIMGAP", code: 147, defaultValue: 0.625, defaultValueImperial: 0.09 }, { name: "DIMALTRND", code: 148, defaultValue: 0 }, { name: "DIMTOL", code: 71, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMLIM", code: 72, defaultValue: 0 }, { name: "DIMTIH", code: 73, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMTOH", code: 74, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMSE1", code: 75, defaultValue: 0 }, { name: "DIMSE2", code: 76, defaultValue: 0 }, { name: "DIMTAD", code: 77, defaultValue: Xe.Above, defaultValueImperial: Xe.Center }, { name: "DIMZIN", code: 78, defaultValue: ee.Trailing, defaultValueImperial: ee.Feet }, { name: "DIMAZIN", code: 79, defaultValue: jr.None }, { name: "DIMALT", code: 170, defaultValue: 0 }, { name: "DIMALTD", code: 171, defaultValue: 3, defaultValueImperial: 2 }, { name: "DIMTOFL", code: 172, defaultValue: 1, defaultValueImperial: 0 }, { name: "DIMSAH", code: 173, defaultValue: 0 }, { name: "DIMTIX", code: 174, defaultValue: 0 }, { name: "DIMSOXD", code: 175, defaultValue: 0 }, { name: "DIMCLRD", code: 176, defaultValue: 0 }, { name: "DIMCLRE", code: 177, defaultValue: 0 }, { name: "DIMCLRT", code: 178, defaultValue: 0 }, { name: "DIMADEC", code: 179 }, { name: "DIMUNIT", code: 270 }, { name: "DIMDEC", code: 271, defaultValue: 2, defaultValueImperial: 4 }, { name: "DIMTDEC", code: 272, defaultValue: 2, defaultValueImperial: 4 }, { name: "DIMALTU", code: 273, defaultValue: 2 }, { name: "DIMALTTD", code: 274, defaultValue: 2, defaultValueImperial: 4 }, { name: "DIMAUNIT", code: 275, defaultValue: 0 }, { name: "DIMFRAC", code: 276, defaultValue: 0 }, { name: "DIMLUNIT", code: 277, defaultValue: 2 }, { name: "DIMDSEP", code: 278, defaultValue: ",", defaultValueImperial: "." }, { name: "DIMJUST", code: 280, defaultValue: zr.Center }, { name: "DIMSD1", code: 281, defaultValue: 0 }, { name: "DIMSD2", code: 282, defaultValue: 0 }, { name: "DIMTOLJ", code: 283, defaultValue: Xr.Center }, { name: "DIMTZIN", code: 284, defaultValue: ee.Trailing, defaultValueImperial: ee.Feet }, { name: "DIMALTZ", code: 285, defaultValue: ee.Trailing }, { name: "DIMALTTZ", code: 286, defaultValue: ee.Trailing }, { name: "DIMFIT", code: 287 }, { name: "DIMUPT", code: 288, defaultValue: 0 }, { name: "DIMATFIT", code: 289, defaultValue: 3 }, { name: "DIMTXSTY", code: 340 }, { name: "DIMLDRBLK", code: 341 }, { name: "DIMBLK", code: 342 }, { name: "DIMBLK1", code: 343 }, { name: "DIMBLK2", code: 344 }, { name: "DIMLWD", code: 371, defaultValue: -2 }, { name: "DIMLWD", code: 372, defaultValue: -2 }].map((e) => ({ ...e, parser: r })), { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 105, name: "handle", parser: r }, ...re.filter((e) => e.code !== 5)]), sn = u([{ code: 347, name: "materialObjectId", parser: r }, { code: 390, name: "plotStyleNameObjectId", parser: r }, { code: 370, name: "lineweight", parser: r }, { code: 290, name: "isPlotting", parser: b }, { code: 6, name: "lineType", parser: r }, { code: 62, name: "colorIndex", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...re]), cn = u([{ code: 9, name: "text", parser: r }, { code: 45, name: "offsetY", parser: r }, { code: 44, name: "offsetX", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 46, name: "scale", parser: r }, { code: 340, name: "styleObjectId", parser: r }, { code: 75, name: "shapeNumber", parser: r }, { code: 74, name: "elementTypeFlag", parser: r }, { code: 49, name: "elementLength", parser: r }], { elementTypeFlag: 0, elementLength: 0 }), ln = { BLOCK_RECORD: tn, DIMSTYLE: on, LAYER: sn, LTYPE: u([{ code: 49, name: "pattern", parser(e, a) {
|
|
1138
|
+
let n = {};
|
|
1139
|
+
return cn(e, a, n), n;
|
|
1140
|
+
}, isMultiple: !0 }, { code: 40, name: "totalPatternLength", parser: r }, { code: 73, name: "numberOfLineTypes", parser: r }, { code: 72, parser: r }, { code: 3, name: "description", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...re]), STYLE: u([{ code: 1e3, name: "extendedFont", parser: r }, { code: 1001 }, { code: 4, name: "bigFont", parser: r }, { code: 3, name: "font", parser: r }, { code: 42, name: "lastHeight", parser: r }, { code: 71, name: "textGenerationFlag", parser: r }, { code: 50, name: "obliqueAngle", parser: r }, { code: 41, name: "widthFactor", parser: r }, { code: 40, name: "fixedTextHeight", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...re]), VPORT: u([{ code: [63, 421, 431], name: "ambientColor", parser: r }, { code: 142, name: "contrast", parser: r }, { code: 141, name: "brightness", parser: r }, { code: 282, name: "defaultLightingType", parser: r }, { code: 292, name: "isDefaultLightingOn", parser: b }, { code: 348, name: "visualStyleObjectId", parser: r }, { code: 333, name: "shadePlotObjectId", parser: r }, { code: 332, name: "backgroundObjectId", parser: r }, { code: 61, name: "majorGridLines", parser: r }, { code: 170, name: "shadePlotSetting", parser: r }, { code: 146, name: "elevation", parser: r }, { code: 79, name: "orthographicType", parser: r }, { code: 112, name: "ucsYAxis", parser: c }, { code: 111, name: "ucsXAxis", parser: c }, { code: 110, name: "ucsOrigin", parser: c }, { code: 74, name: "ucsIconSetting", parser: r }, { code: 71, name: "viewMode", parser: r }, { code: 281, name: "renderMode", parser: r }, { code: 1, name: "styleSheet", parser: r }, { code: [331, 441], name: "frozenLayers", parser: r, isMultiple: !0 }, { code: 72, name: "circleSides", parser: r }, { code: 51, name: "viewTwistAngle", parser: r }, { code: 50, name: "snapRotationAngle", parser: r }, { code: 45, name: "viewHeight", parser: r }, { code: 44, name: "backClippingPlane", parser: r }, { code: 43, name: "frontClippingPlane", parser: r }, { code: 42, name: "lensLength", parser: r }, { code: 17, name: "viewTarget", parser: c }, { code: 16, name: "viewDirectionFromTarget", parser: c }, { code: 15, name: "gridSpacing", parser: c }, { code: 14, name: "snapSpacing", parser: c }, { code: 13, name: "snapBasePoint", parser: c }, { code: 12, name: "center", parser: c }, { code: 11, name: "upperRightCorner", parser: c }, { code: 10, name: "lowerLeftCorner", parser: c }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...re]) }, dn = u([{ code: 70, name: "maxNumberOfEntries", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 330, name: "ownerObjectId", parser: r }, { code: 102 }, { code: 360, isMultiple: !0 }, { code: 102 }, { code: 5, name: "handle", parser: r }, { code: 2, name: "name", parser: r }]);
|
|
1141
|
+
function un(e, a) {
|
|
1142
|
+
var t;
|
|
1143
|
+
let n = {};
|
|
1144
|
+
for (; !p(e, 0, "EOF") && !p(e, 0, "ENDSEC"); ) {
|
|
1145
|
+
if (p(e, 0, "TABLE")) {
|
|
1146
|
+
e = a.next();
|
|
1147
|
+
let o = { entries: [] };
|
|
1148
|
+
dn(e, a, o), n[o.name] = o;
|
|
1149
|
+
}
|
|
1150
|
+
if (p(e, 0) && !p(e, 0, "ENDTAB")) {
|
|
1151
|
+
let o = e.value;
|
|
1152
|
+
e = a.next();
|
|
1153
|
+
let s = ln[o];
|
|
1154
|
+
if (!s) {
|
|
1155
|
+
console.warn(`parseTable: Invalid table name '${o}'`), e = a.next();
|
|
1156
|
+
continue;
|
|
1157
|
+
}
|
|
1158
|
+
let i = {};
|
|
1159
|
+
s(e, a, i), (t = n[o]) == null || t.entries.push(i);
|
|
1160
|
+
}
|
|
1161
|
+
e = a.next();
|
|
1162
|
+
}
|
|
1163
|
+
return n;
|
|
1164
|
+
}
|
|
1165
|
+
function De(e, a, n) {
|
|
1166
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
1167
|
+
}
|
|
1168
|
+
class Je {
|
|
1169
|
+
next() {
|
|
1170
|
+
if (!this.hasNext()) return this._eof ? console.warn("Cannot call 'next' after EOF group has been read") : console.warn("Unexpected end of input: EOF group not read before end of file. Ended on code " + this._data[this._pointer]), { code: 0, value: "EOF" };
|
|
1171
|
+
let a = parseInt(this._data[this._pointer++], 10), n = $e(a, this._data[this._pointer++]), t = { code: a, value: n };
|
|
1172
|
+
return p(t, 0, "EOF") && (this._eof = !0), this.lastReadGroup = t, t;
|
|
1173
|
+
}
|
|
1174
|
+
peek() {
|
|
1175
|
+
if (!this.hasNext())
|
|
1176
|
+
throw this._eof ? Error("Cannot call 'next' after EOF group has been read") : Error("Unexpected end of input: EOF group not read before end of file. Ended on code " + this._data[this._pointer]);
|
|
1177
|
+
let a = { code: parseInt(this._data[this._pointer]), value: 0 };
|
|
1178
|
+
return a.value = $e(a.code, this._data[this._pointer + 1]), a;
|
|
1179
|
+
}
|
|
1180
|
+
rewind(a) {
|
|
1181
|
+
a = a || 1, this._pointer = this._pointer - 2 * a;
|
|
1182
|
+
}
|
|
1183
|
+
hasNext() {
|
|
1184
|
+
return !this._eof && !(this._pointer > this._data.length - 2);
|
|
1185
|
+
}
|
|
1186
|
+
isEOF() {
|
|
1187
|
+
return this._eof;
|
|
1188
|
+
}
|
|
1189
|
+
constructor(a) {
|
|
1190
|
+
De(this, "_pointer", void 0), De(this, "_data", void 0), De(this, "_eof", void 0), De(this, "lastReadGroup", { code: 0, value: 0 }), this._pointer = 0, this._data = a, this._eof = !1;
|
|
1191
|
+
}
|
|
1192
|
+
}
|
|
1193
|
+
function $e(e, a) {
|
|
1194
|
+
return e <= 9 ? a : e >= 10 && e <= 59 ? parseFloat(a.trim()) : e >= 60 && e <= 99 ? parseInt(a.trim()) : e >= 100 && e <= 109 ? a : e >= 110 && e <= 149 ? parseFloat(a.trim()) : e >= 160 && e <= 179 ? parseInt(a.trim()) : e >= 210 && e <= 239 ? parseFloat(a.trim()) : e >= 270 && e <= 289 ? parseInt(a.trim()) : e >= 290 && e <= 299 ? function(n) {
|
|
1195
|
+
if (n === "0") return !1;
|
|
1196
|
+
if (n === "1") return !0;
|
|
1197
|
+
throw TypeError("String '" + n + "' cannot be cast to Boolean type");
|
|
1198
|
+
}(a.trim()) : e >= 300 && e <= 369 ? a : e >= 370 && e <= 389 ? parseInt(a.trim()) : e >= 390 && e <= 399 ? a : e >= 400 && e <= 409 ? parseInt(a.trim()) : e >= 410 && e <= 419 ? a : e >= 420 && e <= 429 ? parseInt(a.trim()) : e >= 430 && e <= 439 ? a : e >= 440 && e <= 459 ? parseInt(a.trim()) : e >= 460 && e <= 469 ? parseFloat(a.trim()) : e >= 470 && e <= 481 || e === 999 || e >= 1e3 && e <= 1009 ? a : e >= 1010 && e <= 1059 ? parseFloat(a.trim()) : e >= 1060 && e <= 1071 ? parseInt(a.trim()) : (console.log("WARNING: Group code does not have a defined type: %j", { code: e, value: a }), a);
|
|
1199
|
+
}
|
|
1200
|
+
function We(e, a, n) {
|
|
1201
|
+
return a in e ? Object.defineProperty(e, a, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[a] = n, e;
|
|
1202
|
+
}
|
|
1203
|
+
class pn {
|
|
1204
|
+
constructor() {
|
|
1205
|
+
We(this, "encoding", "utf-8"), We(this, "encodingFailureFatal", !1);
|
|
1206
|
+
}
|
|
1207
|
+
}
|
|
1208
|
+
class mn extends EventTarget {
|
|
1209
|
+
parseSync(a) {
|
|
1210
|
+
let n = new Je(a.split(/\r\n|\r|\n/g));
|
|
1211
|
+
if (!n.hasNext()) throw Error("Empty file");
|
|
1212
|
+
return this.parseAll(n);
|
|
1213
|
+
}
|
|
1214
|
+
parseStream(a) {
|
|
1215
|
+
let n = "", t = this;
|
|
1216
|
+
return new Promise((o, s) => {
|
|
1217
|
+
a.on("data", (i) => {
|
|
1218
|
+
n += i;
|
|
1219
|
+
}), a.on("end", () => {
|
|
1220
|
+
try {
|
|
1221
|
+
let i = n.split(/\r\n|\r|\n/g), k = new Je(i);
|
|
1222
|
+
if (!k.hasNext()) throw Error("Empty file");
|
|
1223
|
+
o(t.parseAll(k));
|
|
1224
|
+
} catch (i) {
|
|
1225
|
+
s(i);
|
|
1226
|
+
}
|
|
1227
|
+
}), a.on("error", (i) => {
|
|
1228
|
+
s(i);
|
|
1229
|
+
});
|
|
1230
|
+
});
|
|
1231
|
+
}
|
|
1232
|
+
async parseFromUrl(a, n) {
|
|
1233
|
+
let t = await fetch(a, n);
|
|
1234
|
+
if (!t.body) return null;
|
|
1235
|
+
let o = t.body.getReader(), s = "";
|
|
1236
|
+
for (; ; ) {
|
|
1237
|
+
let { done: i, value: k } = await o.read();
|
|
1238
|
+
if (i) {
|
|
1239
|
+
s += this._decoder.decode(new ArrayBuffer(0), { stream: !1 });
|
|
1240
|
+
break;
|
|
1241
|
+
}
|
|
1242
|
+
s += this._decoder.decode(k, { stream: !0 });
|
|
1243
|
+
}
|
|
1244
|
+
return this.parseSync(s);
|
|
1245
|
+
}
|
|
1246
|
+
parseAll(a) {
|
|
1247
|
+
let n = { header: {}, blocks: {}, entities: [], tables: {}, objects: { byName: {}, byTree: void 0 } }, t = a.next();
|
|
1248
|
+
for (; !p(t, 0, "EOF"); ) p(t, 0, "SECTION") && (p(t = a.next(), 2, "HEADER") ? (t = a.next(), n.header = qa(t, a)) : p(t, 2, "BLOCKS") ? (t = a.next(), n.blocks = Ja(t, a)) : p(t, 2, "ENTITIES") ? (t = a.next(), n.entities = Wr(t, a)) : p(t, 2, "TABLES") ? (t = a.next(), n.tables = un(t, a)) : p(t, 2, "OBJECTS") && (t = a.next(), n.objects = nn(t, a))), t = a.next();
|
|
1249
|
+
return n;
|
|
1250
|
+
}
|
|
1251
|
+
constructor(a = new pn()) {
|
|
1252
|
+
super(), We(this, "_decoder", void 0), this._decoder = new TextDecoder(a.encoding, { fatal: a.encodingFailureFatal });
|
|
1253
|
+
}
|
|
1254
|
+
}
|
|
1255
|
+
class fn {
|
|
1256
|
+
constructor() {
|
|
1257
|
+
this.setupMessageHandler();
|
|
1258
|
+
}
|
|
1259
|
+
/**
|
|
1260
|
+
* Set up message handler - called automatically
|
|
1261
|
+
*/
|
|
1262
|
+
setupMessageHandler() {
|
|
1263
|
+
self.onmessage = async (a) => {
|
|
1264
|
+
const { id: n, input: t } = a.data;
|
|
1265
|
+
try {
|
|
1266
|
+
const o = await this.executeTask(t);
|
|
1267
|
+
this.sendResponse(n, !0, o);
|
|
1268
|
+
} catch (o) {
|
|
1269
|
+
this.sendResponse(
|
|
1270
|
+
n,
|
|
1271
|
+
!1,
|
|
1272
|
+
void 0,
|
|
1273
|
+
o instanceof Error ? o.message : String(o)
|
|
1274
|
+
);
|
|
1275
|
+
}
|
|
1276
|
+
};
|
|
1277
|
+
}
|
|
1278
|
+
/**
|
|
1279
|
+
* Send response back to main thread
|
|
1280
|
+
*/
|
|
1281
|
+
sendResponse(a, n, t, o) {
|
|
1282
|
+
const s = {
|
|
1283
|
+
id: a,
|
|
1284
|
+
success: n,
|
|
1285
|
+
data: t,
|
|
1286
|
+
error: o
|
|
1287
|
+
};
|
|
1288
|
+
self.postMessage(s);
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
1291
|
+
class bn extends fn {
|
|
1292
|
+
async executeTask(a) {
|
|
1293
|
+
return new mn().parseSync(a);
|
|
1294
|
+
}
|
|
1295
|
+
}
|
|
1296
|
+
new bn();
|