@mlightcad/data-model 1.7.29 → 1.7.31

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 (59) hide show
  1. package/dist/data-model.cjs +7 -4
  2. package/dist/data-model.js +15945 -9368
  3. package/lib/base/AcDbDxfFiler.d.ts.map +1 -1
  4. package/lib/base/AcDbDxfFiler.js +4 -1
  5. package/lib/base/AcDbDxfFiler.js.map +1 -1
  6. package/lib/converter/AcDbDxfConverter.d.ts.map +1 -1
  7. package/lib/converter/AcDbDxfConverter.js +19 -1
  8. package/lib/converter/AcDbDxfConverter.js.map +1 -1
  9. package/lib/database/AcDbDatabase.d.ts +38 -1
  10. package/lib/database/AcDbDatabase.d.ts.map +1 -1
  11. package/lib/database/AcDbDatabase.js +116 -1
  12. package/lib/database/AcDbDatabase.js.map +1 -1
  13. package/lib/database/AcDbSysVarManager.d.ts +5 -3
  14. package/lib/database/AcDbSysVarManager.d.ts.map +1 -1
  15. package/lib/database/AcDbSysVarManager.js +161 -5
  16. package/lib/database/AcDbSysVarManager.js.map +1 -1
  17. package/lib/database/AcDbSystemVariables.d.ts +25 -1
  18. package/lib/database/AcDbSystemVariables.d.ts.map +1 -1
  19. package/lib/database/AcDbSystemVariables.js +24 -0
  20. package/lib/database/AcDbSystemVariables.js.map +1 -1
  21. package/lib/entity/AcDbEntity.d.ts +26 -0
  22. package/lib/entity/AcDbEntity.d.ts.map +1 -1
  23. package/lib/entity/AcDbEntity.js +51 -12
  24. package/lib/entity/AcDbEntity.js.map +1 -1
  25. package/lib/entity/AcDbHatch.d.ts +84 -0
  26. package/lib/entity/AcDbHatch.d.ts.map +1 -1
  27. package/lib/entity/AcDbHatch.js +368 -9
  28. package/lib/entity/AcDbHatch.js.map +1 -1
  29. package/lib/misc/AcDbConstants.d.ts +16 -0
  30. package/lib/misc/AcDbConstants.d.ts.map +1 -1
  31. package/lib/misc/AcDbConstants.js +16 -0
  32. package/lib/misc/AcDbConstants.js.map +1 -1
  33. package/lib/misc/AcDbDataGenerator.js +2 -2
  34. package/lib/misc/AcDbDataGenerator.js.map +1 -1
  35. package/lib/misc/index.d.ts +1 -0
  36. package/lib/misc/index.d.ts.map +1 -1
  37. package/lib/misc/index.js +1 -0
  38. package/lib/misc/index.js.map +1 -1
  39. package/lib/misc/pat/AcDbPatDefinition.d.ts +148 -0
  40. package/lib/misc/pat/AcDbPatDefinition.d.ts.map +1 -0
  41. package/lib/misc/pat/AcDbPatDefinition.js +2 -0
  42. package/lib/misc/pat/AcDbPatDefinition.js.map +1 -0
  43. package/lib/misc/pat/AcDbPatParser.d.ts +93 -0
  44. package/lib/misc/pat/AcDbPatParser.d.ts.map +1 -0
  45. package/lib/misc/pat/AcDbPatParser.js +245 -0
  46. package/lib/misc/pat/AcDbPatParser.js.map +1 -0
  47. package/lib/misc/pat/AcDbPatPredefined.d.ts +10 -0
  48. package/lib/misc/pat/AcDbPatPredefined.d.ts.map +1 -0
  49. package/lib/misc/pat/AcDbPatPredefined.js +5940 -0
  50. package/lib/misc/pat/AcDbPatPredefined.js.map +1 -0
  51. package/lib/misc/pat/AcDbPatSvgRenderer.d.ts +110 -0
  52. package/lib/misc/pat/AcDbPatSvgRenderer.d.ts.map +1 -0
  53. package/lib/misc/pat/AcDbPatSvgRenderer.js +319 -0
  54. package/lib/misc/pat/AcDbPatSvgRenderer.js.map +1 -0
  55. package/lib/misc/pat/index.d.ts +5 -0
  56. package/lib/misc/pat/index.d.ts.map +1 -0
  57. package/lib/misc/pat/index.js +5 -0
  58. package/lib/misc/pat/index.js.map +1 -0
  59. package/package.json +4 -4
