@ifc-lite/export 2.9.1 → 2.9.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/dist/effective-index.d.ts +63 -0
- package/dist/effective-index.d.ts.map +1 -1
- package/dist/effective-index.js +180 -6
- package/dist/effective-index.js.map +1 -1
- package/dist/merged-exporter.d.ts +12 -1
- package/dist/merged-exporter.d.ts.map +1 -1
- package/dist/merged-exporter.js +40 -11
- package/dist/merged-exporter.js.map +1 -1
- package/dist/reference-collector.d.ts +59 -3
- package/dist/reference-collector.d.ts.map +1 -1
- package/dist/reference-collector.js +300 -4
- package/dist/reference-collector.js.map +1 -1
- package/dist/source-ref-bounds.d.ts +35 -4
- package/dist/source-ref-bounds.d.ts.map +1 -1
- package/dist/source-ref-bounds.js.map +1 -1
- package/dist/step-exporter.d.ts +56 -0
- package/dist/step-exporter.d.ts.map +1 -1
- package/dist/step-exporter.js +98 -28
- package/dist/step-exporter.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reference-collector.js","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reference-collector.js","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,10 +30,41 @@
|
|
|
30
30
|
* nothing that names it is written, and it does not appear in the file — the
|
|
31
31
|
* same outcome as the source-less store the server path builds.
|
|
32
32
|
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
33
|
+
* ## Why an out-of-range ref is never "no match"
|
|
34
|
+
*
|
|
35
|
+
* This predicate was once exempted from the incidental readers
|
|
36
|
+
* (`getRelatedEntities`, `getPropertySetName`, `getPropertyIdsInSet`, …) on
|
|
37
|
+
* the grounds that "a clamped, empty decode already yields no match, which is
|
|
38
|
+
* the same answer". That is false, and it is false in BOTH directions the
|
|
39
|
+
* range can leave the source. A clamp does not empty a range; it moves an
|
|
40
|
+
* endpoint onto a real file byte, and the window that survives still holds
|
|
41
|
+
* somebody else's record. Measured on a two-record source
|
|
42
|
+
* (`#1=IFCPROPERTYSET(...,(#101,#102));#2=IFCPROPERTYSET(...,(#201,#202));`):
|
|
43
|
+
*
|
|
44
|
+
* - **Negative offset.** `(-2, n)` floors to 0 and decodes from the START OF
|
|
45
|
+
* THE FILE: `getPropertySetName(#2)` answers `'SetA'` — `#1`'s name.
|
|
46
|
+
* - **Overrunning end.** `(0, 9999)` for `#1` clamps to EOF, so the window
|
|
47
|
+
* ends at the file's LAST record. `getPropertySetName(#1)` answers `'SetA'`
|
|
48
|
+
* — right, by luck, because that pattern is unanchored — while
|
|
49
|
+
* `getPropertyIdsInSet(#1)` answers `[201, 202]`, which are `#2`'s members.
|
|
50
|
+
* The readers whose patterns are `$`-anchored match at the end of the
|
|
51
|
+
* CLAMPED window, i.e. against whatever record the file happens to end on.
|
|
52
|
+
*
|
|
53
|
+
* A confidently wrong answer, not "no match". The overrun is also the shape
|
|
54
|
+
* that is REACHABLE — it is the #2491 corrupt-store shape above, a ref
|
|
55
|
+
* claiming bytes the source cannot serve. The negative offset is not, twice
|
|
56
|
+
* over: `OVERLAY_BYTE_OFFSET = -1` (`mutations/src/store-editor.ts`) is the
|
|
57
|
+
* only negative offset in the repo and every site that writes it pairs it
|
|
58
|
+
* with `byteLength: 0`; and `CompactEntityIndex` — the index those readers
|
|
59
|
+
* consult — keeps offsets in a `Uint32Array`, so a negative value cannot
|
|
60
|
+
* round-trip through it at all. The two-record measurements above were taken
|
|
61
|
+
* over a plain-`Map` index, which can hold one.
|
|
62
|
+
*
|
|
63
|
+
* The readers are therefore gated on this predicate too (`entityLineText` in
|
|
64
|
+
* `step-exporter.ts`), which also makes them agree with the source-iteration
|
|
65
|
+
* pass: that pass already skips a record whose ref fails this test, so an
|
|
66
|
+
* exempt reader was answering questions about a record the same export had
|
|
67
|
+
* decided not to write.
|
|
37
68
|
*/
|
|
38
69
|
import type { ExportEntityRef } from './entity-iteration.js';
|
|
39
70
|
/** The half of a source this module needs: how many bytes it can serve. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-ref-bounds.d.ts","sourceRoot":"","sources":["../src/source-ref-bounds.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"source-ref-bounds.d.ts","sourceRoot":"","sources":["../src/source-ref-bounds.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,2EAA2E;AAC3E,UAAU,YAAY;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACtC,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,CAAC,GAAG,SAAS,KAAK,OAAO,CAUlF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-ref-bounds.js","sourceRoot":"","sources":["../src/source-ref-bounds.ts"],"names":[],"mappings":"AAAA;;+DAE+D;
|
|
1
|
+
{"version":3,"file":"source-ref-bounds.js","sourceRoot":"","sources":["../src/source-ref-bounds.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AA8E/D;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAuC;IAEvC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,EAAE,EAAE;QACb,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QACvB,IAAI,GAAG,CAAC,UAAU,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5D,yEAAyE;QACzE,sEAAsE;QACtE,sDAAsD;QACtD,OAAO,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/step-exporter.d.ts
CHANGED
|
@@ -128,6 +128,13 @@ export declare class StepExporter {
|
|
|
128
128
|
private ownerHistoryFallbackRef;
|
|
129
129
|
/** Per-host cache of an element's own OwnerHistory ref (`#id` or null). */
|
|
130
130
|
private ownerHistoryByEntity;
|
|
131
|
+
/**
|
|
132
|
+
* "Can this record's line actually be read out of this store's source?"
|
|
133
|
+
* (`source-ref-bounds.ts`, #2491). Built once — `dataStore` is assigned in
|
|
134
|
+
* the constructor and never reassigned — so the gates outside `export`'s
|
|
135
|
+
* closure share one predicate instead of rebuilding it per call.
|
|
136
|
+
*/
|
|
137
|
+
private isReadableSourceRef;
|
|
131
138
|
constructor(dataStore: IfcDataStore, mutationView?: MutablePropertyView);
|
|
132
139
|
/**
|
|
133
140
|
* Export to STEP format
|
|
@@ -346,6 +353,55 @@ export declare class StepExporter {
|
|
|
346
353
|
* sweep costs nothing extra.
|
|
347
354
|
*/
|
|
348
355
|
private buildRelDefinesByPropertiesIndex;
|
|
356
|
+
/**
|
|
357
|
+
* The source STEP text of an entity's line, or `null` when there are no bytes
|
|
358
|
+
* to read.
|
|
359
|
+
*
|
|
360
|
+
* The byte check is on the RANGE, not on `dataStore.source`. `source` is a
|
|
361
|
+
* MANDATORY accessor — `EMPTY_SOURCE_BYTES` is how "this model kept no bytes"
|
|
362
|
+
* is spelled (server-parsed, synthetic, GLB and point-cloud stores all have
|
|
363
|
+
* one) — so the `!this.dataStore.source` guard the five readers below used to
|
|
364
|
+
* carry never fired. It was also redundant: a zero-length range decodes to
|
|
365
|
+
* `''`, which fails every regex those readers run, so they already answered
|
|
366
|
+
* "nothing" for a sourceless store. Scoping the check to the range is what
|
|
367
|
+
* makes the guard live without changing a single answer, the same shape and
|
|
368
|
+
* for the same reason as `reference-collector.ts` (#2339).
|
|
369
|
+
*
|
|
370
|
+
* An OVERLAY-created entity never reaches here: every caller resolves its id
|
|
371
|
+
* through `dataStore.entityIndex.byId`, which holds source records only
|
|
372
|
+
* (`effective-index.ts` synthesises the overlay refs on its own side and
|
|
373
|
+
* writes nothing back), so an overlay id is already `undefined` at the
|
|
374
|
+
* lookup and is served by the callers' documented "not a source record"
|
|
375
|
+
* path. That is why an early return is safe HERE and is NOT safe at the
|
|
376
|
+
* visible-only closure in `export` — see the comment there.
|
|
377
|
+
*
|
|
378
|
+
* ## Why `isReadableSourceRef` and not `byteLength === 0`
|
|
379
|
+
*
|
|
380
|
+
* An out-of-range ref does NOT degrade to "no match" here. `decodeUtf8`
|
|
381
|
+
* clamps the range it cannot address, and the clamped window is still a
|
|
382
|
+
* window over real file bytes — so these readers answer from somebody
|
|
383
|
+
* ELSE's record. `source-ref-bounds.ts` (#2491) carries the measured
|
|
384
|
+
* account of both shapes and of why "a clamped, empty decode already yields
|
|
385
|
+
* no match" is false; it is not restated here, because an argument kept in
|
|
386
|
+
* two files is an argument that has to stay true in two files.
|
|
387
|
+
*
|
|
388
|
+
* The consequence specific to THIS site is that the wrong answer is acted
|
|
389
|
+
* on. `retainSharedAtoms` un-skips every id `getPropertyIdsInSet` returns,
|
|
390
|
+
* so a member list read out of the wrong record un-skips the wrong atoms;
|
|
391
|
+
* and the source-iteration pass already refuses to emit a record whose ref
|
|
392
|
+
* fails `isReadableSourceRef` (see the `continue` in `export`), so before
|
|
393
|
+
* this gate these readers were making decisions on behalf of a container
|
|
394
|
+
* that the same export had decided not to write. Gating them on the same
|
|
395
|
+
* predicate is what makes the two passes agree.
|
|
396
|
+
*
|
|
397
|
+
* The degradation is the one the exporter already handles: a record with no
|
|
398
|
+
* emittable bytes, generating nothing and named by nothing. It costs one
|
|
399
|
+
* answer that used to be right by luck — an overrunning ref on the file's
|
|
400
|
+
* LAST record clamps back to exactly that record's text — but that record
|
|
401
|
+
* is one the emission pass drops anyway, so keeping the answer only kept
|
|
402
|
+
* the disagreement.
|
|
403
|
+
*/
|
|
404
|
+
private entityLineText;
|
|
349
405
|
/**
|
|
350
406
|
* Get entity IDs related by IfcRelDefinesByProperties (the related objects)
|
|
351
407
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-exporter.d.ts","sourceRoot":"","sources":["../src/step-exporter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"step-exporter.d.ts","sourceRoot":"","sources":["../src/step-exporter.ts"],"names":[],"mappings":"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"}
|
package/dist/step-exporter.js
CHANGED
|
@@ -24,7 +24,7 @@ import { serializeNominalValue } from './declared-property-type.js';
|
|
|
24
24
|
* or the {@link IfcSourceBytes} accessor (#2183). Replaces the direct
|
|
25
25
|
* `safeUtf8Decode(source, …)` calls this file used to make: `decodeUtf8` is
|
|
26
26
|
* SAB-safe in exactly the same way, and routing through the accessor is what
|
|
27
|
-
* lets `IfcDataStore.source` change shape without touching these
|
|
27
|
+
* lets `IfcDataStore.source` change shape without touching these four reads.
|
|
28
28
|
*/
|
|
29
29
|
function decodeRange(src, start, end) {
|
|
30
30
|
return asSourceBytes(src).decodeUtf8(start, end);
|
|
@@ -73,8 +73,16 @@ export class StepExporter {
|
|
|
73
73
|
ownerHistoryFallbackRef;
|
|
74
74
|
/** Per-host cache of an element's own OwnerHistory ref (`#id` or null). */
|
|
75
75
|
ownerHistoryByEntity = new Map();
|
|
76
|
+
/**
|
|
77
|
+
* "Can this record's line actually be read out of this store's source?"
|
|
78
|
+
* (`source-ref-bounds.ts`, #2491). Built once — `dataStore` is assigned in
|
|
79
|
+
* the constructor and never reassigned — so the gates outside `export`'s
|
|
80
|
+
* closure share one predicate instead of rebuilding it per call.
|
|
81
|
+
*/
|
|
82
|
+
isReadableSourceRef;
|
|
76
83
|
constructor(dataStore, mutationView) {
|
|
77
84
|
this.dataStore = dataStore;
|
|
85
|
+
this.isReadableSourceRef = createSourceRefReader(dataStore.source);
|
|
78
86
|
this.mutationView = mutationView || null;
|
|
79
87
|
const maxExisting = this.findMaxExpressId();
|
|
80
88
|
const overlayWatermark = typeof mutationView?.peekNextExpressId === 'function'
|
|
@@ -189,18 +197,9 @@ export class StepExporter {
|
|
|
189
197
|
// `collectReferencedEntityIds` used, rather than a second, possibly
|
|
190
198
|
// divergent notion of "hidden" (#2398).
|
|
191
199
|
let hiddenProductIds = null;
|
|
192
|
-
if (options.visibleOnly && this.dataStore.source) {
|
|
193
|
-
const visible = getVisibleEntityIds(this.dataStore, options.hiddenEntityIds ?? new Set(), options.isolatedEntityIds ?? null, effective);
|
|
194
|
-
hiddenProductIds = visible.hiddenProductIds;
|
|
195
|
-
allowedEntityIds = collectReferencedEntityIds(visible.roots, this.dataStore.source, effective, visible.hiddenProductIds);
|
|
196
|
-
// Second pass: collect IFCSTYLEDITEM entities that reference included
|
|
197
|
-
// geometry. Styled items reference geometry items but nothing references
|
|
198
|
-
// them back, so the forward closure misses them.
|
|
199
|
-
collectStyleEntities(allowedEntityIds, this.dataStore.source, { byId: effective, byType: effective.byType });
|
|
200
|
-
}
|
|
201
200
|
// A relationship can name an excluded entity two ways that have nothing
|
|
202
201
|
// to do with each other: a `visibleOnly` hidden PRODUCT (`hiddenProductIds`,
|
|
203
|
-
//
|
|
202
|
+
// below), and a TOMBSTONED one — `editor.removeEntity` on a related object
|
|
204
203
|
// named by a relationship the deletion sweep below does not reach (that
|
|
205
204
|
// sweep only withholds an `IfcRelDefinesByProperties` when EVERY related
|
|
206
205
|
// object is gone, and only for that one relationship class). Left alone, a
|
|
@@ -208,12 +207,34 @@ export class StepExporter {
|
|
|
208
207
|
// no `#N=` line, on a path with no `visibleOnly` involved at all (#2398).
|
|
209
208
|
// `effective.isDeleted` answers for every id, not just a precomputed set,
|
|
210
209
|
// so this predicate covers both sources without a second exclusion set.
|
|
210
|
+
//
|
|
211
|
+
// Declared here, ahead of the closure walk below, and passed into
|
|
212
|
+
// `collectReferencedEntityIds` as its `isRefExcluded` — the walk's bridge
|
|
213
|
+
// decision (whether an `IFCREL*` root may reach what it names) and the
|
|
214
|
+
// OUTPUT-line filtering further down now read the SAME predicate, rather
|
|
215
|
+
// than the walk inventing its own `!entityIndex.has` proxy for "deleted"
|
|
216
|
+
// that could disagree with this one on an id that never existed in the
|
|
217
|
+
// file at all (maintainer-found regression on #2637: such an id blocked
|
|
218
|
+
// the bridge but did not stop the relationship's own line from shipping,
|
|
219
|
+
// dropping a VISIBLE sibling's pset while adding a fresh dangling ref).
|
|
220
|
+
// A closure over the `let hiddenProductIds` above, not a value snapshot —
|
|
221
|
+
// correct because nothing reads it before `hiddenProductIds` is assigned
|
|
222
|
+
// just below.
|
|
223
|
+
const isExcludedFromRelationshipRefs = (id) => (hiddenProductIds !== null && hiddenProductIds.has(id)) || effective.isDeleted(id);
|
|
224
|
+
if (options.visibleOnly && this.dataStore.source) {
|
|
225
|
+
const visible = getVisibleEntityIds(this.dataStore, options.hiddenEntityIds ?? new Set(), options.isolatedEntityIds ?? null, effective);
|
|
226
|
+
hiddenProductIds = visible.hiddenProductIds;
|
|
227
|
+
allowedEntityIds = collectReferencedEntityIds(visible.roots, this.dataStore.source, effective, visible.hiddenProductIds, isExcludedFromRelationshipRefs);
|
|
228
|
+
// Second pass: collect IFCSTYLEDITEM entities that reference included
|
|
229
|
+
// geometry. Styled items reference geometry items but nothing references
|
|
230
|
+
// them back, so the forward closure misses them.
|
|
231
|
+
collectStyleEntities(allowedEntityIds, this.dataStore.source, { byId: effective, byType: effective.byType });
|
|
232
|
+
}
|
|
211
233
|
// `overlayActive` proper (used everywhere else) is declared further below,
|
|
212
234
|
// ahead of the mutation-processing block it gates; duplicated here as the
|
|
213
235
|
// same expression rather than reordering that declaration.
|
|
214
236
|
const mayNameExcludedRefs = (hiddenProductIds !== null && hiddenProductIds.size > 0)
|
|
215
237
|
|| (!!this.mutationView && options.applyMutations !== false);
|
|
216
|
-
const isExcludedFromRelationshipRefs = (id) => (hiddenProductIds !== null && hiddenProductIds.has(id)) || effective.isDeleted(id);
|
|
217
238
|
// Will THIS entity's own line ever land in the file? The same byte-range
|
|
218
239
|
// test `willBeEmitted` uses (defined further below) and the source-
|
|
219
240
|
// iteration pass's own skip at `entityRef.byteLength === 0` — a source
|
|
@@ -1367,7 +1388,7 @@ export class StepExporter {
|
|
|
1367
1388
|
// Readability rather than presence, as everywhere else (#2491). A clamped
|
|
1368
1389
|
// decode would match nothing here, so this is tidiness rather than a bug —
|
|
1369
1390
|
// but the gates in this file agree on one predicate now.
|
|
1370
|
-
if (entityRef &&
|
|
1391
|
+
if (entityRef && this.isReadableSourceRef(entityRef)) {
|
|
1371
1392
|
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
1372
1393
|
// #ID=IFCWALL('GlobalId',#owner,...): GlobalId is a quoted STEP string
|
|
1373
1394
|
// (doubled '' escapes); OwnerHistory is the ref/`$` right after it.
|
|
@@ -1936,14 +1957,67 @@ export class StepExporter {
|
|
|
1936
1957
|
}
|
|
1937
1958
|
return { byEntity, relatedByRel };
|
|
1938
1959
|
}
|
|
1960
|
+
/**
|
|
1961
|
+
* The source STEP text of an entity's line, or `null` when there are no bytes
|
|
1962
|
+
* to read.
|
|
1963
|
+
*
|
|
1964
|
+
* The byte check is on the RANGE, not on `dataStore.source`. `source` is a
|
|
1965
|
+
* MANDATORY accessor — `EMPTY_SOURCE_BYTES` is how "this model kept no bytes"
|
|
1966
|
+
* is spelled (server-parsed, synthetic, GLB and point-cloud stores all have
|
|
1967
|
+
* one) — so the `!this.dataStore.source` guard the five readers below used to
|
|
1968
|
+
* carry never fired. It was also redundant: a zero-length range decodes to
|
|
1969
|
+
* `''`, which fails every regex those readers run, so they already answered
|
|
1970
|
+
* "nothing" for a sourceless store. Scoping the check to the range is what
|
|
1971
|
+
* makes the guard live without changing a single answer, the same shape and
|
|
1972
|
+
* for the same reason as `reference-collector.ts` (#2339).
|
|
1973
|
+
*
|
|
1974
|
+
* An OVERLAY-created entity never reaches here: every caller resolves its id
|
|
1975
|
+
* through `dataStore.entityIndex.byId`, which holds source records only
|
|
1976
|
+
* (`effective-index.ts` synthesises the overlay refs on its own side and
|
|
1977
|
+
* writes nothing back), so an overlay id is already `undefined` at the
|
|
1978
|
+
* lookup and is served by the callers' documented "not a source record"
|
|
1979
|
+
* path. That is why an early return is safe HERE and is NOT safe at the
|
|
1980
|
+
* visible-only closure in `export` — see the comment there.
|
|
1981
|
+
*
|
|
1982
|
+
* ## Why `isReadableSourceRef` and not `byteLength === 0`
|
|
1983
|
+
*
|
|
1984
|
+
* An out-of-range ref does NOT degrade to "no match" here. `decodeUtf8`
|
|
1985
|
+
* clamps the range it cannot address, and the clamped window is still a
|
|
1986
|
+
* window over real file bytes — so these readers answer from somebody
|
|
1987
|
+
* ELSE's record. `source-ref-bounds.ts` (#2491) carries the measured
|
|
1988
|
+
* account of both shapes and of why "a clamped, empty decode already yields
|
|
1989
|
+
* no match" is false; it is not restated here, because an argument kept in
|
|
1990
|
+
* two files is an argument that has to stay true in two files.
|
|
1991
|
+
*
|
|
1992
|
+
* The consequence specific to THIS site is that the wrong answer is acted
|
|
1993
|
+
* on. `retainSharedAtoms` un-skips every id `getPropertyIdsInSet` returns,
|
|
1994
|
+
* so a member list read out of the wrong record un-skips the wrong atoms;
|
|
1995
|
+
* and the source-iteration pass already refuses to emit a record whose ref
|
|
1996
|
+
* fails `isReadableSourceRef` (see the `continue` in `export`), so before
|
|
1997
|
+
* this gate these readers were making decisions on behalf of a container
|
|
1998
|
+
* that the same export had decided not to write. Gating them on the same
|
|
1999
|
+
* predicate is what makes the two passes agree.
|
|
2000
|
+
*
|
|
2001
|
+
* The degradation is the one the exporter already handles: a record with no
|
|
2002
|
+
* emittable bytes, generating nothing and named by nothing. It costs one
|
|
2003
|
+
* answer that used to be right by luck — an overrunning ref on the file's
|
|
2004
|
+
* LAST record clamps back to exactly that record's text — but that record
|
|
2005
|
+
* is one the emission pass drops anyway, so keeping the answer only kept
|
|
2006
|
+
* the disagreement.
|
|
2007
|
+
*/
|
|
2008
|
+
entityLineText(entityId) {
|
|
2009
|
+
const entityRef = this.dataStore.entityIndex.byId.get(entityId);
|
|
2010
|
+
if (!entityRef || !this.isReadableSourceRef(entityRef))
|
|
2011
|
+
return null;
|
|
2012
|
+
return decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
2013
|
+
}
|
|
1939
2014
|
/**
|
|
1940
2015
|
* Get entity IDs related by IfcRelDefinesByProperties (the related objects)
|
|
1941
2016
|
*/
|
|
1942
2017
|
getRelatedEntities(relId) {
|
|
1943
|
-
const
|
|
1944
|
-
if (
|
|
2018
|
+
const entityText = this.entityLineText(relId);
|
|
2019
|
+
if (entityText === null)
|
|
1945
2020
|
return [];
|
|
1946
|
-
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
1947
2021
|
// Parse IfcRelDefinesByProperties: #ID=IFCRELDEFINESBYPROPERTIES('guid',$,$,$,(#objects),#pset);
|
|
1948
2022
|
// The 5th argument (index 4) is the list of related objects
|
|
1949
2023
|
const match = entityText.match(/\(([^)]+)\)\s*,\s*#(\d+)\s*\)\s*;/);
|
|
@@ -1961,10 +2035,9 @@ export class StepExporter {
|
|
|
1961
2035
|
* Get the property set ID from IfcRelDefinesByProperties
|
|
1962
2036
|
*/
|
|
1963
2037
|
getRelatedPropertySet(relId) {
|
|
1964
|
-
const
|
|
1965
|
-
if (
|
|
2038
|
+
const entityText = this.entityLineText(relId);
|
|
2039
|
+
if (entityText === null)
|
|
1966
2040
|
return null;
|
|
1967
|
-
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
1968
2041
|
// Last #ID before the closing );
|
|
1969
2042
|
const match = entityText.match(/,\s*#(\d+)\s*\)\s*;$/);
|
|
1970
2043
|
if (!match)
|
|
@@ -1975,10 +2048,9 @@ export class StepExporter {
|
|
|
1975
2048
|
* Get the name of a property set by parsing the entity
|
|
1976
2049
|
*/
|
|
1977
2050
|
getPropertySetName(psetId) {
|
|
1978
|
-
const
|
|
1979
|
-
if (
|
|
2051
|
+
const entityText = this.entityLineText(psetId);
|
|
2052
|
+
if (entityText === null)
|
|
1980
2053
|
return null;
|
|
1981
|
-
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
1982
2054
|
// Parse: IFCPROPERTYSET('guid',$,'Name',$,...) - Name is 3rd argument
|
|
1983
2055
|
const match = entityText.match(/IFCPROPERTYSET\s*\([^,]*,[^,]*,'([^']*)'/i);
|
|
1984
2056
|
if (!match)
|
|
@@ -1989,10 +2061,9 @@ export class StepExporter {
|
|
|
1989
2061
|
* Get the name of an element quantity set by parsing the entity
|
|
1990
2062
|
*/
|
|
1991
2063
|
getElementQuantityName(entityId) {
|
|
1992
|
-
const
|
|
1993
|
-
if (
|
|
2064
|
+
const entityText = this.entityLineText(entityId);
|
|
2065
|
+
if (entityText === null)
|
|
1994
2066
|
return null;
|
|
1995
|
-
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
1996
2067
|
// Parse: IFCELEMENTQUANTITY('guid',$,'Name',...) - Name is 3rd argument
|
|
1997
2068
|
const match = entityText.match(/IFCELEMENTQUANTITY\s*\([^,]*,[^,]*,'([^']*)'/i);
|
|
1998
2069
|
if (!match)
|
|
@@ -2037,10 +2108,9 @@ export class StepExporter {
|
|
|
2037
2108
|
}
|
|
2038
2109
|
}
|
|
2039
2110
|
getPropertyIdsInSet(psetId) {
|
|
2040
|
-
const
|
|
2041
|
-
if (
|
|
2111
|
+
const entityText = this.entityLineText(psetId);
|
|
2112
|
+
if (entityText === null)
|
|
2042
2113
|
return [];
|
|
2043
|
-
const entityText = decodeRange(this.dataStore.source, entityRef.byteOffset, entityRef.byteOffset + entityRef.byteLength);
|
|
2044
2114
|
// Parse: IFCPROPERTYSET(...,(#prop1,#prop2,...)); - Last argument is properties list
|
|
2045
2115
|
const match = entityText.match(/\(\s*(#[^)]+)\s*\)\s*\)\s*;$/);
|
|
2046
2116
|
if (!match)
|