brepjs 15.2.8 → 15.2.10

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.
Files changed (66) hide show
  1. package/dist/2d.cjs +5 -5
  2. package/dist/2d.js +5 -5
  3. package/dist/{blueprint-CbD0PYLr.cjs → blueprint-BkKnM_9w.cjs} +5 -5
  4. package/dist/{blueprint-CM1OOluq.js → blueprint-BqdFeOSN.js} +5 -5
  5. package/dist/{blueprintFns-CVp-9asE.js → blueprintFns-BRQael6Q.js} +2 -2
  6. package/dist/{blueprintFns-DXBNyCzX.cjs → blueprintFns-CH4QAYB4.cjs} +2 -2
  7. package/dist/{boolean2D-5FuQ5bn1.js → boolean2D-B__OaRTl.js} +14 -8
  8. package/dist/{boolean2D-DpWRnTXy.cjs → boolean2D-CwaWKfZD.cjs} +14 -8
  9. package/dist/{booleanFns-D_DVbfzR.js → booleanFns-Cstp5Ep1.js} +4 -4
  10. package/dist/{booleanFns-CQNV8MMq.cjs → booleanFns-CwHfuxWc.cjs} +4 -4
  11. package/dist/brepjs.cjs +19 -19
  12. package/dist/brepjs.js +19 -19
  13. package/dist/core.cjs +1 -1
  14. package/dist/core.js +1 -1
  15. package/dist/{cornerFinder-4PxIzwrl.cjs → cornerFinder-DLxiZcyg.cjs} +1 -1
  16. package/dist/{cornerFinder-Ty3F7kPm.js → cornerFinder-K7cjTnkP.js} +1 -1
  17. package/dist/{curveFns-Bukd9jhv.cjs → curveFns-CQIv_biC.cjs} +1 -1
  18. package/dist/{curveFns-Dn4gbNzG.js → curveFns-D-0yqVb9.js} +1 -1
  19. package/dist/{drawFns-Dp8HyMiw.js → drawFns-CMemZ1i4.js} +10 -10
  20. package/dist/{drawFns-DVuvL7aY.cjs → drawFns-CgBKN8VG.cjs} +10 -10
  21. package/dist/{extrudeFns-YdWmD0Tw.cjs → extrudeFns-BofhQx0R.cjs} +30 -10
  22. package/dist/{extrudeFns-DLdCPXMI.js → extrudeFns-CcYOPTFR.js} +30 -10
  23. package/dist/{faceFns-DMFG-piP.js → faceFns-BQ7czFFV.js} +1 -1
  24. package/dist/{faceFns-CKL9Us23.cjs → faceFns-uX_AVFqu.cjs} +1 -1
  25. package/dist/{helpers-XTeLX4mm.js → helpers-C4r8ovx9.js} +5 -5
  26. package/dist/{helpers-BFyEt7Fv.cjs → helpers-CM63Nn7A.cjs} +5 -5
  27. package/dist/{historyFns-DltXL-vp.js → historyFns-BFuHqN_0.js} +4 -4
  28. package/dist/{historyFns-DBSgZGtF.cjs → historyFns-DkDJpwef.cjs} +4 -4
  29. package/dist/{importFns-C_PgMCn_.js → importFns--VkKJoDs.js} +2 -2
  30. package/dist/{importFns-DRNXwoUG.cjs → importFns--rg42dnv.cjs} +2 -2
  31. package/dist/io.cjs +2 -2
  32. package/dist/io.js +2 -2
  33. package/dist/kernel/occt/advancedOps.d.ts +6 -0
  34. package/dist/kernel/occt/advancedOps.d.ts.map +1 -1
  35. package/dist/kernel/occt/sweepOps.d.ts.map +1 -1
  36. package/dist/{measureFns-C2SnZLhD.cjs → measureFns-BxAZf4Mf.cjs} +2 -2
  37. package/dist/{measureFns-Zc5RWsI4.js → measureFns-D5DbMnQY.js} +2 -2
  38. package/dist/measurement.cjs +1 -1
  39. package/dist/measurement.js +1 -1
  40. package/dist/{meshFns-CO9qVJ24.cjs → meshFns-BdEOTCwK.cjs} +2 -2
  41. package/dist/{meshFns-gTPomZkK.js → meshFns-C9DtKU7q.js} +2 -2
  42. package/dist/operations/loftFns.d.ts.map +1 -1
  43. package/dist/operations/sweepFns.d.ts.map +1 -1
  44. package/dist/operations.cjs +2 -2
  45. package/dist/operations.js +2 -2
  46. package/dist/{primitiveFns-BAifgHMW.js → primitiveFns-Bpq2yFqw.js} +5 -5
  47. package/dist/{primitiveFns-CL6lNda-.cjs → primitiveFns-D3FvKWK-.cjs} +5 -5
  48. package/dist/query.cjs +2 -2
  49. package/dist/query.js +2 -2
  50. package/dist/{shapeFns-DkFzoJav.cjs → shapeFns-Dz2GNg2y.cjs} +2 -2
  51. package/dist/{shapeFns-QGgHStIU.js → shapeFns-LgyEtLGl.js} +2 -2
  52. package/dist/shapeRef.cjs +1 -1
  53. package/dist/shapeRef.js +1 -1
  54. package/dist/{shapeRefFns-Gv4-NGJD.js → shapeRefFns-CgnpumqW.js} +3 -3
  55. package/dist/{shapeRefFns-t-5-Aqku.cjs → shapeRefFns-N0wl6XSn.cjs} +3 -3
  56. package/dist/{shapeTypes-Ct7W6h2X.js → shapeTypes-B9a2ed1X.js} +48 -27
  57. package/dist/{shapeTypes-Bfw136X-.cjs → shapeTypes-hQK4eaEw.cjs} +48 -27
  58. package/dist/sketching.cjs +2 -2
  59. package/dist/sketching.js +2 -2
  60. package/dist/{solidBuilders-CQipZFOw.js → solidBuilders-C_-imolZ.js} +2 -2
  61. package/dist/{solidBuilders-DI9d6ZIx.cjs → solidBuilders-DUl2f7gY.cjs} +2 -2
  62. package/dist/{surfaceBuilders-Im6Xef27.js → surfaceBuilders-BY117AaY.js} +2 -2
  63. package/dist/{surfaceBuilders-DzTJA3fK.cjs → surfaceBuilders-D_w11wLr.cjs} +2 -2
  64. package/dist/topology.cjs +6 -6
  65. package/dist/topology.js +6 -6
  66. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { X as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-DboJwVCf.js";
3
3
  import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-B-PCHgyB.js";
4
4
  //#region src/operations/extrudeUtils.ts
@@ -15,7 +15,7 @@ import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-B-PCHgy
15
15
  * if the profile type is unsupported.
16
16
  */
17
17
  function buildLawFromProfile(extrusionLength, { profile, endFactor = 1 }) {
18
- if (extrusionLength <= 0) return err(validationError("INVALID_EXTRUSION_LENGTH", "Extrusion length must be positive"));
18
+ if (extrusionLength < 1e-10) return err(validationError("INVALID_EXTRUSION_LENGTH", "Extrusion length too small (< 1e-10)"));
19
19
  if (profile !== "s-curve" && profile !== "linear") return err(validationError("UNSUPPORTED_PROFILE", `Unsupported extrusion profile: ${String(profile)}`));
20
20
  return ok(getKernel().buildExtrusionLaw(profile, extrusionLength, endFactor).Trim(0, extrusionLength, 1e-6));
21
21
  }
@@ -28,8 +28,8 @@ function makeSpineWire(start, end) {
28
28
  return castShape(kernel.makeWire([edge]));
29
29
  }
30
30
  /** Build a helix wire for twist extrusion. */
31
- function makeHelixWire(pitch, height, radius, center, dir, _lefthand = false) {
32
- return castShape(getKernel().makeHelixWire(pitch, height, radius, [...center], [...dir]));
31
+ function makeHelixWire(pitch, height, radius, center, dir, leftHanded = false) {
32
+ return castShape(getKernel().makeHelixWire(pitch, height, radius, [...center], [...dir], leftHanded));
33
33
  }
34
34
  /**
35
35
  * Sweep a wire profile along a spine wire to create a 3D shape.
@@ -145,7 +145,8 @@ function twistExtrude(wire, angleDegrees, center, normal, profileShape, shellMod
145
145
  const extrusionLength = vecLength(normal);
146
146
  if (extrusionLength < 1e-10) return err(validationError("ZERO_LENGTH_EXTRUSION", "Extrusion vector cannot have zero length"));
147
147
  const spine = makeSpineWire(center, vecAdd(center, normal));
148
- const auxiliarySpine = makeHelixWire(360 / angleDegrees * extrusionLength, extrusionLength, 1, center, normal);
148
+ const leftHanded = angleDegrees < 0;
149
+ const auxiliarySpine = makeHelixWire(360 / Math.abs(angleDegrees) * extrusionLength, extrusionLength, 1, center, normal, leftHanded);
149
150
  let law = null;
150
151
  if (profileShape) {
151
152
  const lawResult = buildLawFromProfile(extrusionLength, profileShape);
@@ -171,10 +172,27 @@ function validateSectionLocations(sections) {
171
172
  function computeSectionParams(sections, spine, kernel) {
172
173
  const [uFirst, uLast] = kernel.curveParameters(spine.wrapped);
173
174
  const uRange = uLast - uFirst;
174
- return sections.map((s, i) => {
175
- if (s.location !== void 0) return uFirst + s.location * uRange;
176
- return uFirst + i / (sections.length - 1) * uRange;
177
- });
175
+ const params = new Array(sections.length);
176
+ for (let i = 0; i < sections.length; i++) {
177
+ const loc = sections[i]?.location;
178
+ params[i] = loc !== void 0 ? uFirst + loc * uRange : NaN;
179
+ }
180
+ let prevIdx = -1;
181
+ let prevVal = uFirst;
182
+ for (let i = 0; i <= sections.length; i++) {
183
+ const isEnd = i === sections.length;
184
+ if (!isEnd && !Number.isNaN(params[i] ?? NaN) || isEnd) {
185
+ const nextVal = isEnd ? uLast : params[i] ?? uLast;
186
+ const gapCount = i - prevIdx - 1;
187
+ for (let g = 1; g <= gapCount; g++) params[prevIdx + g] = prevVal + g / (gapCount + 1) * (nextVal - prevVal);
188
+ if (!isEnd) {
189
+ prevIdx = i;
190
+ prevVal = params[i] ?? uFirst;
191
+ }
192
+ }
193
+ }
194
+ for (let i = 1; i < params.length; i++) if ((params[i] ?? 0) <= (params[i - 1] ?? 0)) return err(validationError(BrepErrorCode.MULTI_SWEEP_FAILED, `Computed section parameters are not strictly increasing at index ${i} (${params[i - 1]?.toFixed(4)} >= ${params[i]?.toFixed(4)})`));
195
+ return ok(params);
178
196
  }
179
197
  /**
180
198
  * Sweep multiple profile sections along a spine wire.
@@ -195,7 +213,9 @@ function multiSectionSweep(sections, spine, options) {
195
213
  if (locationErr) return err(locationErr);
196
214
  try {
197
215
  const kernel = getKernel();
198
- const params = computeSectionParams(sections, spine, kernel);
216
+ const paramsResult = computeSectionParams(sections, spine, kernel);
217
+ if (isErr(paramsResult)) return paramsResult;
218
+ const params = paramsResult.value;
199
219
  const positionedWires = [];
200
220
  for (let i = 0; i < sections.length; i++) {
201
221
  const param = params[i];
@@ -1,4 +1,4 @@
1
- import { N as getOrQueryType, R as DisposalScope, X as getKernel, Y as _usingCtx, r as castShapeWithKnownType, t as castShape } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { N as getOrQueryType, R as DisposalScope, X as getKernel, Y as _usingCtx, r as castShapeWithKnownType, t as castShape } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, R as unwrap, b as err, f as getSuggestionForCode, l as typeCastError, p as translateKernelError } from "./errors-DboJwVCf.js";
3
3
  import { r as toVec3 } from "./types--GD-LVc6.js";
4
4
  //#region src/core/kernelCall.ts
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
3
  const require_types = require("./types-gLi9wL0N.cjs");
4
4
  //#region src/core/kernelCall.ts
@@ -1,11 +1,11 @@
1
- import { X as getKernel, p as isFace } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel, p as isFace } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, T as isOk, b as err, h as bug, o as queryError } from "./errors-DboJwVCf.js";
3
- import { C as getVertices, b as getEdges, c as normalAt, o as getSurfaceType, w as getWires, x as getFaces } from "./faceFns-DMFG-piP.js";
3
+ import { C as getVertices, b as getEdges, c as normalAt, o as getSurfaceType, w as getWires, x as getFaces } from "./faceFns-BQ7czFFV.js";
4
4
  import { t as DEG2RAD } from "./constants-csSEYddm.js";
5
5
  import { a as vecDot, d as vecNormalize } from "./vecOps-B-PCHgyB.js";
6
- import { a as isSameShape, n as getHashCode } from "./shapeFns-QGgHStIU.js";
7
- import { a as curveLength, d as getCurveType, r as curveIsClosed } from "./curveFns-Dn4gbNzG.js";
8
- import { n as measureArea } from "./measureFns-Zc5RWsI4.js";
6
+ import { a as isSameShape, n as getHashCode } from "./shapeFns-LgyEtLGl.js";
7
+ import { a as curveLength, d as getCurveType, r as curveIsClosed } from "./curveFns-D-0yqVb9.js";
8
+ import { n as measureArea } from "./measureFns-D5DbMnQY.js";
9
9
  //#region src/utils/vec2d.ts
10
10
  /** Precision for curve intersection and parameter operations. */
11
11
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,11 +1,11 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
3
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
4
4
  const require_constants = require("./constants-BNP_xnBN.cjs");
5
5
  const require_vecOps = require("./vecOps-CODplJp3.cjs");
6
- const require_shapeFns = require("./shapeFns-DkFzoJav.cjs");
7
- const require_curveFns = require("./curveFns-Bukd9jhv.cjs");
8
- const require_measureFns = require("./measureFns-C2SnZLhD.cjs");
6
+ const require_shapeFns = require("./shapeFns-Dz2GNg2y.cjs");
7
+ const require_curveFns = require("./curveFns-CQIv_biC.cjs");
8
+ const require_measureFns = require("./measureFns-BxAZf4Mf.cjs");
9
9
  //#region src/utils/vec2d.ts
10
10
  /** Precision for curve intersection and parameter operations. */
11
11
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,9 +1,9 @@
1
- import { B as createKernelHandle, X as getKernel, t as castShape } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { B as createKernelHandle, X as getKernel, t as castShape } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, d as validationError, n as computationError, r as ioError } from "./errors-DboJwVCf.js";
3
- import { P as fromBREP } from "./faceFns-DMFG-piP.js";
3
+ import { P as fromBREP } from "./faceFns-BQ7czFFV.js";
4
4
  import { d as vecNormalize, s as vecIsZero } from "./vecOps-B-PCHgyB.js";
5
- import { s as toBREP } from "./shapeFns-QGgHStIU.js";
6
- import { a as fuseAll } from "./booleanFns-D_DVbfzR.js";
5
+ import { s as toBREP } from "./shapeFns-LgyEtLGl.js";
6
+ import { a as fuseAll } from "./booleanFns-Cstp5Ep1.js";
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
3
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
4
4
  const require_vecOps = require("./vecOps-CODplJp3.cjs");
5
- const require_shapeFns = require("./shapeFns-DkFzoJav.cjs");
6
- const require_booleanFns = require("./booleanFns-CQNV8MMq.cjs");
5
+ const require_shapeFns = require("./shapeFns-Dz2GNg2y.cjs");
6
+ const require_booleanFns = require("./booleanFns-CwHfuxWc.cjs");
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,7 +1,7 @@
1
- import { X as getKernel, t as castShape } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel, t as castShape } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, r as ioError, t as BrepErrorCode } from "./errors-DboJwVCf.js";
3
3
  import { n as getAtOrThrow } from "./arrayAccess-tCIbjLs5.js";
