brepjs 14.6.9 → 15.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/2d.cjs +5 -5
  2. package/dist/2d.js +5 -5
  3. package/dist/{blueprint-vVmKMvfa.cjs → blueprint-BwRTIyAw.cjs} +5 -5
  4. package/dist/{blueprint-BLKzZkxW.js → blueprint-CdYlEXfG.js} +5 -5
  5. package/dist/{blueprintFns-BaMTtxJe.js → blueprintFns-C0Gt-QwZ.js} +2 -2
  6. package/dist/{blueprintFns-DPSslVJL.cjs → blueprintFns-QcO6rMWf.cjs} +2 -2
  7. package/dist/{boolean2D-Co9nkj7F.cjs → boolean2D-DFrT2rWk.cjs} +7 -7
  8. package/dist/{boolean2D-CoXCldti.js → boolean2D-s-HOkw92.js} +7 -7
  9. package/dist/{booleanFns-18PG17fJ.cjs → booleanFns-DdTELRHb.cjs} +7 -6
  10. package/dist/{booleanFns-Be4tu95v.js → booleanFns-Ddyxzgk3.js} +4 -3
  11. package/dist/brepjs.cjs +50 -50
  12. package/dist/brepjs.js +20 -20
  13. package/dist/core/shapeTypeCache.d.ts +14 -0
  14. package/dist/core/shapeTypeCache.d.ts.map +1 -0
  15. package/dist/core/shapeTypes.d.ts.map +1 -1
  16. package/dist/core/typeDiscriminants.d.ts.map +1 -1
  17. package/dist/core.cjs +1 -1
  18. package/dist/core.js +1 -1
  19. package/dist/{cornerFinder-BxoweqWQ.js → cornerFinder-CJBB9kPk.js} +1 -1
  20. package/dist/{cornerFinder-Dj00KU4D.cjs → cornerFinder-CadmkLDu.cjs} +1 -1
  21. package/dist/{curveFns-BL-a8bye.js → curveFns-CPSCjYH3.js} +1 -1
  22. package/dist/{curveFns-BEoIUi_W.cjs → curveFns-DT7CUf9U.cjs} +1 -1
  23. package/dist/{drawFns-KYO2AZ10.cjs → drawFns-DH5jLoyU.cjs} +12 -13
  24. package/dist/{drawFns-CmSkNIJ8.js → drawFns-vCEEAtD-.js} +10 -11
  25. package/dist/{extrudeFns-D5HbbN3j.cjs → extrudeFns-YkniZn07.cjs} +1 -1
  26. package/dist/{extrudeFns-gjNTbh1v.js → extrudeFns-jteSdJFq.js} +1 -1
  27. package/dist/{faceFns-BOtIllUV.cjs → faceFns-CIH50WZl.cjs} +241 -2
  28. package/dist/{faceFns-B0eQeMRl.js → faceFns-DSijGggR.js} +146 -3
  29. package/dist/{helpers-DWxhEPaX.js → helpers-CnNA3o2i.js} +5 -5
  30. package/dist/{helpers-BcTw9ulW.cjs → helpers-Cs9_5_7k.cjs} +10 -10
  31. package/dist/{historyFns-DfSmddHI.js → historyFns-BGemHNyO.js} +4 -4
  32. package/dist/{historyFns-D0fh1JbE.cjs → historyFns-DJ7D_HBa.cjs} +4 -4
  33. package/dist/{importFns-BZyWuPje.cjs → importFns-BIq-kGc4.cjs} +2 -2
  34. package/dist/{importFns-D6l6ojCY.js → importFns-CXrs2hUZ.js} +2 -2
  35. package/dist/io.cjs +2 -2
  36. package/dist/io.js +2 -2
  37. package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +437 -0
  38. package/dist/kernel/occtWasm/occtWasmAdapter.d.ts.map +1 -0
  39. package/dist/kernel/occtWasm/occtWasmTypes.d.ts +291 -0
  40. package/dist/kernel/occtWasm/occtWasmTypes.d.ts.map +1 -0
  41. package/dist/{measureFns-ekclW7RC.js → measureFns-2OfU2IUx.js} +2 -2
  42. package/dist/{measureFns-ziEaFhgs.cjs → measureFns-DlgliEOF.cjs} +2 -2
  43. package/dist/measurement.cjs +1 -1
  44. package/dist/measurement.js +1 -1
  45. package/dist/{meshFns-D_xgh-cq.cjs → meshFns-BcsZJiab.cjs} +2 -2
  46. package/dist/{meshFns-DzKNEwLn.js → meshFns-DQDOBWkh.js} +2 -2
  47. package/dist/operations.cjs +2 -2
  48. package/dist/operations.js +2 -2
  49. package/dist/{primitiveFns-Cl6nxjV_.js → primitiveFns-C8sf6m4x.js} +6 -6
  50. package/dist/{primitiveFns-BIf2euKF.cjs → primitiveFns-DtFo8I-j.cjs} +16 -16
  51. package/dist/query.cjs +2 -2
  52. package/dist/query.js +2 -2
  53. package/dist/{shapeFns-B0qsEh-h.js → shapeFns-CquegVyR.js} +3 -134
  54. package/dist/{shapeFns-BMqU4lpk.cjs → shapeFns-DT-NmO_I.cjs} +12 -221
  55. package/dist/shapeRef.cjs +1 -1
  56. package/dist/shapeRef.js +1 -1
  57. package/dist/{shapeRefFns-BrwSuUBt.js → shapeRefFns-CAOYPDJJ.js} +3 -3
  58. package/dist/{shapeRefFns-bYjmdd_Q.cjs → shapeRefFns-CfrgfNYR.cjs} +5 -5
  59. package/dist/{shapeTypes-CCNnCMyK.cjs → shapeTypes-BUaUj4tR.cjs} +27 -2
  60. package/dist/{shapeTypes-s18kDLub.js → shapeTypes-DRUSTY2w.js} +22 -3
  61. package/dist/sketching.cjs +2 -2
  62. package/dist/sketching.js +2 -2
  63. package/dist/{solidBuilders-Csgxzr_F.js → solidBuilders-D2n0c6sb.js} +2 -2
  64. package/dist/{solidBuilders-DwdZPulT.cjs → solidBuilders-DW5yg81T.cjs} +2 -2
  65. package/dist/{surfaceBuilders-Cg9kro6D.cjs → surfaceBuilders-C31J-3Bz.cjs} +2 -2
  66. package/dist/{surfaceBuilders-DGaOP_Mz.js → surfaceBuilders-C78Cywl6.js} +2 -2
  67. package/dist/topology/faceFns.d.ts.map +1 -1
  68. package/dist/topology/healingFns.d.ts.map +1 -1
  69. package/dist/topology/minkowskiFns.d.ts.map +1 -1
  70. package/dist/topology/topologyQueryFns.d.ts +8 -3
  71. package/dist/topology/topologyQueryFns.d.ts.map +1 -1
  72. package/dist/topology.cjs +17 -17
  73. package/dist/topology.js +6 -6
  74. package/package.json +3 -1