@@ -0,0 +1,319 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __values = (this && this.__values) || function(o) {
13
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
14
+ if (m) return m.call(o);
15
+ if (o && typeof o.length === "number") return {
16
+ next: function () {
17
+ if (o && i >= o.length) o = void 0;
18
+ return { value: o && o[i++], done: !o };
19
+ }
20
+ };
21
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
22
+ };
23
+ import { HATCH_PATTERN_SOLID } from '../AcDbConstants';
24
+ /**
25
+ * Renders an {@link AcDbPatPattern} into a standalone SVG preview string.
26
+ *
27
+ * The renderer normalizes pattern units to pixels, expands each hatch line
28
+ * family to cover the viewport, resolves dash/gap sequences into explicit
29
+ * segments, and emits a compact `<svg>` document.
30
+ */
31
+ var AcDbPatSvgRenderer = /** @class */ (function () {
32
+ function AcDbPatSvgRenderer() {
33
+ }
34
+ /**
35
+ * Converts an angle from degrees to radians.
36
+ *
37
+ * @param degrees - Angle in degrees.
38
+ * @returns The same angle expressed in radians.
39
+ */
40
+ AcDbPatSvgRenderer.toRadians = function (degrees) {
41
+ return (degrees * Math.PI) / 180;
42
+ };
43
+ /**
44
+ * Clamps a value into an inclusive range.
45
+ *
46
+ * @param value - Source value.
47
+ * @param min - Lower bound (inclusive).
48
+ * @param max - Upper bound (inclusive).
49
+ * @returns `value` projected into `[min, max]`.
50
+ */
51
+ AcDbPatSvgRenderer.clamp = function (value, min, max) {
52
+ return Math.min(max, Math.max(min, value));
53
+ };
54
+ /**
55
+ * Checks whether a pattern is the reserved AutoCAD solid-fill pattern.
56
+ *
57
+ * `SOLID` has no PAT line descriptors; its preview is an area fill instead
58
+ * of generated hatch linework.
59
+ *
60
+ * @param pattern - Pattern to inspect.
61
+ * @returns `true` when the pattern name resolves to `SOLID`.
62
+ */
63
+ AcDbPatSvgRenderer.isSolidPattern = function (pattern) {
64
+ return pattern.name.trim().toUpperCase() === HATCH_PATTERN_SOLID;
65
+ };
66
+ /**
67
+ * Renders an SVG background rectangle.
68
+ *
69
+ * @param width - SVG viewport width in pixels.
70
+ * @param height - SVG viewport height in pixels.
71
+ * @param background - CSS fill for the preview background.
72
+ * @returns SVG `<rect>` markup.
73
+ */
74
+ AcDbPatSvgRenderer.renderBackground = function (width, height, background) {
75
+ return "<rect x=\"".concat(-width / 2, "\" y=\"").concat(-height / 2, "\" width=\"").concat(width, "\" height=\"").concat(height, "\" fill=\"").concat(background, "\" />");
76
+ };
77
+ /**
78
+ * Estimates a representative unit length for the pattern.
79
+ *
80
+ * The current strategy samples delta vectors and dash lengths, removes
81
+ * near-zero values, and uses the median as a robust scale anchor.
82
+ *
83
+ * @param pattern - Pattern whose geometric magnitudes are sampled.
84
+ * @returns Estimated pattern unit size. Falls back to `1` if no usable
85
+ * samples exist.
86
+ */
87
+ AcDbPatSvgRenderer.estimateUnitScale = function (pattern) {
88
+ var e_1, _a, e_2, _b;
89
+ var samples = [];
90
+ try {
91
+ for (var _c = __values(pattern.lines), _d = _c.next(); !_d.done; _d = _c.next()) {
92
+ var line = _d.value;
93
+ samples.push(Math.abs(line.deltaX), Math.abs(line.deltaY));
94
+ try {
95
+ for (var _e = (e_2 = void 0, __values(line.dashes)), _f = _e.next(); !_f.done; _f = _e.next()) {
96
+ var dash = _f.value;
97
+ samples.push(Math.abs(dash));
98
+ }
99
+ }
100
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
101
+ finally {
102
+ try {
103
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
104
+ }
105
+ finally { if (e_2) throw e_2.error; }
106
+ }
107
+ }
108
+ }
109
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
110
+ finally {
111
+ try {
112
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
113
+ }
114
+ finally { if (e_1) throw e_1.error; }
115
+ }
116
+ var filtered = samples.filter(function (sample) { return sample > AcDbPatSvgRenderer.EPSILON; });
117
+ if (filtered.length === 0)
118
+ return 1;
119
+ var sorted = filtered.sort(function (a, b) { return a - b; });
120
+ return sorted[Math.floor(sorted.length / 2)] || 1;
121
+ };
122
+ /**
123
+ * Converts a geometric segment into a single SVG `M ... L ...` path command.
124
+ *
125
+ * SVG Y coordinates are inverted to match the pattern coordinate convention.
126
+ *
127
+ * @param segment - Segment to serialize.
128
+ * @returns SVG path fragment for the segment.
129
+ */
130
+ AcDbPatSvgRenderer.segmentToSvgPath = function (segment) {
131
+ return "M ".concat(segment.x1.toFixed(2), " ").concat((-segment.y1).toFixed(2), " L ").concat(segment.x2.toFixed(2), " ").concat((-segment.y2).toFixed(2));
132
+ };
133
+ /**
134
+ * Expands a hatch line and its dash definition into concrete drawable
135
+ * segments within a finite interval.
136
+ *
137
+ * Dash rule:
138
+ * - `> 0`: drawn segment
139
+ * - `< 0`: gap
140
+ * - `= 0`: dot (rendered as a very short segment for visibility)
141
+ *
142
+ * @param line - Hatch line definition containing dash sequence.
143
+ * @param startAlong - Interval start on the line direction axis.
144
+ * @param endAlong - Interval end on the line direction axis.
145
+ * @param originX - Line family origin X coordinate.
146
+ * @param originY - Line family origin Y coordinate.
147
+ * @param dirX - Unit direction vector X component.
148
+ * @param dirY - Unit direction vector Y component.
149
+ * @returns Drawable segments clipped to `[startAlong, endAlong]`.
150
+ */
151
+ AcDbPatSvgRenderer.buildDashSegments = function (line, startAlong, endAlong, originX, originY, dirX, dirY) {
152
+ var e_3, _a;
153
+ var dashes = line.dashes;
154
+ if (dashes.length === 0) {
155
+ return [
156
+ {
157
+ x1: originX + dirX * startAlong,
158
+ y1: originY + dirY * startAlong,
159
+ x2: originX + dirX * endAlong,
160
+ y2: originY + dirY * endAlong
161
+ }
162
+ ];
163
+ }
164
+ var totalPatternLength = dashes.reduce(function (sum, value) { return sum + Math.abs(value); }, 0);
165
+ if (totalPatternLength <= AcDbPatSvgRenderer.EPSILON) {
166
+ return [
167
+ {
168
+ x1: originX + dirX * startAlong,
169
+ y1: originY + dirY * startAlong,
170
+ x2: originX + dirX * endAlong,
171
+ y2: originY + dirY * endAlong
172
+ }
173
+ ];
174
+ }
175
+ var segments = [];
176
+ var tileCount = Math.ceil((endAlong - startAlong) / totalPatternLength) + 2;
177
+ var tileStart = startAlong - totalPatternLength;
178
+ for (var tileIndex = 0; tileIndex < tileCount; tileIndex++) {
179
+ var cursor = tileStart;
180
+ try {
181
+ for (var dashes_1 = (e_3 = void 0, __values(dashes)), dashes_1_1 = dashes_1.next(); !dashes_1_1.done; dashes_1_1 = dashes_1.next()) {
182
+ var dashValue = dashes_1_1.value;
183
+ var length_1 = Math.abs(dashValue);
184
+ var nextCursor = cursor + length_1;
185
+ if (dashValue > 0 || dashValue === 0) {
186
+ var drawStart = AcDbPatSvgRenderer.clamp(cursor, startAlong, endAlong);
187
+ var drawEnd = AcDbPatSvgRenderer.clamp(nextCursor, startAlong, endAlong);
188
+ if (drawEnd > drawStart) {
189
+ segments.push({
190
+ x1: originX + dirX * drawStart,
191
+ y1: originY + dirY * drawStart,
192
+ x2: originX + dirX * drawEnd,
193
+ y2: originY + dirY * drawEnd
194
+ });
195
+ }
196
+ else if (dashValue === 0 &&
197
+ drawStart >= startAlong &&
198
+ drawStart <= endAlong) {
199
+ var dotHalf = 0.35;
200
+ segments.push({
201
+ x1: originX + dirX * (drawStart - dotHalf),
202
+ y1: originY + dirY * (drawStart - dotHalf),
203
+ x2: originX + dirX * (drawStart + dotHalf),
204
+ y2: originY + dirY * (drawStart + dotHalf)
205
+ });
206
+ }
207
+ }
208
+ cursor = nextCursor;
209
+ }
210
+ }
211
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
212
+ finally {
213
+ try {
214
+ if (dashes_1_1 && !dashes_1_1.done && (_a = dashes_1.return)) _a.call(dashes_1);
215
+ }
216
+ finally { if (e_3) throw e_3.error; }
217
+ }
218
+ tileStart += totalPatternLength;
219
+ }
220
+ return segments;
221
+ };
222
+ /**
223
+ * Renders one hatch line family (parallel repetitions of the same line rule)
224
+ * into a single SVG `<path>` element.
225
+ *
226
+ * @param line - Hatch line rule to expand.
227
+ * @param maxRadius - Coverage radius used to decide repetition count and
228
+ * drawable extent.
229
+ * @returns SVG `<path>` markup containing all generated segments.
230
+ */
231
+ AcDbPatSvgRenderer.renderFamily = function (line, maxRadius) {
232
+ var e_4, _a;
233
+ var angle = AcDbPatSvgRenderer.toRadians(line.angle);
234
+ var dirX = Math.cos(angle);
235
+ var dirY = Math.sin(angle);
236
+ var normalX = -dirY;
237
+ var normalY = dirX;
238
+ var offsetX = dirX * line.deltaX + normalX * line.deltaY;
239
+ var offsetY = dirY * line.deltaX + normalY * line.deltaY;
240
+ var offsetLength = Math.hypot(offsetX, offsetY);
241
+ var familyCount = offsetLength <= AcDbPatSvgRenderer.EPSILON
242
+ ? 1
243
+ : Math.max(1, Math.ceil((maxRadius * 2) / offsetLength) + 1);
244
+ var half = Math.floor(familyCount / 2);
245
+ var minAlong = -maxRadius * 1.5;
246
+ var maxAlong = maxRadius * 1.5;
247
+ var paths = [];
248
+ for (var index = -half; index <= half; index++) {
249
+ var familyOriginX = line.originX + offsetX * index;
250
+ var familyOriginY = line.originY + offsetY * index;
251
+ var segments = AcDbPatSvgRenderer.buildDashSegments(line, minAlong, maxAlong, familyOriginX, familyOriginY, dirX, dirY);
252
+ try {
253
+ for (var segments_1 = (e_4 = void 0, __values(segments)), segments_1_1 = segments_1.next(); !segments_1_1.done; segments_1_1 = segments_1.next()) {
254
+ var segment = segments_1_1.value;
255
+ paths.push(AcDbPatSvgRenderer.segmentToSvgPath(segment));
256
+ }
257
+ }
258
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
259
+ finally {
260
+ try {
261
+ if (segments_1_1 && !segments_1_1.done && (_a = segments_1.return)) _a.call(segments_1);
262
+ }
263
+ finally { if (e_4) throw e_4.error; }
264
+ }
265
+ }
266
+ return "<path d=\"".concat(paths.join(' '), "\" fill=\"none\" />");
267
+ };
268
+ /**
269
+ * Renders a PAT pattern preview as a complete SVG document string.
270
+ *
271
+ * The method applies option defaults, computes an automatic unit-to-pixel
272
+ * scale, transforms the pattern to screen space, and combines all line
273
+ * families into one grouped stroke layer over a background rectangle.
274
+ *
275
+ * @param pattern - Pattern definition to render.
276
+ * @param options - Optional preview style and size settings.
277
+ * @returns Standalone SVG markup that can be injected directly into DOM or
278
+ * saved as a `.svg` asset.
279
+ */
280
+ AcDbPatSvgRenderer.prototype.renderPattern = function (pattern, options) {
281
+ var _a, _b, _c, _d, _e;
282
+ if (options === void 0) { options = {}; }
283
+ var width = (_a = options.width) !== null && _a !== void 0 ? _a : 260;
284
+ var height = (_b = options.height) !== null && _b !== void 0 ? _b : 160;
285
+ var stroke = (_c = options.stroke) !== null && _c !== void 0 ? _c : '#1f2937';
286
+ var strokeWidth = (_d = options.strokeWidth) !== null && _d !== void 0 ? _d : 1.3;
287
+ var background = (_e = options.background) !== null && _e !== void 0 ? _e : '#ffffff';
288
+ var viewBox = "".concat(-width / 2, " ").concat(-height / 2, " ").concat(width, " ").concat(height);
289
+ if (AcDbPatSvgRenderer.isSolidPattern(pattern)) {
290
+ return [
291
+ "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"".concat(viewBox, "\" width=\"").concat(width, "\" height=\"").concat(height, "\">"),
292
+ AcDbPatSvgRenderer.renderBackground(width, height, background),
293
+ "<rect x=\"".concat(-width / 2, "\" y=\"").concat(-height / 2, "\" width=\"").concat(width, "\" height=\"").concat(height, "\" fill=\"").concat(stroke, "\" />"),
294
+ '</svg>'
295
+ ].join('');
296
+ }
297
+ var scaleUnit = AcDbPatSvgRenderer.estimateUnitScale(pattern);
298
+ var baseScale = Math.min(width, height) * 0.18;
299
+ var unitToPixel = baseScale / Math.max(scaleUnit, AcDbPatSvgRenderer.EPSILON);
300
+ var scaledPattern = __assign(__assign({}, pattern), { lines: pattern.lines.map(function (line) { return (__assign(__assign({}, line), { originX: line.originX * unitToPixel, originY: line.originY * unitToPixel, deltaX: line.deltaX * unitToPixel, deltaY: line.deltaY * unitToPixel, dashes: line.dashes.map(function (dash) { return dash * unitToPixel; }) })); }) });
301
+ var maxRadius = Math.hypot(width, height) * 0.75;
302
+ var content = scaledPattern.lines
303
+ .map(function (line) { return AcDbPatSvgRenderer.renderFamily(line, maxRadius); })
304
+ .join('');
305
+ return [
306
+ "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"".concat(viewBox, "\" width=\"").concat(width, "\" height=\"").concat(height, "\">"),
307
+ AcDbPatSvgRenderer.renderBackground(width, height, background),
308
+ "<g stroke=\"".concat(stroke, "\" stroke-width=\"").concat(strokeWidth.toFixed(2), "\" stroke-linecap=\"round\">"),
309
+ content,
310
+ '</g>',
311
+ '</svg>'
312
+ ].join('');
313
+ };
314
+ /** Numerical tolerance used to avoid division-by-zero and near-zero noise. */
315
+ AcDbPatSvgRenderer.EPSILON = 1e-9;
316
+ return AcDbPatSvgRenderer;
317
+ }());
318
+ export { AcDbPatSvgRenderer };
319
+ //# sourceMappingURL=AcDbPatSvgRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbPatSvgRenderer.js","sourceRoot":"","sources":["../../../src/misc/pat/AcDbPatSvgRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './AcDbPatDefinition';
2
+ export * from './AcDbPatParser';
3
+ export * from './AcDbPatPredefined';
4
+ export * from './AcDbPatSvgRenderer';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/misc/pat/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './AcDbPatDefinition';
2
+ export * from './AcDbPatParser';
3
+ export * from './AcDbPatPredefined';
4
+ export * from './AcDbPatSvgRenderer';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/misc/pat/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlightcad/data-model",
3
- "version": "1.7.29",
3
+ "version": "1.7.31",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -35,9 +35,9 @@
35
35
  "@mlightcad/dxf-json": "^1.2.0",
36
36
  "iconv-lite": "^0.7.0",
37
37
  "uid": "^2.0.2",
38
- "@mlightcad/common": "1.4.29",
39
- "@mlightcad/geometry-engine": "3.2.29",
40
- "@mlightcad/graphic-interface": "3.3.29"
38
+ "@mlightcad/common": "1.4.31",
39
+ "@mlightcad/geometry-engine": "3.2.31",
40
+ "@mlightcad/graphic-interface": "3.3.31"
41
41
  },
42
42
  "scripts": {
43
43
  "analyze": "pnpm run analyze:lib && pnpm run analyze:worker",