4
- import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-CM1OOluq.js";
4
+ import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-BqdFeOSN.js";
5
5
  //#region src/io/objExportFns.ts
6
6
  /** Read a vec3 from a typed array at the given vertex index. */
7
7
  function vec3At(arr, i) {
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
3
  const require_arrayAccess = require("./arrayAccess-DsnQpdSD.cjs");
4
- const require_blueprint = require("./blueprint-CbD0PYLr.cjs");
4
+ const require_blueprint = require("./blueprint-BkKnM_9w.cjs");
5
5
  //#region src/io/objExportFns.ts
6
6
  /** Read a vec3 from a typed array at the given vertex index. */
7
7
  function vec3At(arr, i) {
package/dist/io.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_meshFns = require("./meshFns-CO9qVJ24.cjs");
3
- const require_importFns = require("./importFns-DRNXwoUG.cjs");
2
+ const require_meshFns = require("./meshFns-BdEOTCwK.cjs");
3
+ const require_importFns = require("./importFns--rg42dnv.cjs");
4
4
  exports.blueprintToDXF = require_importFns.blueprintToDXF;
5
5
  exports.exportDXF = require_importFns.exportDXF;
6
6
  exports.exportGlb = require_importFns.exportGlb;
package/dist/io.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-gTPomZkK.js";
2
- import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-C_PgMCn_.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-C9DtKU7q.js";
2
+ import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns--VkKJoDs.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -63,6 +63,12 @@ export declare function circularPattern(oc: KernelInstance, shape: KernelShape,
63
63
  *
64
64
  * Computes the Frenet frame (point + tangent) at the given parameter on the spine,
65
65
  * then transforms the shape from standard coordinates (origin, Z-up) to that frame.
66
+ *
67
+ * Note: gp_Ax3 with only a main direction auto-generates X/Y axes. This is
68
+ * deterministic for a given tangent direction but can produce discontinuous
69
+ * profile orientations when the tangent crosses axis-aligned thresholds on
70
+ * curved spines. For multi-section sweep this is acceptable because each
71
+ * section is independently positioned and then lofted.
66
72
  */
67
73
  export declare function positionOnCurve(oc: KernelInstance, shape: KernelShape, spine: KernelShape, param: number): KernelShape;
68
74
  /** Build a non-planar face by filling a wire boundary. */
@@ -1 +1 @@
1
- {"version":3,"file":"advancedOps.d.ts","sourceRoot":"","sources":["../../../src/kernel/occt/advancedOps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advancedOps.d.ts","sourceRoot":"","sources":["../../../src/kernel/occt/advancedOps.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQlG;;;;GAIG;AAEH,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACzF,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAC7C,WAAW,CAgBb;AAOD,gFAAgF;AAChF,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,cAAc,EAClB,GAAG,EAAE,KAAK,CACN;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACtD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,CACJ,GACA;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAyB7C;AAED,qEAAqE;AACrE,wBAAgB,iCAAiC,CAC/C,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,eAAe,EAAE,UAAU,EAC3B,eAAe,EAAE,MAAM,EAAE,EACzB,cAAc,EAAE,MAAM,GACrB,eAAe,CAEjB;AAoBD,2DAA2D;AAC3D,wBAAgB,cAAc,CAC5B,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;IACnD,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GACL,WAAW,GAAG;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,WAAW,CAAA;CAAE,CAqEvF;AAED,gDAAgD;AAChD,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,WAAW,CAAC;CACpB,GACL,WAAW,CAwBb;AAED,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,QAAQ,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,UAAU,CAUZ;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CACxB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAChC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACnC,KAAK,EAAE,MAAM,GACZ,WAAW,CAWb;AAMD,kEAAkE;AAClE,wBAAgB,aAAa,CAC3B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAmBf;AAED,6CAA6C;AAC7C,wBAAgB,eAAe,CAC7B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAChC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAqBf;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,GACZ,WAAW,CA0Cb;AAMD,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAsBpF;AAED,0CAA0C;AAC1C,wBAAgB,cAAc,CAC5B,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,WAAW,EAAE,GACvB,WAAW,CAoBb;AAED,mGAAmG;AACnG,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAmBtF;AAED,kJAAkJ;AAClJ,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,cAAc,EAClB,aAAa,EAAE,UAAU,EACzB,IAAI,EAAE,WAAW,GAChB,WAAW,CAkBb;AAED,uDAAuD;AACvD,wBAAgB,cAAc,CAC5B,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,WAAW,CA6Bb;AAED,uDAAuD;AACvD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,WAAW,CAqCb;AAuCD,mDAAmD;AACnD,wBAAgB,cAAc,CAC5B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAAE,EACpB,SAAS,EAAE,MAAM,GAChB,WAAW,CA0Bb;AAMD,+DAA+D;AAC/D,wBAAgB,QAAQ,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAQ5E;AAED,wCAAwC;AACxC,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAOtF;AAMD,yDAAyD;AACzD,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC,CAkHA;AAgBD,oCAAoC;AACpC,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,GAChB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQ1B;AAED,+CAA+C;AAC/C,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,cAAc,EAClB,cAAc,EAAE,WAAW,GAC1B;IACD,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG;QAC9B,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,CAAC;IACF,OAAO,IAAI,IAAI,CAAC;CACjB,CAiCA;AAMD,8DAA8D;AAC9D,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACtC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACzC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACrC;IACD,OAAO,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,CAAC;IAC3E,MAAM,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,CAAC;CAC3E,CAsDA;AAMD,iEAAiE;AACjE,wBAAgB,UAAU,CACxB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,GACZ,WAAW,CAcb;AAMD,+DAA+D;AAC/D,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,GAC5F,UAAU,CA8BZ;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAC7B,EAAE,EAAE,cAAc,EAClB,GAAG,EAAE,UAAU,EACf,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClD,MAAM,CA2CR;AAMD,qDAAqD;AACrD,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,EAC9F,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACnE,MAAM,CA2FR"}
@@ -1 +1 @@
1
- {"version":3,"file":"sweepOps.d.ts","sourceRoot":"","sources":["../../../src/kernel/occt/sweepOps.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGjF;;GAEG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACnC,MAAM,EAAE,MAAM,GACb,WAAW,CAgBb;AAED;;GAEG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,GACZ,WAAW,CAKb;AAED;;GAEG;AACH,wBAAgB,IAAI,CAClB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAAE,EACpB,KAAK,UAAQ,EACb,UAAU,CAAC,EAAE,WAAW,EACxB,QAAQ,CAAC,EAAE,WAAW,GACrB,WAAW,CAkBb;AAED;;GAEG;AACH,wBAAgB,KAAK,CACnB,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACxC,WAAW,CAkBb;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,WAAW,GACjB,WAAW,CAqBb;AASD,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAED,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAYD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACrC;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,WAAW,EAAE,CAwC/F;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,SAAS,iBAAiB,EAAE,GACpC,WAAW,EAAE,CAiCf"}
1
+ {"version":3,"file":"sweepOps.d.ts","sourceRoot":"","sources":["../../../src/kernel/occt/sweepOps.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGjF;;GAEG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACnC,MAAM,EAAE,MAAM,GACb,WAAW,CAgBb;AAED;;GAEG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,GACZ,WAAW,CAKb;AAED;;GAEG;AACH,wBAAgB,IAAI,CAClB,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,WAAW,EAAE,EACpB,KAAK,UAAQ,EACb,UAAU,CAAC,EAAE,WAAW,EACxB,QAAQ,CAAC,EAAE,WAAW,GACrB,WAAW,CAkBb;AAED;;GAEG;AACH,wBAAgB,KAAK,CACnB,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACxC,WAAW,CAsBb;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,WAAW,GACjB,WAAW,CA4Bb;AASD,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAED,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAYD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACrC;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,WAAW,EAAE,CAwC/F;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,SAAS,iBAAiB,EAAE,GACpC,WAAW,EAAE,CAiCf"}
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
3
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
4
4
  //#region src/measurement/measureCache.ts
5
5
  var cache = /* @__PURE__ */ new WeakMap();
6
6
  function getCachedMeasurement(shape, key) {
@@ -1,6 +1,6 @@
1
- import { X as getKernel } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DboJwVCf.js";
3
- import { p as uvBounds, z as kernelCallRaw } from "./faceFns-DMFG-piP.js";
3
+ import { p as uvBounds, z as kernelCallRaw } from "./faceFns-BQ7czFFV.js";
4
4
  //#region src/measurement/measureCache.ts
5
5
  var cache = /* @__PURE__ */ new WeakMap();
6
6
  function getCachedMeasurement(shape, key) {
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_measureFns = require("./measureFns-C2SnZLhD.cjs");
2
+ const require_measureFns = require("./measureFns-BxAZf4Mf.cjs");
3
3
  exports.createDistanceQuery = require_measureFns.createDistanceQuery;
4
4
  exports.measureArea = require_measureFns.measureArea;
5
5
  exports.measureDistance = require_measureFns.measureDistance;
@@ -1,2 +1,2 @@
1
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-Zc5RWsI4.js";
1
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-D5DbMnQY.js";
2
2
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps };
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_shapeFns = require("./shapeFns-DkFzoJav.cjs");
3
+ const require_shapeFns = require("./shapeFns-Dz2GNg2y.cjs");
4
4
  //#region src/topology/meshCache.ts
5
5
  /**
6
6
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,6 +1,6 @@
1
- import { X as getKernel } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, r as ioError } from "./errors-DboJwVCf.js";
3
- import { O as getFaceOrigins } from "./shapeFns-QGgHStIU.js";
3
+ import { O as getFaceOrigins } from "./shapeFns-LgyEtLGl.js";
4
4
  //#region src/topology/meshCache.ts
5
5
  /**
6
6
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1 +1 @@
1
- {"version":3,"file":"loftFns.d.ts","sourceRoot":"","sources":["../../src/operations/loftFns.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,kBAAkB,CAAC;AAGxD,uDAAuD;AACvD,MAAM,WAAW,WAAW;IAC1B,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,IAAI,CAClB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EACxB,EAAE,KAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAgB,EAAE,GAAE,WAAgB,EAC1E,WAAW,UAAQ,GAClB,MAAM,CAAC,OAAO,CAAC,CAsCjB;AAED,kEAAkE;AAClE,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;IACzB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAwC3E"}
1
+ {"version":3,"file":"loftFns.d.ts","sourceRoot":"","sources":["../../src/operations/loftFns.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,kBAAkB,CAAC;AAGxD,uDAAuD;AACvD,MAAM,WAAW,WAAW;IAC1B,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,IAAI,CAClB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EACxB,EAAE,KAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAgB,EAAE,GAAE,WAAgB,EAC1E,WAAW,UAAQ,GAClB,MAAM,CAAC,OAAO,CAAC,CAsCjB;AAED,kEAAkE;AAClE,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;IACzB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAgD3E"}
@@ -1 +1 @@
1
- {"version":3,"file":"sweepFns.d.ts","sourceRoot":"","sources":["../../src/operations/sweepFns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sweepFns.d.ts","sourceRoot":"","sources":["../../src/operations/sweepFns.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_historyFns = require("./historyFns-DBSgZGtF.cjs");
3
- const require_extrudeFns = require("./extrudeFns-YdWmD0Tw.cjs");
2
+ const require_historyFns = require("./historyFns-DkDJpwef.cjs");
3
+ const require_extrudeFns = require("./extrudeFns-BofhQx0R.cjs");
4
4
  exports.addChild = require_historyFns.addChild;
5
5
  exports.addStep = require_historyFns.addStep;
6
6
  exports.circularPattern = require_historyFns.circularPattern;
@@ -1,3 +1,3 @@
1
- import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-DltXL-vp.js";
2
- import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-DLdCPXMI.js";
1
+ import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-BFuHqN_0.js";
2
+ import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-CcYOPTFR.js";
3
3
  export { addChild, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, exportAssemblySTEP, findNode, findStep, getShape as getHistoryShape, gridPattern, linearPattern, modifyStep, registerOperation, registerShape, removeChild, replayFrom, replayHistory, stepCount, stepsFrom, supportExtrude, sweep, twistExtrude, undoLast, updateNode, walkAssembly };
@@ -1,10 +1,10 @@
1
- import { X as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, v as andThen, w as isErr } from "./errors-DboJwVCf.js";
3
- import { N as downcast, S as getOrCreateCache, T as invalidateShapeCache, b as getEdges, v as getCachedIsValid, w as getWires, x as getFaces } from "./faceFns-DMFG-piP.js";
3
+ import { N as downcast, S as getOrCreateCache, T as invalidateShapeCache, b as getEdges, v as getCachedIsValid, w as getWires, x as getFaces } from "./faceFns-BQ7czFFV.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-csSEYddm.js";
5
- import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-QGgHStIU.js";
6
- import { a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeEllipse, f as makeEllipseArc, g as makeThreePointArc, h as makeTangentArc, i as makeNewFaceWithinFace, l as makeBezierCurve, m as makeLine, o as makePolygon, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-Im6Xef27.js";
7
- import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-CQipZFOw.js";
5
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-LgyEtLGl.js";
6
+ import { a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeEllipse, f as makeEllipseArc, g as makeThreePointArc, h as makeTangentArc, i as makeNewFaceWithinFace, l as makeBezierCurve, m as makeLine, o as makePolygon, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-BY117AaY.js";
7
+ import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-C_-imolZ.js";
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
10
10
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,10 +1,10 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
3
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
4
4
  const require_constants = require("./constants-BNP_xnBN.cjs");
5
- const require_shapeFns = require("./shapeFns-DkFzoJav.cjs");
6
- const require_surfaceBuilders = require("./surfaceBuilders-DzTJA3fK.cjs");
7
- const require_solidBuilders = require("./solidBuilders-DI9d6ZIx.cjs");
5
+ const require_shapeFns = require("./shapeFns-Dz2GNg2y.cjs");
6
+ const require_surfaceBuilders = require("./surfaceBuilders-D_w11wLr.cjs");
7
+ const require_solidBuilders = require("./solidBuilders-DUl2f7gY.cjs");
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
10
10
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-BFyEt7Fv.cjs");
3
- const require_cornerFinder = require("./cornerFinder-4PxIzwrl.cjs");
2
+ const require_helpers = require("./helpers-CM63Nn7A.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-DLxiZcyg.cjs");
4
4
  exports.cornerFinder = require_cornerFinder.cornerFinder;
5
5
  exports.edgeFinder = require_helpers.edgeFinder;
6
6
  exports.faceFinder = require_helpers.faceFinder;
package/dist/query.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-XTeLX4mm.js";
2
- import { t as cornerFinder } from "./cornerFinder-Ty3F7kPm.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-C4r8ovx9.js";
2
+ import { t as cornerFinder } from "./cornerFinder-K7cjTnkP.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Bfw136X-.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-hQK4eaEw.cjs");
2
2
  const require_errors = require("./errors-CXRNVCec.cjs");
3
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
3
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
4
4
  const require_constants = require("./constants-BNP_xnBN.cjs");
5
5
  //#region src/topology/metadata/originTrackingFns.ts
6
6
  /**
@@ -1,6 +1,6 @@
1
- import { X as getKernel, t as castShape } from "./shapeTypes-Ct7W6h2X.js";
1
+ import { X as getKernel, t as castShape } from "./shapeTypes-B9a2ed1X.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DboJwVCf.js";
3
- import { R as kernelCall, S as getOrCreateCache, _ as getCacheEntry, x as getFaces, z as kernelCallRaw } from "./faceFns-DMFG-piP.js";
3
+ import { R as kernelCall, S as getOrCreateCache, _ as getCacheEntry, x as getFaces, z as kernelCallRaw } from "./faceFns-BQ7czFFV.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-csSEYddm.js";
5
5
  //#region src/topology/metadata/originTrackingFns.ts
6
6
  /**
package/dist/shapeRef.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeRefFns = require("./shapeRefFns-t-5-Aqku.cjs");
2
+ const require_shapeRefFns = require("./shapeRefFns-N0wl6XSn.cjs");
3
3
  exports.assignRoles = require_shapeRefFns.assignRoles;
4
4
  exports.captureHint = require_shapeRefFns.captureHint;
5
5
  exports.createRef = require_shapeRefFns.createRef;
package/dist/shapeRef.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-Gv4-NGJD.js";
1
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-CgnpumqW.js";
2
2
  export { assignRoles, captureHint, createRef, defaultScorer, resolveRef, updateRoles };
@@ -1,6 +1,6 @@
1
- import { c as normalAt, n as faceCenter, r as faceGeomType, x as getFaces } from "./faceFns-DMFG-piP.js";
2
- import { n as getHashCode } from "./shapeFns-QGgHStIU.js";
3
- import { n as measureArea } from "./measureFns-Zc5RWsI4.js";
1
+ import { c as normalAt, n as faceCenter, r as faceGeomType, x as getFaces } from "./faceFns-BQ7czFFV.js";
2
+ import { n as getHashCode } from "./shapeFns-LgyEtLGl.js";
3
+ import { n as measureArea } from "./measureFns-D5DbMnQY.js";
4
4
  //#region src/topology/shapeRef/scoring.ts
5
5
  /**
6
6
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -1,6 +1,6 @@
1
- const require_faceFns = require("./faceFns-CKL9Us23.cjs");
2
- const require_shapeFns = require("./shapeFns-DkFzoJav.cjs");
3
- const require_measureFns = require("./measureFns-C2SnZLhD.cjs");
1
+ const require_faceFns = require("./faceFns-uX_AVFqu.cjs");
2
+ const require_shapeFns = require("./shapeFns-Dz2GNg2y.cjs");
3
+ const require_measureFns = require("./measureFns-BxAZf4Mf.cjs");
4
4
  //#region src/topology/shapeRef/scoring.ts
5
5
  /**
6
6
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -1442,6 +1442,10 @@ function sweep$1(oc, wire, spine, options = {}) {
1442
1442
  const progress = new oc.Message_ProgressRange_1();
1443
1443
  sweepBuilder.Build(progress);
1444
1444
  progress.delete();
1445
+ if (!sweepBuilder.IsDone()) {
1446
+ sweepBuilder.delete();
1447
+ throw new Error("Sweep build failed (IsDone=false)");
1448
+ }
1445
1449
  sweepBuilder.MakeSolid();
1446
1450
  const result = sweepBuilder.Shape();
1447
1451
  sweepBuilder.delete();
@@ -1459,18 +1463,22 @@ function simplePipe$1(oc, profile, spine) {
1459
1463
  const progress = new oc.Message_ProgressRange_1();
1460
1464
  maker.Build(progress);
1461
1465
  progress.delete();
1462
- const shellShape = maker.Shape();
1463
- const solidMaker = new oc.BRepBuilderAPI_MakeSolid_1();
1464
- const shellDowncast = oc.TopoDS_Cast.Shell(shellShape);
1465
- solidMaker.Add(shellDowncast);
1466
- const solidProgress = new oc.Message_ProgressRange_1();
1467
- solidMaker.Build(solidProgress);
1468
- solidProgress.delete();
1469
- const result = solidMaker.IsDone() ? solidMaker.Solid() : shellShape;
1470
- shellDowncast.delete();
1471
- solidMaker.delete();
1466
+ const pipeShape = maker.Shape();
1467
+ if (pipeShape.ShapeType() === oc.TopAbs_ShapeEnum.TopAbs_SHELL) {
1468
+ const solidMaker = new oc.BRepBuilderAPI_MakeSolid_1();
1469
+ const shellDowncast = oc.TopoDS_Cast.Shell(pipeShape);
1470
+ solidMaker.Add(shellDowncast);
1471
+ const solidProgress = new oc.Message_ProgressRange_1();
1472
+ solidMaker.Build(solidProgress);
1473
+ solidProgress.delete();
1474
+ const result = solidMaker.IsDone() ? solidMaker.Solid() : pipeShape;
1475
+ shellDowncast.delete();
1476
+ solidMaker.delete();
1477
+ maker.delete();
1478
+ return result;
1479
+ }
1472
1480
  maker.delete();
1473
- return result;
1481
+ return pipeShape;
1474
1482
  }
1475
1483
  var hasCppLoftBatch;
1476
1484
  var hasCppExtrudeBatch;
@@ -4279,6 +4287,10 @@ function sweepPipeShell$1(oc, profile, spine, options = {}) {
4279
4287
  const progress = new oc.Message_ProgressRange_1();
4280
4288
  builder.Build(progress);
4281
4289
  progress.delete();
4290
+ if (!builder.IsDone()) {
4291
+ builder.delete();
4292
+ throw new Error("Sweep pipe shell build failed (IsDone=false)");
4293
+ }
4282
4294
  if (options.shellMode) {
4283
4295
  const shape = builder.Shape();
4284
4296
  const firstShape = builder.FirstShape();
@@ -4377,27 +4389,36 @@ function circularPattern$1(oc, shape, center, axis, angleStep, count) {
4377
4389
  *
4378
4390
  * Computes the Frenet frame (point + tangent) at the given parameter on the spine,
4379
4391
  * then transforms the shape from standard coordinates (origin, Z-up) to that frame.
4392
+ *
4393
+ * Note: gp_Ax3 with only a main direction auto-generates X/Y axes. This is
4394
+ * deterministic for a given tangent direction but can produce discontinuous
4395
+ * profile orientations when the tangent crosses axis-aligned thresholds on
4396
+ * curved spines. For multi-section sweep this is acceptable because each
4397
+ * section is independently positioned and then lofted.
4380
4398
  */
4381
4399
  function positionOnCurve$1(oc, shape, spine, param) {
4382
4400
  const adaptor = spine.ShapeType() === oc.TopAbs_ShapeEnum.TopAbs_WIRE ? new oc.BRepAdaptor_CompCurve_2(spine, false) : new oc.BRepAdaptor_Curve_2(spine);
4383
4401
  const pnt = new oc.gp_Pnt_1();
4384
4402
  const tangent = new oc.gp_Vec_1();
4385
- adaptor.D1(param, pnt, tangent);
4386
- const tangentDir = new oc.gp_Dir_2(tangent);
4387
- const toAx3 = new oc.gp_Ax3_5(pnt, tangentDir);
4388
- const trsf = new oc.gp_Trsf_1();
4389
- trsf.SetTransformation_2(toAx3);
4390
- trsf.Invert();
4391
- const transformer = new oc.BRepBuilderAPI_Transform_2(shape, trsf, true, false);
4392
- const result = transformer.Shape();
4393
- transformer.delete();
4394
- trsf.delete();
4395
- toAx3.delete();
4396
- tangentDir.delete();
4397
- tangent.delete();
4398
- pnt.delete();
4399
- adaptor.delete();
4400
- return result;
4403
+ try {
4404
+ adaptor.D1(param, pnt, tangent);
4405
+ const tangentDir = new oc.gp_Dir_2(tangent);
4406
+ const toAx3 = new (oc.gp_Ax3_5 ?? oc.gp_Ax3_4)(pnt, tangentDir);
4407
+ const trsf = new oc.gp_Trsf_1();
4408
+ trsf.SetTransformation_2(toAx3);
4409
+ trsf.Invert();
4410
+ const transformer = new oc.BRepBuilderAPI_Transform_2(shape, trsf, true, false);
4411
+ const result = transformer.Shape();
4412
+ transformer.delete();
4413
+ trsf.delete();
4414
+ toAx3.delete();
4415
+ tangentDir.delete();
4416
+ return result;
4417
+ } finally {
4418
+ tangent.delete();
4419
+ pnt.delete();
4420
+ adaptor.delete();
4421
+ }
4401
4422
  }
4402
4423
  /** Build a non-planar face by filling a wire boundary. */
4403
4424
  function makeNonPlanarFace$1(oc, wire) {