abstract-3d 4.1.4 → 4.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/lib/renderers/dxf/color.d.ts +7 -0
  2. package/lib/renderers/dxf/color.d.ts.map +1 -0
  3. package/lib/renderers/dxf/color.js +311 -0
  4. package/lib/renderers/dxf/color.js.map +1 -0
  5. package/lib/renderers/dxf/dxf-encoding.d.ts +17 -0
  6. package/lib/renderers/dxf/dxf-encoding.d.ts.map +1 -0
  7. package/lib/renderers/dxf/dxf-encoding.js +18467 -0
  8. package/lib/renderers/dxf/dxf-encoding.js.map +1 -0
  9. package/lib/renderers/react/react-camera.d.ts +71 -0
  10. package/lib/renderers/react/react-camera.d.ts.map +1 -0
  11. package/lib/renderers/react/react-camera.js +179 -0
  12. package/lib/renderers/react/react-camera.js.map +1 -0
  13. package/lib/renderers/react/react-dimension.d.ts +16 -0
  14. package/lib/renderers/react/react-dimension.d.ts.map +1 -0
  15. package/lib/renderers/react/react-dimension.js +29 -0
  16. package/lib/renderers/react/react-dimension.js.map +1 -0
  17. package/lib/renderers/react/react-group.d.ts +23 -0
  18. package/lib/renderers/react/react-group.d.ts.map +1 -0
  19. package/lib/renderers/react/react-group.js +68 -0
  20. package/lib/renderers/react/react-group.js.map +1 -0
  21. package/lib/renderers/react/react-hotspot.d.ts +27 -0
  22. package/lib/renderers/react/react-hotspot.d.ts.map +1 -0
  23. package/lib/renderers/react/react-hotspot.js +37 -0
  24. package/lib/renderers/react/react-hotspot.js.map +1 -0
  25. package/lib/renderers/react/react-image-material.d.ts +28 -0
  26. package/lib/renderers/react/react-image-material.d.ts.map +1 -0
  27. package/lib/renderers/react/react-image-material.js +81 -0
  28. package/lib/renderers/react/react-image-material.js.map +1 -0
  29. package/lib/renderers/react/react-material.d.ts +19 -0
  30. package/lib/renderers/react/react-material.d.ts.map +1 -0
  31. package/lib/renderers/react/react-material.js +50 -0
  32. package/lib/renderers/react/react-material.js.map +1 -0
  33. package/lib/renderers/react/react-mesh.d.ts +11 -0
  34. package/lib/renderers/react/react-mesh.d.ts.map +1 -0
  35. package/lib/renderers/react/react-mesh.js +229 -0
  36. package/lib/renderers/react/react-mesh.js.map +1 -0
  37. package/lib/renderers/react/react-scene.d.ts +28 -0
  38. package/lib/renderers/react/react-scene.d.ts.map +1 -0
  39. package/lib/renderers/react/react-scene.js +20 -0
  40. package/lib/renderers/react/react-scene.js.map +1 -0
  41. package/lib/renderers/react/react-types.d.ts +7 -0
  42. package/lib/renderers/react/react-types.d.ts.map +1 -0
  43. package/lib/renderers/react/react-types.js +3 -0
  44. package/lib/renderers/react/react-types.js.map +1 -0
  45. package/lib/renderers/shared.d.ts +30 -0
  46. package/lib/renderers/shared.d.ts.map +1 -0
  47. package/lib/renderers/shared.js +164 -0
  48. package/lib/renderers/shared.js.map +1 -0
  49. package/lib/renderers/three/camera/camera.d.ts +3 -2
  50. package/lib/renderers/three/camera/camera.d.ts.map +1 -1
  51. package/lib/renderers/three/camera/camera.js +12 -0
  52. package/lib/renderers/three/camera/camera.js.map +1 -1
  53. package/lib/renderers/three/camera/gizmo.d.ts +6 -1
  54. package/lib/renderers/three/camera/gizmo.d.ts.map +1 -1
  55. package/lib/renderers/three/camera/gizmo.js +60 -2
  56. package/lib/renderers/three/camera/gizmo.js.map +1 -1
  57. package/lib/renderers/three/viewer/viewer.d.ts +14 -1
  58. package/lib/renderers/three/viewer/viewer.d.ts.map +1 -1
  59. package/lib/renderers/three/viewer/viewer.js +102 -26
  60. package/lib/renderers/three/viewer/viewer.js.map +1 -1
  61. package/package.json +1 -1
  62. package/src/renderers/three/camera/camera.ts +16 -3
  63. package/src/renderers/three/camera/gizmo.ts +67 -2
  64. package/src/renderers/three/viewer/viewer.ts +114 -26
  65. package/lib/renderers/svg/svg-order.d.ts +0 -9
  66. package/lib/renderers/svg/svg-order.d.ts.map +0 -1
  67. package/lib/renderers/svg/svg-order.js +0 -148
  68. package/lib/renderers/svg/svg-order.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ import { Color } from "abstract-image";
