@mlightcad/dxf-json-converter 1.9.0
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/LICENSE +21 -0
- package/README.md +56 -0
- package/dist/dxf-json-converter.umd.cjs +1 -0
- package/dist/dxf-parser-worker.js +1887 -0
- package/lib/AcDbDxfConverter.d.ts +276 -0
- package/lib/AcDbDxfConverter.d.ts.map +1 -0
- package/lib/AcDbDxfConverter.js +1062 -0
- package/lib/AcDbDxfConverter.js.map +1 -0
- package/lib/AcDbDxfParser.d.ts +23 -0
- package/lib/AcDbDxfParser.d.ts.map +1 -0
- package/lib/AcDbDxfParser.js +82 -0
- package/lib/AcDbDxfParser.js.map +1 -0
- package/lib/AcDbDxfParserWorker.d.ts +2 -0
- package/lib/AcDbDxfParserWorker.d.ts.map +1 -0
- package/lib/AcDbDxfParserWorker.js +76 -0
- package/lib/AcDbDxfParserWorker.js.map +1 -0
- package/lib/AcDbEntitiyConverter.d.ts +156 -0
- package/lib/AcDbEntitiyConverter.d.ts.map +1 -0
- package/lib/AcDbEntitiyConverter.js +1424 -0
- package/lib/AcDbEntitiyConverter.js.map +1 -0
- package/lib/AcDbObjectConverter.d.ts +68 -0
- package/lib/AcDbObjectConverter.d.ts.map +1 -0
- package/lib/AcDbObjectConverter.js +374 -0
- package/lib/AcDbObjectConverter.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfConverter.js","sourceRoot":"","sources":["../src/AcDbDxfConverter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { AcDbDwgVersion } from '@mlightcad/data-model';
|
|
2
|
+
import { ParsedDxf } from '@mlightcad/dxf-json';
|
|
3
|
+
/**
|
|
4
|
+
* Extracts DXF version and code page from an ArrayBuffer containing the DXF data.
|
|
5
|
+
* Efficiently reads the data in chunks and stops as soon as both are found
|
|
6
|
+
* or when the HEADER section ends.
|
|
7
|
+
*/
|
|
8
|
+
export interface AcDbDxfHeaderInfo {
|
|
9
|
+
version: AcDbDwgVersion | null;
|
|
10
|
+
encoding: string | null;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* DXF parsing worker
|
|
14
|
+
*/
|
|
15
|
+
export declare class AcDbDxfParser {
|
|
16
|
+
parse(data: ArrayBuffer): ParsedDxf;
|
|
17
|
+
/**
|
|
18
|
+
* Reads a DXF ArrayBuffer and returns its version and code page.
|
|
19
|
+
* @param buffer The ArrayBuffer containing DXF file content.
|
|
20
|
+
*/
|
|
21
|
+
private getDxfInfoFromBuffer;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=AcDbDxfParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfParser.d.ts","sourceRoot":"","sources":["../src/AcDbDxfParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAEf,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAa,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE1D;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAoBnC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;CAqD7B"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { AcDbCodePage, AcDbDwgVersion, dwgCodePageToEncoding } from '@mlightcad/data-model';
|
|
2
|
+
import { DxfParser } from '@mlightcad/dxf-json';
|
|
3
|
+
/**
|
|
4
|
+
* DXF parsing worker
|
|
5
|
+
*/
|
|
6
|
+
var AcDbDxfParser = /** @class */ (function () {
|
|
7
|
+
function AcDbDxfParser() {
|
|
8
|
+
}
|
|
9
|
+
AcDbDxfParser.prototype.parse = function (data) {
|
|
10
|
+
var parser = new DxfParser();
|
|
11
|
+
// Use our own parser to parse version and code page information only to avoid
|
|
12
|
+
// parsing the whole dxf file in order to imporve performance
|
|
13
|
+
var headerInfo = this.getDxfInfoFromBuffer(data);
|
|
14
|
+
// If the version is less than or equal to AutoCAD 2000 format (AC1015),
|
|
15
|
+
// we need to decode it to string.
|
|
16
|
+
var text = '';
|
|
17
|
+
if (headerInfo.version &&
|
|
18
|
+
headerInfo.version.value <= 23 &&
|
|
19
|
+
headerInfo.encoding) {
|
|
20
|
+
text = new TextDecoder(headerInfo.encoding).decode(data);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
text = new TextDecoder().decode(data);
|
|
24
|
+
}
|
|
25
|
+
return parser.parseSync(text);
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Reads a DXF ArrayBuffer and returns its version and code page.
|
|
29
|
+
* @param buffer The ArrayBuffer containing DXF file content.
|
|
30
|
+
*/
|
|
31
|
+
AcDbDxfParser.prototype.getDxfInfoFromBuffer = function (buffer) {
|
|
32
|
+
var _a, _b, _c, _d;
|
|
33
|
+
var chunkSize = 64 * 1024; // 64 KB
|
|
34
|
+
var decoder = new TextDecoder('utf-8');
|
|
35
|
+
var offset = 0;
|
|
36
|
+
var leftover = '';
|
|
37
|
+
var version = null;
|
|
38
|
+
var encoding = null;
|
|
39
|
+
var inHeader = false;
|
|
40
|
+
while (offset < buffer.byteLength) {
|
|
41
|
+
var end = Math.min(offset + chunkSize, buffer.byteLength);
|
|
42
|
+
var chunk = buffer.slice(offset, end);
|
|
43
|
+
offset = end;
|
|
44
|
+
var text = leftover + decoder.decode(chunk, { stream: true });
|
|
45
|
+
var lines = text.split(/\r?\n/);
|
|
46
|
+
leftover = (_a = lines.pop()) !== null && _a !== void 0 ? _a : ''; // last incomplete line (if any)
|
|
47
|
+
for (var i = 0; i < lines.length; i++) {
|
|
48
|
+
var line = lines[i].trim();
|
|
49
|
+
// detect start of HEADER
|
|
50
|
+
if (line === 'SECTION' && ((_b = lines[i + 2]) === null || _b === void 0 ? void 0 : _b.trim()) === 'HEADER') {
|
|
51
|
+
inHeader = true;
|
|
52
|
+
}
|
|
53
|
+
// detect end of HEADER
|
|
54
|
+
else if (line === 'ENDSEC' && inHeader) {
|
|
55
|
+
return { version: version, encoding: encoding };
|
|
56
|
+
}
|
|
57
|
+
// parse version
|
|
58
|
+
if (inHeader && line === '$ACADVER') {
|
|
59
|
+
var value = (_c = lines[i + 2]) === null || _c === void 0 ? void 0 : _c.trim();
|
|
60
|
+
if (value)
|
|
61
|
+
version = new AcDbDwgVersion(value);
|
|
62
|
+
}
|
|
63
|
+
// parse code page
|
|
64
|
+
else if (inHeader && line === '$DWGCODEPAGE') {
|
|
65
|
+
var value = (_d = lines[i + 2]) === null || _d === void 0 ? void 0 : _d.trim();
|
|
66
|
+
if (value) {
|
|
67
|
+
var codePage = AcDbCodePage[value];
|
|
68
|
+
encoding = dwgCodePageToEncoding(codePage);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
if (version && encoding) {
|
|
72
|
+
return { version: version, encoding: encoding };
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// return even if header not complete
|
|
77
|
+
return { version: version, encoding: encoding };
|
|
78
|
+
};
|
|
79
|
+
return AcDbDxfParser;
|
|
80
|
+
}());
|
|
81
|
+
export { AcDbDxfParser };
|
|
82
|
+
//# sourceMappingURL=AcDbDxfParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfParser.js","sourceRoot":"","sources":["../src/AcDbDxfParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfParserWorker.d.ts","sourceRoot":"","sources":["../src/AcDbDxfParserWorker.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
/// <reference lib="webworker" />
|
|
53
|
+
import { AcDbBaseWorker } from '@mlightcad/data-model';
|
|
54
|
+
import { AcDbDxfParser } from './AcDbDxfParser';
|
|
55
|
+
/**
|
|
56
|
+
* DXF parsing worker
|
|
57
|
+
*/
|
|
58
|
+
var AcDbDxfParserWorker = /** @class */ (function (_super) {
|
|
59
|
+
__extends(AcDbDxfParserWorker, _super);
|
|
60
|
+
function AcDbDxfParserWorker() {
|
|
61
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
62
|
+
}
|
|
63
|
+
AcDbDxfParserWorker.prototype.executeTask = function (data) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
65
|
+
var parser;
|
|
66
|
+
return __generator(this, function (_a) {
|
|
67
|
+
parser = new AcDbDxfParser();
|
|
68
|
+
return [2 /*return*/, parser.parse(data)];
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
return AcDbDxfParserWorker;
|
|
73
|
+
}(AcDbBaseWorker));
|
|
74
|
+
// Initialize the worker
|
|
75
|
+
new AcDbDxfParserWorker();
|
|
76
|
+
//# sourceMappingURL=AcDbDxfParserWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfParserWorker.js","sourceRoot":"","sources":["../src/AcDbDxfParserWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C;;GAEG;AACH;IAAkC,uCAAsC;IAAxE;;IAKA,CAAC;IAJiB,yCAAW,GAA3B,UAA4B,IAAiB;;;;gBACrC,MAAM,GAAG,IAAI,aAAa,EAAE,CAAA;gBAClC,sBAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAA;;;KAC1B;IACH,0BAAC;AAAD,CAAC,AALD,CAAkC,cAAc,GAK/C;AAED,wBAAwB;AACxB,IAAI,mBAAmB,EAAE,CAAA"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { AcDbEntity } from '@mlightcad/data-model';
|
|
2
|
+
import { CommonDxfEntity } from '@mlightcad/dxf-json/types';
|
|
3
|
+
/**
|
|
4
|
+
* Converts DXF entities to AcDbEntity objects.
|
|
5
|
+
*
|
|
6
|
+
* This class provides functionality to convert various DXF entity types
|
|
7
|
+
* (such as lines, circles, arcs, text, etc.) into their corresponding
|
|
8
|
+
* AcDbEntity objects. It handles the conversion of geometric data,
|
|
9
|
+
* properties, and attributes from DXF format to the internal database format.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* const converter = new AcDbEntityConverter();
|
|
14
|
+
* const dxfEntity = { type: 'LINE', startPoint: [0, 0, 0], endPoint: [10, 10, 0] };
|
|
15
|
+
* const acDbEntity = converter.convert(dxfEntity);
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare class AcDbEntityConverter {
|
|
19
|
+
/**
|
|
20
|
+
* Converts a DXF entity to an AcDbEntity.
|
|
21
|
+
*
|
|
22
|
+
* This method takes a DXF entity and converts it to the corresponding
|
|
23
|
+
* AcDbEntity type. It first creates the entity using createEntity(),
|
|
24
|
+
* then processes common attributes using processCommonAttrs().
|
|
25
|
+
*
|
|
26
|
+
* @param entity - The DXF entity to convert
|
|
27
|
+
* @returns The converted AcDbEntity, or null if conversion fails
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const dxfLine = { type: 'LINE', startPoint: [0, 0, 0], endPoint: [10, 10, 0] };
|
|
32
|
+
* const acDbLine = converter.convert(dxfLine);
|
|
33
|
+
* if (acDbLine) {
|
|
34
|
+
* console.log('Converted to:', acDbLine.type);
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
convert(entity: CommonDxfEntity): AcDbEntity | null;
|
|
39
|
+
/**
|
|
40
|
+
* Creates the corresponding drawing database entity from DXF format data.
|
|
41
|
+
*
|
|
42
|
+
* This method acts as a factory that routes DXF entities to their specific
|
|
43
|
+
* conversion methods based on the entity type. It handles all supported
|
|
44
|
+
* DXF entity types including geometric entities, text entities, and special entities.
|
|
45
|
+
*
|
|
46
|
+
* @param entity - Input entity data in DXF format
|
|
47
|
+
* @returns The converted drawing database entity, or null if the entity type is not supported
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const dxfEntity = { type: 'CIRCLE', center: [0, 0, 0], radius: 5 };
|
|
52
|
+
* const acDbEntity = converter.createEntity(dxfEntity);
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
private createEntity;
|
|
56
|
+
/**
|
|
57
|
+
* Converts a DXF 3DFACE entity to an AcDbFace.
|
|
58
|
+
*
|
|
59
|
+
* @param face - The DXF 3DFace entity to convert
|
|
60
|
+
* @returns The converted AcDbFace entity
|
|
61
|
+
*/
|
|
62
|
+
private convertFace;
|
|
63
|
+
/**
|
|
64
|
+
* Converts a DXF arc entity to an AcDbArc.
|
|
65
|
+
*
|
|
66
|
+
* @param arc - The DXF arc entity to convert
|
|
67
|
+
* @returns The converted AcDbArc entity
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* const dxfArc = { type: 'ARC', center: [0, 0, 0], radius: 5, startAngle: 0, endAngle: 90 };
|
|
72
|
+
* const acDbArc = converter.convertArc(dxfArc);
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
private convertArc;
|
|
76
|
+
private convertAttributeCommon;
|
|
77
|
+
private convertAttribute;
|
|
78
|
+
private convertAttributeDefinition;
|
|
79
|
+
/**
|
|
80
|
+
* Converts a DXF circle entity to an AcDbCircle.
|
|
81
|
+
*
|
|
82
|
+
* @param circle - The DXF circle entity to convert
|
|
83
|
+
* @returns The converted AcDbCircle entity
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* const dxfCircle = { type: 'CIRCLE', center: [0, 0, 0], radius: 5 };
|
|
88
|
+
* const acDbCircle = converter.convertCirle(dxfCircle);
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
private convertCirle;
|
|
92
|
+
/**
|
|
93
|
+
* Converts a DXF ellipse entity to an AcDbEllipse.
|
|
94
|
+
*
|
|
95
|
+
* @param ellipse - The DXF ellipse entity to convert
|
|
96
|
+
* @returns The converted AcDbEllipse entity
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```typescript
|
|
100
|
+
* const dxfEllipse = { type: 'ELLIPSE', center: [0, 0, 0], majorAxisEndPoint: [5, 0, 0] };
|
|
101
|
+
* const acDbEllipse = converter.convertEllipse(dxfEllipse);
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
private convertEllipse;
|
|
105
|
+
private convertLine;
|
|
106
|
+
private convertSpline;
|
|
107
|
+
private convertPoint;
|
|
108
|
+
private convertShape;
|
|
109
|
+
private convertSolid;
|
|
110
|
+
private convertPolyline;
|
|
111
|
+
private convertLWPolyline;
|
|
112
|
+
private convertHatch;
|
|
113
|
+
private convertTable;
|
|
114
|
+
private convertText;
|
|
115
|
+
private convertMText;
|
|
116
|
+
private convertLeader;
|
|
117
|
+
private convertMLine;
|
|
118
|
+
private convertMLeader;
|
|
119
|
+
private convertDimension;
|
|
120
|
+
private processImage;
|
|
121
|
+
private convertImage;
|
|
122
|
+
private processWipeout;
|
|
123
|
+
private convertWipeout;
|
|
124
|
+
private convertViewport;
|
|
125
|
+
private convertRay;
|
|
126
|
+
private convertXline;
|
|
127
|
+
private convertBlockReference;
|
|
128
|
+
private processDimensionCommonAttrs;
|
|
129
|
+
/**
|
|
130
|
+
* Processes common attributes from a DXF entity to an AcDbEntity.
|
|
131
|
+
*
|
|
132
|
+
* This method copies common properties like layer, object ID, owner ID,
|
|
133
|
+
* linetype, lineweight, color, visibility, and transparency from the
|
|
134
|
+
* DXF entity to the corresponding AcDbEntity.
|
|
135
|
+
*
|
|
136
|
+
* @param entity - The source DXF entity
|
|
137
|
+
* @param dbEntity - The target AcDbEntity to populate
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```typescript
|
|
141
|
+
* converter.processCommonAttrs(dxfEntity, acDbEntity);
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
private processCommonAttrs;
|
|
145
|
+
private readNumber;
|
|
146
|
+
private readPositiveNumber;
|
|
147
|
+
private readString;
|
|
148
|
+
private readBoolean;
|
|
149
|
+
private readPoint;
|
|
150
|
+
private readLeaderLineArray;
|
|
151
|
+
private readMLeaderLeaders;
|
|
152
|
+
private readMLeaderLine;
|
|
153
|
+
private readMLeaderBreaks;
|
|
154
|
+
private isPointLike;
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=AcDbEntitiyConverter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbEntitiyConverter.d.ts","sourceRoot":"","sources":["../src/AcDbEntitiyConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAiBL,UAAU,EAwDX,MAAM,uBAAuB,CAAA;AAsB9B,OAAO,EACL,eAAe,EAqBhB,MAAM,2BAA2B,CAAA;AAiClC;;;;;;;;;;;;;;GAcG;AACH,qBAAa,mBAAmB;IAC9B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,UAAU,GAAG,IAAI;IAQnD;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,YAAY;IA2DpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAQnB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,sBAAsB;IAqC9B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,0BAA0B;IAWlC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,YAAY;IAUpB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,aAAa;IA0BrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,eAAe;IAgGvB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,YAAY;IAyJpB,OAAO,CAAC,YAAY;IAgCpB,OAAO,CAAC,WAAW;IA2BnB,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,cAAc;IA6RtB,OAAO,CAAC,gBAAgB;IAmExB,OAAO,CAAC,YAAY;IA+BpB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;IAqCtB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,2BAA2B;IAoBnC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,kBAAkB;IA+C1B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,kBAAkB;IAqD1B,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,WAAW;CAQpB"}
|