package/dist/2d.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
3
3
  const require_errors = require("./errors-9zQcQK1H.cjs");
4
- const require_faceFns = require("./faceFns-BOtIllUV.cjs");
5
- const require_boolean2D = require("./boolean2D-Co9nkj7F.cjs");
6
- const require_blueprint = require("./blueprint-vVmKMvfa.cjs");
7
- const require_blueprintFns = require("./blueprintFns-DPSslVJL.cjs");
4
+ const require_faceFns = require("./faceFns-CIH50WZl.cjs");
5
+ const require_boolean2D = require("./boolean2D-DFrT2rWk.cjs");
6
+ const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
7
+ const require_blueprintFns = require("./blueprintFns-QcO6rMWf.cjs");
8
8
  //#region src/core/curve2dHandle.ts
9
9
  /**
10
10
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
package/dist/2d.js CHANGED
@@ -1,9 +1,9 @@
1
- import { X as getKernel2D, a as createEdge, z as createKernelHandle } from "./shapeTypes-s18kDLub.js";
1
+ import { B as createKernelHandle, Z as getKernel2D, a as createEdge } from "./shapeTypes-DRUSTY2w.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
3
- import { C as kernelCallRaw } from "./faceFns-B0eQeMRl.js";
4
- import { _ as Blueprints, a as fuseBlueprints, c as roundedRectangleBlueprint, g as CompoundBlueprint, h as organiseBlueprints, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CoXCldti.js";
5
- import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-BLKzZkxW.js";
6
- import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-BaMTtxJe.js";
3
+ import { z as kernelCallRaw } from "./faceFns-DSijGggR.js";
4
+ import { _ as Blueprints, a as fuseBlueprints, c as roundedRectangleBlueprint, g as CompoundBlueprint, h as organiseBlueprints, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-s-HOkw92.js";
5
+ import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-CdYlEXfG.js";
6
+ import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-C0Gt-QwZ.js";
7
7
  //#region src/core/curve2dHandle.ts
8
8
  /**
9
9
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
@@ -1,13 +1,13 @@
1
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-BOtIllUV.cjs");
3
+ const require_faceFns = require("./faceFns-CIH50WZl.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  const require_types = require("./types-BjDcsS7l.cjs");
6
6
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
7
- const require_curveFns = require("./curveFns-BEoIUi_W.cjs");
7
+ const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
8
8
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
9
- const require_surfaceBuilders = require("./surfaceBuilders-Cg9kro6D.cjs");
10
- const require_helpers = require("./helpers-BcTw9ulW.cjs");
9
+ const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
10
+ const require_helpers = require("./helpers-Cs9_5_7k.cjs");
11
11
  //#region src/2d/lib/definitions.ts
12
12
  /** Type guard that checks whether a value is a `Point2D`. */