2
+ import { Vec3 } from "../../abstract-3d.js";
3
+ export declare function colorToInteger(color: string): number;
4
+ export declare function colorHexFromAbstractImageColor(color: Color): string;
5
+ export declare function color(colorNormal: string | undefined): number;
6
+ export declare const ACI_COLOR_TABLE: ReadonlyArray<Vec3>;
7
+ //# sourceMappingURL=color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/renderers/dxf/color.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAyB,MAAM,sBAAsB,CAAC;AAEnE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQpD;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAEnE;AAED,wBAAgB,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAqB7D;AAsBD,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,IAAI,CAiQ/C,CAAC"}
@@ -0,0 +1,311 @@
1
+ import { vec3, vec3DistSquared } from "../../abstract-3d.js";
2
+ export function colorToInteger(color) {
3
+ const originalColor = colorNormalToVec3Color(color);
4
+ const colorAsInt = (originalColor.x << 16) + (originalColor.y << 8) + originalColor.z;
5
+ if (Number.isNaN(colorAsInt)) {
6
+ return 0;
7
+ }
8
+ return colorAsInt;
9
+ }
10
+ export function colorHexFromAbstractImageColor(color) {
11
+ return `rgba(${color.r}, ${color.g}, ${color.b}, ${color.a})`;
12
+ }
13
+ export function color(colorNormal) {
14
+ const ERROR_COLOR = 6; //magenta
15
+ const ACI_COLOR_COUNT = 256;
16
+ if (ACI_COLOR_TABLE.length !== ACI_COLOR_COUNT || colorNormal === undefined) {
17
+ return ERROR_COLOR; //magenta
18
+ }
19
+ const originalColor = colorNormalToVec3Color(colorNormal);
20
+ let closestColor = 0;
21
+ let smallestDistance = Number.POSITIVE_INFINITY;
22
+ for (let i = 0; i < ACI_COLOR_COUNT; i++) {
23
+ const color = ACI_COLOR_TABLE[i];
24
+ if (color !== undefined) {
25
+ const distance = vec3DistSquared(originalColor, color);
26
+ if (distance < smallestDistance) {
27
+ smallestDistance = distance;
28
+ closestColor = i;
29
+ }
30
+ }
31
+ }
32
+ return closestColor;
33
+ }
34
+ function colorNormalToVec3Color(colorNormal) {
35
+ const errorColor = vec3(255, 0, 255); // #ff00ff, magenta
36
+ const paranthesisRegex = /(?<=\().+?(?=\))/;
37
+ const inside = paranthesisRegex.exec(colorNormal);
38
+ if (inside === null || inside.length < 1) {
39
+ return errorColor;
40
+ }
41
+ const values = inside[0].replaceAll(" ", "").split(",");
42
+ if (values.length < 3) {
43
+ return errorColor;
44
+ }
45
+ const r = parseInt(values[0], 10);
46
+ const g = parseInt(values[1], 10);
47
+ const b = parseInt(values[2], 10);
48
+ if (Number.isNaN(r) || Number.isNaN(g) || Number.isNaN(b)) {
49
+ return errorColor;
50
+ }
51
+ return vec3(r % 256, g % 256, b % 256);
52
+ }
53
+ export const ACI_COLOR_TABLE = [
54
+ vec3(0, 0, 0),
55
+ vec3(255, 0, 0),
56
+ vec3(255, 255, 0),
57
+ vec3(0, 255, 0),
58
+ vec3(0, 255, 255),
59
+ vec3(0, 0, 255),
60
+ vec3(255, 0, 255),
61
+ vec3(255, 255, 255),
62
+ vec3(128, 128, 128),
63
+ vec3(192, 192, 192),
64
+ vec3(255, 0, 0),
65
+ vec3(255, 127, 127),
66
+ vec3(204, 0, 0),
67
+ vec3(204, 102, 102),
68
+ vec3(153, 0, 0),
69
+ vec3(153, 76, 76),
70
+ vec3(127, 0, 0),
71
+ vec3(127, 63, 63),
72
+ vec3(76, 0, 0),
73
+ vec3(76, 38, 38),
74
+ vec3(255, 63, 0),
75
+ vec3(255, 159, 127),
76
+ vec3(204, 51, 0),
77
+ vec3(204, 127, 102),
78
+ vec3(153, 38, 0),
79
+ vec3(153, 95, 76),
80
+ vec3(127, 31, 0),
81
+ vec3(127, 79, 63),
82
+ vec3(76, 19, 0),
83
+ vec3(76, 47, 38),
84
+ vec3(255, 127, 0),
85
+ vec3(255, 191, 127),
86
+ vec3(204, 102, 0),
87
+ vec3(204, 153, 102),
88
+ vec3(153, 76, 0),
89
+ vec3(153, 114, 76),
90
+ vec3(127, 63, 0),
91
+ vec3(127, 95, 63),
92
+ vec3(76, 38, 0),
93
+ vec3(76, 57, 38),
94
+ vec3(255, 191, 0),
95
+ vec3(255, 223, 127),
96
+ vec3(204, 153, 0),
97
+ vec3(204, 178, 102),
98
+ vec3(153, 114, 0),
99
+ vec3(153, 133, 76),
100
+ vec3(127, 95, 0),
101
+ vec3(127, 111, 63),
102
+ vec3(76, 57, 0),
103
+ vec3(76, 66, 38),
104
+ vec3(255, 255, 0),
105
+ vec3(255, 255, 127),
106
+ vec3(204, 204, 0),
107
+ vec3(204, 204, 102),
108
+ vec3(153, 153, 0),
109
+ vec3(153, 153, 76),
110
+ vec3(127, 127, 0),
111
+ vec3(127, 127, 63),
112
+ vec3(76, 76, 0),
113
+ vec3(76, 76, 38),
114
+ vec3(191, 255, 0),
115
+ vec3(223, 255, 127),
116
+ vec3(153, 204, 0),
117
+ vec3(178, 204, 102),
118
+ vec3(114, 153, 0),
119
+ vec3(133, 153, 76),
120
+ vec3(95, 127, 0),
121
+ vec3(111, 127, 63),
122
+ vec3(57, 76, 0),
123
+ vec3(66, 76, 38),
124
+ vec3(127, 255, 0),
125
+ vec3(191, 255, 127),
126
+ vec3(102, 204, 0),
127
+ vec3(153, 204, 102),
128
+ vec3(76, 153, 0),
129
+ vec3(114, 153, 76),
130
+ vec3(63, 127, 0),
131
+ vec3(95, 127, 63),
132
+ vec3(38, 76, 0),
133
+ vec3(57, 76, 38),
134
+ vec3(63, 255, 0),
135
+ vec3(159, 255, 127),
136
+ vec3(51, 204, 0),
137
+ vec3(127, 204, 102),
138
+ vec3(38, 153, 0),
139
+ vec3(95, 153, 76),
140
+ vec3(31, 127, 0),
141
+ vec3(79, 127, 63),
142
+ vec3(19, 76, 0),
143
+ vec3(47, 76, 38),
144
+ vec3(0, 255, 0),
145
+ vec3(127, 255, 127),
146
+ vec3(0, 204, 0),
147
+ vec3(102, 204, 102),
148
+ vec3(0, 153, 0),
149
+ vec3(76, 153, 76),
150
+ vec3(0, 127, 0),
151
+ vec3(63, 127, 63),
152
+ vec3(0, 76, 0),
153
+ vec3(38, 76, 38),
154
+ vec3(0, 255, 63),
155
+ vec3(127, 255, 191),
156
+ vec3(0, 204, 51),
157
+ vec3(102, 204, 127),
158
+ vec3(0, 153, 38),
159
+ vec3(76, 153, 114),
160
+ vec3(0, 127, 31),
161
+ vec3(63, 127, 95),
162
+ vec3(0, 76, 19),
163
+ vec3(38, 76, 47),
164
+ vec3(0, 255, 127),
165
+ vec3(127, 255, 223),
166
+ vec3(0, 204, 102),
167
+ vec3(102, 204, 153),
168
+ vec3(0, 153, 76),
169
+ vec3(76, 153, 133),
170
+ vec3(0, 127, 63),
171
+ vec3(63, 127, 111),
172
+ vec3(0, 76, 38),
173
+ vec3(38, 76, 57),
174
+ vec3(0, 255, 191),
175
+ vec3(127, 255, 255),
176
+ vec3(0, 204, 153),
177
+ vec3(102, 204, 178),
178
+ vec3(0, 153, 114),
179
+ vec3(76, 153, 144),
180
+ vec3(0, 127, 95),
181
+ vec3(63, 127, 119),
182
+ vec3(0, 76, 57),
183
+ vec3(38, 76, 66),
184
+ vec3(0, 255, 255),
185
+ vec3(127, 255, 255),
186
+ vec3(0, 204, 204),
187
+ vec3(102, 204, 204),
188
+ vec3(0, 153, 153),
189
+ vec3(76, 153, 153),
190
+ vec3(0, 127, 127),
191
+ vec3(63, 127, 127),
192
+ vec3(0, 76, 76),
193
+ vec3(38, 76, 76),
194
+ vec3(0, 191, 255),
195
+ vec3(127, 223, 255),
196
+ vec3(0, 153, 204),
197
+ vec3(102, 178, 204),
198
+ vec3(0, 114, 153),
199
+ vec3(76, 133, 153),
200
+ vec3(0, 95, 127),
201
+ vec3(63, 111, 127),
202
+ vec3(0, 57, 76),
203
+ vec3(38, 66, 76),
204
+ vec3(0, 127, 255),
205
+ vec3(127, 191, 255),
206
+ vec3(0, 102, 204),
207
+ vec3(102, 153, 204),
208
+ vec3(0, 76, 153),
209
+ vec3(76, 114, 153),
210
+ vec3(0, 63, 127),
211
+ vec3(63, 95, 127),
212
+ vec3(0, 38, 76),
213
+ vec3(38, 57, 76),
214
+ vec3(0, 63, 255),
215
+ vec3(127, 159, 255),
216
+ vec3(0, 51, 204),
217
+ vec3(102, 127, 204),
218
+ vec3(0, 38, 153),
219
+ vec3(76, 95, 153),
220
+ vec3(0, 31, 127),
221
+ vec3(63, 79, 127),
222
+ vec3(0, 19, 76),
223
+ vec3(38, 47, 76),
224
+ vec3(0, 0, 255),
225
+ vec3(127, 127, 255),
226
+ vec3(0, 0, 204),
227
+ vec3(102, 102, 204),
228
+ vec3(0, 0, 153),
229
+ vec3(76, 76, 153),
230
+ vec3(0, 0, 127),
231
+ vec3(63, 63, 127),
232
+ vec3(0, 0, 76),
233
+ vec3(38, 38, 76),
234
+ vec3(63, 0, 255),
235
+ vec3(159, 127, 255),
236
+ vec3(51, 0, 204),
237
+ vec3(127, 102, 204),
238
+ vec3(38, 0, 153),
239
+ vec3(95, 76, 153),
240
+ vec3(31, 0, 127),
241
+ vec3(79, 63, 127),
242
+ vec3(19, 0, 76),
243
+ vec3(47, 38, 76),
244
+ vec3(127, 0, 255),
245
+ vec3(191, 127, 255),
246
+ vec3(102, 0, 204),
247
+ vec3(153, 102, 204),
248
+ vec3(76, 0, 153),
249
+ vec3(114, 76, 153),
250
+ vec3(63, 0, 127),
251
+ vec3(95, 63, 127),
252
+ vec3(38, 0, 76),
253
+ vec3(57, 38, 76),
254
+ vec3(191, 0, 255),
255
+ vec3(223, 127, 255),
256
+ vec3(153, 0, 204),
257
+ vec3(178, 102, 204),
258
+ vec3(114, 0, 153),
259
+ vec3(133, 76, 153),
260
+ vec3(95, 0, 127),
261
+ vec3(111, 63, 127),
262
+ vec3(57, 0, 76),
263
+ vec3(66, 38, 76),
264
+ vec3(255, 0, 255),
265
+ vec3(255, 127, 255),
266
+ vec3(204, 0, 204),
267
+ vec3(204, 102, 204),
268
+ vec3(153, 0, 153),
269
+ vec3(153, 76, 153),
270
+ vec3(127, 0, 127),
271
+ vec3(127, 63, 127),
272
+ vec3(76, 0, 76),
273
+ vec3(76, 38, 76),
274
+ vec3(255, 0, 191),
275
+ vec3(255, 127, 223),
276
+ vec3(204, 0, 153),
277
+ vec3(204, 102, 178),
278
+ vec3(153, 0, 114),
279
+ vec3(153, 76, 133),
280
+ vec3(127, 0, 95),
281
+ vec3(127, 63, 111),
282
+ vec3(76, 0, 57),
283
+ vec3(76, 38, 66),
284
+ vec3(255, 0, 127),
285
+ vec3(255, 127, 191),
286
+ vec3(204, 0, 102),
287
+ vec3(204, 102, 153),
288
+ vec3(153, 0, 76),
289
+ vec3(153, 76, 114),
290
+ vec3(127, 0, 63),
291
+ vec3(127, 63, 95),
292
+ vec3(76, 0, 38),
293
+ vec3(76, 38, 57),
294
+ vec3(255, 0, 63),
295
+ vec3(255, 127, 159),
296
+ vec3(204, 0, 51),
297
+ vec3(204, 102, 127),
298
+ vec3(153, 0, 38),
299
+ vec3(153, 76, 95),
300
+ vec3(127, 0, 31),
301
+ vec3(127, 63, 79),
302
+ vec3(76, 0, 19),
303
+ vec3(76, 38, 47),
304
+ vec3(255, 255, 255),
305
+ vec3(192, 192, 192),
306
+ vec3(128, 128, 128),
307
+ vec3(64, 64, 64),
308
+ vec3(0, 0, 0),
309
+ vec3(0, 0, 0)
310
+ ];
311
+ //# sourceMappingURL=color.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.js","sourceRoot":"","sources":["../../../src/renderers/dxf/color.ts"],"names":[],"mappings":"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E,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACd,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACd,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IACd,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACd,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { Bounds3, Vec3 } from "../../abstract-3d.js";
2
+ export declare const DEFAULT_CIRCLE_SIDE_COUNT = 16;
3
+ export type DxfOrigin = "BottomLeftFront" | "Center" | "SameAsScene";
4
+ export type DxfDynamicColor = 7;
5
+ export type Handle = {
6
+ handle: number;
7
+ };
8
+ export declare function dxf(groups: string, bounds: Bounds3, size: Vec3, center: Vec3): string;
9
+ export declare function dxfHandleCreate(): Handle;
10
+ export declare function dxfHandle(handleRef: Handle): string;
11
+ export declare const dxfQuad: (vec1: Vec3, vec2: Vec3, vec3: Vec3, vec4: Vec3, col: string | DxfDynamicColor, handleRef: Handle) => string;
12
+ export declare const dxfTriangle: (vec1: Vec3, vec2: Vec3, vec3: Vec3, col: string | DxfDynamicColor, handleRef: Handle) => string;
13
+ export declare function dxfPolyline(points: ReadonlyArray<Vec3>, col: string | DxfDynamicColor, closed: boolean, handleRef: Handle): string;
14
+ export declare function dxfLine(vecStart: Vec3, vecEnd: Vec3, col: string | DxfDynamicColor, handleRef: Handle): string;
15
+ export declare const dxfHeader: (bounds: Bounds3, center: Vec3, blockId: string, size: Vec3) => string;
16
+ export declare const dxfFooter: (blockId: string) => string;
17
+ //# sourceMappingURL=dxf-encoding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dxf-encoding.d.ts","sourceRoot":"","sources":["../../../src/renderers/dxf/dxf-encoding.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAsB,MAAM,sBAAsB,CAAC;AAGzE,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAM5C,MAAM,MAAM,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,aAAa,CAAC;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC;AAChC,MAAM,MAAM,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,MAAM,CAGrF;AAED,wBAAgB,eAAe,IAAI,MAAM,CAIxC;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAOD,eAAO,MAAM,OAAO,GAClB,MAAM,IAAI,EACV,MAAM,IAAI,EACV,MAAM,IAAI,EACV,MAAM,IAAI,EACV,KAAK,MAAM,GAAG,eAAe,EAC7B,WAAW,MAAM,KAChB,MA0CF,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,MAAM,IAAI,EACV,MAAM,IAAI,EACV,MAAM,IAAI,EACV,KAAK,MAAM,GAAG,eAAe,EAC7B,WAAW,MAAM,KAChB,MAAyD,CAAC;AAE7D,wBAAgB,WAAW,CACzB,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAC3B,GAAG,EAAE,MAAM,GAAG,eAAe,EAC7B,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,GAChB,MAAM,CAmFR;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,IAAI,EACd,MAAM,EAAE,IAAI,EACZ,GAAG,EAAE,MAAM,GAAG,eAAe,EAC7B,SAAS,EAAE,MAAM,GAChB,MAAM,CAiCR;AAED,eAAO,MAAM,SAAS,GAAI,QAAQ,OAAO,EAAE,QAAQ,IAAI,EAAE,SAAS,MAAM,EAAE,MAAM,IAAI,KAAG,MA2mDtF,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,SAAS,MAAM,KAAG,MAuwgBxC,CAAC"}