@mlightcad/data-model 1.12.3 → 1.12.4
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 +4 -9
- package/dist/data-model.cjs +13 -13
- package/lib/converter/AcDbRegenerator.d.ts +0 -6
- package/lib/converter/AcDbRegenerator.d.ts.map +1 -1
- package/lib/converter/AcDbRegenerator.js +0 -8
- package/lib/converter/AcDbRegenerator.js.map +1 -1
- package/lib/converter/index.d.ts +0 -2
- package/lib/converter/index.d.ts.map +1 -1
- package/lib/converter/index.js +0 -1
- package/lib/converter/index.js.map +1 -1
- package/lib/database/AcDbDatabase.d.ts +1 -78
- package/lib/database/AcDbDatabase.d.ts.map +1 -1
- package/lib/database/AcDbDatabase.js +30 -111
- package/lib/database/AcDbDatabase.js.map +1 -1
- package/lib/database/AcDbDatabaseConverter.d.ts +32 -16
- package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -1
- package/lib/database/AcDbDatabaseConverter.js +10 -26
- package/lib/database/AcDbDatabaseConverter.js.map +1 -1
- package/lib/database/AcDbDatabaseConverterManager.d.ts +2 -2
- package/lib/database/AcDbDatabaseConverterManager.js +2 -2
- package/lib/database/AcDbSystemVariables.d.ts +1 -1
- package/lib/database/AcDbSystemVariables.js +1 -1
- package/lib/database/AcDbTextStyleTable.d.ts +7 -0
- package/lib/database/AcDbTextStyleTable.d.ts.map +1 -1
- package/lib/database/AcDbTextStyleTable.js +18 -3
- package/lib/database/AcDbTextStyleTable.js.map +1 -1
- package/lib/database/index.d.ts +2 -2
- package/lib/database/index.d.ts.map +1 -1
- package/lib/database/index.js.map +1 -1
- package/lib/dxf/AcDbDxfDocumentReader.d.ts +1 -18
- package/lib/dxf/AcDbDxfDocumentReader.d.ts.map +1 -1
- package/lib/dxf/AcDbDxfDocumentReader.js +13 -102
- package/lib/dxf/AcDbDxfDocumentReader.js.map +1 -1
- package/lib/dxf/AcDbNativeDxfConverter.d.ts +6 -8
- package/lib/dxf/AcDbNativeDxfConverter.d.ts.map +1 -1
- package/lib/dxf/AcDbNativeDxfConverter.js +45 -57
- package/lib/dxf/AcDbNativeDxfConverter.js.map +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/misc/AcDbRenderingCache.d.ts +22 -6
- package/lib/misc/AcDbRenderingCache.d.ts.map +1 -1
- package/lib/misc/AcDbRenderingCache.js +138 -42
- package/lib/misc/AcDbRenderingCache.js.map +1 -1
- package/package.json +4 -4
- package/lib/converter/AcDbFontNameCollector.d.ts +0 -88
- package/lib/converter/AcDbFontNameCollector.d.ts.map +0 -1
- package/lib/converter/AcDbFontNameCollector.js +0 -339
- package/lib/converter/AcDbFontNameCollector.js.map +0 -1
|
@@ -88,8 +88,10 @@ var emptyProfileStats = function () { return ({
|
|
|
88
88
|
* Blocks that contain ByBlock entities still key by block name and color because
|
|
89
89
|
* different INSERT colors produce different materials.
|
|
90
90
|
*
|
|
91
|
-
* Templates
|
|
92
|
-
* INSERT clones O(material) geometries instead of O(entity)
|
|
91
|
+
* Templates may be compacted (same-material leaves merged) before or on first
|
|
92
|
+
* reuse so each INSERT clones O(material) geometries instead of O(entity)
|
|
93
|
+
* geometries. Mid-size templates defer compaction until the first cache hit so
|
|
94
|
+
* one-shot blocks skip merge work; tiny templates never compact.
|
|
93
95
|
*
|
|
94
96
|
* @internal
|
|
95
97
|
*
|
|
@@ -195,12 +197,15 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
195
197
|
/**
|
|
196
198
|
* Stores rendering results of a block in the cache.
|
|
197
199
|
*
|
|
198
|
-
*
|
|
199
|
-
* the
|
|
200
|
+
* Stores `group` by reference as an immutable template. Callers must not
|
|
201
|
+
* mutate the stored object after this call; {@link get} / miss-path draws
|
|
202
|
+
* return {@link AcGiEntity.fastDeepClone} instances for scene use. Compacted
|
|
203
|
+
* templates share geometry buffers across clones (see three-renderer
|
|
204
|
+
* `AcTrGroup.fastDeepClone`).
|
|
200
205
|
*
|
|
201
206
|
* @param key - The key for the rendering results
|
|
202
207
|
* @param group - The rendering results to store
|
|
203
|
-
* @returns The stored rendering results (
|
|
208
|
+
* @returns The stored rendering results (same reference as `group`)
|
|
204
209
|
*
|
|
205
210
|
* @example
|
|
206
211
|
* ```typescript
|
|
@@ -208,18 +213,8 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
208
213
|
* ```
|
|
209
214
|
*/
|
|
210
215
|
AcDbRenderingCache.prototype.set = function (key, group) {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
group = group.fastDeepClone();
|
|
214
|
-
var dt = performance.now() - t0;
|
|
215
|
-
AcDbRenderingCache._profileStats.setCloneMs += dt;
|
|
216
|
-
if (AcDbRenderingCache._drawDepth === 1) {
|
|
217
|
-
AcDbRenderingCache._profileStats.topLevel.setCloneMs += dt;
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
else {
|
|
221
|
-
group = group.fastDeepClone();
|
|
222
|
-
}
|
|
216
|
+
// Templates are immutable after insert. Avoid a deep clone here — miss
|
|
217
|
+
// path returns a per-INSERT clone, and compacted clones share buffers.
|
|
223
218
|
this._blocks.set(key, group);
|
|
224
219
|
return group;
|
|
225
220
|
};
|
|
@@ -227,7 +222,8 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
227
222
|
* Gets rendering results with the specified key.
|
|
228
223
|
*
|
|
229
224
|
* Returns a deep clone so callers can transform the instance without
|
|
230
|
-
* mutating the cached template.
|
|
225
|
+
* mutating the cached template. Compacted templates share geometry buffers
|
|
226
|
+
* with the clone (Object3D wrappers are still unique per INSERT).
|
|
231
227
|
*
|
|
232
228
|
* @param name - The key of the rendering results
|
|
233
229
|
* @returns The cloned rendering results, or `undefined` if not found
|
|
@@ -241,22 +237,33 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
241
237
|
* ```
|
|
242
238
|
*/
|
|
243
239
|
AcDbRenderingCache.prototype.get = function (name) {
|
|
244
|
-
var
|
|
245
|
-
if (
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
240
|
+
var template = this._blocks.get(name);
|
|
241
|
+
if (!template) {
|
|
242
|
+
return undefined;
|
|
243
|
+
}
|
|
244
|
+
// Compact mid-size templates on first reuse so one-shot blocks never pay
|
|
245
|
+
// compactForInstancing, while repeated INSERTs still clone O(material) leaves.
|
|
246
|
+
if (AcDbRenderingCache.profiling) {
|
|
247
|
+
var tCompact0 = performance.now();
|
|
248
|
+
var compacted = this.maybeCompactTemplate(template, true);
|
|
249
|
+
if (compacted) {
|
|
250
|
+
var dt_1 = performance.now() - tCompact0;
|
|
251
|
+
AcDbRenderingCache._profileStats.missCompactMs += dt_1;
|
|
251
252
|
if (AcDbRenderingCache._drawDepth === 1) {
|
|
252
|
-
AcDbRenderingCache._profileStats.topLevel.
|
|
253
|
+
AcDbRenderingCache._profileStats.topLevel.missCompactMs += dt_1;
|
|
253
254
|
}
|
|
254
255
|
}
|
|
255
|
-
|
|
256
|
-
|
|
256
|
+
var t0 = performance.now();
|
|
257
|
+
var block = template.fastDeepClone();
|
|
258
|
+
var dt = performance.now() - t0;
|
|
259
|
+
AcDbRenderingCache._profileStats.cloneMs += dt;
|
|
260
|
+
if (AcDbRenderingCache._drawDepth === 1) {
|
|
261
|
+
AcDbRenderingCache._profileStats.topLevel.cloneMs += dt;
|
|
257
262
|
}
|
|
263
|
+
return block;
|
|
258
264
|
}
|
|
259
|
-
|
|
265
|
+
this.maybeCompactTemplate(template, true);
|
|
266
|
+
return template.fastDeepClone();
|
|
260
267
|
};
|
|
261
268
|
/**
|
|
262
269
|
* Checks if rendering results with the specified key exist in the cache.
|
|
@@ -495,15 +502,17 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
495
502
|
stats.topLevel.missBuildMs += buildMs;
|
|
496
503
|
}
|
|
497
504
|
}
|
|
498
|
-
//
|
|
499
|
-
// Tiny
|
|
500
|
-
//
|
|
505
|
+
// Adaptive compact for cached templates only:
|
|
506
|
+
// - Tiny: never compact.
|
|
507
|
+
// - Huge: compact eagerly on miss (clone cost dominates).
|
|
508
|
+
// - Mid-size: defer until first cache hit so one-shot blocks skip it.
|
|
509
|
+
// Anonymous *U / cache:false draws are one-shot — never compact.
|
|
501
510
|
var compactMs = 0;
|
|
502
|
-
|
|
503
|
-
|
|
511
|
+
var willCache = !!cache && !!blockName && !blockName.startsWith('*U');
|
|
512
|
+
if (block_1 && willCache) {
|
|
504
513
|
var tCompact0 = profile ? performance.now() : 0;
|
|
505
|
-
|
|
506
|
-
if (profile) {
|
|
514
|
+
var compacted = this.maybeCompactTemplate(block_1, false);
|
|
515
|
+
if (profile && compacted) {
|
|
507
516
|
compactMs = performance.now() - tCompact0;
|
|
508
517
|
stats.missCompactMs += compactMs;
|
|
509
518
|
if (isTop) {
|
|
@@ -513,10 +522,22 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
513
522
|
}
|
|
514
523
|
key = this.createCacheKey(blockName, blockColor, sawByBlockColor);
|
|
515
524
|
var setCloneBefore = profile ? stats.setCloneMs : 0;
|
|
516
|
-
if (block_1 &&
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
525
|
+
if (block_1 && willCache) {
|
|
526
|
+
prepareCacheTemplate(block_1);
|
|
527
|
+
// Store the immutable template by reference, then hand the scene a
|
|
528
|
+
// per-INSERT clone so applyMatrix cannot mutate the cache entry.
|
|
529
|
+
this.set(key, block_1);
|
|
530
|
+
if (profile) {
|
|
531
|
+
var tClone0 = performance.now();
|
|
532
|
+
block_1 = block_1.fastDeepClone();
|
|
533
|
+
var dt = performance.now() - tClone0;
|
|
534
|
+
stats.setCloneMs += dt;
|
|
535
|
+
if (isTop) {
|
|
536
|
+
stats.topLevel.setCloneMs += dt;
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
else {
|
|
540
|
+
block_1 = block_1.fastDeepClone();
|
|
520
541
|
}
|
|
521
542
|
}
|
|
522
543
|
if (profile) {
|
|
@@ -668,6 +689,28 @@ var AcDbRenderingCache = /** @class */ (function () {
|
|
|
668
689
|
target.layerName = source.layer;
|
|
669
690
|
target.visible = source.visibility;
|
|
670
691
|
};
|
|
692
|
+
/**
|
|
693
|
+
* Optionally runs {@link AcGiEntity.compactForInstancing} using the adaptive
|
|
694
|
+
* thresholds in {@link shouldCompactTemplate}.
|
|
695
|
+
*
|
|
696
|
+
* @param entity - Block template group to consider compacting.
|
|
697
|
+
* @param onCacheHit - When true, mid-size templates become eligible (first
|
|
698
|
+
* reuse). When false, only huge templates compact eagerly on miss.
|
|
699
|
+
* @returns `true` when compaction ran.
|
|
700
|
+
*/
|
|
701
|
+
AcDbRenderingCache.prototype.maybeCompactTemplate = function (entity, onCacheHit) {
|
|
702
|
+
if (!entity.compactForInstancing) {
|
|
703
|
+
return false;
|
|
704
|
+
}
|
|
705
|
+
if (isTemplateCompacted(entity)) {
|
|
706
|
+
return false;
|
|
707
|
+
}
|
|
708
|
+
if (!shouldCompactTemplate(entity, onCacheHit)) {
|
|
709
|
+
return false;
|
|
710
|
+
}
|
|
711
|
+
entity.compactForInstancing();
|
|
712
|
+
return true;
|
|
713
|
+
};
|
|
671
714
|
/**
|
|
672
715
|
* When true, {@link draw} / {@link get} / {@link set} accumulate
|
|
673
716
|
* {@link profileStats}. Off by default (zero overhead when false).
|
|
@@ -690,9 +733,19 @@ var _tmpExtrusion = /*@__PURE__*/ new AcGeMatrix3d();
|
|
|
690
733
|
var _tmpInverse = /*@__PURE__*/ new AcGeMatrix3d();
|
|
691
734
|
/**
|
|
692
735
|
* Minimum direct child count before {@link AcGiEntity.compactForInstancing} is
|
|
693
|
-
* worth running on a
|
|
736
|
+
* worth running on a block template.
|
|
737
|
+
*
|
|
738
|
+
* Raised above the historical value of 3 so high-block-count drawings with many
|
|
739
|
+
* tiny symbols skip classify/merge work that never pays back on clone.
|
|
740
|
+
*/
|
|
741
|
+
var MIN_CHILDREN_TO_COMPACT = 8;
|
|
742
|
+
/**
|
|
743
|
+
* Direct child count at which compaction runs eagerly on cache miss.
|
|
744
|
+
*
|
|
745
|
+
* Below this (but at/above {@link MIN_CHILDREN_TO_COMPACT}), compaction is
|
|
746
|
+
* deferred until the first cache hit so one-shot blocks skip it entirely.
|
|
694
747
|
*/
|
|
695
|
-
var
|
|
748
|
+
var EAGER_COMPACT_CHILDREN = 32;
|
|
696
749
|
/**
|
|
697
750
|
* Nest-safe ByBlock color save/restore pool for {@link AcDbRenderingCache.draw}.
|
|
698
751
|
* Avoids allocating a new {@link AcCmColor} per ByBlock entity on cache misses.
|
|
@@ -709,6 +762,49 @@ function entityChildCount(entity) {
|
|
|
709
762
|
var count = entity.childCount;
|
|
710
763
|
return typeof count === 'number' ? count : Number.POSITIVE_INFINITY;
|
|
711
764
|
}
|
|
765
|
+
/**
|
|
766
|
+
* Returns whether `entity` has already been compacted for instancing.
|
|
767
|
+
*
|
|
768
|
+
* Duck-types optional `isCompacted` from three-renderer `AcTrGroup`.
|
|
769
|
+
*
|
|
770
|
+
* @param entity - Cached or freshly built block template.
|
|
771
|
+
* @returns `true` when compaction has already run.
|
|
772
|
+
*/
|
|
773
|
+
function isTemplateCompacted(entity) {
|
|
774
|
+
var flag = entity.isCompacted;
|
|
775
|
+
return flag === true;
|
|
776
|
+
}
|
|
777
|
+
/**
|
|
778
|
+
* Decides whether a template should run {@link AcGiEntity.compactForInstancing}.
|
|
779
|
+
*
|
|
780
|
+
* @param entity - Block template to evaluate.
|
|
781
|
+
* @param onCacheHit - When true, mid-size templates are eligible (lazy compact).
|
|
782
|
+
* @returns `true` when compaction should run now.
|
|
783
|
+
*/
|
|
784
|
+
function shouldCompactTemplate(entity, onCacheHit) {
|
|
785
|
+
var count = entityChildCount(entity);
|
|
786
|
+
if (count < MIN_CHILDREN_TO_COMPACT) {
|
|
787
|
+
return false;
|
|
788
|
+
}
|
|
789
|
+
if (count >= EAGER_COMPACT_CHILDREN) {
|
|
790
|
+
return true;
|
|
791
|
+
}
|
|
792
|
+
// Mid-size: only on first cache hit so one-shot blocks skip merge work.
|
|
793
|
+
return onCacheHit;
|
|
794
|
+
}
|
|
795
|
+
/**
|
|
796
|
+
* Finalizes deferred geometry and drops detached source shells before caching.
|
|
797
|
+
*
|
|
798
|
+
* Duck-types optional `prepareCacheTemplate` from three-renderer `AcTrGroup`.
|
|
799
|
+
*
|
|
800
|
+
* @param entity - Block template about to be stored in the cache.
|
|
801
|
+
*/
|
|
802
|
+
function prepareCacheTemplate(entity) {
|
|
803
|
+
var prepare = entity.prepareCacheTemplate;
|
|
804
|
+
if (typeof prepare === 'function') {
|
|
805
|
+
prepare.call(entity);
|
|
806
|
+
}
|
|
807
|
+
}
|
|
712
808
|
/**
|
|
713
809
|
* Copies `color` into a pooled scratch and returns it.
|
|
714
810
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcDbRenderingCache.js","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AcDbRenderingCache.js","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mlightcad/data-model",
|
|
3
|
-
"version": "1.12.
|
|
3
|
+
"version": "1.12.4",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"uid": "^2.0.2",
|
|
39
|
-
"@mlightcad/common": "1.12.
|
|
40
|
-
"@mlightcad/geometry-engine": "3.12.
|
|
41
|
-
"@mlightcad/graphic-interface": "3.12.
|
|
39
|
+
"@mlightcad/common": "1.12.4",
|
|
40
|
+
"@mlightcad/geometry-engine": "3.12.4",
|
|
41
|
+
"@mlightcad/graphic-interface": "3.12.4"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
44
|
"analyze": "pnpm run analyze:lib",
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/** STYLE table entry protocol used when collecting fonts before conversion. */
|
|
2
|
-
export type AcDbFontNameCollectorStyleEntry = {
|
|
3
|
-
name: string;
|
|
4
|
-
font?: string;
|
|
5
|
-
bigFont?: string;
|
|
6
|
-
extendedFont?: string;
|
|
7
|
-
standardFlag?: number;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* Font-related fields extracted from one parsed entity.
|
|
11
|
-
*
|
|
12
|
-
* The collector resolves {@link styleName} against the STYLE table and parses
|
|
13
|
-
* inline font overrides from {@link formattedText}.
|
|
14
|
-
*/
|
|
15
|
-
export type AcDbFontNameCollectorEntityFontInfo = {
|
|
16
|
-
styleName?: string;
|
|
17
|
-
formattedText?: string;
|
|
18
|
-
blockName?: string;
|
|
19
|
-
/** When true, resolve fonts via STYLE table fallbacks. */
|
|
20
|
-
resolveStyle?: boolean;
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* Entity collections accepted by {@link AcDbFontNameCollector.collect}.
|
|
24
|
-
* Arrays match LibreDwg-style models; maps match handle→entity stores.
|
|
25
|
-
*/
|
|
26
|
-
export type AcDbFontNameCollectorEntities<TEntity> = readonly TEntity[] | Map<number, TEntity>;
|
|
27
|
-
/** Callbacks that map a host-specific entity model to collector input. */
|
|
28
|
-
export type AcDbFontNameCollectorAdapter<TEntity> = {
|
|
29
|
-
getEntityFontInfo(entity: TEntity): AcDbFontNameCollectorEntityFontInfo | null;
|
|
30
|
-
getBlockEntities?(blockName: string): AcDbFontNameCollectorEntities<TEntity> | undefined;
|
|
31
|
-
};
|
|
32
|
-
export type AcDbFontNameCollectorOptions = {
|
|
33
|
-
styles: AcDbFontNameCollectorStyleEntry[];
|
|
34
|
-
textStyleVar?: string;
|
|
35
|
-
/**
|
|
36
|
-
* When true (default), preload fonts from every named STYLE entry.
|
|
37
|
-
* Set false to only collect shape-definition fonts plus fonts referenced by
|
|
38
|
-
* the entity walk (used styles / inline overrides) — better for large DWGs
|
|
39
|
-
* whose STYLE table lists many unused fonts.
|
|
40
|
-
*/
|
|
41
|
-
includeAllNamedStyleFonts?: boolean;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Collects normalized font names from parsed drawing data before conversion.
|
|
45
|
-
*
|
|
46
|
-
* Host converters supply STYLE table entries plus an adapter that describes
|
|
47
|
-
* each entity's font usage and nested block structure.
|
|
48
|
-
*/
|
|
49
|
-
export declare class AcDbFontNameCollector {
|
|
50
|
-
private readonly styles;
|
|
51
|
-
private readonly styleMap;
|
|
52
|
-
private readonly textStyleVar;
|
|
53
|
-
private readonly includeAllNamedStyleFonts;
|
|
54
|
-
constructor(options: AcDbFontNameCollectorOptions);
|
|
55
|
-
/**
|
|
56
|
-
* Walks entities and returns all normalized font names referenced by the drawing.
|
|
57
|
-
*
|
|
58
|
-
* @param entities - Entity array, or a handle→entity map (`Map` values are walked).
|
|
59
|
-
*/
|
|
60
|
-
collect<TEntity>(entities: AcDbFontNameCollectorEntities<TEntity>, adapter: AcDbFontNameCollectorAdapter<TEntity>): string[];
|
|
61
|
-
/**
|
|
62
|
-
* Normalizes a font file name for font loading: strips the extension and lowercases.
|
|
63
|
-
*/
|
|
64
|
-
static normalizeFontFileName(fontFileName?: string): string | undefined;
|
|
65
|
-
private collectFromEntities;
|
|
66
|
-
private static iterateEntities;
|
|
67
|
-
/**
|
|
68
|
-
* Resolves font names for a text entity style using the same fallbacks as
|
|
69
|
-
* {@link AcDbTextStyleTable.resolveAt}.
|
|
70
|
-
*/
|
|
71
|
-
private resolveStyleFontNames;
|
|
72
|
-
private addResolvedStyleFonts;
|
|
73
|
-
private static buildStyleFontMap;
|
|
74
|
-
private static collectStyleEntryFontNames;
|
|
75
|
-
/**
|
|
76
|
-
* Collects primary, big, and extended fonts from every named STYLE entry.
|
|
77
|
-
* Ensures fonts referenced only in the style table (or in blocks not reached
|
|
78
|
-
* from model space) are still preloaded when opening a drawing.
|
|
79
|
-
*/
|
|
80
|
-
private static collectNamedStyleTableFonts;
|
|
81
|
-
private static collectShapeDefinitionFonts;
|
|
82
|
-
private static extractInlineMTextFonts;
|
|
83
|
-
/**
|
|
84
|
-
* Extracts normalized font names from MTEXT inline overrides (`\f…|` / `\F…;`).
|
|
85
|
-
*/
|
|
86
|
-
static collectInlineMTextFonts(text: string): string[];
|
|
87
|
-
}
|
|
88
|
-
//# sourceMappingURL=AcDbFontNameCollector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AcDbFontNameCollector.d.ts","sourceRoot":"","sources":["../../src/converter/AcDbFontNameCollector.ts"],"names":[],"mappings":"AAOA,+EAA+E;AAC/E,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,6BAA6B,CAAC,OAAO,IAC7C,SAAS,OAAO,EAAE,GAClB,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAExB,0EAA0E;AAC1E,MAAM,MAAM,4BAA4B,CAAC,OAAO,IAAI;IAClD,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,mCAAmC,GAAG,IAAI,CAAA;IAC9E,gBAAgB,CAAC,CACf,SAAS,EAAE,MAAM,GAChB,6BAA6B,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;CACtD,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,+BAA+B,EAAE,CAAA;IACzC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACpC,CAAA;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAC1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAS;gBAEvC,OAAO,EAAE,4BAA4B;IAOjD;;;;OAIG;IACH,OAAO,CAAC,OAAO,EACb,QAAQ,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAChD,OAAO,EAAE,4BAA4B,CAAC,OAAO,CAAC,GAC7C,MAAM,EAAE;IAkBX;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAWvE,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,MAAM,CAAC,eAAe;IAQ9B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA+B7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAahC,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgBzC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAa1C,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAmB1C,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAWtC;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAGvD"}
|