@bldrs-ai/conway 1.430.1294 → 1.431.1296
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/compiled/examples/browser-bundled.cjs +21 -2
- package/compiled/examples/cli-bundled.cjs +21 -2
- package/compiled/examples/cli-step-bundled.cjs +61 -21
- package/compiled/examples/validator-bundled.cjs +21 -2
- package/compiled/src/AP214E3_2010/ap214_geometry_extraction.d.ts.map +1 -1
- package/compiled/src/AP214E3_2010/ap214_geometry_extraction.js +83 -24
- package/compiled/src/compat/web-ifc/ifc_api_preview_channel.test.js +104 -0
- package/compiled/src/compat/web-ifc/streamed_preview_channel.d.ts +35 -0
- package/compiled/src/compat/web-ifc/streamed_preview_channel.d.ts.map +1 -1
- package/compiled/src/compat/web-ifc/streamed_preview_channel.js +96 -11
- package/compiled/src/step/parsing/columnar_index.d.ts.map +1 -1
- package/compiled/src/step/parsing/columnar_index.js +40 -1
- package/compiled/src/version/version.js +1 -1
- package/compiled/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -30,7 +30,7 @@ var import_node_process = require("node:process");
|
|
|
30
30
|
var readline = __toESM(require("node:readline"), 1);
|
|
31
31
|
|
|
32
32
|
// compiled/src/version/version.js
|
|
33
|
-
var versionString = "Conway v1.
|
|
33
|
+
var versionString = "Conway v1.431.1296";
|
|
34
34
|
|
|
35
35
|
// compiled/dependencies/conway-geom/interface/conway_geometry.js
|
|
36
36
|
var wasmType = "";
|
|
@@ -71065,7 +71065,7 @@ var ColumnarIndexSink = class {
|
|
|
71065
71065
|
let complexEntries;
|
|
71066
71066
|
for (const [localID, entry] of this.retained_) {
|
|
71067
71067
|
if (entry.multiMapping !== void 0) {
|
|
71068
|
-
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, entry);
|
|
71068
|
+
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, cloneIndexEntry(entry));
|
|
71069
71069
|
}
|
|
71070
71070
|
}
|
|
71071
71071
|
return {
|
|
@@ -71080,6 +71080,25 @@ var ColumnarIndexSink = class {
|
|
|
71080
71080
|
};
|
|
71081
71081
|
}
|
|
71082
71082
|
};
|
|
71083
|
+
function cloneIndexEntry(entry) {
|
|
71084
|
+
const clone = {
|
|
71085
|
+
address: entry.address,
|
|
71086
|
+
length: entry.length
|
|
71087
|
+
};
|
|
71088
|
+
if (entry.typeID !== void 0) {
|
|
71089
|
+
clone.typeID = entry.typeID;
|
|
71090
|
+
}
|
|
71091
|
+
if (entry.expressID !== void 0) {
|
|
71092
|
+
clone.expressID = entry.expressID;
|
|
71093
|
+
}
|
|
71094
|
+
if (entry.inlineEntities !== void 0) {
|
|
71095
|
+
clone.inlineEntities = entry.inlineEntities;
|
|
71096
|
+
}
|
|
71097
|
+
if (entry.multiMapping !== void 0) {
|
|
71098
|
+
clone.multiMapping = entry.multiMapping.map(cloneIndexEntry);
|
|
71099
|
+
}
|
|
71100
|
+
return clone;
|
|
71101
|
+
}
|
|
71083
71102
|
function concatColumn(segments, column, rows, finalLength) {
|
|
71084
71103
|
const result = new Uint32Array(finalLength);
|
|
71085
71104
|
for (let segment = 0; segment * SEGMENT_ROWS < rows; ++segment) {
|
|
@@ -14965,7 +14965,7 @@ ${t5.join("\n")}` : "";
|
|
|
14965
14965
|
var import_process = require("process");
|
|
14966
14966
|
|
|
14967
14967
|
// compiled/src/version/version.js
|
|
14968
|
-
var versionString = "Conway v1.
|
|
14968
|
+
var versionString = "Conway v1.431.1296";
|
|
14969
14969
|
|
|
14970
14970
|
// compiled/dependencies/conway-geom/interface/conway_geometry.js
|
|
14971
14971
|
function pThreadsAllowed() {
|
|
@@ -86910,7 +86910,7 @@ var ColumnarIndexSink = class {
|
|
|
86910
86910
|
let complexEntries;
|
|
86911
86911
|
for (const [localID, entry] of this.retained_) {
|
|
86912
86912
|
if (entry.multiMapping !== void 0) {
|
|
86913
|
-
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, entry);
|
|
86913
|
+
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, cloneIndexEntry(entry));
|
|
86914
86914
|
}
|
|
86915
86915
|
}
|
|
86916
86916
|
return {
|
|
@@ -86925,6 +86925,25 @@ var ColumnarIndexSink = class {
|
|
|
86925
86925
|
};
|
|
86926
86926
|
}
|
|
86927
86927
|
};
|
|
86928
|
+
function cloneIndexEntry(entry) {
|
|
86929
|
+
const clone = {
|
|
86930
|
+
address: entry.address,
|
|
86931
|
+
length: entry.length
|
|
86932
|
+
};
|
|
86933
|
+
if (entry.typeID !== void 0) {
|
|
86934
|
+
clone.typeID = entry.typeID;
|
|
86935
|
+
}
|
|
86936
|
+
if (entry.expressID !== void 0) {
|
|
86937
|
+
clone.expressID = entry.expressID;
|
|
86938
|
+
}
|
|
86939
|
+
if (entry.inlineEntities !== void 0) {
|
|
86940
|
+
clone.inlineEntities = entry.inlineEntities;
|
|
86941
|
+
}
|
|
86942
|
+
if (entry.multiMapping !== void 0) {
|
|
86943
|
+
clone.multiMapping = entry.multiMapping.map(cloneIndexEntry);
|
|
86944
|
+
}
|
|
86945
|
+
return clone;
|
|
86946
|
+
}
|
|
86928
86947
|
function concatColumn(segments, column, rows, finalLength) {
|
|
86929
86948
|
const result = new Uint32Array(finalLength);
|
|
86930
86949
|
for (let segment = 0; segment * SEGMENT_ROWS < rows; ++segment) {
|
|
@@ -15943,7 +15943,7 @@ var ParsingBuffer = class {
|
|
|
15943
15943
|
};
|
|
15944
15944
|
|
|
15945
15945
|
// compiled/src/version/version.js
|
|
15946
|
-
var versionString = "Conway v1.
|
|
15946
|
+
var versionString = "Conway v1.431.1296";
|
|
15947
15947
|
|
|
15948
15948
|
// compiled/dependencies/conway-geom/interface/conway_geometry.js
|
|
15949
15949
|
function pThreadsAllowed() {
|
|
@@ -84133,12 +84133,24 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84133
84133
|
}
|
|
84134
84134
|
}
|
|
84135
84135
|
for (const contextDependentShapeRepresentation of contextDependentShapeRepresentations) {
|
|
84136
|
-
|
|
84136
|
+
let assembly;
|
|
84137
|
+
let shapeRelationship;
|
|
84138
|
+
try {
|
|
84139
|
+
assembly = contextDependentShapeRepresentation.represented_product_relation;
|
|
84140
|
+
shapeRelationship = contextDependentShapeRepresentation.representation_relation;
|
|
84141
|
+
} catch {
|
|
84142
|
+
continue;
|
|
84143
|
+
}
|
|
84137
84144
|
const owningLocalID = assembly.localID;
|
|
84138
|
-
const shapeRelationship = contextDependentShapeRepresentation.representation_relation;
|
|
84139
84145
|
shapeRepresentationRelationshipsSeen.add(shapeRelationship.localID);
|
|
84140
|
-
let sourceShape
|
|
84141
|
-
let targetShape
|
|
84146
|
+
let sourceShape;
|
|
84147
|
+
let targetShape;
|
|
84148
|
+
try {
|
|
84149
|
+
sourceShape = shapeRelationship.rep_1;
|
|
84150
|
+
targetShape = shapeRelationship.rep_2;
|
|
84151
|
+
} catch {
|
|
84152
|
+
continue;
|
|
84153
|
+
}
|
|
84142
84154
|
let orientationFlipped = false;
|
|
84143
84155
|
try {
|
|
84144
84156
|
const nauo = assembly.definition;
|
|
@@ -84155,7 +84167,13 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84155
84167
|
}
|
|
84156
84168
|
} catch {
|
|
84157
84169
|
}
|
|
84158
|
-
|
|
84170
|
+
let transform;
|
|
84171
|
+
let isContinue;
|
|
84172
|
+
try {
|
|
84173
|
+
[transform, isContinue] = this.doTransforms(shapeRelationship, sourceShape, targetShape, owningLocalID, orientationFlipped);
|
|
84174
|
+
} catch {
|
|
84175
|
+
continue;
|
|
84176
|
+
}
|
|
84159
84177
|
if (isContinue) {
|
|
84160
84178
|
continue;
|
|
84161
84179
|
}
|
|
@@ -84188,9 +84206,17 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84188
84206
|
}
|
|
84189
84207
|
const owningLocalID = shapeRelationship.localID;
|
|
84190
84208
|
shapeRepresentationRelationshipsSeen.add(owningLocalID);
|
|
84191
|
-
|
|
84192
|
-
|
|
84193
|
-
|
|
84209
|
+
let sourceShape;
|
|
84210
|
+
let targetShape;
|
|
84211
|
+
let transform;
|
|
84212
|
+
let isContinue;
|
|
84213
|
+
try {
|
|
84214
|
+
sourceShape = shapeRelationship.rep_2;
|
|
84215
|
+
targetShape = shapeRelationship.rep_1;
|
|
84216
|
+
[transform, isContinue] = this.doTransforms(shapeRelationship, sourceShape, targetShape, owningLocalID);
|
|
84217
|
+
} catch {
|
|
84218
|
+
continue;
|
|
84219
|
+
}
|
|
84194
84220
|
if (isContinue) {
|
|
84195
84221
|
continue;
|
|
84196
84222
|
}
|
|
@@ -84218,11 +84244,17 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84218
84244
|
}
|
|
84219
84245
|
const shapeDefinitions = model.types(shape_definition_representation);
|
|
84220
84246
|
for (const shapeDefinitionRepresentation of shapeDefinitions) {
|
|
84221
|
-
|
|
84222
|
-
|
|
84247
|
+
let shapeRepresentation;
|
|
84248
|
+
let definition;
|
|
84249
|
+
try {
|
|
84250
|
+
shapeRepresentation = shapeDefinitionRepresentation.used_representation;
|
|
84251
|
+
if (!(shapeRepresentation instanceof shape_representation)) {
|
|
84252
|
+
continue;
|
|
84253
|
+
}
|
|
84254
|
+
definition = shapeDefinitionRepresentation.definition;
|
|
84255
|
+
} catch {
|
|
84223
84256
|
continue;
|
|
84224
84257
|
}
|
|
84225
|
-
const definition = shapeDefinitionRepresentation.definition;
|
|
84226
84258
|
const owningElementLocalID = definition.localID;
|
|
84227
84259
|
let treeNode = treeMap.get(shapeRepresentation.localID);
|
|
84228
84260
|
const hasMappedNode = treeNode !== void 0;
|
|
@@ -84239,11 +84271,15 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84239
84271
|
mappedTreeNode.owningLocalID = owningElementLocalID;
|
|
84240
84272
|
if (!hasMappedNode) {
|
|
84241
84273
|
mappedTreeNode.processed = true;
|
|
84242
|
-
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.find((unit) => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
84243
84274
|
let scaleTransform = void 0;
|
|
84244
|
-
|
|
84245
|
-
const
|
|
84246
|
-
|
|
84275
|
+
try {
|
|
84276
|
+
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.find((unit) => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
84277
|
+
if (sourceShapeContext !== void 0) {
|
|
84278
|
+
const sourceUnitInM = this.convertToMetres(sourceShapeContext) ?? 1;
|
|
84279
|
+
scaleTransform = this.uniformScaleAffine(this.identity3DNativeMatrix, 1 / sourceUnitInM);
|
|
84280
|
+
}
|
|
84281
|
+
} catch {
|
|
84282
|
+
scaleTransform = void 0;
|
|
84247
84283
|
}
|
|
84248
84284
|
pendingRoots.push({
|
|
84249
84285
|
node: mappedTreeNode,
|
|
@@ -84270,12 +84306,16 @@ ${error.stack} - expressID: #${face_.expressID}`);
|
|
|
84270
84306
|
}
|
|
84271
84307
|
for (const [sourceID, mappedNode] of treeMap.entries()) {
|
|
84272
84308
|
if ((mappedNode.parents ?? 0) === 0 && mappedNode.thunk !== void 0 && mappedNode.processed !== true) {
|
|
84273
|
-
const shapeRepresentation = this.model.getTypedElementByLocalID(sourceID, shape_representation);
|
|
84274
|
-
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.find((unit) => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
84275
84309
|
let scaleTransform = void 0;
|
|
84276
|
-
|
|
84277
|
-
const
|
|
84278
|
-
|
|
84310
|
+
try {
|
|
84311
|
+
const shapeRepresentation = this.model.getTypedElementByLocalID(sourceID, shape_representation);
|
|
84312
|
+
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.find((unit) => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
84313
|
+
if (sourceShapeContext !== void 0) {
|
|
84314
|
+
const sourceUnitInM = this.convertToMetres(sourceShapeContext) ?? 1;
|
|
84315
|
+
scaleTransform = this.uniformScaleAffine(this.identity3DNativeMatrix, 1 / sourceUnitInM);
|
|
84316
|
+
}
|
|
84317
|
+
} catch {
|
|
84318
|
+
scaleTransform = void 0;
|
|
84279
84319
|
}
|
|
84280
84320
|
pendingRoots.push({ node: mappedNode, scaleTransform });
|
|
84281
84321
|
}
|
|
@@ -944,7 +944,7 @@ var EntityTypesIfcCount = 909;
|
|
|
944
944
|
var entity_types_ifc_gen_default = EntityTypesIfc;
|
|
945
945
|
|
|
946
946
|
// compiled/src/version/version.js
|
|
947
|
-
var versionString = "Conway v1.
|
|
947
|
+
var versionString = "Conway v1.431.1296";
|
|
948
948
|
|
|
949
949
|
// compiled/dependencies/conway-geom/interface/conway_geometry.js
|
|
950
950
|
var wasmType = "";
|
|
@@ -71063,7 +71063,7 @@ var ColumnarIndexSink = class {
|
|
|
71063
71063
|
let complexEntries;
|
|
71064
71064
|
for (const [localID, entry] of this.retained_) {
|
|
71065
71065
|
if (entry.multiMapping !== void 0) {
|
|
71066
|
-
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, entry);
|
|
71066
|
+
(complexEntries ??= /* @__PURE__ */ new Map()).set(localID, cloneIndexEntry(entry));
|
|
71067
71067
|
}
|
|
71068
71068
|
}
|
|
71069
71069
|
return {
|
|
@@ -71078,6 +71078,25 @@ var ColumnarIndexSink = class {
|
|
|
71078
71078
|
};
|
|
71079
71079
|
}
|
|
71080
71080
|
};
|
|
71081
|
+
function cloneIndexEntry(entry) {
|
|
71082
|
+
const clone = {
|
|
71083
|
+
address: entry.address,
|
|
71084
|
+
length: entry.length
|
|
71085
|
+
};
|
|
71086
|
+
if (entry.typeID !== void 0) {
|
|
71087
|
+
clone.typeID = entry.typeID;
|
|
71088
|
+
}
|
|
71089
|
+
if (entry.expressID !== void 0) {
|
|
71090
|
+
clone.expressID = entry.expressID;
|
|
71091
|
+
}
|
|
71092
|
+
if (entry.inlineEntities !== void 0) {
|
|
71093
|
+
clone.inlineEntities = entry.inlineEntities;
|
|
71094
|
+
}
|
|
71095
|
+
if (entry.multiMapping !== void 0) {
|
|
71096
|
+
clone.multiMapping = entry.multiMapping.map(cloneIndexEntry);
|
|
71097
|
+
}
|
|
71098
|
+
return clone;
|
|
71099
|
+
}
|
|
71081
71100
|
function concatColumn(segments, column, rows, finalLength) {
|
|
71082
71101
|
const result = new Uint32Array(finalLength);
|
|
71083
71102
|
for (let segment = 0; segment * SEGMENT_ROWS < rows; ++segment) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ap214_geometry_extraction.d.ts","sourceRoot":"","sources":["../../../src/AP214E3_2010/ap214_geometry_extraction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,cAAc,EACd,sBAAsB,EAEtB,OAAO,EACP,WAAW,EAOX,wBAAwB,EAMxB,aAAa,EACb,SAAS,EACT,sBAAsB,EAEtB,cAAc,EACd,iBAAiB,EAOjB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EAItB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAqB,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EAEnB,8BAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,gCAAgC,EAChC,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACX,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,OAAO,EAEL,aAAa,EAEb,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,yBAAyB,EACzB,gBAAgB,EAEhB,cAAc,EACd,eAAe,EACf,oCAAoC,EACpC,oCAAoC,EACpC,MAAM,EACN,UAAU,EACV,eAAe,EAEf,eAAe,EACf,kBAAkB,EAGlB,KAAK,EACL,mBAAmB,EACnB,SAAS,EAIT,OAAO,EACP,mBAAmB,EACnB,IAAI,EACJ,wBAAwB,EACxB,YAAY,EAMZ,gBAAgB,EAGhB,WAAW,EACX,IAAI,EACJ,mBAAmB,EACnB,WAAW,EAMX,MAAM,EACN,SAAS,EAAE,KAAK,EAEhB,QAAQ,EAMR,aAAa,EACb,uBAAuB,EAEvB,mBAAmB,EAInB,oBAAoB,EACpB,iCAAiC,EACjC,yBAAyB,EACzB,SAAS,EAET,iBAAiB,EACjB,WAAW,EACX,OAAO,EAEP,2BAA2B,EAC3B,qBAAqB,EAIrB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EAKd,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,gBAAgB,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,cAAc,MAAM,oBAAoB,CAAA;AAK/C;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,GAAE,MAAU,GAAG,SAAS,CAE3F;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,GAAE,MAAU,GAAG,SAAS,CAG9E;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,UAAU,GAAG,aAAa,EAChC,YAAY,EAAE,SAAS,EAAE,KAAK,GAAE,MAAU,GAAG,SAAS,CAezD;AAED;;;GAGG;AACH,qBAAa,uBAAuB;IAyDhC,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,KAAK,EAAE,cAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;IA3DhC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAY;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAY;IAE7C,OAAO,CAAC,UAAU,CAAY;IAE9B,SAAgB,KAAK,EAAE,iBAAiB,CAAA;IAExC,SAAgB,SAAS,EAAE,kBAAkB,CAAA;IAE7C,SAAgB,eAAe,EAAE,oBAAoB,CAAA;IAIrD,OAAO,CAAC,mBAAmB,CAAQ;IAEnC,OAAO,CAAC,cAAc,CAAa;IAEnC,OAAO,CAAC,0BAA0B,CAAgD;IAClF,OAAO,CAAC,0BAA0B,CAAgD;IAClF,OAAO,CAAC,gCAAgC,CACoB;IAE5D,OAAO,CAAC,sBAAsB,CAA2C;IAElE,WAAW,EAAE,qBAAqB,GAAG,IAAI,CAAO;IAEvD,OAAO,CAAC,sBAAsB,CAAoB;IAClD,OAAO,CAAC,sBAAsB,CAAoB;IAElD,OAAO,CAAC,cAAc,CAAgB;IAEtC,OAAO,CAAC,QAAQ,CAAY;IAE5B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,SAAgB,MAAM,EAAE,gBAAgB,CAAA;IAExC,SAAgB,aAAa,EAAE,cAAc,CAAA;IAE7C;;;;;;;;;OASG;gBAEgB,WAAW,EAAE,cAAc,EAC5B,KAAK,EAAE,cAAc,EACpB,aAAa,GAAE,OAAc,EAC7B,aAAa,GAAE,MAAW,EAC1B,aAAa,GAAE,OAAe;IAoCjD;;;;;;;;OAQG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IAWtB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;OAIG;IACH,mBAAmB,IAAI,MAAM;IAa7B;;OAEG;IACH,qBAAqB;IAOrB;;OAEG;IACH,4BAA4B;IAY5B;;OAEG;IACH,sCAAsC;IAYtC;;OAEG;IACH,gCAAgC;IAUhC;;OAEG;IACH,gCAAgC;IAWhC;;;OAGG;IACH,sBAAsB,IAAI,MAAM;IAKhC;;;OAGG;IACH,aAAa,IAAI,UAAU;IAK3B;;;;OAIG;IACH,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC;IAcrE;;;;;OAKG;IACH,8BAA8B,IAAI,8BAA8B;IAQhE;;;;OAIG;IACH,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAY9D;;;;;OAKG;IACH,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAa9D,WAAW,IAAI,WAAW;IAK1B;;;;;OAKG;IACH,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC;IAa/D;;;;OAIG;IACH,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAa9D;;;OAGG;IACH,0BAA0B,IAAI,SAAS,CAAC,mBAAmB,CAAC;IAQ5D;;;;OAIG;IACH,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAc/D;;;;OAIG;IACH,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAa/D;;;;;OAKG;IACH,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAWxD;;;;;OAKG;IACH,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB;IAW1D,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAyC;IAEnF;;OAEG;IACH,uCAAuC,IAAI,IAAI;IAQ/C;;;;OAIG;IACH,oCAAoC,CAChC,gCAAgC,EAAE,gCAAgC,GAAG,IAAI;IAK7E;;;;;OAKG;IACH,gCAAgC,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,gCAAgC;IAwBxF;;;;;OAKG;IACH,mBAAmB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAY7D;;;;OAIG;IACH,mBAAmB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAa7D;;;;OAIG;IACH,aAAa,IAAI,OAAO;IAQxB;;;;OAIG;IACH,OAAO,CAAC,OAAO,GAAE,MAAU;IAO3B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAItB;;;;OAIG;IACH,OAAO,CAAC,8BAA8B;IAYtC;;;;;OAKG;IACH,OAAO,CAAC,+BAA+B;IAavC;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAC,YAAY,GAAG,WAAW,GAAG,GAAG;IAatD;;;OAGG;IACH,iBAAiB,CAAC,KAAK,EAAC,YAAY,GAAG,WAAW,GAAG,UAAU;IAe/D;;;;;OAKG;IACH,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,SAAS;IAapE;;;;;OAKG;IACH,mCAAmC,CAAC,IAAI,EAAE,oCAAoC;IAkC9E;;;;OAIG;IACH,oBAAoB,CAAE,OAAO,EAAE,MAAM;IAOrC;;;;OAIG;IACH,oBAAoB,CAAE,IAAI,EAAE,cAAc;IAkG1C;;;;;OAKG;IACH,qBAAqB,CAAE,IAAI,EACzB,mBAAmB,GACnB,cAAc,GACd,gBAAgB,GAChB,YAAY;IA+Gd;;;;OAIG;IACH,mBAAmB,CAAC,IAAI,EAAE,mBAAmB;IAiG7C;;;;OAIG;IACH,iBAAiB,CACb,IAAI,EAAE,WAAW,EACjB,kBAAkB,CAAC,EAAE,mBAAmB,GAAI,MAAM,GAAG,SAAS;IAiClE,+BAA+B,CAC3B,IAAI,EAAE,WAAW,EACjB,oBAAoB,CAAC,EAAE,MAAM,GAAI,IAAI;IAoCzC;;;OAGG;IACH,qBAAqB,CACjB,IAAI,EAAE,gBAAgB,EACtB,SAAS,GAAE,OAAe;IAkC9B;;;;OAIG;IAeH;;;OAGG;IACH,wBAAwB,CACpB,IAAI,EAAE,mBAAmB,EACzB,SAAS,GAAE,OAAe;IA6C9B;;;;;;OAMG;IACH,cAAc,CAAC,IAAI,EAAE,KAAK,GAAG,gBAAgB,GAAG,SAAS;IAuBzD;;;;;;;OAOG;IACH,YAAY,CACR,IAAI,EAAE,KAAK,GACX,aAAa,GACb,QAAQ,GACR,MAAM,GACN,cAAc,GACd,yBAAyB,GACzB,uBAAuB,GACvB,IAAI,EACJ,WAAW,GAAC,OAAc,EAC1B,MAAM,GAAC,OAAe,EACtB,iBAAiB,GAAE,iBAAiB,GAAG,SAAkB,GAC3D,WAAW,GAAG,SAAS;IAoJzB;;;;;;OAMG;IACH,qBAAqB,CAAC,IAAI,EAAE,eAAe,EACvC,WAAW,GAAC,OAAc,EAC1B,KAAK,GAAC,OAAe,GACtB,WAAW,GAAG,SAAS;IA2C1B;;;;OAIG;IACH,eAAe,CAAE,IAAI,EAAE,MAAM,GAAI,WAAW,GAAG,SAAS;IAgDxD;;;;;;;;;OASG;IACH,WAAW,CACP,IAAI,EAAE,IAAI,EACV,WAAW,GAAC,OAAc,EAC1B,MAAM,GAAC,OAAe,EACtB,sBAAsB,CAAC,EAAE,wBAAwB,GAAI,WAAW,GAAG,SAAS;IAmEhF;;;;;;;;OAQG;IACH,mBAAmB,CACjB,IAAI,EAAE,cAAc,EACpB,WAAW,GAAE,OAAc,EAC3B,MAAM,GAAE,OAAe,EACvB,sBAAsB,GAAE,wBAWzB,GAAI,WAAW;IA6HhB;;;;;;;OAOG;IACH,kBAAkB,CAChB,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,OAAe,EACvB,WAAW,GAAC,OAAc,EAC1B,sBAAsB,GAAE,wBAWzB,GAAG,WAAW,GAAG,SAAS;IA4C3B;;;;;;;OAOG;IACH,mBAAmB,CACjB,IAAI,EAAE,OAAO,EACb,MAAM,GAAE,OAAe,EACvB,WAAW,GAAC,OAAc,EAC1B,sBAAsB,GAAE,wBAWzB,GAAG,WAAW,GAAG,SAAS;IA2C3B;;;;;;OAMG;IACH,wBAAwB,CACtB,IAAI,EAAE,aAAa,EACnB,WAAW,GAAC,OAAc,EAC1B,MAAM,GAAC,OAAe,GAAI,WAAW,GAAG,SAAS;IAgInD;;;;;;OAMG;IACH,2BAA2B,CAAE,MAAM,EAAE,eAAe,EAAE,EAAE,UAAU,EAAC,MAAM,GAAI,YAAY;IAgBzF;;;;;;OAMG;IACH,eAAe,CACb,IAAI,EAAE,QAAQ,EACd,WAAW,GAAE,OAAc,EAC3B,MAAM,GAAE,OAAe,GAAI,WAAW,GAAG,SAAS;IA+BpD;;;;;;OAMG;IACH,0BAA0B,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS;IAoClE;;;;;;OAMG;IACH,iBAAiB,CACb,IAAI,EAAE,WAAW,EACjB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,OAAO,GAAE,WAAW,EAAE,GAAG,SAAkB;IA0I/C;;;;OAIG;IACH,SAAgB,kBAAkB,sBAA4B;IAE9D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;;;;;;;OASG;IACH,yBAAyB,CACrB,IAAI,EAAE,mBAAmB,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,YAAY,GAAE,OAAe;IAsFjC;;;;OAIG;IACH,wBAAwB,CAAC,IAAI,EAAE,mBAAmB;IAOlD;;;;OAIG;IACH,wBAAwB,CACpB,IAAI,EAAE,kBAAkB,EAAE,EAC1B,aAAa,EAAE,MAAM;IAsBzB;;;OAGG;IACH,iCAAiC,CAAC,IAAI,EAAE,wBAAwB;IAMhE;;;;OAIG;IACH,uBAAuB,CACnB,IAAI,EAAE,YAAY,EAClB,SAAS,GAAE,OAAe;IAQ9B;;;;OAIG;IACH,kCAAkC,CAC9B,IAAI,EAAE,yBAAyB;IAsBnC;;;;;;;OAOG;IACH,YAAY,CACR,IAAI,EAAE,IAAI,EAAE,EACZ,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,cAAc,GAAG,SAAS,EACtC,SAAS,GAAE,OAAe,GAAG,cAAc;IAkD/C;;;;;OAKG;IACH,YAAY,CAAE,IAAI,EAAE,KAAK,GAAI,kBAAkB;IAU/C;;;;;OAKG;IACH,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAE,eAAe,CAAE,GAAG,SAAS,CAAE,OAAO,CAAE;IAkBxE;;;;;;OAMG;IACH,sBAAsB,CAClB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAE,eAAe,CAAE,CAAC,EACrC,EAAE,EAAE,SAAS,CAAC,SAAS,CAAE,OAAO,CAAE,CAAC,GAAG,IAAI;IAO9C;;;;;;;OAOG;IACH,qBAAqB,CACjB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EACnB,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EACrB,KAAK,SAAI,EACT,GAAG,SAAc,GAAG,IAAI;IAS5B;;;;;OAKG;IACH,2BAA2B,CACvB,IAAI,EAAE,KAAK,CAAE,KAAK,CAAG,MAAM,CAAE,CAAE,EAC/B,EAAE,EAAE,SAAS,CAAE,SAAS,CAAE,MAAM,CAAE,CAAE,GAAG,IAAI;IAoB/C;;;;;OAKG;IACH,qBAAqB,CACjB,IAAI,EAAE,gBAAgB,GAAI,cAAc;IAoC5C;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO;IAW7D;;;;;;OAMG;IACH,mBAAmB,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,CAAC,EAAE,MAAM;IA0SzF;;;;;OAKG;IACH,cAAc,CAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAC,aAAa;IAqE1D;;;;;OAKG;IACH,+BAA+B,CAAC,IAAI,EAAE,2BAA2B,EAAE,aAAa,EAAE,aAAa;IA0B/F;;;;;OAKG;IACH,0BAA0B,CAAC,IAAI,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa;IA+BpF;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,EAAE,aAAa,EAAE,aAAa;IAWjF;;;;;OAKG;IACH,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa;IAY7E;;;;;OAKG;IACH,qBAAqB,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa;IAWzE;;;;;OAKG;IACH,sBAAsB,CAAC,IAAI,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa;IAe3E;;;;;;;;;OASG;IACH,oCAAoC,CAChC,MAAM,EAAE,eAAe,EAAE,EACzB,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GAC1B,qBAAqB;IAqDxB;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc;IAgEhD;;;;;OAKG;IACH,uBAAuB,CAAE,IAAI,EAAE,kBAAkB,GAAI,kBAAkB;IA0CvE;;;;;;;OAOG;IACH,mCAAmC,CAAE,IAAI,EAAE,oCAAoC,GAC7E,kBAAkB;IAqCpB;;;;;;OAMG;IACH,uBAAuB,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAC3E;;;;;;;OAOG;IAEH,uBAAuB,CACrB,IAAI,EAAE,eAAe,EACrB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,IAAI,GAAG,sBAAsB;IA4D5C;;;;;;OAMG;IACH,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,mBAAmB;IACvI;;;;;;;OAOG;IAEH,uBAAuB,CACrB,IAAI,EAAE,kBAAkB,EACxB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,IAAI,EACjB,UAAU,CAAC,EAAE,OAAO,GAAG,sBAAsB;IA6E/C;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,GAAE,OAAe,GAAI,mBAAmB,GAAG,SAAS;IAkBhG,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAI,kBAAkB,GAAG,SAAS;IAQrE;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,sBAAsB;IAiCtB;;;;OAIG;IACH,aAAa,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,MAAM;IAyChD,eAAe,CAAE,QAAQ,EAAE,WAAW,GAAI,MAAM,GAAG,SAAS;IAmC5D,yBAAyB,CAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAI,MAAM,GAAG,SAAS;IAe3F;;;;;;OAMG;IACH;;;;;;;;;;;;OAYG;IAEI,uBAAuB,IAAI,IAAI;IAmdtC,OAAO,CAAC,YAAY,CAAC,CAAkB;IACvC,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,yBAAyB,CAAC,CAAS;IAE3C;;;;OAIG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;;;OAIG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED;;;;;;OAMG;IACI,eAAe,CAAE,KAAK,EAAE,MAAM,GAAI,IAAI;IAW7C;;;;;;;;OAQG;IACI,sBAAsB,CAAE,KAAK,EAAE,MAAM,GAAI,MAAM;IA8BtD;;;;;;;OAOG;IACI,sBAAsB,IAC3B;QAAC,aAAa;QAAE,iBAAiB;QAAE,oBAAoB;KAAC;IAqB1D;;;;;;;;OAQG;IAEH,wBAAwB,CAAC,OAAO,GAAE,OAAe,GAC/C;QAAC,aAAa;QAAE,iBAAiB;QAAE,oBAAoB;KAAC;IA0B1D;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,iBAAiB,EAAE,iCAAiC,EAAE,WAAW,EAAE,oBAAoB,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,GAAE,OAAe,GAAG,CAAC,kBAAkB,GAAG,SAAS,EAAE,OAAO,CAAC;CA2DhP"}
|
|
1
|
+
{"version":3,"file":"ap214_geometry_extraction.d.ts","sourceRoot":"","sources":["../../../src/AP214E3_2010/ap214_geometry_extraction.ts"],"names":[],"mappings":"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"}
|
|
@@ -3065,9 +3065,21 @@ export class AP214GeometryExtraction {
|
|
|
3065
3065
|
}
|
|
3066
3066
|
}
|
|
3067
3067
|
for (const contextDependentShapeRepresentation of contextDependentShapeRepresentations) {
|
|
3068
|
-
|
|
3068
|
+
// Per-record containment: reference getters throw on
|
|
3069
|
+
// malformed/dangling records (a mid-parse PREFIX model — the
|
|
3070
|
+
// preview channel's snapshots — always has a truncated tail).
|
|
3071
|
+
// One bad edge record skips, it must not abort the whole
|
|
3072
|
+
// preparation.
|
|
3073
|
+
let assembly;
|
|
3074
|
+
let shapeRelationship;
|
|
3075
|
+
try {
|
|
3076
|
+
assembly = contextDependentShapeRepresentation.represented_product_relation;
|
|
3077
|
+
shapeRelationship = contextDependentShapeRepresentation.representation_relation;
|
|
3078
|
+
}
|
|
3079
|
+
catch {
|
|
3080
|
+
continue;
|
|
3081
|
+
}
|
|
3069
3082
|
const owningLocalID = assembly.localID;
|
|
3070
|
-
const shapeRelationship = contextDependentShapeRepresentation.representation_relation;
|
|
3071
3083
|
shapeRepresentationRelationshipsSeen.add(shapeRelationship.localID);
|
|
3072
3084
|
/* Exporters disagree on the rep_1/rep_2 order of an assembly
|
|
3073
3085
|
* placement relationship: as1-style files write (child, parent),
|
|
@@ -3081,8 +3093,15 @@ export class AP214GeometryExtraction {
|
|
|
3081
3093
|
* SDR-bound product definition against them, and keep the legacy
|
|
3082
3094
|
* (child, parent) reading when the match is ambiguous/unresolvable.
|
|
3083
3095
|
*/
|
|
3084
|
-
let sourceShape
|
|
3085
|
-
let targetShape
|
|
3096
|
+
let sourceShape;
|
|
3097
|
+
let targetShape;
|
|
3098
|
+
try {
|
|
3099
|
+
sourceShape = shapeRelationship.rep_1;
|
|
3100
|
+
targetShape = shapeRelationship.rep_2;
|
|
3101
|
+
}
|
|
3102
|
+
catch {
|
|
3103
|
+
continue;
|
|
3104
|
+
}
|
|
3086
3105
|
let orientationFlipped = false;
|
|
3087
3106
|
try {
|
|
3088
3107
|
const nauo = assembly.definition;
|
|
@@ -3103,7 +3122,15 @@ export class AP214GeometryExtraction {
|
|
|
3103
3122
|
catch {
|
|
3104
3123
|
// Malformed NAUO/PDS reference — keep the legacy orientation.
|
|
3105
3124
|
}
|
|
3106
|
-
|
|
3125
|
+
let transform;
|
|
3126
|
+
let isContinue;
|
|
3127
|
+
try {
|
|
3128
|
+
[transform, isContinue] = this.doTransforms(shapeRelationship, sourceShape, targetShape, owningLocalID, orientationFlipped);
|
|
3129
|
+
}
|
|
3130
|
+
catch {
|
|
3131
|
+
// Malformed transform record (prefix truncation) — skip the edge.
|
|
3132
|
+
continue;
|
|
3133
|
+
}
|
|
3107
3134
|
if (isContinue) {
|
|
3108
3135
|
continue;
|
|
3109
3136
|
}
|
|
@@ -3144,9 +3171,21 @@ export class AP214GeometryExtraction {
|
|
|
3144
3171
|
* source and rep_2 is the target, whereas in
|
|
3145
3172
|
* context_dependent_shape_representation, the relationship is inverted.
|
|
3146
3173
|
*/
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3174
|
+
let sourceShape;
|
|
3175
|
+
let targetShape;
|
|
3176
|
+
let transform;
|
|
3177
|
+
let isContinue;
|
|
3178
|
+
try {
|
|
3179
|
+
sourceShape = shapeRelationship.rep_2;
|
|
3180
|
+
targetShape = shapeRelationship.rep_1;
|
|
3181
|
+
[transform, isContinue] =
|
|
3182
|
+
this.doTransforms(shapeRelationship, sourceShape, targetShape, owningLocalID);
|
|
3183
|
+
}
|
|
3184
|
+
catch {
|
|
3185
|
+
// Malformed relationship/transform record (prefix truncation)
|
|
3186
|
+
// — skip the edge.
|
|
3187
|
+
continue;
|
|
3188
|
+
}
|
|
3150
3189
|
if (isContinue) {
|
|
3151
3190
|
continue;
|
|
3152
3191
|
}
|
|
@@ -3176,12 +3215,20 @@ export class AP214GeometryExtraction {
|
|
|
3176
3215
|
}
|
|
3177
3216
|
const shapeDefinitions = model.types(shape_definition_representation);
|
|
3178
3217
|
for (const shapeDefinitionRepresentation of shapeDefinitions) {
|
|
3179
|
-
|
|
3180
|
-
|
|
3218
|
+
let shapeRepresentation;
|
|
3219
|
+
let definition;
|
|
3220
|
+
try {
|
|
3221
|
+
shapeRepresentation = shapeDefinitionRepresentation.used_representation;
|
|
3222
|
+
if (!(shapeRepresentation instanceof shape_representation)) {
|
|
3223
|
+
continue;
|
|
3224
|
+
}
|
|
3225
|
+
definition = shapeDefinitionRepresentation.definition;
|
|
3226
|
+
}
|
|
3227
|
+
catch {
|
|
3228
|
+
// Malformed SDR record (prefix truncation) — skip it.
|
|
3181
3229
|
continue;
|
|
3182
3230
|
}
|
|
3183
3231
|
//this.scene.clearParentStack()
|
|
3184
|
-
const definition = shapeDefinitionRepresentation.definition;
|
|
3185
3232
|
const owningElementLocalID = definition.localID;
|
|
3186
3233
|
let treeNode = treeMap.get(shapeRepresentation.localID);
|
|
3187
3234
|
const hasMappedNode = treeNode !== void 0;
|
|
@@ -3199,13 +3246,19 @@ export class AP214GeometryExtraction {
|
|
|
3199
3246
|
mappedTreeNode.owningLocalID = owningElementLocalID;
|
|
3200
3247
|
if (!hasMappedNode) {
|
|
3201
3248
|
mappedTreeNode.processed = true;
|
|
3202
|
-
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.
|
|
3203
|
-
find(unit => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
3204
3249
|
let scaleTransform = void 0;
|
|
3205
|
-
|
|
3206
|
-
const
|
|
3207
|
-
|
|
3208
|
-
|
|
3250
|
+
try {
|
|
3251
|
+
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.
|
|
3252
|
+
find(unit => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
3253
|
+
if (sourceShapeContext !== void 0) {
|
|
3254
|
+
const sourceUnitInM = (this.convertToMetres(sourceShapeContext) ?? 1);
|
|
3255
|
+
scaleTransform =
|
|
3256
|
+
this.uniformScaleAffine(this.identity3DNativeMatrix, 1 / sourceUnitInM);
|
|
3257
|
+
}
|
|
3258
|
+
}
|
|
3259
|
+
catch {
|
|
3260
|
+
// Malformed unit context (prefix truncation) — no unit scale.
|
|
3261
|
+
scaleTransform = void 0;
|
|
3209
3262
|
}
|
|
3210
3263
|
// not an assembly mapped item — capture as a pending root
|
|
3211
3264
|
// instead of executing inline (these nodes are childless by
|
|
@@ -3240,14 +3293,20 @@ export class AP214GeometryExtraction {
|
|
|
3240
3293
|
// them.
|
|
3241
3294
|
for (const [sourceID, mappedNode] of treeMap.entries()) {
|
|
3242
3295
|
if ((mappedNode.parents ?? 0) === 0 && mappedNode.thunk !== void 0 && mappedNode.processed !== true) {
|
|
3243
|
-
const shapeRepresentation = this.model.getTypedElementByLocalID(sourceID, shape_representation);
|
|
3244
|
-
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.
|
|
3245
|
-
find(unit => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
3246
3296
|
let scaleTransform = void 0;
|
|
3247
|
-
|
|
3248
|
-
const
|
|
3249
|
-
|
|
3250
|
-
|
|
3297
|
+
try {
|
|
3298
|
+
const shapeRepresentation = this.model.getTypedElementByLocalID(sourceID, shape_representation);
|
|
3299
|
+
const sourceShapeContext = shapeRepresentation.context_of_items.findVariant(global_unit_assigned_context)?.units?.
|
|
3300
|
+
find(unit => unit.findVariant(length_unit))?.findVariant(length_unit);
|
|
3301
|
+
if (sourceShapeContext !== void 0) {
|
|
3302
|
+
const sourceUnitInM = (this.convertToMetres(sourceShapeContext) ?? 1);
|
|
3303
|
+
scaleTransform =
|
|
3304
|
+
this.uniformScaleAffine(this.identity3DNativeMatrix, 1 / sourceUnitInM);
|
|
3305
|
+
}
|
|
3306
|
+
}
|
|
3307
|
+
catch {
|
|
3308
|
+
// Malformed unit context (prefix truncation) — no unit scale.
|
|
3309
|
+
scaleTransform = void 0;
|
|
3251
3310
|
}
|
|
3252
3311
|
pendingRoots.push({ node: mappedNode, scaleTransform });
|
|
3253
3312
|
}
|
|
@@ -182,4 +182,108 @@ describe("StreamedPreviewChannel", () => {
|
|
|
182
182
|
api.CloseModel(classicID);
|
|
183
183
|
api.CloseModel(deferredID);
|
|
184
184
|
}, 240000);
|
|
185
|
+
test("a throwing prefix build retires the attempt, not the channel", () => {
|
|
186
|
+
// Mid-parse prefixes can be structurally incomplete and the adapter's
|
|
187
|
+
// generation build can THROW (AP214's assembly-tree prep does on
|
|
188
|
+
// dangling references — this killed the whole STEP preview). The
|
|
189
|
+
// channel must swallow the attempt and succeed on a later, larger
|
|
190
|
+
// prefix. The sink is complete here, so growth is simulated by
|
|
191
|
+
// inflating the reported record count past the retry gate.
|
|
192
|
+
const sink = buildSink();
|
|
193
|
+
const realRecords = sink.topLevelCount;
|
|
194
|
+
let reportedRecords = realRecords;
|
|
195
|
+
const growingSink = {
|
|
196
|
+
get topLevelCount() {
|
|
197
|
+
return reportedRecords;
|
|
198
|
+
},
|
|
199
|
+
snapshot: () => sink.snapshot(),
|
|
200
|
+
};
|
|
201
|
+
let buildAttempts = 0;
|
|
202
|
+
const inner = ifcPreviewAdapter();
|
|
203
|
+
const flakyAdapter = {
|
|
204
|
+
buildGeneration: (source, wasm, columns) => {
|
|
205
|
+
if (buildAttempts++ === 0) {
|
|
206
|
+
throw new Error("structurally incomplete prefix");
|
|
207
|
+
}
|
|
208
|
+
return inner.buildGeneration(source, wasm, columns);
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
const payloads = [];
|
|
212
|
+
const channel = new StreamedPreviewChannel(data, conwayGeometry, growingSink, flakyAdapter, true, (mesh) => payloads.push(mesh), void 0, void 0, 1);
|
|
213
|
+
// First drain: the build throws — no payloads, but the channel
|
|
214
|
+
// survives the attempt.
|
|
215
|
+
channel.drainForTest();
|
|
216
|
+
expect(buildAttempts).toBe(1);
|
|
217
|
+
expect(payloads.length).toBe(0);
|
|
218
|
+
// Same record count: the failure gate must hold the retry.
|
|
219
|
+
channel.drainForTest();
|
|
220
|
+
expect(buildAttempts).toBe(1);
|
|
221
|
+
// The index "grows" past the gate: the retry builds and drains fully.
|
|
222
|
+
reportedRecords = realRecords * 4;
|
|
223
|
+
channel.drainForTest();
|
|
224
|
+
expect(buildAttempts).toBe(2);
|
|
225
|
+
expect(payloads.length).toBeGreaterThan(0);
|
|
226
|
+
}, 240000);
|
|
227
|
+
test("retryEmptyUnits re-runs empty units on later generations", () => {
|
|
228
|
+
// AP214-style schema: the unit list is fixed up front but the
|
|
229
|
+
// geometry units reference arrives later in the file. The channel
|
|
230
|
+
// must re-run units that captured nothing against each richer
|
|
231
|
+
// generation, and stop retrying a unit once it captures.
|
|
232
|
+
const UNIT_COUNT = 3;
|
|
233
|
+
const runsPerGeneration = [];
|
|
234
|
+
let reportedRecords = 2048;
|
|
235
|
+
const fakeSink = {
|
|
236
|
+
get topLevelCount() {
|
|
237
|
+
return reportedRecords;
|
|
238
|
+
},
|
|
239
|
+
snapshot: () => ({}),
|
|
240
|
+
};
|
|
241
|
+
const disposed = [];
|
|
242
|
+
const makeGeneration = (generationIndex) => {
|
|
243
|
+
const runs = [];
|
|
244
|
+
runsPerGeneration.push(runs);
|
|
245
|
+
return {
|
|
246
|
+
// Empty scene: units "execute" but never capture, so no unit
|
|
247
|
+
// ever completes and every generation re-runs all of them.
|
|
248
|
+
scene: { *walk() { } },
|
|
249
|
+
unitCount: UNIT_COUNT,
|
|
250
|
+
linearScalingFactor: 1,
|
|
251
|
+
runUnits: (from) => {
|
|
252
|
+
runs.push(from);
|
|
253
|
+
return 1;
|
|
254
|
+
},
|
|
255
|
+
geometryExpressID: () => void 0,
|
|
256
|
+
recenter: false,
|
|
257
|
+
dispose: () => disposed.push(generationIndex),
|
|
258
|
+
};
|
|
259
|
+
};
|
|
260
|
+
let generationIndex = 0;
|
|
261
|
+
const adapter = {
|
|
262
|
+
retryEmptyUnits: true,
|
|
263
|
+
buildGeneration: () => makeGeneration(generationIndex++),
|
|
264
|
+
};
|
|
265
|
+
const channel = new StreamedPreviewChannel(data, conwayGeometry, fakeSink, adapter, false, () => { }, void 0, void 0, 1);
|
|
266
|
+
const forceTick = () => {
|
|
267
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
268
|
+
channel.lastInlineTick_ = 0;
|
|
269
|
+
channel.tickIntervalMs_ = 0;
|
|
270
|
+
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
271
|
+
channel.maybeTickInline();
|
|
272
|
+
};
|
|
273
|
+
// Generation 1: all units run once (none capture).
|
|
274
|
+
forceTick();
|
|
275
|
+
expect(runsPerGeneration[0]).toEqual([0, 1, 2]);
|
|
276
|
+
// Same record count: growth-gated, no rebuild, no re-runs.
|
|
277
|
+
forceTick();
|
|
278
|
+
expect(runsPerGeneration.length).toBe(1);
|
|
279
|
+
expect(runsPerGeneration[0]).toEqual([0, 1, 2]);
|
|
280
|
+
// Records double: a fresh generation re-runs every empty unit and
|
|
281
|
+
// the outgoing generation is disposed.
|
|
282
|
+
reportedRecords *= 4;
|
|
283
|
+
forceTick();
|
|
284
|
+
expect(runsPerGeneration.length).toBe(2);
|
|
285
|
+
expect(runsPerGeneration[1]).toEqual([0, 1, 2]);
|
|
286
|
+
expect(disposed).toContain(0);
|
|
287
|
+
channel.stop();
|
|
288
|
+
}, 240000);
|
|
185
289
|
});
|
|
@@ -72,6 +72,19 @@ export interface PreviewPrefixGeneration {
|
|
|
72
72
|
* the preview channel that knows what a "model" or a "unit" is.
|
|
73
73
|
*/
|
|
74
74
|
export interface PreviewSchemaAdapter {
|
|
75
|
+
/**
|
|
76
|
+
* Retry semantics for schemas whose unit list is FIXED up front while
|
|
77
|
+
* the geometry those units reference arrives throughout the file
|
|
78
|
+
* (AP214: the assembly tree sits at the head, solids follow). Without
|
|
79
|
+
* this, the first generation "consumes" every unit against a prefix
|
|
80
|
+
* that has no geometry yet and later, richer generations report no
|
|
81
|
+
* new units — the channel then never emits anything. With it, the
|
|
82
|
+
* channel re-runs units that emitted no instances against each new
|
|
83
|
+
* generation, and marks a unit done only once it captures something.
|
|
84
|
+
* Leave unset for schemas whose units keep appearing with the parse
|
|
85
|
+
* (IFC products) — re-running those would be quadratic for no gain.
|
|
86
|
+
*/
|
|
87
|
+
readonly retryEmptyUnits?: boolean;
|
|
75
88
|
/**
|
|
76
89
|
* Build a generation over the given prefix columns.
|
|
77
90
|
*
|
|
@@ -146,11 +159,21 @@ export declare class StreamedPreviewChannel {
|
|
|
146
159
|
/** Ordinal cursor into the unit list (see the adapter's stability
|
|
147
160
|
* notes). */
|
|
148
161
|
private unitOrdinal_;
|
|
162
|
+
/** Retry mode (adapter.retryEmptyUnits): ordinals that captured ≥ 1
|
|
163
|
+
* instance — done for good, skipped on later generations. */
|
|
164
|
+
private readonly completedUnits_;
|
|
165
|
+
/** Retry mode: scan position within the CURRENT generation (resets to
|
|
166
|
+
* 0 on every new generation so empty units get re-run). */
|
|
167
|
+
private retryScan_;
|
|
149
168
|
/** Geometry expressIDs whose payload has been emitted (cross-generation
|
|
150
169
|
* dedup for mapped/shared geometry). */
|
|
151
170
|
private readonly emittedGeometry_;
|
|
152
171
|
private generation_?;
|
|
153
172
|
private lastSnapshotRecords_;
|
|
173
|
+
/** Records at the last snapshot whose generation build THREW (a
|
|
174
|
+
* structurally incomplete prefix) — gates retries to index growth so a
|
|
175
|
+
* throwing prefix build can't hot-loop every tick. */
|
|
176
|
+
private lastFailedSnapshotRecords_;
|
|
154
177
|
/**
|
|
155
178
|
* @param data The (fully resident) source buffer the parse is indexing.
|
|
156
179
|
* @param conwaywasm The shared geometry wasm wrapper (sequential use only
|
|
@@ -202,6 +225,15 @@ export declare class StreamedPreviewChannel {
|
|
|
202
225
|
* @return {boolean} True when a generation with pending units exists.
|
|
203
226
|
*/
|
|
204
227
|
private ensureGeneration_;
|
|
228
|
+
/**
|
|
229
|
+
* Does the given generation still have units this channel would run —
|
|
230
|
+
* retry mode: not-yet-captured ordinals ahead of the scan; classic
|
|
231
|
+
* mode: ordinals beyond the global forward-only cursor.
|
|
232
|
+
*
|
|
233
|
+
* @param generation The generation to check.
|
|
234
|
+
* @return {boolean} True when a tick can make progress on it.
|
|
235
|
+
*/
|
|
236
|
+
private hasPendingUnits_;
|
|
205
237
|
/**
|
|
206
238
|
* Walk the current generation's scene and emit every not-yet-captured
|
|
207
239
|
* placed instance as a payload — the preview twin of the durable delta
|
|
@@ -209,6 +241,9 @@ export declare class StreamedPreviewChannel {
|
|
|
209
241
|
* for IFC, bare composition for AP214) so preview and durable
|
|
210
242
|
* placements coincide, but copying geometry OUT of the wasm heap
|
|
211
243
|
* instead of retaining native references.
|
|
244
|
+
*
|
|
245
|
+
* @return {number} Instances emitted by this pass (retry mode uses
|
|
246
|
+
* this to attribute unit completion).
|
|
212
247
|
*/
|
|
213
248
|
private captureNewInstances_;
|
|
214
249
|
/**
|