@mlightcad/data-model 1.10.1 → 1.10.3
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/README.md +17 -0
- package/dist/data-model.cjs +10 -7
- package/lib/converter/AcDbFontNameCollector.d.ts +6 -0
- package/lib/converter/AcDbFontNameCollector.d.ts.map +1 -1
- package/lib/converter/AcDbFontNameCollector.js +101 -37
- package/lib/converter/AcDbFontNameCollector.js.map +1 -1
- package/lib/converter/index.d.ts +1 -1
- package/lib/converter/index.d.ts.map +1 -1
- package/lib/converter/worker/AcDbBaseWorker.d.ts +22 -0
- package/lib/converter/worker/AcDbBaseWorker.d.ts.map +1 -1
- package/lib/converter/worker/AcDbBaseWorker.js +26 -3
- package/lib/converter/worker/AcDbBaseWorker.js.map +1 -1
- package/lib/converter/worker/AcDbWorkerManager.d.ts +3 -0
- package/lib/converter/worker/AcDbWorkerManager.d.ts.map +1 -1
- package/lib/converter/worker/AcDbWorkerManager.js +8 -3
- package/lib/converter/worker/AcDbWorkerManager.js.map +1 -1
- package/lib/converter/worker/index.d.ts +1 -1
- package/lib/converter/worker/index.d.ts.map +1 -1
- package/lib/database/AcDbBlockTable.d.ts +2 -1
- package/lib/database/AcDbBlockTable.d.ts.map +1 -1
- package/lib/database/AcDbBlockTable.js +7 -18
- package/lib/database/AcDbBlockTable.js.map +1 -1
- package/lib/database/AcDbBlockTableRecord.d.ts +7 -1
- package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbBlockTableRecord.js +48 -13
- package/lib/database/AcDbBlockTableRecord.js.map +1 -1
- package/lib/database/AcDbDatabase.d.ts +92 -12
- package/lib/database/AcDbDatabase.d.ts.map +1 -1
- package/lib/database/AcDbDatabase.js +322 -198
- package/lib/database/AcDbDatabase.js.map +1 -1
- package/lib/database/AcDbOpenDatabaseError.d.ts +113 -0
- package/lib/database/AcDbOpenDatabaseError.d.ts.map +1 -0
- package/lib/database/AcDbOpenDatabaseError.js +156 -0
- package/lib/database/AcDbOpenDatabaseError.js.map +1 -0
- package/lib/database/AcDbSymbolTable.d.ts +20 -3
- package/lib/database/AcDbSymbolTable.d.ts.map +1 -1
- package/lib/database/AcDbSymbolTable.js +120 -11
- package/lib/database/AcDbSymbolTable.js.map +1 -1
- package/lib/database/AcDbTextStyleTable.js +1 -1
- package/lib/database/AcDbTextStyleTable.js.map +1 -1
- package/lib/database/index.d.ts +3 -1
- package/lib/database/index.d.ts.map +1 -1
- package/lib/database/index.js +1 -0
- package/lib/database/index.js.map +1 -1
- package/lib/entity/AcDb3dSolid.d.ts +77 -0
- package/lib/entity/AcDb3dSolid.d.ts.map +1 -0
- package/lib/entity/AcDb3dSolid.js +232 -0
- package/lib/entity/AcDb3dSolid.js.map +1 -0
- package/lib/entity/AcDbFcf.d.ts +144 -0
- package/lib/entity/AcDbFcf.d.ts.map +1 -0
- package/lib/entity/AcDbFcf.js +718 -0
- package/lib/entity/AcDbFcf.js.map +1 -0
- package/lib/entity/AcDbLeader.d.ts +44 -0
- package/lib/entity/AcDbLeader.d.ts.map +1 -1
- package/lib/entity/AcDbLeader.js +238 -10
- package/lib/entity/AcDbLeader.js.map +1 -1
- package/lib/entity/AcDbMText.d.ts +10 -0
- package/lib/entity/AcDbMText.d.ts.map +1 -1
- package/lib/entity/AcDbMText.js +28 -3
- package/lib/entity/AcDbMText.js.map +1 -1
- package/lib/entity/AcDbTextExtentsHelpers.d.ts +104 -1
- package/lib/entity/AcDbTextExtentsHelpers.d.ts.map +1 -1
- package/lib/entity/AcDbTextExtentsHelpers.js +126 -0
- package/lib/entity/AcDbTextExtentsHelpers.js.map +1 -1
- package/lib/entity/index.d.ts +2 -0
- package/lib/entity/index.d.ts.map +1 -1
- package/lib/entity/index.js +2 -0
- package/lib/entity/index.js.map +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/misc/AcDbObjectIterator.d.ts +5 -4
- package/lib/misc/AcDbObjectIterator.d.ts.map +1 -1
- package/lib/misc/AcDbObjectIterator.js +50 -5
- package/lib/misc/AcDbObjectIterator.js.map +1 -1
- package/lib/object/AcDbDictionary.d.ts +0 -2
- package/lib/object/AcDbDictionary.d.ts.map +1 -1
- package/lib/object/AcDbDictionary.js +21 -12
- package/lib/object/AcDbDictionary.js.map +1 -1
- package/package.json +4 -4
|
@@ -13,6 +13,42 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
13
13
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
14
14
|
};
|
|
15
15
|
})();
|
|
16
|
+
var __values = (this && this.__values) || function(o) {
|
|
17
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
18
|
+
if (m) return m.call(o);
|
|
19
|
+
if (o && typeof o.length === "number") return {
|
|
20
|
+
next: function () {
|
|
21
|
+
if (o && i >= o.length) o = void 0;
|
|
22
|
+
return { value: o && o[i++], done: !o };
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
26
|
+
};
|
|
27
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
28
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
29
|
+
if (!m) return o;
|
|
30
|
+
var i = m.call(o), r, ar = [], e;
|
|
31
|
+
try {
|
|
32
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
33
|
+
}
|
|
34
|
+
catch (error) { e = { error: error }; }
|
|
35
|
+
finally {
|
|
36
|
+
try {
|
|
37
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
38
|
+
}
|
|
39
|
+
finally { if (e) throw e.error; }
|
|
40
|
+
}
|
|
41
|
+
return ar;
|
|
42
|
+
};
|
|
43
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
44
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
45
|
+
if (ar || !(i in from)) {
|
|
46
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
47
|
+
ar[i] = from[i];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
51
|
+
};
|
|
16
52
|
import { AcDbObject } from '../base/AcDbObject';
|
|
17
53
|
import { AcDbObjectIterator } from '../misc/AcDbObjectIterator';
|
|
18
54
|
/**
|
|
@@ -52,7 +88,7 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
52
88
|
// Symbol tables are owned by the database object (handle "0").
|
|
53
89
|
_this.ownerId = db.objectId;
|
|
54
90
|
_this._recordsByName = new Map();
|
|
55
|
-
_this.
|
|
91
|
+
_this._unnamedRecords = [];
|
|
56
92
|
return _this;
|
|
57
93
|
}
|
|
58
94
|
Object.defineProperty(AcDbSymbolTable.prototype, "numEntries", {
|
|
@@ -67,6 +103,18 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
67
103
|
enumerable: false,
|
|
68
104
|
configurable: true
|
|
69
105
|
});
|
|
106
|
+
Object.defineProperty(AcDbSymbolTable.prototype, "totalRecordCount", {
|
|
107
|
+
/**
|
|
108
|
+
* Total record count including unnamed entries.
|
|
109
|
+
*
|
|
110
|
+
* @internal
|
|
111
|
+
*/
|
|
112
|
+
get: function () {
|
|
113
|
+
return this._recordsByName.size + this._unnamedRecords.length;
|
|
114
|
+
},
|
|
115
|
+
enumerable: false,
|
|
116
|
+
configurable: true
|
|
117
|
+
});
|
|
70
118
|
/**
|
|
71
119
|
* Adds a record to both the database containing the table and the table itself.
|
|
72
120
|
*
|
|
@@ -94,7 +142,9 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
94
142
|
if (normalizedName) {
|
|
95
143
|
this._recordsByName.set(normalizedName, record);
|
|
96
144
|
}
|
|
97
|
-
|
|
145
|
+
else {
|
|
146
|
+
this._unnamedRecords.push(record);
|
|
147
|
+
}
|
|
98
148
|
if (manager.isRecording()) {
|
|
99
149
|
manager.recordAppend({ type: 'symbolTable', tableName: tableName }, record);
|
|
100
150
|
}
|
|
@@ -137,7 +187,7 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
137
187
|
* ```
|
|
138
188
|
*/
|
|
139
189
|
AcDbSymbolTable.prototype.removeId = function (id) {
|
|
140
|
-
var record = this.
|
|
190
|
+
var record = this.getIdAt(id);
|
|
141
191
|
if (record) {
|
|
142
192
|
this.removeRecord(record);
|
|
143
193
|
return true;
|
|
@@ -163,8 +213,8 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
163
213
|
var tableName = manager.resolveSymbolTableName(this);
|
|
164
214
|
manager.recordRemove({ type: 'symbolTable', tableName: tableName }, record);
|
|
165
215
|
}
|
|
166
|
-
this.
|
|
167
|
-
this.
|
|
216
|
+
this.removeFromMembership(record);
|
|
217
|
+
this.database.releaseObjectHandle(record);
|
|
168
218
|
};
|
|
169
219
|
/**
|
|
170
220
|
* Removes all records from the table.
|
|
@@ -176,8 +226,35 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
176
226
|
* ```
|
|
177
227
|
*/
|
|
178
228
|
AcDbSymbolTable.prototype.removeAll = function () {
|
|
229
|
+
var e_1, _a, e_2, _b;
|
|
230
|
+
try {
|
|
231
|
+
for (var _c = __values(this._recordsByName.values()), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
232
|
+
var record = _d.value;
|
|
233
|
+
this.database.releaseObjectHandle(record);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
237
|
+
finally {
|
|
238
|
+
try {
|
|
239
|
+
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
240
|
+
}
|
|
241
|
+
finally { if (e_1) throw e_1.error; }
|
|
242
|
+
}
|
|
243
|
+
try {
|
|
244
|
+
for (var _e = __values(this._unnamedRecords), _f = _e.next(); !_f.done; _f = _e.next()) {
|
|
245
|
+
var record = _f.value;
|
|
246
|
+
this.database.releaseObjectHandle(record);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
250
|
+
finally {
|
|
251
|
+
try {
|
|
252
|
+
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
|
|
253
|
+
}
|
|
254
|
+
finally { if (e_2) throw e_2.error; }
|
|
255
|
+
}
|
|
179
256
|
this._recordsByName.clear();
|
|
180
|
-
this.
|
|
257
|
+
this._unnamedRecords.length = 0;
|
|
181
258
|
};
|
|
182
259
|
/**
|
|
183
260
|
* Checks if the table contains a record with the specified name.
|
|
@@ -210,7 +287,7 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
210
287
|
* ```
|
|
211
288
|
*/
|
|
212
289
|
AcDbSymbolTable.prototype.hasId = function (id) {
|
|
213
|
-
return this.
|
|
290
|
+
return this.getIdAt(id) !== undefined;
|
|
214
291
|
};
|
|
215
292
|
/**
|
|
216
293
|
* Searches the table for a record with the specified name.
|
|
@@ -245,7 +322,15 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
245
322
|
* ```
|
|
246
323
|
*/
|
|
247
324
|
AcDbSymbolTable.prototype.getIdAt = function (id) {
|
|
248
|
-
|
|
325
|
+
var object = this.database.getObjectById(id);
|
|
326
|
+
if (!object) {
|
|
327
|
+
return undefined;
|
|
328
|
+
}
|
|
329
|
+
var ownerId = object.getAttrWithoutException('ownerId');
|
|
330
|
+
if (ownerId !== this.objectId) {
|
|
331
|
+
return undefined;
|
|
332
|
+
}
|
|
333
|
+
return object;
|
|
249
334
|
};
|
|
250
335
|
/**
|
|
251
336
|
* Gets the owner ID of a record with the specified ID.
|
|
@@ -262,7 +347,7 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
262
347
|
* ```
|
|
263
348
|
*/
|
|
264
349
|
AcDbSymbolTable.prototype.getOwnerIdAt = function (id) {
|
|
265
|
-
return this.
|
|
350
|
+
return this.getIdAt(id);
|
|
266
351
|
};
|
|
267
352
|
/**
|
|
268
353
|
* Creates an iterator object that can be used to iterate over the records in the table.
|
|
@@ -281,7 +366,10 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
281
366
|
*/
|
|
282
367
|
AcDbSymbolTable.prototype.newIterator = function (iterateById) {
|
|
283
368
|
if (iterateById === void 0) { iterateById = false; }
|
|
284
|
-
|
|
369
|
+
if (iterateById) {
|
|
370
|
+
return new AcDbObjectIterator(__spreadArray(__spreadArray([], __read(this._recordsByName.values()), false), __read(this._unnamedRecords), false));
|
|
371
|
+
}
|
|
372
|
+
return new AcDbObjectIterator(this._recordsByName);
|
|
285
373
|
};
|
|
286
374
|
/**
|
|
287
375
|
* Normalizes the name of a symbol table record.
|
|
@@ -308,7 +396,7 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
308
396
|
* Entry count written to DXF group code 70 for this symbol table.
|
|
309
397
|
*
|
|
310
398
|
* Defaults to {@link numEntries}. Subclasses may override when unnamed records
|
|
311
|
-
* are stored
|
|
399
|
+
* are stored separately from {@link _recordsByName}.
|
|
312
400
|
*/
|
|
313
401
|
get: function () {
|
|
314
402
|
return this.numEntries;
|
|
@@ -330,6 +418,27 @@ var AcDbSymbolTable = /** @class */ (function (_super) {
|
|
|
330
418
|
filer.writeInt16(70, this.dxfEntryCount);
|
|
331
419
|
return this;
|
|
332
420
|
};
|
|
421
|
+
/**
|
|
422
|
+
* Removes a record from internal membership structures only.
|
|
423
|
+
*
|
|
424
|
+
* Named records are removed from {@link _recordsByName}; records without a
|
|
425
|
+
* normalized name are removed from {@link _unnamedRecords}. Does not release
|
|
426
|
+
* object handles or record transaction changes — callers must handle those
|
|
427
|
+
* separately (see {@link removeRecord}).
|
|
428
|
+
*
|
|
429
|
+
* @param record - Symbol table record to remove from membership.
|
|
430
|
+
*/
|
|
431
|
+
AcDbSymbolTable.prototype.removeFromMembership = function (record) {
|
|
432
|
+
var normalizedName = this.normalizeName(record.name);
|
|
433
|
+
if (normalizedName) {
|
|
434
|
+
this._recordsByName.delete(normalizedName);
|
|
435
|
+
return;
|
|
436
|
+
}
|
|
437
|
+
var index = this._unnamedRecords.indexOf(record);
|
|
438
|
+
if (index >= 0) {
|
|
439
|
+
this._unnamedRecords.splice(index, 1);
|
|
440
|
+
}
|
|
441
|
+
};
|
|
333
442
|
return AcDbSymbolTable;
|
|
334
443
|
}(AcDbObject));
|
|
335
444
|
export { AcDbSymbolTable };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcDbSymbolTable.js","sourceRoot":"","sources":["../../src/database/AcDbSymbolTable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AcDbSymbolTable.js","sourceRoot":"","sources":["../../src/database/AcDbSymbolTable.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,7 +62,7 @@ var AcDbTextStyleTable = /** @class */ (function (_super) {
|
|
|
62
62
|
}
|
|
63
63
|
Object.defineProperty(AcDbTextStyleTable.prototype, "dxfEntryCount", {
|
|
64
64
|
get: function () {
|
|
65
|
-
return this.
|
|
65
|
+
return this.totalRecordCount;
|
|
66
66
|
},
|
|
67
67
|
enumerable: false,
|
|
68
68
|
configurable: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcDbTextStyleTable.js","sourceRoot":"","sources":["../../src/database/AcDbTextStyleTable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAGnD;;;;;;;;;;;;;;;;;GAiBG;AACH;IAAwC,sCAAyC;IAC/E;;;;;;;;;OASG;IACH,4BAAY,EAAgB;QAC1B,OAAA,MAAK,YAAC,EAAE,CAAC,SAAA;IACX,CAAC;IAED,sBAAuB,6CAAa;aAApC;YACE,OAAO,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"AcDbTextStyleTable.js","sourceRoot":"","sources":["../../src/database/AcDbTextStyleTable.ts"],"names":[],"mappings":"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"}
|
package/lib/database/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { AcDbDatabase } from './AcDbDatabase';
|
|
2
|
-
export type { AcDbCreateDefaultDataOptions, AcDbDictObjectEventArgs, AcDbEntityEventArgs, AcDbFontInfo, AcDbFontLoader, AcDbLayerEventArgs, AcDbLayerModifiedEventArgs, AcDbOpenDatabaseOptions, AcDbOpenFileStage, AcDbProgressdEventArgs, AcDbTables } from './AcDbDatabase';
|
|
2
|
+
export type { AcDbCreateDefaultDataOptions, AcDbDictObjectEventArgs, AcDbEntityEventArgs, AcDbFontInfo, AcDbFontLoader, AcDbLayerEventArgs, AcDbLayerModifiedEventArgs, AcDbOpenDatabaseOptions, AcDbOpenFailedEventArgs, AcDbOpenFileStage, AcDbProgressdEventArgs, AcDbTables } from './AcDbDatabase';
|
|
3
|
+
export { AcDbOpenDatabaseError } from './AcDbOpenDatabaseError';
|
|
4
|
+
export type { AcDbOpenDatabaseErrorCode } from './AcDbOpenDatabaseError';
|
|
3
5
|
export { AcDbBlockTable } from './AcDbBlockTable';
|
|
4
6
|
export { AcDbBlockScaling, AcDbBlockTableRecord } from './AcDbBlockTableRecord';
|
|
5
7
|
export type { AcDbBlockTableRecordAttrs } from './AcDbBlockTableRecord';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,YAAY,EACV,4BAA4B,EAC5B,uBAAuB,EACvB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,EACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC/E,YAAY,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,YAAY,EACV,8BAA8B,EAC9B,mBAAmB,EACnB,kCAAkC,EAClC,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EAChB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,4BAA4B,EAC5B,YAAY,EACb,MAAM,gCAAgC,CAAA;AACvC,YAAY,EACV,iBAAiB,EACjB,qCAAqC,EACtC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,YAAY,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAC3E,YAAY,EAAE,gCAAgC,EAAE,MAAM,+BAA+B,CAAA;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,YAAY,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,EAC7B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,cAAc,EACd,sBAAsB,EACvB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EACnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,eAAe,CAAA;AACtB,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACf,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,YAAY,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,YAAY,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"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"}
|
package/lib/database/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { AcDbDatabase } from './AcDbDatabase';
|
|
2
|
+
export { AcDbOpenDatabaseError } from './AcDbOpenDatabaseError';
|
|
2
3
|
export { AcDbBlockTable } from './AcDbBlockTable';
|
|
3
4
|
export { AcDbBlockScaling, AcDbBlockTableRecord } from './AcDbBlockTableRecord';
|
|
4
5
|
export { AcDbDatabaseConverter } from './AcDbDatabaseConverter';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAe7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAU/D,OAAO,EACL,4BAA4B,EAC5B,YAAY,EACb,MAAM,gCAAgC,CAAA;AAKvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAE3E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAKnE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,uBAAuB,CAAA;AAK9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAOvD,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,eAAe,CAAA;AAOtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { AcGeBox3d, AcGeMatrix3d } from '@mlightcad/geometry-engine';
|
|
2
|
+
import { AcGiRenderer } from '@mlightcad/graphic-interface';
|
|
3
|
+
import { AcDbDxfFiler } from '../base/AcDbDxfFiler';
|
|
4
|
+
import { AcDbEntity } from './AcDbEntity';
|
|
5
|
+
/**
|
|
6
|
+
* Represents a 3D solid (ACIS/ASM B-rep) entity, such as those created by
|
|
7
|
+
* AutoCAD's BOX, WEDGE, EXTRUDE, or boolean solid-modeling commands.
|
|
8
|
+
*
|
|
9
|
+
* Full B-rep tessellation (rendering the solid's actual trimmed
|
|
10
|
+
* NURBS/planar faces) is not yet supported — that requires implementing (or
|
|
11
|
+
* embedding) a real ACIS/ASM geometry kernel, which is out of scope here.
|
|
12
|
+
*
|
|
13
|
+
* Instead, this renders a wireframe bounding box derived from every vertex
|
|
14
|
+
* position embedded in the entity's raw ACIS SAT data, so the solid is at
|
|
15
|
+
* least visible at its correct location and approximate size rather than
|
|
16
|
+
* silently missing from the drawing. The `point` record format is stable
|
|
17
|
+
* across ACIS SAT versions and independent of the (much more variable)
|
|
18
|
+
* topology record layouts, which is why this approach works without a full
|
|
19
|
+
* B-rep parser. When `acisData` holds binary ASM/SAB data instead of SAT
|
|
20
|
+
* text (common in DWG 2013+), no points are found and this renders nothing.
|
|
21
|
+
*/
|
|
22
|
+
export declare class AcDb3dSolid extends AcDbEntity {
|
|
23
|
+
/** The entity type name */
|
|
24
|
+
static typeName: string;
|
|
25
|
+
get dxfTypeName(): string;
|
|
26
|
+
/** Raw ACIS SAT text (or ASM/SAB binary payload) for this solid. */
|
|
27
|
+
private _acisData;
|
|
28
|
+
/** DXF group 70 ACIS version number, when present. */
|
|
29
|
+
private _version?;
|
|
30
|
+
/** Vertex positions extracted from `point` records in {@link _acisData}. */
|
|
31
|
+
private _points;
|
|
32
|
+
/**
|
|
33
|
+
* Creates a new 3D solid entity from raw ACIS data.
|
|
34
|
+
*
|
|
35
|
+
* @param acisData - Raw ACIS SAT text (group 1/3 lines) or ASM/SAB binary payload.
|
|
36
|
+
* @param version - DXF group 70 ACIS version number, when present.
|
|
37
|
+
*/
|
|
38
|
+
constructor(acisData: string, version?: number);
|
|
39
|
+
/**
|
|
40
|
+
* Raw ACIS SAT text (or ASM/SAB binary payload) for this solid, preserved
|
|
41
|
+
* for future full B-rep parsing support.
|
|
42
|
+
*/
|
|
43
|
+
get acisData(): string;
|
|
44
|
+
/** DXF group 70 ACIS version number, when present. */
|
|
45
|
+
get version(): number | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* Whether any vertex positions could be extracted from {@link acisData}.
|
|
48
|
+
* False when the data is binary (ASM/SAB) rather than SAT text.
|
|
49
|
+
*/
|
|
50
|
+
get hasRenderableGeometry(): boolean;
|
|
51
|
+
/** @inheritdoc */
|
|
52
|
+
get geometricExtents(): AcGeBox3d;
|
|
53
|
+
/**
|
|
54
|
+
* Transforms this solid by the specified matrix.
|
|
55
|
+
*
|
|
56
|
+
* Only the extracted point cloud (and thus the wireframe bounding box) is
|
|
57
|
+
* transformed; {@link acisData} itself is left untouched since it isn't
|
|
58
|
+
* fully parsed.
|
|
59
|
+
*/
|
|
60
|
+
transformBy(matrix: AcGeMatrix3d): this;
|
|
61
|
+
/**
|
|
62
|
+
* Draws a wireframe bounding box around the solid's extracted point cloud.
|
|
63
|
+
*
|
|
64
|
+
* @param renderer - The renderer to use for drawing
|
|
65
|
+
* @returns The rendered wireframe entity, or `undefined` when no points
|
|
66
|
+
* could be extracted from {@link acisData}.
|
|
67
|
+
*/
|
|
68
|
+
subWorldDraw(renderer: AcGiRenderer): import("@mlightcad/graphic-interface").AcGiEntity | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* Writes DXF fields for this object.
|
|
71
|
+
*
|
|
72
|
+
* @param filer - DXF output writer.
|
|
73
|
+
* @returns The instance (for chaining).
|
|
74
|
+
*/
|
|
75
|
+
dxfOutFields(filer: AcDbDxfFiler): this;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=AcDb3dSolid.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDb3dSolid.d.ts","sourceRoot":"","sources":["../../src/entity/AcDb3dSolid.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EAEb,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAmCzC;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAY,SAAQ,UAAU;IACzC,2BAA2B;IAC3B,OAAgB,QAAQ,EAAE,MAAM,CAAY;IAE5C,IAAa,WAAW,WAEvB;IAED,oEAAoE;IACpE,OAAO,CAAC,SAAS,CAAQ;IACzB,sDAAsD;IACtD,OAAO,CAAC,QAAQ,CAAC,CAAQ;IACzB,4EAA4E;IAC5E,OAAO,CAAC,OAAO,CAAe;IAE9B;;;;;OAKG;gBACS,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAO9C;;;OAGG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,sDAAsD;IACtD,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED;;;OAGG;IACH,IAAI,qBAAqB,IAAI,OAAO,CAEnC;IAED,kBAAkB;IAClB,IAAI,gBAAgB,IAAI,SAAS,CAKhC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY;IAKhC;;;;;;OAMG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY;IAgCnC;;;;;OAKG;IACM,YAAY,CAAC,KAAK,EAAE,YAAY;CAqB1C"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
if (typeof b !== "function" && b !== null)
|
|
10
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
11
|
+
extendStatics(d, b);
|
|
12
|
+
function __() { this.constructor = d; }
|
|
13
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
var __values = (this && this.__values) || function(o) {
|
|
17
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
18
|
+
if (m) return m.call(o);
|
|
19
|
+
if (o && typeof o.length === "number") return {
|
|
20
|
+
next: function () {
|
|
21
|
+
if (o && i >= o.length) o = void 0;
|
|
22
|
+
return { value: o && o[i++], done: !o };
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
26
|
+
};
|
|
27
|
+
import { AcGeBox3d, AcGePoint3d } from '@mlightcad/geometry-engine';
|
|
28
|
+
import { AcDbEntity } from './AcDbEntity';
|
|
29
|
+
/**
|
|
30
|
+
* Matches every `point` record in an ACIS SAT text stream, e.g.
|
|
31
|
+
* `point $-1 10 0 -10 #`. The `point` record format (attribute pointer
|
|
32
|
+
* followed by x/y/z) has been stable across ACIS SAT versions, unlike the
|
|
33
|
+
* topology records (`face`/`loop`/`coedge`/`edge`), whose field layout and
|
|
34
|
+
* count vary by surface/curve type and ACIS version. Extracting every point
|
|
35
|
+
* this way, independent of the body's topology, is a format detail that's
|
|
36
|
+
* safe to rely on regardless of which faces/edges reference it.
|
|
37
|
+
*/
|
|
38
|
+
var ACIS_POINT_RECORD = /\bpoint\s+\$-?\d+\s+([^\s]+)\s+([^\s]+)\s+([^\s]+)/g;
|
|
39
|
+
/**
|
|
40
|
+
* Extracts every vertex position referenced by `point` records in an ACIS
|
|
41
|
+
* SAT text stream.
|
|
42
|
+
*
|
|
43
|
+
* @param acisData - Raw ACIS SAT text (the concatenated group 1/3 lines of a
|
|
44
|
+
* DXF `3DSOLID`/`REGION`/`BODY` entity).
|
|
45
|
+
* @returns Every point found, in file order. Empty when `acisData` doesn't
|
|
46
|
+
* contain any recognizable `point` records (e.g. binary ASM/SAB data).
|
|
47
|
+
*/
|
|
48
|
+
function extractAcisPointCloud(acisData) {
|
|
49
|
+
var e_1, _a;
|
|
50
|
+
var points = [];
|
|
51
|
+
try {
|
|
52
|
+
for (var _b = __values(acisData.matchAll(ACIS_POINT_RECORD)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
53
|
+
var match = _c.value;
|
|
54
|
+
var x = Number.parseFloat(match[1]);
|
|
55
|
+
var y = Number.parseFloat(match[2]);
|
|
56
|
+
var z = Number.parseFloat(match[3]);
|
|
57
|
+
if (Number.isFinite(x) && Number.isFinite(y) && Number.isFinite(z)) {
|
|
58
|
+
points.push(new AcGePoint3d(x, y, z));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
63
|
+
finally {
|
|
64
|
+
try {
|
|
65
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
66
|
+
}
|
|
67
|
+
finally { if (e_1) throw e_1.error; }
|
|
68
|
+
}
|
|
69
|
+
return points;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Represents a 3D solid (ACIS/ASM B-rep) entity, such as those created by
|
|
73
|
+
* AutoCAD's BOX, WEDGE, EXTRUDE, or boolean solid-modeling commands.
|
|
74
|
+
*
|
|
75
|
+
* Full B-rep tessellation (rendering the solid's actual trimmed
|
|
76
|
+
* NURBS/planar faces) is not yet supported — that requires implementing (or
|
|
77
|
+
* embedding) a real ACIS/ASM geometry kernel, which is out of scope here.
|
|
78
|
+
*
|
|
79
|
+
* Instead, this renders a wireframe bounding box derived from every vertex
|
|
80
|
+
* position embedded in the entity's raw ACIS SAT data, so the solid is at
|
|
81
|
+
* least visible at its correct location and approximate size rather than
|
|
82
|
+
* silently missing from the drawing. The `point` record format is stable
|
|
83
|
+
* across ACIS SAT versions and independent of the (much more variable)
|
|
84
|
+
* topology record layouts, which is why this approach works without a full
|
|
85
|
+
* B-rep parser. When `acisData` holds binary ASM/SAB data instead of SAT
|
|
86
|
+
* text (common in DWG 2013+), no points are found and this renders nothing.
|
|
87
|
+
*/
|
|
88
|
+
var AcDb3dSolid = /** @class */ (function (_super) {
|
|
89
|
+
__extends(AcDb3dSolid, _super);
|
|
90
|
+
/**
|
|
91
|
+
* Creates a new 3D solid entity from raw ACIS data.
|
|
92
|
+
*
|
|
93
|
+
* @param acisData - Raw ACIS SAT text (group 1/3 lines) or ASM/SAB binary payload.
|
|
94
|
+
* @param version - DXF group 70 ACIS version number, when present.
|
|
95
|
+
*/
|
|
96
|
+
function AcDb3dSolid(acisData, version) {
|
|
97
|
+
var _this = _super.call(this) || this;
|
|
98
|
+
_this._acisData = acisData;
|
|
99
|
+
_this._version = version;
|
|
100
|
+
_this._points = extractAcisPointCloud(acisData);
|
|
101
|
+
return _this;
|
|
102
|
+
}
|
|
103
|
+
Object.defineProperty(AcDb3dSolid.prototype, "dxfTypeName", {
|
|
104
|
+
get: function () {
|
|
105
|
+
return '3DSOLID';
|
|
106
|
+
},
|
|
107
|
+
enumerable: false,
|
|
108
|
+
configurable: true
|
|
109
|
+
});
|
|
110
|
+
Object.defineProperty(AcDb3dSolid.prototype, "acisData", {
|
|
111
|
+
/**
|
|
112
|
+
* Raw ACIS SAT text (or ASM/SAB binary payload) for this solid, preserved
|
|
113
|
+
* for future full B-rep parsing support.
|
|
114
|
+
*/
|
|
115
|
+
get: function () {
|
|
116
|
+
return this._acisData;
|
|
117
|
+
},
|
|
118
|
+
enumerable: false,
|
|
119
|
+
configurable: true
|
|
120
|
+
});
|
|
121
|
+
Object.defineProperty(AcDb3dSolid.prototype, "version", {
|
|
122
|
+
/** DXF group 70 ACIS version number, when present. */
|
|
123
|
+
get: function () {
|
|
124
|
+
return this._version;
|
|
125
|
+
},
|
|
126
|
+
enumerable: false,
|
|
127
|
+
configurable: true
|
|
128
|
+
});
|
|
129
|
+
Object.defineProperty(AcDb3dSolid.prototype, "hasRenderableGeometry", {
|
|
130
|
+
/**
|
|
131
|
+
* Whether any vertex positions could be extracted from {@link acisData}.
|
|
132
|
+
* False when the data is binary (ASM/SAB) rather than SAT text.
|
|
133
|
+
*/
|
|
134
|
+
get: function () {
|
|
135
|
+
return this._points.length > 0;
|
|
136
|
+
},
|
|
137
|
+
enumerable: false,
|
|
138
|
+
configurable: true
|
|
139
|
+
});
|
|
140
|
+
Object.defineProperty(AcDb3dSolid.prototype, "geometricExtents", {
|
|
141
|
+
/** @inheritdoc */
|
|
142
|
+
get: function () {
|
|
143
|
+
if (this._points.length === 0) {
|
|
144
|
+
return new AcGeBox3d(new AcGePoint3d(0, 0, 0), new AcGePoint3d(0, 0, 0));
|
|
145
|
+
}
|
|
146
|
+
return new AcGeBox3d().setFromPoints(this._points);
|
|
147
|
+
},
|
|
148
|
+
enumerable: false,
|
|
149
|
+
configurable: true
|
|
150
|
+
});
|
|
151
|
+
/**
|
|
152
|
+
* Transforms this solid by the specified matrix.
|
|
153
|
+
*
|
|
154
|
+
* Only the extracted point cloud (and thus the wireframe bounding box) is
|
|
155
|
+
* transformed; {@link acisData} itself is left untouched since it isn't
|
|
156
|
+
* fully parsed.
|
|
157
|
+
*/
|
|
158
|
+
AcDb3dSolid.prototype.transformBy = function (matrix) {
|
|
159
|
+
this._points.forEach(function (point) { return point.applyMatrix4(matrix); });
|
|
160
|
+
return this;
|
|
161
|
+
};
|
|
162
|
+
/**
|
|
163
|
+
* Draws a wireframe bounding box around the solid's extracted point cloud.
|
|
164
|
+
*
|
|
165
|
+
* @param renderer - The renderer to use for drawing
|
|
166
|
+
* @returns The rendered wireframe entity, or `undefined` when no points
|
|
167
|
+
* could be extracted from {@link acisData}.
|
|
168
|
+
*/
|
|
169
|
+
AcDb3dSolid.prototype.subWorldDraw = function (renderer) {
|
|
170
|
+
if (this._points.length === 0) {
|
|
171
|
+
return undefined;
|
|
172
|
+
}
|
|
173
|
+
var box = this.geometricExtents;
|
|
174
|
+
var min = box.min;
|
|
175
|
+
var max = box.max;
|
|
176
|
+
var corners = [
|
|
177
|
+
new AcGePoint3d(min.x, min.y, min.z),
|
|
178
|
+
new AcGePoint3d(max.x, min.y, min.z),
|
|
179
|
+
new AcGePoint3d(max.x, max.y, min.z),
|
|
180
|
+
new AcGePoint3d(min.x, max.y, min.z),
|
|
181
|
+
new AcGePoint3d(min.x, min.y, max.z),
|
|
182
|
+
new AcGePoint3d(max.x, min.y, max.z),
|
|
183
|
+
new AcGePoint3d(max.x, max.y, max.z),
|
|
184
|
+
new AcGePoint3d(min.x, max.y, max.z)
|
|
185
|
+
];
|
|
186
|
+
var buffer = new Float32Array(corners.length * 3);
|
|
187
|
+
corners.forEach(function (corner, i) {
|
|
188
|
+
buffer[i * 3] = corner.x;
|
|
189
|
+
buffer[i * 3 + 1] = corner.y;
|
|
190
|
+
buffer[i * 3 + 2] = corner.z;
|
|
191
|
+
});
|
|
192
|
+
// 12 edges of a box, referencing the 8 corners above.
|
|
193
|
+
var indices = new Uint16Array([
|
|
194
|
+
0, 1, 1, 2, 2, 3, 3, 0, // bottom face
|
|
195
|
+
4, 5, 5, 6, 6, 7, 7, 4, // top face
|
|
196
|
+
0, 4, 1, 5, 2, 6, 3, 7 // vertical edges
|
|
197
|
+
]);
|
|
198
|
+
return renderer.lineSegments(buffer, 3, indices);
|
|
199
|
+
};
|
|
200
|
+
/**
|
|
201
|
+
* Writes DXF fields for this object.
|
|
202
|
+
*
|
|
203
|
+
* @param filer - DXF output writer.
|
|
204
|
+
* @returns The instance (for chaining).
|
|
205
|
+
*/
|
|
206
|
+
AcDb3dSolid.prototype.dxfOutFields = function (filer) {
|
|
207
|
+
_super.prototype.dxfOutFields.call(this, filer);
|
|
208
|
+
filer.writeSubclassMarker('AcDb3dSolid');
|
|
209
|
+
if (this._version != null) {
|
|
210
|
+
filer.writeInt16(70, this._version);
|
|
211
|
+
}
|
|
212
|
+
// ACIS text is written as chunked group-3 continuation lines (max 255
|
|
213
|
+
// chars each per the DXF spec), terminated by a final group-1 line.
|
|
214
|
+
var maxChunkLength = 255;
|
|
215
|
+
var lines = this._acisData.split('\n');
|
|
216
|
+
for (var i = 0; i < lines.length; i++) {
|
|
217
|
+
var isLast = i === lines.length - 1;
|
|
218
|
+
var line = lines[i];
|
|
219
|
+
while (line.length > maxChunkLength) {
|
|
220
|
+
filer.writeString(3, line.slice(0, maxChunkLength));
|
|
221
|
+
line = line.slice(maxChunkLength);
|
|
222
|
+
}
|
|
223
|
+
filer.writeString(isLast ? 1 : 3, line);
|
|
224
|
+
}
|
|
225
|
+
return this;
|
|
226
|
+
};
|
|
227
|
+
/** The entity type name */
|
|
228
|
+
AcDb3dSolid.typeName = '3dSolid';
|
|
229
|
+
return AcDb3dSolid;
|
|
230
|
+
}(AcDbEntity));
|
|
231
|
+
export { AcDb3dSolid };
|
|
232
|
+
//# sourceMappingURL=AcDb3dSolid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDb3dSolid.js","sourceRoot":"","sources":["../../src/entity/AcDb3dSolid.ts"],"names":[],"mappings":"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"}
|