@mlightcad/libredwg-converter 1.0.1

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.
@@ -0,0 +1,547 @@
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
17
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
18
+ return new (P || (P = Promise))(function (resolve, reject) {
19
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
20
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
21
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
22
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
23
+ });
24
+ };
25
+ var __generator = (this && this.__generator) || function (thisArg, body) {
26
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
27
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
28
+ function verb(n) { return function (v) { return step([n, v]); }; }
29
+ function step(op) {
30
+ if (f) throw new TypeError("Generator is already executing.");
31
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
32
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
33
+ if (y = 0, t) op = [op[0] & 2, t.value];
34
+ switch (op[0]) {
35
+ case 0: case 1: t = op; break;
36
+ case 4: _.label++; return { value: op[1], done: false };
37
+ case 5: _.label++; y = op[1]; op = [0]; continue;
38
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
39
+ default:
40
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
41
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
42
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
43
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
44
+ if (t[2]) _.ops.pop();
45
+ _.trys.pop(); continue;
46
+ }
47
+ op = body.call(thisArg, _);
48
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
49
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
+ }
51
+ };
52
+ var __read = (this && this.__read) || function (o, n) {
53
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
54
+ if (!m) return o;
55
+ var i = m.call(o), r, ar = [], e;
56
+ try {
57
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
58
+ }
59
+ catch (error) { e = { error: error }; }
60
+ finally {
61
+ try {
62
+ if (r && !r.done && (m = i["return"])) m.call(i);
63
+ }
64
+ finally { if (e) throw e.error; }
65
+ }
66
+ return ar;
67
+ };
68
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
69
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
70
+ if (ar || !(i in from)) {
71
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
72
+ ar[i] = from[i];
73
+ }
74
+ }
75
+ return to.concat(ar || Array.prototype.slice.call(from));
76
+ };
77
+ import { AcCmColor, AcDbBatchProcessing, AcDbBlockTableRecord, AcDbDatabaseConverter, AcDbDimStyleTableRecord, AcDbLayerTableRecord, AcDbLayout, AcDbLinetypeTableRecord, AcDbRasterImageDef, AcDbTextStyleTableRecord, AcDbViewportTableRecord } from '@mlightcad/data-model';
78
+ import { Dwg_File_Type, LibreDwg } from '@mlightcad/libredwg-web';
79
+ import { AcDbEntityConverter } from './AcDbEntitiyConverter';
80
+ /**
81
+ * Database converter for DWG files.
82
+ * @internal
83
+ */
84
+ var AcDbLibreDwgConverter = /** @class */ (function (_super) {
85
+ __extends(AcDbLibreDwgConverter, _super);
86
+ function AcDbLibreDwgConverter(instance) {
87
+ var _this = _super.call(this) || this;
88
+ _this.libredwg = LibreDwg.createByWasmInstance(instance);
89
+ return _this;
90
+ }
91
+ AcDbLibreDwgConverter.prototype.parse = function (data) {
92
+ if (this.libredwg == null) {
93
+ throw new Error('libredwg is not loaded!');
94
+ }
95
+ var dwgDataPtr = this.libredwg.dwg_read_data(data, Dwg_File_Type.DWG);
96
+ if (dwgDataPtr == null) {
97
+ throw new Error('Failed to read dwg data!');
98
+ }
99
+ var model = this.libredwg.convert(dwgDataPtr);
100
+ this.libredwg.dwg_free(dwgDataPtr);
101
+ return model;
102
+ };
103
+ /**
104
+ * Gets all of fonts used by entities in model space and paper space
105
+ * @param dwg dwg database model
106
+ * @returns Returns all of fonts used by entities in model space and paper space
107
+ */
108
+ AcDbLibreDwgConverter.prototype.getFonts = function (dwg) {
109
+ // Build block map. The key is block name.
110
+ var blockMap = new Map();
111
+ dwg.tables.BLOCK_RECORD.entries.forEach(function (btr) {
112
+ blockMap.set(btr.name, btr);
113
+ });
114
+ // Build text style map. The key is text style name, and the value is font name list.
115
+ var styleMap = new Map();
116
+ var getFontName = function (fontFileName) {
117
+ if (fontFileName) {
118
+ var lastDotIndex = fontFileName.lastIndexOf('.');
119
+ if (lastDotIndex >= 0) {
120
+ return fontFileName.substring(0, lastDotIndex).toLowerCase();
121
+ }
122
+ else {
123
+ return fontFileName.toLowerCase();
124
+ }
125
+ }
126
+ };
127
+ dwg.tables.STYLE.entries.forEach(function (style) {
128
+ var fontNames = [];
129
+ var fontName = getFontName(style.font);
130
+ if (fontName)
131
+ fontNames.push(fontName);
132
+ fontName = getFontName(style.bigFont);
133
+ if (fontName)
134
+ fontNames.push(fontName);
135
+ styleMap.set(style.name, fontNames);
136
+ });
137
+ var fonts = new Set();
138
+ this.getFontsInBlock(dwg.entities, blockMap, styleMap, fonts);
139
+ return Array.from(fonts);
140
+ };
141
+ /**
142
+ * Iterate entities in model space to get fonts used by text, mtext and insert entities
143
+ */
144
+ AcDbLibreDwgConverter.prototype.getFontsInBlock = function (entities, blockMap, styleMap, fonts) {
145
+ var _this = this;
146
+ var regex = /\\f(.*?)\|/g;
147
+ entities.forEach(function (entity) {
148
+ if (entity.type == 'MTEXT') {
149
+ var mtext = entity;
150
+ __spreadArray([], __read(mtext.text.matchAll(regex)), false).forEach(function (match) {
151
+ fonts.add(match[1].toLowerCase());
152
+ });
153
+ var fontNames = styleMap.get(mtext.styleName);
154
+ fontNames === null || fontNames === void 0 ? void 0 : fontNames.forEach(function (name) { return fonts.add(name); });
155
+ }
156
+ else if (entity.type == 'TEXT') {
157
+ var text = entity;
158
+ var fontNames = styleMap.get(text.styleName);
159
+ fontNames === null || fontNames === void 0 ? void 0 : fontNames.forEach(function (name) { return fonts.add(name); });
160
+ }
161
+ else if (entity.type == 'INSERT') {
162
+ var insert = entity;
163
+ var block = blockMap.get(insert.name);
164
+ if (block)
165
+ _this.getFontsInBlock(block.entities, blockMap, styleMap, fonts);
166
+ }
167
+ });
168
+ };
169
+ AcDbLibreDwgConverter.prototype.processLineTypes = function (model, db) {
170
+ var _this = this;
171
+ var lineTypes = model.tables.LTYPE.entries;
172
+ lineTypes.forEach(function (item) {
173
+ var lineType = {
174
+ name: item.name,
175
+ description: item.description,
176
+ standardFlag: item.standardFlag,
177
+ totalPatternLength: item.totalPatternLength,
178
+ pattern: item.pattern
179
+ };
180
+ var record = new AcDbLinetypeTableRecord(lineType);
181
+ _this.processCommonTableEntryAttrs(item, record);
182
+ record.name = item.name;
183
+ db.tables.linetypeTable.add(record);
184
+ });
185
+ };
186
+ AcDbLibreDwgConverter.prototype.processTextStyles = function (model, db) {
187
+ var _this = this;
188
+ var textStyles = model.tables.STYLE.entries;
189
+ textStyles.forEach(function (item) {
190
+ var record = new AcDbTextStyleTableRecord(item);
191
+ _this.processCommonTableEntryAttrs(item, record);
192
+ db.tables.textStyleTable.add(record);
193
+ });
194
+ };
195
+ AcDbLibreDwgConverter.prototype.processDimStyles = function (model, db) {
196
+ var _this = this;
197
+ var dimStyles = model.tables.DIMSTYLE.entries;
198
+ dimStyles.forEach(function (item) {
199
+ var attrs = {
200
+ name: item.name,
201
+ ownerId: item.ownerHandle.toString(),
202
+ dimpost: item.DIMPOST || '',
203
+ dimapost: item.DIMAPOST || '',
204
+ dimscale: item.DIMSCALE,
205
+ dimasz: item.DIMASZ,
206
+ dimexo: item.DIMEXO,
207
+ dimdli: item.DIMDLI,
208
+ dimexe: item.DIMEXE,
209
+ dimrnd: item.DIMRND,
210
+ dimdle: item.DIMDLE,
211
+ dimtp: item.DIMTP,
212
+ dimtm: item.DIMTM,
213
+ dimtxt: item.DIMTXT,
214
+ dimcen: item.DIMCEN,
215
+ dimtsz: item.DIMTSZ,
216
+ dimaltf: item.DIMALTF,
217
+ dimlfac: item.DIMLFAC,
218
+ dimtvp: item.DIMTVP,
219
+ dimtfac: item.DIMTFAC,
220
+ dimgap: item.DIMGAP,
221
+ dimaltrnd: item.DIMALTRND,
222
+ dimtol: item.DIMTOL == null || item.DIMTOL == 0 ? 0 : 1,
223
+ dimlim: item.DIMLIM == null || item.DIMLIM == 0 ? 0 : 1,
224
+ dimtih: item.DIMTIH == null || item.DIMTIH == 0 ? 0 : 1,
225
+ dimtoh: item.DIMTOH == null || item.DIMTOH == 0 ? 0 : 1,
226
+ dimse1: item.DIMSE1 == null || item.DIMSE1 == 0 ? 0 : 1,
227
+ dimse2: item.DIMSE2 == null || item.DIMSE2 == 0 ? 0 : 1,
228
+ dimtad: item.DIMTAD,
229
+ dimzin: item.DIMZIN,
230
+ dimazin: item.DIMAZIN,
231
+ dimalt: item.DIMALT,
232
+ dimaltd: item.DIMALTD,
233
+ dimtofl: item.DIMTOFL,
234
+ dimsah: item.DIMSAH,
235
+ dimtix: item.DIMTIX,
236
+ dimsoxd: item.DIMSOXD,
237
+ dimclrd: item.DIMCLRD,
238
+ dimclre: item.DIMCLRE,
239
+ dimclrt: item.DIMCLRT,
240
+ dimadec: item.DIMADEC || 0,
241
+ dimunit: item.DIMUNIT || 2,
242
+ dimdec: item.DIMDEC,
243
+ dimtdec: item.DIMTDEC,
244
+ dimaltu: item.DIMALTU,
245
+ dimalttd: item.DIMALTTD,
246
+ dimaunit: item.DIMAUNIT,
247
+ dimfrac: item.DIMFRAC,
248
+ dimlunit: item.DIMLUNIT,
249
+ dimdsep: item.DIMDSEP,
250
+ dimtmove: item.DIMTMOVE || 0,
251
+ dimjust: item.DIMJUST,
252
+ dimsd1: item.DIMSD1,
253
+ dimsd2: item.DIMSD2,
254
+ dimtolj: item.DIMTOLJ,
255
+ dimtzin: item.DIMTZIN,
256
+ dimaltz: item.DIMALTZ,
257
+ dimalttz: item.DIMALTTZ,
258
+ dimfit: item.DIMFIT || 0,
259
+ dimupt: item.DIMUPT,
260
+ dimatfit: item.DIMATFIT,
261
+ dimtxsty: 'Standard', // TODO: Set correct value
262
+ dimldrblk: '', // TODO: Set correct value
263
+ dimblk: item.DIMBLK || '', // TODO: Set correct value
264
+ dimblk1: item.DIMBLK1 || '', // TODO: Set correct value
265
+ dimblk2: item.DIMBLK2 || '', // TODO: Set correct value
266
+ dimlwd: item.DIMLWD,
267
+ dimlwe: item.DIMLWE
268
+ };
269
+ var record = new AcDbDimStyleTableRecord(attrs);
270
+ _this.processCommonTableEntryAttrs(item, record);
271
+ db.tables.dimStyleTable.add(record);
272
+ });
273
+ };
274
+ AcDbLibreDwgConverter.prototype.processLayers = function (model, db) {
275
+ var _this = this;
276
+ var layers = model.tables.LAYER.entries;
277
+ layers.forEach(function (item) {
278
+ var color = new AcCmColor();
279
+ color.colorIndex = item.colorIndex;
280
+ var record = new AcDbLayerTableRecord({
281
+ name: item.name,
282
+ standardFlags: item.standardFlag,
283
+ linetype: item.lineType,
284
+ lineWeight: item.lineweight,
285
+ isOff: item.off,
286
+ color: color,
287
+ isPlottable: item.plotFlag != 0
288
+ });
289
+ _this.processCommonTableEntryAttrs(item, record);
290
+ db.tables.layerTable.add(record);
291
+ });
292
+ };
293
+ AcDbLibreDwgConverter.prototype.processViewports = function (model, db) {
294
+ var _this = this;
295
+ var viewports = model.tables.VPORT.entries;
296
+ viewports.forEach(function (item) {
297
+ var record = new AcDbViewportTableRecord();
298
+ _this.processCommonTableEntryAttrs(item, record);
299
+ if (item.circleSides) {
300
+ record.circleSides = item.circleSides;
301
+ }
302
+ record.standardFlag = item.standardFlag;
303
+ record.center.copy(item.center);
304
+ record.lowerLeftCorner.copy(item.lowerLeftCorner);
305
+ record.upperRightCorner.copy(item.upperRightCorner);
306
+ if (item.snapBasePoint) {
307
+ record.snapBase.copy(item.snapBasePoint);
308
+ }
309
+ if (item.snapRotationAngle) {
310
+ record.snapAngle = item.snapRotationAngle;
311
+ }
312
+ if (item.snapSpacing) {
313
+ record.snapIncrements.copy(item.snapSpacing);
314
+ }
315
+ if (item.majorGridLines) {
316
+ record.gridMajor = item.majorGridLines;
317
+ }
318
+ if (item.gridSpacing) {
319
+ record.gridIncrements.copy(item.gridSpacing);
320
+ }
321
+ if (item.backgroundObjectId) {
322
+ record.backgroundObjectId = item.backgroundObjectId;
323
+ }
324
+ record.gsView.center.copy(item.center);
325
+ record.gsView.viewDirectionFromTarget.copy(item.viewDirectionFromTarget);
326
+ record.gsView.viewTarget.copy(item.viewTarget);
327
+ if (item.lensLength) {
328
+ record.gsView.lensLength = item.lensLength;
329
+ }
330
+ if (item.frontClippingPlane) {
331
+ record.gsView.frontClippingPlane = item.frontClippingPlane;
332
+ }
333
+ if (item.backClippingPlane) {
334
+ record.gsView.backClippingPlane = item.backClippingPlane;
335
+ }
336
+ if (item.viewHeight) {
337
+ record.gsView.viewHeight = item.viewHeight;
338
+ }
339
+ if (item.viewTwistAngle) {
340
+ record.gsView.viewTwistAngle = item.viewTwistAngle;
341
+ }
342
+ if (item.frozenLayers) {
343
+ record.gsView.frozenLayers = item.frozenLayers;
344
+ }
345
+ if (item.styleSheet) {
346
+ record.gsView.styleSheet = item.styleSheet;
347
+ }
348
+ if (item.renderMode) {
349
+ record.gsView.renderMode = item.renderMode;
350
+ }
351
+ if (item.viewMode) {
352
+ record.gsView.viewMode = item.viewMode;
353
+ }
354
+ if (item.ucsIconSetting) {
355
+ record.gsView.ucsIconSetting = item.ucsIconSetting;
356
+ }
357
+ if (item.ucsOrigin) {
358
+ record.gsView.ucsOrigin.copy(item.ucsOrigin);
359
+ }
360
+ if (item.ucsXAxis) {
361
+ record.gsView.ucsXAxis.copy(item.ucsXAxis);
362
+ }
363
+ if (item.ucsYAxis) {
364
+ record.gsView.ucsYAxis.copy(item.ucsYAxis);
365
+ }
366
+ if (item.orthographicType) {
367
+ record.gsView.orthographicType =
368
+ item.orthographicType;
369
+ }
370
+ if (item.shadePlotSetting) {
371
+ record.gsView.shadePlotSetting = item.shadePlotSetting;
372
+ }
373
+ if (item.shadePlotObjectId) {
374
+ record.gsView.shadePlotObjectId = item.shadePlotObjectId;
375
+ }
376
+ if (item.visualStyleObjectId) {
377
+ record.gsView.visualStyleObjectId = item.visualStyleObjectId;
378
+ }
379
+ if (item.isDefaultLightingOn) {
380
+ record.gsView.isDefaultLightingOn = item.isDefaultLightingOn;
381
+ }
382
+ if (item.defaultLightingType) {
383
+ record.gsView.defaultLightingType =
384
+ item.defaultLightingType;
385
+ }
386
+ if (item.brightness) {
387
+ record.gsView.brightness = item.brightness;
388
+ }
389
+ if (item.contrast) {
390
+ record.gsView.contrast = item.contrast;
391
+ }
392
+ if (item.ambientColor) {
393
+ record.gsView.ambientColor = item.ambientColor;
394
+ }
395
+ db.tables.viewportTable.add(record);
396
+ });
397
+ };
398
+ AcDbLibreDwgConverter.prototype.processBlockTables = function (model, db) {
399
+ var _this = this;
400
+ var btrs = model.tables.BLOCK_RECORD.entries;
401
+ btrs.forEach(function (btr) {
402
+ var dbBlock = db.tables.blockTable.getAt(btr.name);
403
+ if (!dbBlock) {
404
+ dbBlock = new AcDbBlockTableRecord();
405
+ dbBlock.objectId = btr.handle.toString();
406
+ dbBlock.name = btr.name;
407
+ // dbBlock.ownerId = btr.ownerHandle
408
+ // dbBlock.origin.copy(btr.position)
409
+ db.tables.blockTable.add(dbBlock);
410
+ }
411
+ // Don't process entities in block space and paper space until other blocks are processed
412
+ if (!dbBlock.isModelSapce &&
413
+ !dbBlock.isPaperSapce &&
414
+ btr.entities &&
415
+ btr.entities.length > 0) {
416
+ _this.processEntitiesInBlock(btr.entities, dbBlock);
417
+ }
418
+ });
419
+ };
420
+ AcDbLibreDwgConverter.prototype.processBlocks = function (_model, _db) {
421
+ // Do nothing because entities are already processsed in method processBlockTables
422
+ };
423
+ AcDbLibreDwgConverter.prototype.processEntitiesInBlock = function (entities, blockTableRecord) {
424
+ return __awaiter(this, void 0, void 0, function () {
425
+ var converter, entityCount, i, entity, dbEntity;
426
+ return __generator(this, function (_a) {
427
+ converter = new AcDbEntityConverter();
428
+ entityCount = entities.length;
429
+ for (i = 0; i < entityCount; i++) {
430
+ entity = entities[i];
431
+ dbEntity = converter.convert(entity);
432
+ if (dbEntity) {
433
+ blockTableRecord.appendEntity(dbEntity);
434
+ }
435
+ }
436
+ return [2 /*return*/];
437
+ });
438
+ });
439
+ };
440
+ /**
441
+ * Breaks up the work into smaller chunks that are executed asynchronously. This is often referred to
442
+ * as "batch processing" or "cooperative multitasking," where the time-consuming task is broken into
443
+ * smaller pieces and executed in small intervals to allow the UI to remain responsive.
444
+ */
445
+ AcDbLibreDwgConverter.prototype.processEntities = function (model, db, minimumChunkSize, startPercentage, progress) {
446
+ return __awaiter(this, void 0, void 0, function () {
447
+ var converter, entities, entityCount, batchProcessor, blockTableRecord;
448
+ var _this = this;
449
+ return __generator(this, function (_a) {
450
+ switch (_a.label) {
451
+ case 0:
452
+ converter = new AcDbEntityConverter();
453
+ entities = model.entities;
454
+ entityCount = entities.length;
455
+ batchProcessor = new AcDbBatchProcessing(entityCount, 100 - startPercentage.value, minimumChunkSize);
456
+ blockTableRecord = db.tables.blockTable.modelSpace;
457
+ return [4 /*yield*/, batchProcessor.processChunk(function (start, end) { return __awaiter(_this, void 0, void 0, function () {
458
+ var i, entity, dbEntity, percentage;
459
+ return __generator(this, function (_a) {
460
+ switch (_a.label) {
461
+ case 0:
462
+ // Logic for processing each chunk of entities
463
+ for (i = start; i < end; i++) {
464
+ entity = entities[i];
465
+ dbEntity = converter.convert(entity);
466
+ if (dbEntity) {
467
+ blockTableRecord.appendEntity(dbEntity);
468
+ }
469
+ }
470
+ if (!progress) return [3 /*break*/, 2];
471
+ percentage = startPercentage.value +
472
+ (end / entityCount) * (100 - startPercentage.value);
473
+ if (percentage > 100)
474
+ percentage = 100;
475
+ return [4 /*yield*/, progress(percentage, 'ENTITY', 'IN-PROGRESS')];
476
+ case 1:
477
+ _a.sent();
478
+ _a.label = 2;
479
+ case 2: return [2 /*return*/];
480
+ }
481
+ });
482
+ }); })];
483
+ case 1:
484
+ _a.sent();
485
+ return [2 /*return*/];
486
+ }
487
+ });
488
+ });
489
+ };
490
+ AcDbLibreDwgConverter.prototype.processHeader = function (model, db) {
491
+ var _a, _b, _c, _d, _e, _f;
492
+ var header = model.header;
493
+ // Color index 256 is 'ByLayer'
494
+ db.cecolor.colorIndex = header.CECOLOR || 256;
495
+ db.angBase = (_a = header.ANGBASE) !== null && _a !== void 0 ? _a : 0;
496
+ db.angDir = (_b = header.ANGDIR) !== null && _b !== void 0 ? _b : 0;
497
+ db.aunits = (_c = header.AUNITS) !== null && _c !== void 0 ? _c : 0;
498
+ // Initial value of INSUNITS: 1 (imperial) or 4 (metric)
499
+ db.insunits = (_d = header.INSUNITS) !== null && _d !== void 0 ? _d : 1;
500
+ db.pdmode = (_e = header.PDMODE) !== null && _e !== void 0 ? _e : 0;
501
+ db.pdsize = (_f = header.PDSIZE) !== null && _f !== void 0 ? _f : 0.0;
502
+ };
503
+ AcDbLibreDwgConverter.prototype.processCommonTableEntryAttrs = function (entry, dbEntry) {
504
+ dbEntry.name = entry.name;
505
+ dbEntry.objectId = entry.handle.toString();
506
+ dbEntry.ownerId = entry.ownerHandle.toString();
507
+ };
508
+ AcDbLibreDwgConverter.prototype.processObjects = function (model, db) {
509
+ this.processLayouts(model, db);
510
+ this.processImageDefs(model, db);
511
+ };
512
+ AcDbLibreDwgConverter.prototype.processLayouts = function (model, db) {
513
+ var _this = this;
514
+ var layoutDict = db.dictionaries.layouts;
515
+ var layouts = model.objects.LAYOUT;
516
+ layouts.forEach(function (layout) {
517
+ var dbLayout = new AcDbLayout();
518
+ dbLayout.layoutName = layout.layoutName;
519
+ dbLayout.tabOrder = layout.tabOrder;
520
+ dbLayout.blockTableRecordId = layout.ownerHandle.toString();
521
+ dbLayout.limits.min.copy(layout.minLimit);
522
+ dbLayout.limits.max.copy(layout.maxLimit);
523
+ dbLayout.extents.min.copy(layout.minExtent);
524
+ dbLayout.extents.max.copy(layout.maxExtent);
525
+ _this.processCommonObjectAttrs(layout, dbLayout);
526
+ layoutDict.setAt(dbLayout.layoutName, dbLayout);
527
+ });
528
+ };
529
+ AcDbLibreDwgConverter.prototype.processImageDefs = function (model, db) {
530
+ var _this = this;
531
+ var imageDefDict = db.dictionaries.imageDefs;
532
+ var imageDefs = model.objects.IMAGEDEF;
533
+ imageDefs.forEach(function (imageDef) {
534
+ var dbImageDef = new AcDbRasterImageDef();
535
+ dbImageDef.sourceFileName = imageDef.fileName;
536
+ _this.processCommonObjectAttrs(imageDef, dbImageDef);
537
+ imageDefDict.setAt(dbImageDef.objectId, dbImageDef);
538
+ });
539
+ };
540
+ AcDbLibreDwgConverter.prototype.processCommonObjectAttrs = function (object, dbObject) {
541
+ dbObject.objectId = object.handle.toString();
542
+ dbObject.ownerId = object.ownerHandle.toString();
543
+ };
544
+ return AcDbLibreDwgConverter;
545
+ }(AcDbDatabaseConverter));
546
+ export { AcDbLibreDwgConverter };
547
+ //# sourceMappingURL=AcDbLibreDwgConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbLibreDwgConverter.js","sourceRoot":"","sources":["../src/AcDbLibreDwgConverter.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './AcDbLibreDwgConverter';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA"}
package/lib/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export * from './AcDbLibreDwgConverter';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA"}
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@mlightcad/libredwg-converter",
3
+ "version": "1.0.1",
4
+ "type": "module",
5
+ "keywords": [
6
+ "autocad",
7
+ "cad",
8
+ "dwg",
9
+ "dxf",
10
+ "libredwg",
11
+ "libredwg-web",
12
+ "mlight",
13
+ "mlightcad",
14
+ "objecarx",
15
+ "realdwg"
16
+ ],
17
+ "files": [
18
+ "dist",
19
+ "lib",
20
+ "README.md",
21
+ "package.json"
22
+ ],
23
+ "main": "./dist/libredwg-converter.umd.cjs",
24
+ "module": "./dist/libredwg-converter.js",
25
+ "types": "./lib/index.d.ts",
26
+ "exports": {
27
+ "types": "./lib/index.d.ts",
28
+ "import": "./dist/libredwg-converter.js",
29
+ "require": "./dist/libredwg-converter.umd.cjs"
30
+ },
31
+ "devDependencies": {
32
+ "vite": "^5.2.10"
33
+ },
34
+ "peerDependencies": {
35
+ "@mlightcad/libredwg-web": "0.1.5",
36
+ "@mlightcad/data-model": "1.0.5"
37
+ },
38
+ "scripts": {
39
+ "clean": "rimraf dist lib tsconfig.tsbuildinfo",
40
+ "build": "tsc && vite build",
41
+ "lint": "eslint src/",
42
+ "lint:fix": "eslint --fix --quiet src/"
43
+ }
44
+ }