13
13
  function isPoint2D(point) {
@@ -1,13 +1,13 @@
1
- import { H as registerForCleanup, W as unregisterFromCleanup, X as getKernel2D, Y as getKernel, a as createEdge, u as createWire } from "./shapeTypes-s18kDLub.js";
1
+ import { G as unregisterFromCleanup, U as registerForCleanup, X as getKernel, Z as getKernel2D, a as createEdge, u as createWire } from "./shapeTypes-DRUSTY2w.js";
2
2
  import { A as ok, R as unwrap, b as err, d as validationError, h as bug, n as computationError } from "./errors-C-cgQA3w.js";
3
- import { g as cast, m as uvCoordinates, n as faceCenter, p as uvBounds, r as faceGeomType } from "./faceFns-B0eQeMRl.js";
3
+ import { M as cast, m as uvCoordinates, n as faceCenter, p as uvBounds, r as faceGeomType } from "./faceFns-DSijGggR.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  import { r as toVec3 } from "./types-BWBlwp6w.js";
6
6
  import { r as makePlane } from "./planeOps-gTOEarV2.js";
7
- import { f as getOrientation } from "./curveFns-BL-a8bye.js";
7
+ import { f as getOrientation } from "./curveFns-CPSCjYH3.js";
8
8
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
9
- import { r as makeFace } from "./surfaceBuilders-DGaOP_Mz.js";
10
- import { _ as samePoint, b as subtract2d, l as add2d, o as normalize2d, p as distance2d, t as getSingleFace, v as scalarMultiply2d } from "./helpers-DWxhEPaX.js";
9
+ import { r as makeFace } from "./surfaceBuilders-C78Cywl6.js";
10
+ import { _ as samePoint, b as subtract2d, l as add2d, o as normalize2d, p as distance2d, t as getSingleFace, v as scalarMultiply2d } from "./helpers-CnNA3o2i.js";
11
11
  //#region src/2d/lib/definitions.ts
12
12
  /** Type guard that checks whether a value is a `Point2D`. */
13
13
  function isPoint2D(point) {
@@ -1,6 +1,6 @@
1
1
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
2
- import { g as CompoundBlueprint } from "./boolean2D-CoXCldti.js";
3
- import { t as Blueprint } from "./blueprint-BLKzZkxW.js";
2
+ import { g as CompoundBlueprint } from "./boolean2D-s-HOkw92.js";
3
+ import { t as Blueprint } from "./blueprint-CdYlEXfG.js";
4
4
  //#region src/2d/lib/curve2dFns.ts
5
5
  /**
6
6
  * Return a reversed copy of the curve (non-mutating).
@@ -1,6 +1,6 @@
1
1
  const require_errors = require("./errors-9zQcQK1H.cjs");
2
- const require_boolean2D = require("./boolean2D-Co9nkj7F.cjs");
3
- const require_blueprint = require("./blueprint-vVmKMvfa.cjs");
2
+ const require_boolean2D = require("./boolean2D-DFrT2rWk.cjs");
3
+ const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
4
4
  //#region src/2d/lib/curve2dFns.ts
5
5
  /**
6
6
  * Return a reversed copy of the curve (non-mutating).
@@ -1,16 +1,16 @@
1
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-BOtIllUV.cjs");
3
+ const require_faceFns = require("./faceFns-CIH50WZl.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  const require_types = require("./types-BjDcsS7l.cjs");
6
6
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
7
7
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
8
- const require_curveFns = require("./curveFns-BEoIUi_W.cjs");
8
+ const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
10
- const require_surfaceBuilders = require("./surfaceBuilders-Cg9kro6D.cjs");
11
- const require_helpers = require("./helpers-BcTw9ulW.cjs");
12
- const require_blueprint = require("./blueprint-vVmKMvfa.cjs");
13
- const require_extrudeFns = require("./extrudeFns-D5HbbN3j.cjs");
10
+ const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
11
+ const require_helpers = require("./helpers-Cs9_5_7k.cjs");
12
+ const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
13
+ const require_extrudeFns = require("./extrudeFns-YkniZn07.cjs");
14
14
  //#region node_modules/flatqueue/index.js
15
15
  /** @template T */
16
16
  var FlatQueue = class {
@@ -1,16 +1,16 @@
1
- import { J as _usingCtx, L as DisposalScope, X as getKernel2D, Y as getKernel, a as createEdge, h as isShape3D, o as createFace, t as castShape, u as createWire } from "./shapeTypes-s18kDLub.js";
1
+ import { R as DisposalScope, X as getKernel, Y as _usingCtx, Z as getKernel2D, a as createEdge, h as isShape3D, o as createFace, t as castShape, u as createWire } from "./shapeTypes-DRUSTY2w.js";
2
2
  import { A as ok, R as unwrap, T as isOk, b as err, d as validationError, h as bug, i as kernelError, l as typeCastError, n as computationError, s as safeIndex } from "./errors-C-cgQA3w.js";
3
- import { _ as downcast, c as normalAt, p as uvBounds, u as pointOnSurface } from "./faceFns-B0eQeMRl.js";
3
+ import { N as downcast, c as normalAt, p as uvBounds, u as pointOnSurface } from "./faceFns-DSijGggR.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  import { r as toVec3 } from "./types-BWBlwp6w.js";
6
6
  import { d as vecNormalize, h as vecScale, r as vecCross } from "./vecOps-D9etjPgV.js";
7
7
  import { n as createPlane } from "./planeOps-gTOEarV2.js";
8
- import { c as curveStartPoint, l as curveTangentAt, r as curveIsClosed } from "./curveFns-BL-a8bye.js";
8
+ import { c as curveStartPoint, l as curveTangentAt, r as curveIsClosed } from "./curveFns-CPSCjYH3.js";
9
9
  import { r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
10
- import { _ as zip, i as makeNewFaceWithinFace, r as makeFace, s as assembleWire } from "./surfaceBuilders-DGaOP_Mz.js";
11
- import { _ as samePoint$1, b as subtract2d, d as cartesianToPolar, f as crossProduct2d, g as rotate2d, h as polarToCartesian, l as add2d, m as polarAngle2d, o as normalize2d, p as distance2d, s as PRECISION_INTERSECTION, v as scalarMultiply2d } from "./helpers-DWxhEPaX.js";
12
- import { _ as Curve2D, b as removeDuplicatePoints, c as make2dCircle, f as make2dSegmentCurve, h as approximateAsBSpline, m as make2dThreePointArc, n as asSVG, o as make2dArcFromCenter, p as make2dTangentArc, r as viewbox, s as make2dBezierCurve, t as Blueprint, u as make2dEllipseArc, x as isPoint2D, y as BoundingBox2d } from "./blueprint-BLKzZkxW.js";
13
- import { c as sweep, i as complexExtrude, l as twistExtrude, r as revolve, t as extrude } from "./extrudeFns-gjNTbh1v.js";
10
+ import { _ as zip, i as makeNewFaceWithinFace, r as makeFace, s as assembleWire } from "./surfaceBuilders-C78Cywl6.js";
11
+ import { _ as samePoint$1, b as subtract2d, d as cartesianToPolar, f as crossProduct2d, g as rotate2d, h as polarToCartesian, l as add2d, m as polarAngle2d, o as normalize2d, p as distance2d, s as PRECISION_INTERSECTION, v as scalarMultiply2d } from "./helpers-CnNA3o2i.js";
12
+ import { _ as Curve2D, b as removeDuplicatePoints, c as make2dCircle, f as make2dSegmentCurve, h as approximateAsBSpline, m as make2dThreePointArc, n as asSVG, o as make2dArcFromCenter, p as make2dTangentArc, r as viewbox, s as make2dBezierCurve, t as Blueprint, u as make2dEllipseArc, x as isPoint2D, y as BoundingBox2d } from "./blueprint-CdYlEXfG.js";
13
+ import { c as sweep, i as complexExtrude, l as twistExtrude, r as revolve, t as extrude } from "./extrudeFns-jteSdJFq.js";
14
14
  //#region node_modules/flatqueue/index.js
15
15
  /** @template T */
16
16
  var FlatQueue = class {
@@ -1,11 +1,12 @@
1
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
+ const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
4
  const require_constants = require("./constants-unWN8k4c.cjs");
4
5
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
5
6
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
6
- const require_shapeFns = require("./shapeFns-BMqU4lpk.cjs");
7
+ const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
7
8
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
8
- const require_surfaceBuilders = require("./surfaceBuilders-Cg9kro6D.cjs");
9
+ const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
9
10
  //#region src/topology/booleanFns.ts
10
11
  /**
11
12
  * Boolean and compound operations — functional replacements for _3DShape boolean methods.
@@ -238,7 +239,7 @@ function buildEdgeAdjacency(edges) {
238
239
  const vertexToEdges = /* @__PURE__ */ new Map();
239
240
  const edgeVertexHashes = /* @__PURE__ */ new Map();
240
241
  for (const edge of edges) {
241
- const verts = require_shapeFns.getVertices(edge);
242
+ const verts = require_faceFns.getVertices(edge);
242
243
  const h0 = verts[0] ? kernel.hashCode(verts[0].wrapped, require_constants.HASH_CODE_MAX) : -1;
243
244
  const h1 = verts.length > 1 && verts[1] ? kernel.hashCode(verts[1].wrapped, require_constants.HASH_CODE_MAX) : h0;
244
245
  edgeVertexHashes.set(edge, [h0, h1]);
@@ -344,9 +345,9 @@ function findOuterWireIndex(wires) {
344
345
  function sectionToFace(shape, plane, options = {}) {
345
346
  const sectionResult = section(shape, plane, options);
346
347
  if (!sectionResult.ok) return sectionResult;
347
- const wires = require_shapeFns.getWires(sectionResult.value);
348
+ const wires = require_faceFns.getWires(sectionResult.value);
348
349
  if (wires.length === 0) {
349
- const edges = require_shapeFns.getEdges(sectionResult.value);
350
+ const edges = require_faceFns.getEdges(sectionResult.value);
350
351
  if (edges.length === 0) return require_errors.err(require_errors.kernelError("SECTION_FAILED", "sectionToFace: section produced no geometry", void 0, void 0, "The cutting plane may not intersect the shape. Verify plane position relative to shape bounds."));
351
352
  wires.push(...assembleWiresFromEdges(edges));
352
353
  }
@@ -1,11 +1,12 @@
1
- import { Y as getKernel, h as isShape3D, t as castShape } from "./shapeTypes-s18kDLub.js";
1
+ import { X as getKernel, h as isShape3D, t as castShape } from "./shapeTypes-DRUSTY2w.js";
2
2
  import { A as ok, R as unwrap, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-C-cgQA3w.js";
3
+ import { C as getVertices, b as getEdges, w as getWires } from "./faceFns-DSijGggR.js";
3
4
  import { n as HASH_CODE_MAX } from "./constants-B9u763C3.js";
4
5
  import { h as vecScale, t as vecAdd } from "./vecOps-D9etjPgV.js";
5
6
  import { o as resolvePlane } from "./planeOps-gTOEarV2.js";
6
- import { F as getVertices, I as getWires, M as getEdges, _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-B0qsEh-h.js";
7
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-CquegVyR.js";
7
8
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
8
- import { r as makeFace } from "./surfaceBuilders-DGaOP_Mz.js";
9
+ import { r as makeFace } from "./surfaceBuilders-C78Cywl6.js";
9
10
  //#region src/topology/booleanFns.ts
10
11
  /**
11
12
  * Boolean and compound operations — functional replacements for _3DShape boolean methods.
package/dist/brepjs.cjs CHANGED
@@ -1,29 +1,29 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_drawFns = require("./drawFns-KYO2AZ10.cjs");
3
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
2
+ const require_drawFns = require("./drawFns-DH5jLoyU.cjs");
3
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
4
4
  const require_errors = require("./errors-9zQcQK1H.cjs");
5
- const require_faceFns = require("./faceFns-BOtIllUV.cjs");
5
+ const require_faceFns = require("./faceFns-CIH50WZl.cjs");
6
6
  const require_constants = require("./constants-unWN8k4c.cjs");
7
7
  const require_types = require("./types-BjDcsS7l.cjs");
8
8
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
9
9
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
10
- const require_shapeFns = require("./shapeFns-BMqU4lpk.cjs");
11
- const require_curveFns = require("./curveFns-BEoIUi_W.cjs");
12
- const require_meshFns = require("./meshFns-D_xgh-cq.cjs");
10
+ const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
11
+ const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
12
+ const require_meshFns = require("./meshFns-BcsZJiab.cjs");
13
13
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
14
- const require_surfaceBuilders = require("./surfaceBuilders-Cg9kro6D.cjs");
15
- const require_booleanFns = require("./booleanFns-18PG17fJ.cjs");
16
- const require_primitiveFns = require("./primitiveFns-BIf2euKF.cjs");
17
- const require_historyFns = require("./historyFns-D0fh1JbE.cjs");
18
- const require_boolean2D = require("./boolean2D-Co9nkj7F.cjs");
19
- const require_helpers = require("./helpers-BcTw9ulW.cjs");
20
- const require_solidBuilders = require("./solidBuilders-DwdZPulT.cjs");
21
- const require_measureFns = require("./measureFns-ziEaFhgs.cjs");
22
- const require_cornerFinder = require("./cornerFinder-Dj00KU4D.cjs");
23
- const require_extrudeFns = require("./extrudeFns-D5HbbN3j.cjs");
24
- const require_blueprintFns = require("./blueprintFns-DPSslVJL.cjs");
25
- const require_importFns = require("./importFns-BZyWuPje.cjs");
26
- const require_shapeRefFns = require("./shapeRefFns-bYjmdd_Q.cjs");
14
+ const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
15
+ const require_booleanFns = require("./booleanFns-DdTELRHb.cjs");
16
+ const require_primitiveFns = require("./primitiveFns-DtFo8I-j.cjs");
17
+ const require_historyFns = require("./historyFns-DJ7D_HBa.cjs");
18
+ const require_boolean2D = require("./boolean2D-DFrT2rWk.cjs");
19
+ const require_helpers = require("./helpers-Cs9_5_7k.cjs");
20
+ const require_solidBuilders = require("./solidBuilders-DW5yg81T.cjs");
21
+ const require_measureFns = require("./measureFns-DlgliEOF.cjs");
22
+ const require_cornerFinder = require("./cornerFinder-CadmkLDu.cjs");
23
+ const require_extrudeFns = require("./extrudeFns-YkniZn07.cjs");
24
+ const require_blueprintFns = require("./blueprintFns-QcO6rMWf.cjs");
25
+ const require_importFns = require("./importFns-BIq-kGc4.cjs");
26
+ const require_shapeRefFns = require("./shapeRefFns-CfrgfNYR.cjs");
27
27
  const require_workerHandler = require("./workerHandler-C-7OUJsa.cjs");
28
28
  //#region src/topology/shapeBooleans.ts
29
29
  var BOPAlgo_GlueShift = 1;
@@ -68,9 +68,9 @@ function withNearestPostFilter(baseFinder, nearestPoint) {
68
68
  const candidates = baseFinder.findAll(shape);
69
69
  if (candidates.length === 0) return [];
70
70
  let bestIdx = 0;
71
- let bestDist = require_vecOps.vecDistance(require_shapeFns.vertexPosition(require_arrayAccess.firstOrThrow(candidates)), nearestPoint);
71
+ let bestDist = require_vecOps.vecDistance(require_faceFns.vertexPosition(require_arrayAccess.firstOrThrow(candidates)), nearestPoint);
72
72
  for (let i = 1; i < candidates.length; i++) {
73
- const d = require_vecOps.vecDistance(require_shapeFns.vertexPosition(require_arrayAccess.getAtOrThrow(candidates, i)), nearestPoint);
73
+ const d = require_vecOps.vecDistance(require_faceFns.vertexPosition(require_arrayAccess.getAtOrThrow(candidates, i)), nearestPoint);
74
74
  if (d < bestDist) {
75
75
  bestDist = d;
76
76
  bestIdx = i;
@@ -92,9 +92,9 @@ function withNearestPostFilter(baseFinder, nearestPoint) {
92
92
  function buildVertexFinder(filters) {
93
93
  return require_helpers.createTypedFinder("vertex", filters, buildVertexFinder, (_base, withFilter) => ({
94
94
  nearestTo: (point) => withNearestPostFilter(buildVertexFinder(filters), point),
95
- atPosition: (point, tolerance = 1e-4) => withFilter((vertex) => require_vecOps.vecDistance(require_shapeFns.vertexPosition(vertex), point) < tolerance),
95
+ atPosition: (point, tolerance = 1e-4) => withFilter((vertex) => require_vecOps.vecDistance(require_faceFns.vertexPosition(vertex), point) < tolerance),
96
96
  withinBox: (min, max) => withFilter((vertex) => {
97
- const pos = require_shapeFns.vertexPosition(vertex);
97
+ const pos = require_faceFns.vertexPosition(vertex);
98
98
  return pos[0] >= min[0] - 1e-6 && pos[0] <= max[0] + 1e-6 && pos[1] >= min[1] - 1e-6 && pos[1] <= max[1] + 1e-6 && pos[2] >= min[2] - 1e-6 && pos[2] <= max[2] + 1e-6;
99
99
  }),
100
100
  atDistance: (distance, point = [
@@ -102,7 +102,7 @@ function buildVertexFinder(filters) {
102
102
  0,
103
103
  0
104
104
  ], tolerance = 1e-4) => withFilter((vertex) => {
105
- const pos = require_shapeFns.vertexPosition(vertex);
105
+ const pos = require_faceFns.vertexPosition(vertex);
106
106
  return Math.abs(require_vecOps.vecDistance(pos, point) - distance) < tolerance;
107
107
  })
108
108
  }));
@@ -410,10 +410,10 @@ function convexHull(points) {
410
410
  * type is 'sphere'.
411
411
  */
412
412
  function detectSphere(shape) {
413
- const faces = require_shapeFns.getFaces(shape);
413
+ const faces = require_faceFns.getFaces(shape);
414
414
  if (faces.length !== 1) return null;
415
415
  const face = faces[0];
416
- if (require_shapeTypes.getKernel().surfaceType(face.wrapped) !== "sphere") return null;
416
+ if (require_faceFns.getCachedSurfaceType(face) !== "sphere") return null;
417
417
  const faceArea = require_shapeTypes.getKernel().area(face.wrapped);
418
418
  return Math.sqrt(faceArea / (4 * Math.PI));
419
419
  }
@@ -443,8 +443,8 @@ function minkowskiSphere(shape, radius, tolerance) {
443
443
  function minkowskiGeneral(shape, tool, tolerance) {
444
444
  const kernel = require_shapeTypes.getKernel();
445
445
  try {
446
- const shapeVerts = require_shapeFns.getVertices(shape);
447
- const toolVerts = require_shapeFns.getVertices(tool);
446
+ const shapeVerts = require_faceFns.getVertices(shape);
447
+ const toolVerts = require_faceFns.getVertices(tool);
448
448
  if (shapeVerts.length === 0 || toolVerts.length === 0) return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.MINKOWSKI_FAILED, "Minkowski sum: one or both shapes have no vertices", void 0, { operation: "minkowski" }));
449
449
  const sumPoints = [];
450
450
  for (const sv of shapeVerts) {
@@ -937,7 +937,7 @@ function computeStraightSkeletonImpl(polygon) {
937
937
  * evaluation. The kernel builds the actual B-Rep faces and solid.
938
938
  */
939
939
  function extractPolygon(w) {
940
- const pts = require_shapeFns.getEdges(w).map((e) => {
940
+ const pts = require_faceFns.getEdges(w).map((e) => {
941
941
  const pt = require_curveFns.curveStartPoint(e);
942
942
  return {
943
943
  x: pt[0],
@@ -1409,7 +1409,7 @@ function checkInterference(shape1, shape2, tolerance = 1e-6) {
1409
1409
  */
1410
1410
  function checkAllInterferences(shapes, tolerance = 1e-6) {
1411
1411
  const pairs = [];
1412
- const boxes = shapes.map((s) => require_shapeFns.getBounds(s));
1412
+ const boxes = shapes.map((s) => require_faceFns.getBounds(s));
1413
1413
  shapes.forEach((si, i) => {
1414
1414
  for (let j = i + 1; j < shapes.length; j++) {
1415
1415
  if (aabbDisjoint(boxes[i], boxes[j], tolerance)) continue;
@@ -2117,7 +2117,7 @@ function chamfer(shape, edgesOrDistance, maybeDistance) {
2117
2117
  }
2118
2118
  const normalized = normalizeChamferDistance(distance);
2119
2119
  if (normalized.mode === "distAngle") {
2120
- const selectedEdges = edges ?? require_shapeFns.getEdges(s);
2120
+ const selectedEdges = edges ?? require_faceFns.getEdges(s);
2121
2121
  return require_primitiveFns.chamferDistAngle(s, [...selectedEdges], normalized.distance, normalized.angle);
2122
2122
  }
2123
2123
  return require_primitiveFns.chamfer(s, edges, normalized.distance);
@@ -2166,7 +2166,7 @@ function meshEdges(shape, options) {
2166
2166
  }
2167
2167
  /** Get a summary description of a shape. */
2168
2168
  function describe(shape) {
2169
- return require_shapeFns.describe(resolve(shape));
2169
+ return require_faceFns.describe(resolve(shape));
2170
2170
  }
2171
2171
  /** Serialize a shape to BREP format. */
2172
2172
  function toBREP(shape) {
@@ -2229,7 +2229,7 @@ function loft(wires, options) {
2229
2229
  /** Resolve a face selection: Face, FinderFn, or default (top Z-facing face). */
2230
2230
  function resolveTargetFace(shape, faceSpec) {
2231
2231
  if (faceSpec === void 0) {
2232
- const faces = require_shapeFns.getFaces(shape);
2232
+ const faces = require_faceFns.getFaces(shape);
2233
2233
  if (faces.length === 0) return require_errors.err(require_errors.validationError(require_errors.BrepErrorCode.COMPOUND_NO_FACES, "compoundOps: shape has no faces"));
2234
2234
  let best = require_arrayAccess.firstOrThrow(faces);
2235
2235
  let bestZ = require_faceFns.faceCenter(best)[2];
@@ -2284,7 +2284,7 @@ function drill(shape, options) {
2284
2284
  let tool;
2285
2285
  if (options.depth !== void 0) tool = require_solidBuilders.makeCylinder(radius, options.depth, pos, dir);
2286
2286
  else {
2287
- const b = require_shapeFns.getBounds(s);
2287
+ const b = require_faceFns.getBounds(s);
2288
2288
  const corners = [
2289
2289
  [
2290
2290
  b.xMin,
@@ -2494,7 +2494,7 @@ function createWrappedBase(val) {
2494
2494
  0,
2495
2495
  1
2496
2496
  ] })),
2497
- bounds: () => require_shapeFns.getBounds(val),
2497
+ bounds: () => require_faceFns.getBounds(val),
2498
2498
  describe: () => describe(val),
2499
2499
  clone: () => wrapAny(unwrapOrThrow(clone(val))),
2500
2500
  mesh: (opts) => mesh(val, opts),
@@ -2555,10 +2555,10 @@ function createWrapped3D(val) {
2555
2555
  area: () => unwrapOrThrow(require_measureFns.measureArea(val)),
2556
2556
  volumeProps: () => unwrapOrThrow(require_measureFns.measureVolumeProps(val)),
2557
2557
  surfaceProps: () => unwrapOrThrow(require_measureFns.measureSurfaceProps(val)),
2558
- edges: () => require_shapeFns.getEdges(val),
2559
- faces: () => require_shapeFns.getFaces(val),
2560
- wires: () => require_shapeFns.getWires(val),
2561
- vertices: () => require_shapeFns.getVertices(val),
2558
+ edges: () => require_faceFns.getEdges(val),
2559
+ faces: () => require_faceFns.getFaces(val),
2560
+ wires: () => require_faceFns.getWires(val),
2561
+ vertices: () => require_faceFns.getVertices(val),
2562
2562
  linearPattern: (dir, count, spacing) => wrap3D(unwrapOrThrow(require_historyFns.linearPattern(val, dir, count, spacing))),
2563
2563
  circularPattern: (axis, count, angle) => wrap3D(unwrapOrThrow(require_historyFns.circularPattern(val, axis, count, angle)))
2564
2564
  };
@@ -2965,15 +2965,15 @@ exports.fuse2D = require_boolean2D.fuse2D;
2965
2965
  exports.fuseAll = require_booleanFns.fuseAll;
2966
2966
  exports.fuseBlueprints = require_boolean2D.fuseBlueprints;
2967
2967
  exports.fuseWithEvolution = require_primitiveFns.fuseWithEvolution;
2968
- exports.getBounds = require_shapeFns.getBounds;
2968
+ exports.getBounds = require_faceFns.getBounds;
2969
2969
  exports.getBounds2D = require_blueprintFns.getBounds2D;
2970
2970
  exports.getCurveType = require_curveFns.getCurveType;
2971
2971
  exports.getDisposalStats = require_shapeTypes.getDisposalStats;
2972
- exports.getEdges = require_shapeFns.getEdges;
2972
+ exports.getEdges = require_faceFns.getEdges;
2973
2973
  exports.getFaceColor = require_shapeFns.getFaceColor;
2974
2974
  exports.getFaceOrigins = require_shapeFns.getFaceOrigins;
2975
2975
  exports.getFaceTags = require_shapeFns.getFaceTags;
2976
- exports.getFaces = require_shapeFns.getFaces;
2976
+ exports.getFaces = require_faceFns.getFaces;
2977
2977
  exports.getFont = require_drawFns.getFont;
2978
2978
  exports.getHashCode = require_shapeFns.getHashCode;
2979
2979
  exports.getHistoryShape = require_historyFns.getShape;
@@ -2988,8 +2988,8 @@ exports.getShapeKind = require_shapeTypes.getShapeKind;
2988
2988
  exports.getSingleFace = require_helpers.getSingleFace;
2989
2989
  exports.getSurfaceType = require_faceFns.getSurfaceType;
2990
2990
  exports.getTagMetadata = require_shapeFns.getTagMetadata;
2991
- exports.getVertices = require_shapeFns.getVertices;
2992
- exports.getWires = require_shapeFns.getWires;
2991
+ exports.getVertices = require_faceFns.getVertices;
2992
+ exports.getWires = require_faceFns.getWires;
2993
2993
  exports.guidedSweep = require_extrudeFns.guidedSweep;
2994
2994
  exports.heal = heal;
2995
2995
  exports.healFace = require_primitiveFns.healFace;
@@ -3014,7 +3014,7 @@ exports.intersect = intersect;
3014
3014
  exports.intersect2D = require_boolean2D.intersect2D;
3015
3015
  exports.intersectBlueprints = require_boolean2D.intersectBlueprints;
3016
3016
  exports.intersectWithEvolution = require_primitiveFns.intersectWithEvolution;
3017
- exports.invalidateShapeCache = require_shapeFns.invalidateShapeCache;
3017
+ exports.invalidateShapeCache = require_faceFns.invalidateShapeCache;
3018
3018
  Object.defineProperty(exports, "io", {
3019
3019
  enumerable: true,
3020
3020
  get: function() {
@@ -3058,11 +3058,11 @@ exports.isValid = isValid;
3058
3058
  exports.isValidSolid = require_shapeTypes.isValidSolid;
3059
3059
  exports.isVertex = require_shapeTypes.isVertex;
3060
3060
  exports.isWire = require_shapeTypes.isWire;
3061
- exports.iterEdges = require_shapeFns.iterEdges;
3062
- exports.iterFaces = require_shapeFns.iterFaces;
3061
+ exports.iterEdges = require_faceFns.iterEdges;
3062
+ exports.iterFaces = require_faceFns.iterFaces;
3063
3063
  exports.iterTopo = require_faceFns.iterTopo;
3064
- exports.iterVertices = require_shapeFns.iterVertices;
3065
- exports.iterWires = require_shapeFns.iterWires;
3064
+ exports.iterVertices = require_faceFns.iterVertices;
3065
+ exports.iterWires = require_faceFns.iterWires;
3066
3066
  exports.kernelCall = require_faceFns.kernelCall;
3067
3067
  exports.kernelCallRaw = require_faceFns.kernelCallRaw;
3068
3068
  exports.kernelCallScoped = require_faceFns.kernelCallScoped;
@@ -3295,7 +3295,7 @@ exports.vecScale = require_vecOps.vecScale;
3295
3295
  exports.vecSub = require_vecOps.vecSub;
3296
3296
  exports.vertex = require_primitiveFns.vertex;
3297
3297
  exports.vertexFinder = vertexFinder;
3298
- exports.vertexPosition = require_shapeFns.vertexPosition;
3298
+ exports.vertexPosition = require_faceFns.vertexPosition;
3299
3299
  exports.verticesOfEdge = require_primitiveFns.verticesOfEdge;
3300
3300
  exports.walkAssembly = require_historyFns.walkAssembly;
3301
3301
  exports.wire = require_primitiveFns.wire;
package/dist/brepjs.js CHANGED
@@ -1,28 +1,28 @@
1
- import { $ as prewarm, A as planarWire, B as getDisposalStats, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as is2D, G as withScope, I as is3D, K as withScopeResult, L as DisposalScope, M as getShapeKind, N as as2D, O as orientedFace, P as as3D, Q as initFromOC, R as createHandle, S as isManifoldShell, T as isPlanarWire, U as resetDisposalStats, V as isLive, Y as getKernel, Z as init, _ as isSolid, a as createEdge, at as getPerformanceStats, b as closedWire, c as createSolid, d as isCompound, et as registerKernel, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as BrepkitAdapter, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as supportsConstraintSketch, o as createFace, ot as resetPerformanceStats, p as isFace, q as withScopeResultAsync, rt as supportsProjection, s as createShell, t as castShape, tt as withKernel, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createKernelHandle } from "./shapeTypes-s18kDLub.js";
1
+ import { $ as initFromOC, A as planarWire, B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as as3D, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, P as as2D, Q as init, R as DisposalScope, S as isManifoldShell, T as isPlanarWire, V as getDisposalStats, W as resetDisposalStats, X as getKernel, _ as isSolid, a as createEdge, at as BrepkitAdapter, b as closedWire, c as createSolid, d as isCompound, et as prewarm, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as supportsProjection, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as withKernel, o as createFace, ot as getPerformanceStats, p as isFace, q as withScopeResult, rt as supportsConstraintSketch, s as createShell, st as resetPerformanceStats, t as castShape, tt as registerKernel, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DRUSTY2w.js";
2
2
  import { A as ok, B as unwrapOr, C as fromNullable, D as mapBoth, E as map, F as tapErr, H as zip, I as tryCatch, L as tryCatchAsync, M as orElse, N as pipeline, O as mapErr, P as tap, R as unwrap, S as flatten, T as isOk, V as unwrapOrElse, _ as all, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, j as or, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, t as BrepErrorCode, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-C-cgQA3w.js";
3
- import { C as kernelCallRaw, S as kernelCall, _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, f as removeHolesFromFace, g as cast, h as asTopo, i as faceOrientation, l as outerWire, m as uvCoordinates, n as faceCenter, o as getSurfaceType, p as uvBounds, r as faceGeomType, s as innerWires, t as classifyPointOnFace, u as pointOnSurface, v as fromBREP, w as kernelCallScoped, x as shapeType, y as isCompSolid } from "./faceFns-B0eQeMRl.js";
3
+ import { A as vertexPosition, B as kernelCallScoped, C as getVertices, D as iterFaces, E as iterEdges, F as isCompSolid, I as iterTopo, L as shapeType, M as cast, N as downcast, O as iterVertices, P as fromBREP, R as kernelCall, T as invalidateShapeCache, a as flipFaceOrientation, b as getEdges, c as normalAt, d as projectPointOnFace, f as removeHolesFromFace, g as getBounds, h as describe$1, i as faceOrientation, j as asTopo, k as iterWires, l as outerWire, m as uvCoordinates, n as faceCenter, o as getSurfaceType, p as uvBounds, r as faceGeomType, s as innerWires, t as classifyPointOnFace, u as pointOnSurface, w as getWires, x as getFaces, y as getCachedSurfaceType, z as kernelCallRaw } from "./faceFns-DSijGggR.js";
4
4
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BWBlwp6w.js";
6
6
  import { a as vecDot, c as vecLength, d as vecNormalize, f as vecProjectToPlane, g as vecSub, h as vecScale, i as vecDistance, l as vecLengthSq, m as vecRotate, n as vecAngle, o as vecEquals, p as vecRepr, r as vecCross, s as vecIsZero, t as vecAdd, u as vecNegate } from "./vecOps-D9etjPgV.js";
7
7
  import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-gTOEarV2.js";
8
- import { A as describe$1, B as iterVertices, C as findFacesByTag, D as tagFaces, E as setTagMetadata, F as getVertices, H as vertexPosition, I as getWires, L as invalidateShapeCache, M as getEdges, N as getFaces, O as getFaceOrigins, R as iterEdges, S as getShapeColor, T as getTagMetadata, V as iterWires, a as isSameShape, b as colorShape, c as applyMatrix$1, d as resize, f as rotate$1, h as translate$1, i as isEqualShape, j as getBounds, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$1, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$1, w as getFaceTags, x as getFaceColor, y as colorFaces, z as iterFaces } from "./shapeFns-B0qsEh-h.js";
9
- import { a as curveLength, c as curveStartPoint, d as getCurveType, f as getOrientation, i as curveIsPeriodic, l as curveTangentAt, m as offsetWire2D, n as curveEndPoint, o as curvePeriod, p as interpolateCurve, r as curveIsClosed, s as curvePointAt, t as approximateCurve, u as flipOrientation } from "./curveFns-BL-a8bye.js";
10
- import { a as meshEdges$1, c as createMeshCache, i as mesh$1, n as exportSTEP, o as meshMultiLOD, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-DzKNEwLn.js";
8
+ import { C as findFacesByTag, D as tagFaces, E as setTagMetadata, O as getFaceOrigins, S as getShapeColor, T as getTagMetadata, a as isSameShape, b as colorShape, c as applyMatrix$1, d as resize, f as rotate$1, h as translate$1, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$1, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$1, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-CquegVyR.js";
9
+ import { a as curveLength, c as curveStartPoint, d as getCurveType, f as getOrientation, i as curveIsPeriodic, l as curveTangentAt, m as offsetWire2D, n as curveEndPoint, o as curvePeriod, p as interpolateCurve, r as curveIsClosed, s as curvePointAt, t as approximateCurve, u as flipOrientation } from "./curveFns-CPSCjYH3.js";
10
+ import { a as meshEdges$1, c as createMeshCache, i as mesh$1, n as exportSTEP, o as meshMultiLOD, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-DQDOBWkh.js";
11
11
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
12
- import { n as fill, r as makeFace } from "./surfaceBuilders-DGaOP_Mz.js";
13
- import { a as fuseAll, c as sectionToFace$1, i as fuse$1, l as slice$1, n as cut$1, o as intersect$1, r as cutAll, s as section$1, t as booleanPipeline, u as split$1 } from "./booleanFns-Be4tu95v.js";
14
- import { $ as getNurbsSurfaceData, A as fixShape, B as offset$1, C as threePointArc, D as wireLoop, E as wire, F as isValid$1, G as chamferWithEvolution, H as thicken$1, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, L as chamfer$1, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, R as draft$1, S as tangentArc, T as vertex, U as variableFillet, V as shell$1, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as wiresOfFace, b as sphere, c as cylinder, ct as toGroupedBufferGeometryData, d as ellipsoid, et as adjacentFaces, f as face, g as offsetFace, h as line, i as bsplineApprox, it as verticesOfEdge, j as heal$1, k as fixSelfIntersection, l as ellipse, lt as toLODGeometryData, m as helix, n as bezier, nt as facesOfEdge, o as compound, ot as chamferDistAngle, p as filledFace, q as filletWithEvolution, r as box, rt as sharedEdges, s as cone, st as toBufferGeometryData, t as addHoles, tt as edgesOfFace, u as ellipseArc, ut as toLineGeometryData, v as sewShells, w as torus, x as subFace, y as solid, z as fillet$1 } from "./primitiveFns-Cl6nxjV_.js";
15
- import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, f as serializeHistory, g as addChild, h as undoLast, i as deserializeHistory, 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-DfSmddHI.js";
16
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, f as Sketch, h as organiseBlueprints, i as cutBlueprints, m as loftAll, n as fuse2D, o as intersectBlueprints, p as loft$1, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CoXCldti.js";
17
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-DWxhEPaX.js";
18
- import { $ as sketchFaceOffset, B as drawSingleCircle, C as cameraFromPlane, D as makeProjectedEdges, E as projectEdges, F as drawParametricFunction, G as loadFont, H as drawText, I as drawPointsInterpolation, J as textMetrics, K as sketchText, L as drawPolysides, M as draw, N as drawCircle, O as isProjectionPlane, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, T as createCamera, U as fontMetrics, V as drawSingleEllipse, W as getFont, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, b as sketchWires, c as rotateDrawing, d as compoundSketchExtrude, et as sketchHelix, f as compoundSketchFace, g as sketchFace, h as sketchExtrude, i as drawingFuse, it as sketchRoundedRectangle, j as deserializeDrawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, q as textBlueprints, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, w as cameraLookAt, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-CmSkNIJ8.js";
19
- import { r as makeCylinder } from "./solidBuilders-Csgxzr_F.js";
20
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-ekclW7RC.js";
21
- import { t as cornerFinder } from "./cornerFinder-BxoweqWQ.js";
22
- import { a as guidedSweep, c as sweep, i as complexExtrude, l as twistExtrude, n as extrudeAll, o as multiSectionSweep, r as revolve$1, s as supportExtrude, t as extrude$1 } from "./extrudeFns-gjNTbh1v.js";
23
- import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-BaMTtxJe.js";
24
- 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-D6l6ojCY.js";
25
- import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-BrwSuUBt.js";
12
+ import { n as fill, r as makeFace } from "./surfaceBuilders-C78Cywl6.js";
13
+ import { a as fuseAll, c as sectionToFace$1, i as fuse$1, l as slice$1, n as cut$1, o as intersect$1, r as cutAll, s as section$1, t as booleanPipeline, u as split$1 } from "./booleanFns-Ddyxzgk3.js";
14
+ import { $ as getNurbsSurfaceData, A as fixShape, B as offset$1, C as threePointArc, D as wireLoop, E as wire, F as isValid$1, G as chamferWithEvolution, H as thicken$1, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, L as chamfer$1, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, R as draft$1, S as tangentArc, T as vertex, U as variableFillet, V as shell$1, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as wiresOfFace, b as sphere, c as cylinder, ct as toGroupedBufferGeometryData, d as ellipsoid, et as adjacentFaces, f as face, g as offsetFace, h as line, i as bsplineApprox, it as verticesOfEdge, j as heal$1, k as fixSelfIntersection, l as ellipse, lt as toLODGeometryData, m as helix, n as bezier, nt as facesOfEdge, o as compound, ot as chamferDistAngle, p as filledFace, q as filletWithEvolution, r as box, rt as sharedEdges, s as cone, st as toBufferGeometryData, t as addHoles, tt as edgesOfFace, u as ellipseArc, ut as toLineGeometryData, v as sewShells, w as torus, x as subFace, y as solid, z as fillet$1 } from "./primitiveFns-C8sf6m4x.js";
15
+ import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, f as serializeHistory, g as addChild, h as undoLast, i as deserializeHistory, 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-BGemHNyO.js";
16
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, f as Sketch, h as organiseBlueprints, i as cutBlueprints, m as loftAll, n as fuse2D, o as intersectBlueprints, p as loft$1, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-s-HOkw92.js";
17
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-CnNA3o2i.js";
18
+ import { $ as sketchFaceOffset, B as drawSingleCircle, C as cameraFromPlane, D as makeProjectedEdges, E as projectEdges, F as drawParametricFunction, G as loadFont, H as drawText, I as drawPointsInterpolation, J as textMetrics, K as sketchText, L as drawPolysides, M as draw, N as drawCircle, O as isProjectionPlane, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, T as createCamera, U as fontMetrics, V as drawSingleEllipse, W as getFont, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, b as sketchWires, c as rotateDrawing, d as compoundSketchExtrude, et as sketchHelix, f as compoundSketchFace, g as sketchFace, h as sketchExtrude, i as drawingFuse, it as sketchRoundedRectangle, j as deserializeDrawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, q as textBlueprints, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, w as cameraLookAt, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-vCEEAtD-.js";
19
+ import { r as makeCylinder } from "./solidBuilders-D2n0c6sb.js";
20
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-2OfU2IUx.js";
21
+ import { t as cornerFinder } from "./cornerFinder-CJBB9kPk.js";
22
+ import { a as guidedSweep, c as sweep, i as complexExtrude, l as twistExtrude, n as extrudeAll, o as multiSectionSweep, r as revolve$1, s as supportExtrude, t as extrude$1 } from "./extrudeFns-jteSdJFq.js";
23
+ import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-C0Gt-QwZ.js";
24
+ 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-CXrs2hUZ.js";
25
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-CAOYPDJJ.js";
26
26
  import { a as createTaskQueue, c as isEmpty$1, d as isDisposeRequest, f as isErrorResponse, h as isSuccessResponse, i as createWorkerClient, l as pendingCount, m as isOperationRequest, n as createWorkerHandler, o as dequeueTask, p as isInitRequest, r as registerHandler, s as enqueueTask, t as createOperationRegistry, u as rejectAll } from "./workerHandler-o2xzAfFk.js";
27
27
  //#region \0rolldown/runtime.js
28
28
  var __defProp = Object.defineProperty;
@@ -424,7 +424,7 @@ function detectSphere(shape) {
424
424
  const faces = getFaces(shape);
425
425
  if (faces.length !== 1) return null;
426
426
  const face = faces[0];
427
- if (getKernel().surfaceType(face.wrapped) !== "sphere") return null;
427
+ if (getCachedSurfaceType(face) !== "sphere") return null;
428
428
  const faceArea = getKernel().area(face.wrapped);
429
429
  return Math.sqrt(faceArea / (4 * Math.PI));
430
430
  }
@@ -0,0 +1,14 @@
1
+ import { KernelShape, ShapeType } from '../kernel/types.js';
2
+ import { KernelAdapter } from '../kernel/interfaces/index.js';
3
+ /** Get the cached type for a shape, or undefined if not cached. */
4
+ export declare function getCachedType(shape: KernelShape): ShapeType | undefined;
5
+ /** Store a type for a shape. */
6
+ export declare function setCachedType(shape: KernelShape, type: ShapeType): void;
7
+ /** Check if a shape has a cached type. */
8
+ export declare function hasCachedType(shape: KernelShape): boolean;
9
+ /**
10
+ * Get the type from cache, or query the kernel and cache the result.
11
+ * This is the primary hot-path function — replaces direct `kernel.shapeType()` calls.
12
+ */
13
+ export declare function getOrQueryType(kernel: KernelAdapter, shape: KernelShape): ShapeType;
14
+ //# sourceMappingURL=shapeTypeCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shapeTypeCache.d.ts","sourceRoot":"","sources":["../../src/core/shapeTypeCache.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAKlE,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAEvE;AAED,gCAAgC;AAChC,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAEvE;AAED,0CAA0C;AAC1C,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAEzD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,GAAG,SAAS,CAMnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"shapeTypes.d.ts","sourceRoot":"","sources":["../../src/core/shapeTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shapeTypes.d.ts","sourceRoot":"","sources":["../../src/core/shapeTypes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"typeDiscriminants.d.ts","sourceRoot":"","sources":["../../src/core/typeDiscriminants.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,aAAa,CAAC;AAGnD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAMrD,yDAAyD;AACzD,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,WAAW,GACX,UAAU,GACV,cAAc,GACd,eAAe,GACf,cAAc,GACd,aAAa,CAAC;AAmBlB;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,KAAG,MAAM,CAAC,SAAS,CAMhF,CAAC;AAMF,4DAA4D;AAC5D,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAElE"}
1
+ {"version":3,"file":"typeDiscriminants.d.ts","sourceRoot":"","sources":["../../src/core/typeDiscriminants.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,aAAa,CAAC;AAGnD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAOrD,yDAAyD;AACzD,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,WAAW,GACX,UAAU,GACV,cAAc,GACd,eAAe,GACf,cAAc,GACd,aAAa,CAAC;AAmBlB;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,KAAG,MAAM,CAAC,SAAS,CAMhF,CAAC;AAMF,4DAA4D;AAC5D,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAElE"}
package/dist/core.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-CCNnCMyK.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
3
3
  const require_errors = require("./errors-9zQcQK1H.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  const require_types = require("./types-BjDcsS7l.cjs");