brepjs 20.8.0 → 20.10.1

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 (106) hide show
  1. package/dist/2d.cjs +7 -7
  2. package/dist/2d.js +7 -7
  3. package/dist/{adjacencyFns-_RTYhwtD.cjs → adjacencyFns-DaKzrm6n.cjs} +3 -3
  4. package/dist/{adjacencyFns-BgJQQjdt.js → adjacencyFns-QlyPpWhd.js} +3 -3
  5. package/dist/{blueprint-wq2TU1XP.cjs → blueprint-BwUhy-0u.cjs} +7 -7
  6. package/dist/{blueprint-Bth4EVaO.js → blueprint-T5IMurrv.js} +7 -7
  7. package/dist/{blueprintFns-DQmNe1p6.js → blueprintFns-CZ_RJTYB.js} +3 -3
  8. package/dist/{blueprintFns-Dd0gm1rX.cjs → blueprintFns-DCWiQOnn.cjs} +3 -3
  9. package/dist/{blueprintSketcher-CSDqr27-.cjs → blueprintSketcher-DDA1AcP5.cjs} +4 -4
  10. package/dist/{blueprintSketcher-DNp87aQZ.js → blueprintSketcher-ZHeS6RGQ.js} +4 -4
  11. package/dist/{boolean2D-BAb4SnIL.js → boolean2D-CCYpepZs.js} +5 -5
  12. package/dist/{boolean2D-BkgOjMRt.cjs → boolean2D-CVkehTYy.cjs} +5 -5
  13. package/dist/brepjs.cjs +59 -93
  14. package/dist/brepjs.js +59 -94
  15. package/dist/{cameraFns-CKUN90f_.cjs → cameraFns-C4vnJuVn.cjs} +4 -4
  16. package/dist/{cameraFns-9AGyuZVp.js → cameraFns-CYdit3jH.js} +4 -4
  17. package/dist/core/errors.d.ts +3 -0
  18. package/dist/core.cjs +4 -4
  19. package/dist/core.js +4 -4
  20. package/dist/{cornerFinder-DJWo6h1Z.cjs → cornerFinder-B6d-A7bA.cjs} +1 -1
  21. package/dist/{cornerFinder-Cr_04etw.js → cornerFinder-pBdrMPZ0.js} +1 -1
  22. package/dist/{curveFns-CkA2WJP2.js → curveFns-BEHgd_lK.js} +2 -2
  23. package/dist/{curveFns-U7srQ3ZA.cjs → curveFns-MO2zNRPy.cjs} +2 -2
  24. package/dist/{drawFns-DlCxozRP.cjs → drawFns-BqQWEJAY.cjs} +14 -14
  25. package/dist/{drawFns-C6bmFijD.js → drawFns-CxsE55au.js} +14 -14
  26. package/dist/{errors-GVyCnpi0.cjs → errors-B9r_Dzs1.cjs} +3 -0
  27. package/dist/{errors-vxP5FT8B.js → errors-CUsZRWJ7.js} +3 -0
  28. package/dist/{faceFns-DSRREV5G.cjs → faceFns-FpT-Ap5E.cjs} +3 -3
  29. package/dist/{faceFns-BBk6XKJO.js → faceFns-pZvWlzpX.js} +3 -3
  30. package/dist/{healingFns-CEr0afli.js → healingFns-DO4iNGRY.js} +134 -13
  31. package/dist/{healingFns-C9G3yjOe.cjs → healingFns-x0-D6Rh1.cjs} +139 -12
  32. package/dist/{helpers-sDialr0f.js → helpers-B4k3UskG.js} +7 -7
  33. package/dist/{helpers-JuPoaP_b.cjs → helpers-Dzq_vAO5.cjs} +7 -7
  34. package/dist/{importFns-ClqPJCFR.cjs → importFns-CeHEdOsm.cjs} +3 -3
  35. package/dist/{importFns-DSUfSQn2.js → importFns-CmZ-MW_q.js} +3 -3
  36. package/dist/index.d.ts +1 -1
  37. package/dist/io.cjs +2 -2
  38. package/dist/io.js +2 -2
  39. package/dist/kernel/faultyEdges.d.ts +11 -0
  40. package/dist/kernel/occtWasm/constructionOps.d.ts +4 -2
  41. package/dist/kernel/occtWasm/helpers.d.ts +5 -0
  42. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  43. package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +18 -2
  44. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  45. package/dist/kernel/occtWasm/occtWasmTypes.d.ts +2 -0
  46. package/dist/{loftFns-B8DSoG-F.js → loftFns--HPa9bzA.js} +2 -2
  47. package/dist/{loftFns-mkJeOaII.cjs → loftFns-BAdVToS1.cjs} +2 -2
  48. package/dist/{measureFns-PRM3gOjw.js → measureFns-BFUFjzym.js} +4 -4
  49. package/dist/{measureFns-BvNkzSR6.cjs → measureFns-DugGNpl1.cjs} +4 -4
  50. package/dist/measurement.cjs +2 -2
  51. package/dist/measurement.js +2 -2
  52. package/dist/{meshFns-CgbT3uuO.js → meshFns-U0q7DxYW.js} +4 -4
  53. package/dist/{meshFns-W7ZTKqiJ.cjs → meshFns-p-lwZsSo.cjs} +4 -4
  54. package/dist/ns/modifiers.d.ts +1 -1
  55. package/dist/{occtWasmAdapter-PzZJHUAd.js → occtWasmAdapter-ClvPe3OJ.js} +135 -13
  56. package/dist/{occtWasmAdapter-BSQeA69d.cjs → occtWasmAdapter-CsDULjij.cjs} +140 -12
  57. package/dist/operations.cjs +2 -2
  58. package/dist/operations.js +2 -2
  59. package/dist/{originTrackingFns-DJDTRJh3.cjs → originTrackingFns-BisDJwJu.cjs} +2 -2
  60. package/dist/{originTrackingFns-D8SNCDKj.js → originTrackingFns-CIeKNLsH.js} +2 -2
  61. package/dist/{planeOps-C9d2Y56B.cjs → planeOps-C7sRqzno.cjs} +1 -1
  62. package/dist/{planeOps-Dp0YvuFE.js → planeOps-DgG0vHN7.js} +1 -1
  63. package/dist/{primitiveFns-EtHyTqhw.cjs → primitiveFns-Cw9q1eOL.cjs} +5 -5
  64. package/dist/{primitiveFns-W3RYNJcm.js → primitiveFns-DdSWvgfC.js} +5 -5
  65. package/dist/{principalBoxFns-Cbtty-2_.js → principalBoxFns-CjY_nvEs.js} +4 -4
  66. package/dist/{principalBoxFns-CmZa7qHi.cjs → principalBoxFns-TMr0eTjD.cjs} +4 -4
  67. package/dist/projection.cjs +1 -1
  68. package/dist/projection.js +1 -1
  69. package/dist/query.cjs +2 -2
  70. package/dist/query.js +2 -2
  71. package/dist/{refResolveFns-BkciKtNP.js → refResolveFns-0B1rrAx8.js} +6 -6
  72. package/dist/{refResolveFns-D99Vqe7a.cjs → refResolveFns-DAP4mI9C.cjs} +6 -6
  73. package/dist/result.cjs +1 -1
  74. package/dist/result.js +1 -1
  75. package/dist/{shapeFns-B54CsPyk.cjs → shapeFns-Bebgp5OO.cjs} +3 -3
  76. package/dist/{shapeFns-DB3l3ULC.js → shapeFns-ioHfSlPu.js} +3 -3
  77. package/dist/shapeRef.cjs +1 -1
  78. package/dist/shapeRef.js +1 -1
  79. package/dist/{shapeTypes-CgbUTASh.js → shapeTypes-Cj2qNze9.js} +1 -1
  80. package/dist/{shapeTypes-D_anqiRe.cjs → shapeTypes-ExC90tMw.cjs} +1 -1
  81. package/dist/sketching.cjs +3 -3
  82. package/dist/sketching.js +3 -3
  83. package/dist/{solidBuilders-DE_na4G3.js → solidBuilders-Ci8YWRBI.js} +7 -7
  84. package/dist/{solidBuilders-CUd-korS.cjs → solidBuilders-kq8rSMtF.cjs} +7 -7
  85. package/dist/{surfaceBuilders-wdGNiImD.js → surfaceBuilders-ANbHa5lb.js} +4 -4
  86. package/dist/{surfaceBuilders-DOn2jWkh.cjs → surfaceBuilders-BNU35xbA.cjs} +4 -4
  87. package/dist/text.cjs +2 -2
  88. package/dist/text.js +2 -2
  89. package/dist/{textBlueprints-B_jwMuej.js → textBlueprints-8cjvJO_y.js} +9 -9
  90. package/dist/{textBlueprints-BQ60Rc96.cjs → textBlueprints-v-gM2QiP.cjs} +9 -9
  91. package/dist/{textMetrics-Dj3yfZNQ.js → textMetrics-BXB9uWYC.js} +2 -2
  92. package/dist/{textMetrics-Bm0a4kh7.cjs → textMetrics-DwwRGGEU.cjs} +2 -2
  93. package/dist/{threadFns-BuRPVenB.cjs → threadFns-C9MTJubY.cjs} +8 -8
  94. package/dist/{threadFns-DlL5VnMf.js → threadFns-D6rqmZ3W.js} +8 -8
  95. package/dist/topology/api.d.ts +2 -0
  96. package/dist/topology/modifierFns.d.ts +14 -0
  97. package/dist/topology/wrapperFns.d.ts +1 -0
  98. package/dist/topology.cjs +9 -9
  99. package/dist/topology.js +9 -9
  100. package/dist/{topologyQueryFns-6M_dbT1R.js → topologyQueryFns-C552gkmo.js} +2 -2
  101. package/dist/{topologyQueryFns-ENxs8uu2.cjs → topologyQueryFns-DYbxJ2Hy.cjs} +2 -2
  102. package/dist/{validityTypes-BPamqRZ8.cjs → validityTypes-BDbTFKtx.cjs} +2 -2
  103. package/dist/{validityTypes-BTuI0vcR.js → validityTypes-C5Zt145z.js} +2 -2
  104. package/dist/vectors.cjs +1 -1
  105. package/dist/vectors.js +1 -1
  106. package/package.json +2 -2
package/dist/brepjs.js CHANGED
@@ -1,40 +1,40 @@
1
- import { $ as initFromOC, A as as3D, C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, G as _usingCtx, H as withScope, I as getDisposalStats, J as getKernel2D, K as getActiveKernelId, L as isLive, M as is3D, N as DisposalScope, P as createHandle, Q as initFromManifold, S as isShell, T as isWire, U as withScopeResult, V as withArenaCheckpoint, W as withScopeResultAsync, X as getKernelTier, Y as getKernelCapabilities, Z as init, _ as isCompound, a as castShape3D, at as withTier, b as isShape1D, c as createEdge, ct as resetPerformanceStats, d as createSolid, et as prewarm, f as createVertex, h as disposeResultShape, i as castShape, it as withQuality, j as is2D, k as as2D, l as createFace, lt as currentQuality, n as castResultShape, nt as registerKernelTier, ot as BrepkitAdapter, p as createWire, q as getKernel, rt as withKernel, s as createCompound, st as getPerformanceStats, tt as registerKernel, u as createShell, ut as qualityDeflection, v as isEdge, w as isVertex, x as isShape3D, y as isFace, z as resetDisposalStats } from "./shapeTypes-CgbUTASh.js";
2
- import { A as EXACT_BREP_CAPABILITIES, k as DEFAULT_CAPABILITIES, t as OcctWasmAdapter } from "./occtWasmAdapter-PzZJHUAd.js";
1
+ import { $ as initFromOC, A as as3D, C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, G as _usingCtx, H as withScope, I as getDisposalStats, J as getKernel2D, K as getActiveKernelId, L as isLive, M as is3D, N as DisposalScope, P as createHandle, Q as initFromManifold, S as isShell, T as isWire, U as withScopeResult, V as withArenaCheckpoint, W as withScopeResultAsync, X as getKernelTier, Y as getKernelCapabilities, Z as init, _ as isCompound, a as castShape3D, at as withTier, b as isShape1D, c as createEdge, ct as resetPerformanceStats, d as createSolid, et as prewarm, f as createVertex, h as disposeResultShape, i as castShape, it as withQuality, j as is2D, k as as2D, l as createFace, lt as currentQuality, n as castResultShape, nt as registerKernelTier, ot as BrepkitAdapter, p as createWire, q as getKernel, rt as withKernel, s as createCompound, st as getPerformanceStats, tt as registerKernel, u as createShell, ut as qualityDeflection, v as isEdge, w as isVertex, x as isShape3D, y as isFace, z as resetDisposalStats } from "./shapeTypes-Cj2qNze9.js";
2
+ import { A as DEFAULT_CAPABILITIES, j as EXACT_BREP_CAPABILITIES, t as OcctWasmAdapter } from "./occtWasmAdapter-ClvPe3OJ.js";
3
3
  import { i as wasmIndex, n as bug, t as BrepBugError } from "./bug-ClMTAJhe.js";
4
- import { A as tap, C as mapBoth, D as or, E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, O as orElse, P as unwrap, R as zip, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, j as tapErr, k as pipeline, l as typeCastError, m as andThen, n as computationError, o as queryError, p as all, r as ioError, t as BrepErrorCode, u as unsupportedError, v as flatten, w as mapErr, x as isOk, y as fromNullable } from "./errors-vxP5FT8B.js";
5
- import { D as kernelCallScoped, E as kernelCallRaw, T as kernelCall, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as vertexPosition, x as iterWires, y as iterSolids } from "./topologyQueryFns-6M_dbT1R.js";
6
- import { a as isPlanarFace, c as manifoldShell, d as planarWire, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, o as isPlanarWire, r as isManifoldShell, s as isValidSolid, t as closedWire, u as planarFace } from "./validityTypes-BTuI0vcR.js";
4
+ import { A as tap, C as mapBoth, D as or, E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, O as orElse, P as unwrap, R as zip, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, j as tapErr, k as pipeline, l as typeCastError, m as andThen, n as computationError, o as queryError, p as all, r as ioError, t as BrepErrorCode, u as unsupportedError, v as flatten, w as mapErr, x as isOk, y as fromNullable } from "./errors-CUsZRWJ7.js";
5
+ import { D as kernelCallScoped, E as kernelCallRaw, T as kernelCall, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as vertexPosition, x as iterWires, y as iterSolids } from "./topologyQueryFns-C552gkmo.js";
6
+ import { a as isPlanarFace, c as manifoldShell, d as planarWire, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, o as isPlanarWire, r as isManifoldShell, s as isValidSolid, t as closedWire, u as planarFace } from "./validityTypes-C5Zt145z.js";
7
7
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-iraOnb2p.js";
8
8
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-CKXsIm9-.js";
9
9
  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-S-m9H_fe.js";
10
- import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-Dp0YvuFE.js";
11
- import { C as shapeType, S as iterTopo, _ as cast, a as faceOrientation, b as fromBREP, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, x as isCompSolid, y as downcast } from "./faceFns-BBk6XKJO.js";
12
- import { i as setShapeOrigin, t as getFaceOrigins } from "./originTrackingFns-D8SNCDKj.js";
13
- import { A as parseColor, D as colorShape, E as colorFaces, F as tagFaces, M as getFaceTags, N as getTagMetadata, O as getFaceColor, P as setTagMetadata, S as hasAnyMetadata, T as propagateMetadataThroughRelocation, _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, j as findFacesByTag, k as getShapeColor, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-DE_na4G3.js";
14
- import { A as locate$1, C as threePointArc, D as wireLoop, E as wire, F as transformCopy$1, I as translate$2, M as resize, N as rotate$2, O as applyMatrix$1, P as scale$3, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, j as mirror$2, k as composeTransforms, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-W3RYNJcm.js";
15
- import { a as isSameShape, i as isEqualShape, n as getHashCode, o as simplify$1, r as isEmpty$2, s as toBREP$1, t as clone$1 } from "./shapeFns-DB3l3ULC.js";
16
- import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-CkA2WJP2.js";
17
- import { a as meshEdges$1, c as meshMultiLOD, d as clearMeshCache, f as createMeshCache, i as mesh$1, l as scaleDefaultTolerance, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as buildMeshCacheKey } from "./meshFns-CgbT3uuO.js";
10
+ import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-DgG0vHN7.js";
11
+ import { C as shapeType, S as iterTopo, _ as cast, a as faceOrientation, b as fromBREP, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, x as isCompSolid, y as downcast } from "./faceFns-pZvWlzpX.js";
12
+ import { i as setShapeOrigin, t as getFaceOrigins } from "./originTrackingFns-CIeKNLsH.js";
13
+ import { A as parseColor, D as colorShape, E as colorFaces, F as tagFaces, M as getFaceTags, N as getTagMetadata, O as getFaceColor, P as setTagMetadata, S as hasAnyMetadata, T as propagateMetadataThroughRelocation, _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, j as findFacesByTag, k as getShapeColor, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-Ci8YWRBI.js";
14
+ import { A as locate$1, C as threePointArc, D as wireLoop, E as wire, F as transformCopy$1, I as translate$2, M as resize, N as rotate$2, O as applyMatrix$1, P as scale$3, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, j as mirror$2, k as composeTransforms, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-DdSWvgfC.js";
15
+ import { a as isSameShape, i as isEqualShape, n as getHashCode, o as simplify$1, r as isEmpty$2, s as toBREP$1, t as clone$1 } from "./shapeFns-ioHfSlPu.js";
16
+ import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-BEHgd_lK.js";
17
+ import { a as meshEdges$1, c as meshMultiLOD, d as clearMeshCache, f as createMeshCache, i as mesh$1, l as scaleDefaultTolerance, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as buildMeshCacheKey } from "./meshFns-U0q7DxYW.js";
18
18
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
19
- import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, p as makeEllipseArc, r as makeFace, s as assembleWire, u as makeBezierCurve } from "./surfaceBuilders-wdGNiImD.js";
20
- import { A as toBufferGeometryData, C as chamfer$2, D as shell$2, E as offset$1, M as toLODGeometryData, N as toLODGeometryLevels, O as thicken$1, P as toLineGeometryData, S as chamferDistAngle, T as fillet$2, _ as checkBoolean, a as healFace, b as getNurbsCurveData, c as isValid$1, d as chamferWithEvolution, f as cutWithEvolution, g as shellWithEvolution, h as intersectWithEvolution, i as heal$1, j as toGroupedBufferGeometryData, k as variableFillet, l as solidFromShell, m as fuseWithEvolution, n as fixSelfIntersection, o as healSolid, p as filletWithEvolution, r as fixShape, s as healWire, t as autoHeal, u as positionOnCurve, v as cutAllBisect, w as draft$1, x as getNurbsSurfaceData, y as fuseAllBisect } from "./healingFns-CEr0afli.js";
21
- import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, G as quatFromAxisAngle, H as circularPattern, I as createAssemblyNode, J as quatRotate, K as quatFromTo, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as quatMultiply, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-DlL5VnMf.js";
22
- import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-DNp87aQZ.js";
23
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-sDialr0f.js";
24
- import { _ as approximateAsSvgCompatibleCurve, o as ellipseArcFlags } from "./blueprint-Bth4EVaO.js";
25
- import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-C6bmFijD.js";
26
- 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-PRM3gOjw.js";
27
- import { t as cornerFinder } from "./cornerFinder-Cr_04etw.js";
28
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BAb4SnIL.js";
29
- 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-DQmNe1p6.js";
30
- 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-DSUfSQn2.js";
31
- import { a as Sketch, b as extrudeAll, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch, x as revolve$2, y as extrude$2 } from "./textBlueprints-B_jwMuej.js";
32
- import { a as multiSectionSweep, c as twistExtrude, i as guidedSweep, n as loftAll, o as supportExtrude, r as complexExtrude, s as sweep$1, t as loft$2 } from "./loftFns-B8DSoG-F.js";
33
- import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-BkciKtNP.js";
34
- import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, l as wiresOfFace, n as adjacentFaces, o as sharedEdges, r as edgesOfFace, s as verticesOfEdge } from "./adjacencyFns-BgJQQjdt.js";
35
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-9AGyuZVp.js";
36
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-Dj3yfZNQ.js";
37
- import { t as principalBoundingBox } from "./principalBoxFns-Cbtty-2_.js";
19
+ import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, p as makeEllipseArc, r as makeFace, s as assembleWire, u as makeBezierCurve } from "./surfaceBuilders-ANbHa5lb.js";
20
+ import { A as variableFillet, C as chamfer$2, D as removeFaces$1, E as offset$1, F as toLineGeometryData, M as toGroupedBufferGeometryData, N as toLODGeometryData, O as shell$2, P as toLODGeometryLevels, S as chamferDistAngle, T as fillet$2, _ as checkBoolean, a as healFace, b as getNurbsCurveData, c as isValid$1, d as chamferWithEvolution, f as cutWithEvolution, g as shellWithEvolution, h as intersectWithEvolution, i as heal$1, j as toBufferGeometryData, k as thicken$1, l as solidFromShell, m as fuseWithEvolution, n as fixSelfIntersection, o as healSolid, p as filletWithEvolution, r as fixShape, s as healWire, t as autoHeal, u as positionOnCurve, v as cutAllBisect, w as draft$1, x as getNurbsSurfaceData, y as fuseAllBisect } from "./healingFns-DO4iNGRY.js";
21
+ import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, G as quatFromAxisAngle, H as circularPattern, I as createAssemblyNode, J as quatRotate, K as quatFromTo, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as quatMultiply, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-D6rqmZ3W.js";
22
+ import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-ZHeS6RGQ.js";
23
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-B4k3UskG.js";
24
+ import { _ as approximateAsSvgCompatibleCurve, o as ellipseArcFlags } from "./blueprint-T5IMurrv.js";
25
+ import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-CxsE55au.js";
26
+ 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-BFUFjzym.js";
27
+ import { t as cornerFinder } from "./cornerFinder-pBdrMPZ0.js";
28
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CCYpepZs.js";
29
+ 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-CZ_RJTYB.js";
30
+ 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-CmZ-MW_q.js";
31
+ import { a as Sketch, b as extrudeAll, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch, x as revolve$2, y as extrude$2 } from "./textBlueprints-8cjvJO_y.js";
32
+ import { a as multiSectionSweep, c as twistExtrude, i as guidedSweep, n as loftAll, o as supportExtrude, r as complexExtrude, s as sweep$1, t as loft$2 } from "./loftFns--HPa9bzA.js";
33
+ import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-0B1rrAx8.js";
34
+ import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, l as wiresOfFace, n as adjacentFaces, o as sharedEdges, r as edgesOfFace, s as verticesOfEdge } from "./adjacencyFns-QlyPpWhd.js";
35
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-CYdit3jH.js";
36
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-BXB9uWYC.js";
37
+ import { t as principalBoundingBox } from "./principalBoxFns-CjY_nvEs.js";
38
38
  import { _ as isSuccessResponse, a as createWorkerClient, c as enqueueTask, d as rejectAll, f as isBatchRequest, g as isOperationRequest, h as isInitRequest, i as registerHandler, l as isEmpty$1, m as isErrorResponse, n as createOperationRegistry, o as createTaskQueue, p as isDisposeRequest, r as createWorkerHandler, s as dequeueTask, t as createWorkerPool, u as pendingCount } from "./workerPool-Bc5hmJc4.js";
39
39
  // \0rolldown/runtime.js
40
40
  var __defProp = Object.defineProperty;
@@ -2951,73 +2951,31 @@ function ellipseEdge(from, seg, ctx) {
2951
2951
  const p = ellipseArcParams(from, to.value, radii.value, phi, seg.largeArc, seg.clockwise);
2952
2952
  if (!p.ok) return p;
2953
2953
  const { center, theta1, theta2, rx, ry } = p.value;
2954
- let arc;
2955
- let psi;
2956
- if (rx >= ry) {
2957
- arc = makeEllipseArc(rx, ry, theta1, theta2, v3(center), [
2958
- 0,
2959
- 0,
2960
- 1
2961
- ]);
2962
- psi = phi;
2963
- } else {
2964
- arc = makeEllipseArc(ry, rx, theta1 - Math.PI / 2, theta2 - Math.PI / 2, v3(center), [
2965
- 0,
2966
- 0,
2967
- 1
2968
- ]);
2969
- psi = phi + Math.PI / 2;
2970
- }
2954
+ const tall = ry > rx;
2955
+ const psi = tall ? phi + Math.PI / 2 : phi;
2956
+ const shift = tall ? -Math.PI / 2 : 0;
2957
+ const arc = makeEllipseArc(Math.max(rx, ry), Math.min(rx, ry), theta1 + shift, theta2 + shift, v3(center), [
2958
+ 0,
2959
+ 0,
2960
+ 1
2961
+ ], [
2962
+ Math.cos(psi),
2963
+ Math.sin(psi),
2964
+ 0
2965
+ ]);
2971
2966
  if (!arc.ok) return arc;
2972
2967
  let edge = arc.value;
2973
- if (Math.abs(psi) > EPS$2) try {
2968
+ if (seg.clockwise) try {
2974
2969
  var _usingCtx$7 = _usingCtx();
2975
- const rotated = rotateEdgeAbout(_usingCtx$7.u(edge), psi * 180 / Math.PI, center);
2976
- if (!rotated.ok) return rotated;
2977
- edge = rotated.value;
2970
+ const tmp = _usingCtx$7.u(edge);
2971
+ edge = flipOrientation(tmp);
2978
2972
  } catch (_) {
2979
2973
  _usingCtx$7.e = _;
2980
2974
  } finally {
2981
2975
  _usingCtx$7.d();
2982
2976
  }
2983
- if (seg.clockwise) try {
2984
- var _usingCtx3 = _usingCtx();
2985
- const tmp = _usingCtx3.u(edge);
2986
- edge = flipOrientation(tmp);
2987
- } catch (_) {
2988
- _usingCtx3.e = _;
2989
- } finally {
2990
- _usingCtx3.d();
2991
- }
2992
2977
  return ok(edge);
2993
2978
  }
2994
- /** Rotate an edge about the Z axis at `center` (degrees) via a cheap location
2995
- * re-tag; returns a fresh, independently-disposable handle. Kernels without
2996
- * an edge-relocation path (brepkit) surface as a Result error, not a throw. */
2997
- function rotateEdgeAbout(edge, angleDeg, center) {
2998
- const kernel = getKernel();
2999
- const { handle, dispose } = kernel.composeTransform([{
3000
- type: "rotate",
3001
- angle: angleDeg,
3002
- axis: [
3003
- 0,
3004
- 0,
3005
- 1
3006
- ],
3007
- center: [
3008
- center[0],
3009
- center[1],
3010
- 0
3011
- ]
3012
- }]);
3013
- try {
3014
- return ok(castShape(kernel.locate(edge.wrapped, handle)));
3015
- } catch (e) {
3016
- return err(kernelError("CSG_PATH_ELLIPSE_ROTATE", "Path: kernel cannot relocate ellipse-arc edges", e, { operation: "evalPath" }));
3017
- } finally {
3018
- dispose();
3019
- }
3020
- }
3021
2979
  function segmentEnd(seg, ctx) {
3022
2980
  return evalVec2(seg.to, ctx.env, `Path.${seg.kind}.to`);
3023
2981
  }
@@ -3083,13 +3041,13 @@ function buildSegmentWire(start, segments, ctx, scope, autoClose, where) {
3083
3041
  }
3084
3042
  function evalPath(node, ctx) {
3085
3043
  try {
3086
- var _usingCtx4 = _usingCtx();
3087
- const scope = _usingCtx4.u(new DisposalScope());
3044
+ var _usingCtx3 = _usingCtx();
3045
+ const scope = _usingCtx3.u(new DisposalScope());
3088
3046
  return buildSegmentWire(node.start, node.segments, ctx, scope, false, "Path");
3089
3047
  } catch (_) {
3090
- _usingCtx4.e = _;
3048
+ _usingCtx3.e = _;
3091
3049
  } finally {
3092
- _usingCtx4.d();
3050
+ _usingCtx3.d();
3093
3051
  }
3094
3052
  }
3095
3053
  // src/csg/evaluators/sweep.ts
@@ -7544,6 +7502,11 @@ function shell(shape, faces, thickness, options) {
7544
7502
  const resolvedFaces = resolveFaces(faces, s);
7545
7503
  return shell$2(s, resolvedFaces, thickness, options?.tolerance);
7546
7504
  }
7505
+ /** Remove faces (a hole, pocket, boss, or fillet) and close the gap with the faces around them. */
7506
+ function removeFaces(shape, faces) {
7507
+ const s = resolve(shape);
7508
+ return removeFaces$1(s, resolveFaces(faces, s));
7509
+ }
7547
7510
  /** Offset all faces of a valid solid by a given distance. */
7548
7511
  function offset(shape, distance, options) {
7549
7512
  return offset$1(resolve(shape), distance, options?.tolerance);
@@ -8040,6 +8003,7 @@ function create3DModifiers(val) {
8040
8003
  return wrap3D(trustAsT(unwrapOrThrow(chamfer(asValidSolid(val), args[0], args[1]))));
8041
8004
  },
8042
8005
  shell: (faces, thickness, opts) => wrap3D(trustAsT(unwrapOrThrow(shell(asValidSolid(val), faces, thickness, opts)))),
8006
+ removeFaces: (faces) => wrap3D(trustAsT(unwrapOrThrow(removeFaces(asValidSolid(val), faces)))),
8043
8007
  offset: (distance, opts) => wrap3D(trustAsT(unwrapOrThrow(offset(asValidSolid(val), distance, opts)))),
8044
8008
  draft: (faces, opts) => wrap3D(trustAsT(unwrapOrThrow(draft(asValidSolid(val), faces, opts))))
8045
8009
  };
@@ -8840,6 +8804,7 @@ var modifiers_exports = /* @__PURE__ */ __exportAll({
8840
8804
  fillet: () => fillet,
8841
8805
  heal: () => heal,
8842
8806
  offset: () => offset,
8807
+ removeFaces: () => removeFaces,
8843
8808
  shell: () => shell,
8844
8809
  simplify: () => simplify,
8845
8810
  thicken: () => thicken,
@@ -9007,4 +8972,4 @@ var csg_exports = /* @__PURE__ */ __exportAll({
9007
8972
  zShapeProfile: () => zShapeProfile
9008
8973
  });
9009
8974
  /* v8 ignore file */
9010
- export { BaseSketcher2d, BlueprintSketcher, BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEFAULT_CAPABILITIES, DEG2RAD, DisposalScope, EXACT_BREP_CAPABILITIES, FaceSketcher, GeometryCleanupError, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketcher, Sketches, addChild, addHoles, addJoint, addMate, addStep, adjacentFaces, all, andThen, applyGlue, applyMatrix, approximateCurve, as2D, as3D, asTopo, assignRoles, autoHeal, bezier, blueprintToContour, blueprintToDXF, booleanPipeline, booleans_exports as booleans, boss, box, bsplineApprox, bug, cameraFromPlane, cameraLookAt, captureHint, cast, castShape, castShape3D, chamfer, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkAllInterferences, checkBoolean, checkInterference, circle, circularPattern, classifyPointOnFace, clearMeshCache, clone, closedWire, collect, collectShapes, colorFaces, colorShape, complexExtrude, composeTransforms, compound, compoundSketchExtrude, compoundSketchFace, compoundSketchLoft, compoundSketchRevolve, computationError, computeStraightSkeleton, cone, construction_exports as construction, convexHull, cornerFinder, countNodes, createAssembly, createAssemblyNode, createBlueprint, createCamera, createCompound, createCompoundBlueprint, createDerivedFaceRef, createDistanceQuery, createEdge, createEdgeRef, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createVertexRef, createWire, createWorkerClient, createWorkerHandler, createWorkerPool, csg_exports as csg, currentQuality, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveAxis, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutAllBisect, cutBlueprints, cutWithEvolution, cylinder, cylindricalJoint, defaultScorer, dequeueTask, describe, deserializeDrawing, deserializeHistory, fromBREP as deserializeShape, downcast, draft, draw, drawCircle, drawEllipse, drawFaceOutline, drawParametricFunction, drawPointsInterpolation, drawPolysides, drawProjection, drawRectangle, drawRoundedRectangle, drawSingleCircle, drawSingleEllipse, drawText, drawingChamfer, drawingCut, drawingFillet, drawingFuse, drawingIntersect, drawingToSketchOnPlane, drill, edgeFinder, edgesOfFace, ellipse, ellipseArc, ellipsoid, enqueueTask, err, exportAssemblySTEP, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, exportURDF, extrude, extrudeAll, face, faceAxis, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, facesOfVertex, fieldBoolean, fieldContour, fieldOffset, fieldReinit, fieldShell, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, forwardKinematics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseAllBisect, fuseBlueprints, fuseWithEvolution, gearGeometry, getActiveVoxelId, getBounds, getBounds2D, getCompSolids, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getKernelCapabilities, getKernelTier, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getShells, getSingleFace, getSolids, getSurfaceType, getTagMetadata, getVertices, getVoxel, getWires, gridPattern, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, importURDF, init, initFromManifold, initFromOC, initVoxel, innerWires, instance, instanceCount, instanceGrid, instancedMesh, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, inverseKinematics, ioNs_exports as io, ioError, is2D, is3D, isBatchRequest, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDerivedFaceRef, isDisposeRequest, isEdge, isEdgeRef, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFaceRef, isFilletRadius, isInitRequest, isInside2D, isInstanced, isLineageRef, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isVertexRef, isWire, iterCompSolids, iterEdges, iterFaces, iterShells, iterSolids, iterTopo, iterVertices, iterWires, jointTrajectory, jointTransform, jointsFromDH, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, latticeInfill, latticeInfillShape, line, linearPattern, loadFont, locate, loft, loftAll, makeBaseBox, makeExternalGear, makeInternalGear, makePlane, makePlanetaryGear, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, materialize, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mechanismDOF, mesh, meshEdges, meshLODs, meshLODsProgressive, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetMesh, offsetShape, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarJoint, planarWire, planetPlacements, pocket, pointOnSurface, pointsInside, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, principalBoundingBox, prismaticJoint, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerKernelTier, registerOperation, registerShape, registerVoxel, rejectAll, removeChild, removeHolesFromFace, repairMesh, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDerivedFaceRef, resolveDirection, resolveEdgeRef, resolveLineageRef, resolvePlane, resolveRef, resolveRefIn, resolveRefParams, resolveVertexRef, reverseCurve, revoluteJoint, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, box$1 as sdfBox, capsule as sdfCapsule, cone$1 as sdfCone, cylinder$1 as sdfCylinder, fieldAxialRamp as sdfFieldAxialRamp, fieldClamp as sdfFieldClamp, fieldConst as sdfFieldConst, fieldFromSdf as sdfFieldFromSdf, fieldRadialRamp as sdfFieldRadialRamp, lattice as sdfLattice, plane as sdfPlane, roundedBox as sdfRoundedBox, sphere as sdfSphere, strutLattice as sdfStrutLattice, sweep as sdfSweep, torus as sdfTorus, section, sectionToFace, serializeHistory, setJointValue, setJointValues, setShapeOrigin, setTagMetadata, sewShells, shape, shapeToMeshInput, shapeType, sharedEdges, shell, shellMesh, shellShape, shellWithEvolution, simplify, sketchCircle, sketchEllipse, sketchExtrude, sketchFace, sketchFaceOffset, sketchHelix, sketchLoft, sketchOnFace2D, sketchOnPlane2D, sketchParametricFunction, sketchPolysides, sketchRectangle, sketchRevolve, sketchRoundedRectangle, sketchSweep, sketchText, sketchWires, sketcherStateError, slice, solid, solidFromShell, solveAssembly, sphere$1 as sphere, sphericalJoint, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep$1 as sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, thread, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLODGeometryLevels, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus$1 as torus, tpmsLattice, transformCopy, transforms_exports as transforms, translate, translate2D, translateDrawing, translatePlane, tryCatch, tryCatchAsync, twistExtrude, typeCastError, undoLast, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, updateNode, updateRoles, uvBounds, uvCoordinates, validSolid, validatePlanetary, validationError, variableFillet, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, vertex, vertexFinder, vertexPosition, verticesOfEdge, verticesOfFace, voxelBoolean, voxelBooleanField, voxelBooleanFieldShapes, voxelBooleanShapes, voxelField, voxelFieldFromShape, walkAssembly, windingNumbers, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withQuality, withScope, withScopeResult, withScopeResultAsync, withTier, zip as zipResults };
8975
+ export { BaseSketcher2d, BlueprintSketcher, BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEFAULT_CAPABILITIES, DEG2RAD, DisposalScope, EXACT_BREP_CAPABILITIES, FaceSketcher, GeometryCleanupError, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketcher, Sketches, addChild, addHoles, addJoint, addMate, addStep, adjacentFaces, all, andThen, applyGlue, applyMatrix, approximateCurve, as2D, as3D, asTopo, assignRoles, autoHeal, bezier, blueprintToContour, blueprintToDXF, booleanPipeline, booleans_exports as booleans, boss, box, bsplineApprox, bug, cameraFromPlane, cameraLookAt, captureHint, cast, castShape, castShape3D, chamfer, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkAllInterferences, checkBoolean, checkInterference, circle, circularPattern, classifyPointOnFace, clearMeshCache, clone, closedWire, collect, collectShapes, colorFaces, colorShape, complexExtrude, composeTransforms, compound, compoundSketchExtrude, compoundSketchFace, compoundSketchLoft, compoundSketchRevolve, computationError, computeStraightSkeleton, cone, construction_exports as construction, convexHull, cornerFinder, countNodes, createAssembly, createAssemblyNode, createBlueprint, createCamera, createCompound, createCompoundBlueprint, createDerivedFaceRef, createDistanceQuery, createEdge, createEdgeRef, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createVertexRef, createWire, createWorkerClient, createWorkerHandler, createWorkerPool, csg_exports as csg, currentQuality, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveAxis, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutAllBisect, cutBlueprints, cutWithEvolution, cylinder, cylindricalJoint, defaultScorer, dequeueTask, describe, deserializeDrawing, deserializeHistory, fromBREP as deserializeShape, downcast, draft, draw, drawCircle, drawEllipse, drawFaceOutline, drawParametricFunction, drawPointsInterpolation, drawPolysides, drawProjection, drawRectangle, drawRoundedRectangle, drawSingleCircle, drawSingleEllipse, drawText, drawingChamfer, drawingCut, drawingFillet, drawingFuse, drawingIntersect, drawingToSketchOnPlane, drill, edgeFinder, edgesOfFace, ellipse, ellipseArc, ellipsoid, enqueueTask, err, exportAssemblySTEP, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, exportURDF, extrude, extrudeAll, face, faceAxis, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, facesOfVertex, fieldBoolean, fieldContour, fieldOffset, fieldReinit, fieldShell, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, forwardKinematics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseAllBisect, fuseBlueprints, fuseWithEvolution, gearGeometry, getActiveVoxelId, getBounds, getBounds2D, getCompSolids, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getKernelCapabilities, getKernelTier, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getShells, getSingleFace, getSolids, getSurfaceType, getTagMetadata, getVertices, getVoxel, getWires, gridPattern, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, importURDF, init, initFromManifold, initFromOC, initVoxel, innerWires, instance, instanceCount, instanceGrid, instancedMesh, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, inverseKinematics, ioNs_exports as io, ioError, is2D, is3D, isBatchRequest, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDerivedFaceRef, isDisposeRequest, isEdge, isEdgeRef, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFaceRef, isFilletRadius, isInitRequest, isInside2D, isInstanced, isLineageRef, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isVertexRef, isWire, iterCompSolids, iterEdges, iterFaces, iterShells, iterSolids, iterTopo, iterVertices, iterWires, jointTrajectory, jointTransform, jointsFromDH, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, latticeInfill, latticeInfillShape, line, linearPattern, loadFont, locate, loft, loftAll, makeBaseBox, makeExternalGear, makeInternalGear, makePlane, makePlanetaryGear, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, materialize, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mechanismDOF, mesh, meshEdges, meshLODs, meshLODsProgressive, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetMesh, offsetShape, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarJoint, planarWire, planetPlacements, pocket, pointOnSurface, pointsInside, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, principalBoundingBox, prismaticJoint, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerKernelTier, registerOperation, registerShape, registerVoxel, rejectAll, removeChild, removeFaces, removeHolesFromFace, repairMesh, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDerivedFaceRef, resolveDirection, resolveEdgeRef, resolveLineageRef, resolvePlane, resolveRef, resolveRefIn, resolveRefParams, resolveVertexRef, reverseCurve, revoluteJoint, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, box$1 as sdfBox, capsule as sdfCapsule, cone$1 as sdfCone, cylinder$1 as sdfCylinder, fieldAxialRamp as sdfFieldAxialRamp, fieldClamp as sdfFieldClamp, fieldConst as sdfFieldConst, fieldFromSdf as sdfFieldFromSdf, fieldRadialRamp as sdfFieldRadialRamp, lattice as sdfLattice, plane as sdfPlane, roundedBox as sdfRoundedBox, sphere as sdfSphere, strutLattice as sdfStrutLattice, sweep as sdfSweep, torus as sdfTorus, section, sectionToFace, serializeHistory, setJointValue, setJointValues, setShapeOrigin, setTagMetadata, sewShells, shape, shapeToMeshInput, shapeType, sharedEdges, shell, shellMesh, shellShape, shellWithEvolution, simplify, sketchCircle, sketchEllipse, sketchExtrude, sketchFace, sketchFaceOffset, sketchHelix, sketchLoft, sketchOnFace2D, sketchOnPlane2D, sketchParametricFunction, sketchPolysides, sketchRectangle, sketchRevolve, sketchRoundedRectangle, sketchSweep, sketchText, sketchWires, sketcherStateError, slice, solid, solidFromShell, solveAssembly, sphere$1 as sphere, sphericalJoint, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep$1 as sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, thread, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLODGeometryLevels, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus$1 as torus, tpmsLattice, transformCopy, transforms_exports as transforms, translate, translate2D, translateDrawing, translatePlane, tryCatch, tryCatchAsync, twistExtrude, typeCastError, undoLast, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, updateNode, updateRoles, uvBounds, uvCoordinates, validSolid, validatePlanetary, validationError, variableFillet, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, vertex, vertexFinder, vertexPosition, verticesOfEdge, verticesOfFace, voxelBoolean, voxelBooleanField, voxelBooleanFieldShapes, voxelBooleanShapes, voxelField, voxelFieldFromShape, walkAssembly, windingNumbers, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withQuality, withScope, withScopeResult, withScopeResultAsync, withTier, zip as zipResults };
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-D_anqiRe.cjs");
2
- const require_errors = require("./errors-GVyCnpi0.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ENxs8uu2.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-ExC90tMw.cjs");
2
+ const require_errors = require("./errors-B9r_Dzs1.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-DYbxJ2Hy.cjs");
4
4
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
5
- const require_shapeFns = require("./shapeFns-B54CsPyk.cjs");
5
+ const require_shapeFns = require("./shapeFns-Bebgp5OO.cjs");
6
6
  // src/projection/projectionPlanes.ts
7
7
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
8
8
  var PROJECTION_PLANES = {
@@ -1,8 +1,8 @@
1
- import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-CgbUTASh.js";
2
- import { E as ok, P as unwrap, d as validationError, g as err } from "./errors-vxP5FT8B.js";
3
- import { s as getEdges } from "./topologyQueryFns-6M_dbT1R.js";
1
+ import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-Cj2qNze9.js";
2
+ import { E as ok, P as unwrap, d as validationError, g as err } from "./errors-CUsZRWJ7.js";
3
+ import { s as getEdges } from "./topologyQueryFns-C552gkmo.js";
4
4
  import { c as vecLength, d as vecNormalize, g as vecSub, r as vecCross } from "./vecOps-S-m9H_fe.js";
5
- import { t as clone } from "./shapeFns-DB3l3ULC.js";
5
+ import { t as clone } from "./shapeFns-ioHfSlPu.js";
6
6
  // src/projection/projectionPlanes.ts
7
7
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
8
8
  var PROJECTION_PLANES = {
@@ -44,6 +44,7 @@ export declare const BrepErrorCode: {
44
44
  readonly ZERO_OFFSET: "ZERO_OFFSET";
45
45
  readonly NO_EDGES: "NO_EDGES";
46
46
  readonly NO_FACES: "NO_FACES";
47
+ readonly FACE_NOT_IN_SHAPE: "FACE_NOT_IN_SHAPE";
47
48
  readonly DRAFT_NO_FACES: "DRAFT_NO_FACES";
48
49
  readonly DRAFT_INVALID_ANGLE: "DRAFT_INVALID_ANGLE";
49
50
  readonly DRAFT_NOT_3D: "DRAFT_NOT_3D";
@@ -69,6 +70,8 @@ export declare const BrepErrorCode: {
69
70
  readonly SHELL_INVALID_RESULT: "SHELL_INVALID_RESULT";
70
71
  readonly OFFSET_NOT_3D: "OFFSET_NOT_3D";
71
72
  readonly OFFSET_INVALID_RESULT: "OFFSET_INVALID_RESULT";
73
+ readonly REMOVE_FACES_FAILED: "REMOVE_FACES_FAILED";
74
+ readonly REMOVE_FACES_INCOMPLETE: "REMOVE_FACES_INCOMPLETE";
72
75
  readonly NULL_SHAPE: "NULL_SHAPE";
73
76
  readonly NO_WRAPPER: "NO_WRAPPER";
74
77
  readonly WELD_NOT_SHELL: "WELD_NOT_SHELL";
package/dist/core.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-D_anqiRe.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-ExC90tMw.cjs");
3
3
  const require_bug = require("./bug-CBcpIPuf.cjs");
4
- const require_errors = require("./errors-GVyCnpi0.cjs");
5
- const require_validityTypes = require("./validityTypes-BPamqRZ8.cjs");
4
+ const require_errors = require("./errors-B9r_Dzs1.cjs");
5
+ const require_validityTypes = require("./validityTypes-BDbTFKtx.cjs");
6
6
  const require_constants = require("./constants-oee0S_x6.cjs");
7
7
  const require_types = require("./types-CjF9Rofr.cjs");
8
8
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
9
- const require_planeOps = require("./planeOps-C9d2Y56B.cjs");
9
+ const require_planeOps = require("./planeOps-C7sRqzno.cjs");
10
10
  exports.BrepBugError = require_bug.BrepBugError;
11
11
  exports.DEG2RAD = require_constants.DEG2RAD;
12
12
  exports.DisposalScope = require_shapeTypes.DisposalScope;
package/dist/core.js CHANGED
@@ -1,9 +1,9 @@
1
- import { C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, H as withScope, L as isLive, M as is3D, N as DisposalScope, P as createHandle, S as isShell, T as isWire, U as withScopeResult, W as withScopeResultAsync, _ as isCompound, b as isShape1D, i as castShape, j as is2D, v as isEdge, w as isVertex, x as isShape3D, y as isFace } from "./shapeTypes-CgbUTASh.js";
1
+ import { C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, H as withScope, L as isLive, M as is3D, N as DisposalScope, P as createHandle, S as isShell, T as isWire, U as withScopeResult, W as withScopeResultAsync, _ as isCompound, b as isShape1D, i as castShape, j as is2D, v as isEdge, w as isVertex, x as isShape3D, y as isFace } from "./shapeTypes-Cj2qNze9.js";
2
2
  import { n as bug, t as BrepBugError } from "./bug-ClMTAJhe.js";
3
- import { E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, P as unwrap, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, l as typeCastError, m as andThen, n as computationError, o as queryError, r as ioError, u as unsupportedError, w as mapErr, x as isOk } from "./errors-vxP5FT8B.js";
4
- import { c as manifoldShell, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, r as isManifoldShell, s as isValidSolid, t as closedWire } from "./validityTypes-BTuI0vcR.js";
3
+ import { E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, P as unwrap, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, l as typeCastError, m as andThen, n as computationError, o as queryError, r as ioError, u as unsupportedError, w as mapErr, x as isOk } from "./errors-CUsZRWJ7.js";
4
+ import { c as manifoldShell, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, r as isManifoldShell, s as isValidSolid, t as closedWire } from "./validityTypes-C5Zt145z.js";
5
5
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-iraOnb2p.js";
6
6
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-CKXsIm9-.js";
7
7
  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-S-m9H_fe.js";
8
- import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-Dp0YvuFE.js";
8
+ import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-DgG0vHN7.js";
9
9
  export { BrepBugError, DEG2RAD, DisposalScope, GeometryCleanupError, HASH_CODE_MAX, OK, RAD2DEG, andThen, bug, castShape, closedWire, collect, computationError, createHandle, createKernelHandle, createNamedPlane, createPlane, err, flatMap, getShapeKind, ioError, is2D, is3D, isClosedWire, isCompound, isEdge, isErr, isFace, isLive, isManifoldShell, isOk, isOrientedFace, isShape1D, isShape3D, isShell, isSolid, isValidSolid, isVertex, isWire, kernelError, manifoldShell, map, mapErr, match, moduleInitError, ok, orientedFace, pivotPlane, queryError, resolveDirection, resolvePlane, sketcherStateError, toVec2, toVec3, translatePlane, tryCatch, tryCatchAsync, typeCastError, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, validSolid, validationError, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, withScope, withScopeResult, withScopeResultAsync };
@@ -1,6 +1,6 @@
1
1
  const require_constants = require("./constants-oee0S_x6.cjs");
2
2
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
3
- const require_helpers = require("./helpers-JuPoaP_b.cjs");
3
+ const require_helpers = require("./helpers-Dzq_vAO5.cjs");
4
4
  // src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,6 +1,6 @@
1
1
  import { t as DEG2RAD } from "./constants-iraOnb2p.js";
2
2
  import { n as getAtOrThrow } from "./arrayAccess-BpgouNir.js";
3
- import { p as distance2d, u as angle2d, v as samePoint } from "./helpers-sDialr0f.js";
3
+ import { p as distance2d, u as angle2d, v as samePoint } from "./helpers-B4k3UskG.js";
4
4
  // src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,5 +1,5 @@
1
- import { T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, v as isEdge } from "./shapeTypes-CgbUTASh.js";
2
- import { E as ok, g as err, l as typeCastError } from "./errors-vxP5FT8B.js";
1
+ import { T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, v as isEdge } from "./shapeTypes-Cj2qNze9.js";
2
+ import { E as ok, g as err, l as typeCastError } from "./errors-CUsZRWJ7.js";
3
3
  // src/topology/curveFns.ts
4
4
  /**
5
5
  * Curve and 1D shape functions — functional replacements for _1DShape/Curve methods.
@@ -1,5 +1,5 @@
1
- const require_shapeTypes = require("./shapeTypes-D_anqiRe.cjs");
2
- const require_errors = require("./errors-GVyCnpi0.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-ExC90tMw.cjs");
2
+ const require_errors = require("./errors-B9r_Dzs1.cjs");
3
3
  // src/topology/curveFns.ts
4
4
  /**
5
5
  * Curve and 1D shape functions — functional replacements for _1DShape/Curve methods.
@@ -1,22 +1,22 @@
1
- const require_shapeTypes = require("./shapeTypes-D_anqiRe.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-ExC90tMw.cjs");
2
2
  const require_bug = require("./bug-CBcpIPuf.cjs");
3
- const require_errors = require("./errors-GVyCnpi0.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-ENxs8uu2.cjs");
3
+ const require_errors = require("./errors-B9r_Dzs1.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-DYbxJ2Hy.cjs");
5
5
  const require_constants = require("./constants-oee0S_x6.cjs");
6
6
  const require_types = require("./types-CjF9Rofr.cjs");
7
7
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
8
- const require_planeOps = require("./planeOps-C9d2Y56B.cjs");
9
- const require_faceFns = require("./faceFns-DSRREV5G.cjs");
10
- const require_curveFns = require("./curveFns-U7srQ3ZA.cjs");
8
+ const require_planeOps = require("./planeOps-C7sRqzno.cjs");
9
+ const require_faceFns = require("./faceFns-FpT-Ap5E.cjs");
10
+ const require_curveFns = require("./curveFns-MO2zNRPy.cjs");
11
11
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
12
- const require_surfaceBuilders = require("./surfaceBuilders-DOn2jWkh.cjs");
13
- const require_blueprintSketcher = require("./blueprintSketcher-CSDqr27-.cjs");
14
- const require_helpers = require("./helpers-JuPoaP_b.cjs");
15
- const require_blueprint = require("./blueprint-wq2TU1XP.cjs");
16
- const require_cornerFinder = require("./cornerFinder-DJWo6h1Z.cjs");
17
- const require_boolean2D = require("./boolean2D-BkgOjMRt.cjs");
18
- const require_textBlueprints = require("./textBlueprints-BQ60Rc96.cjs");
19
- const require_cameraFns = require("./cameraFns-CKUN90f_.cjs");
12
+ const require_surfaceBuilders = require("./surfaceBuilders-BNU35xbA.cjs");
13
+ const require_blueprintSketcher = require("./blueprintSketcher-DDA1AcP5.cjs");
14
+ const require_helpers = require("./helpers-Dzq_vAO5.cjs");
15
+ const require_blueprint = require("./blueprint-BwUhy-0u.cjs");
16
+ const require_cornerFinder = require("./cornerFinder-B6d-A7bA.cjs");
17
+ const require_boolean2D = require("./boolean2D-CVkehTYy.cjs");
18
+ const require_textBlueprints = require("./textBlueprints-v-gM2QiP.cjs");
19
+ const require_cameraFns = require("./cameraFns-C4vnJuVn.cjs");
20
20
  // src/2d/lib/stitching.ts
21
21
  /**
22
22
  * Group a flat list of curves into connected chains by matching endpoints.
@@ -1,22 +1,22 @@
1
- import { G as _usingCtx, N as DisposalScope, c as createEdge, l as createFace, p as createWire, q as getKernel } from "./shapeTypes-CgbUTASh.js";
1
+ import { G as _usingCtx, N as DisposalScope, c as createEdge, l as createFace, p as createWire, q as getKernel } from "./shapeTypes-Cj2qNze9.js";
2
2
  import { i as wasmIndex, n as bug } from "./bug-ClMTAJhe.js";
3
- import { P as unwrap, s as safeIndex } from "./errors-vxP5FT8B.js";
4
- import { s as getEdges } from "./topologyQueryFns-6M_dbT1R.js";
3
+ import { P as unwrap, s as safeIndex } from "./errors-CUsZRWJ7.js";
4
+ import { s as getEdges } from "./topologyQueryFns-C552gkmo.js";
5
5
  import { t as DEG2RAD } from "./constants-iraOnb2p.js";
6
6
  import { r as toVec3 } from "./types-CKXsIm9-.js";
7
7
  import { d as vecNormalize, g as vecSub, h as vecScale, m as vecRotate, r as vecCross } from "./vecOps-S-m9H_fe.js";
8
- import { a as planeToWorld, o as resolvePlane } from "./planeOps-Dp0YvuFE.js";
9
- import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u as outerWire, v as copyShape, y as downcast } from "./faceFns-BBk6XKJO.js";
10
- import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-CkA2WJP2.js";
8
+ import { a as planeToWorld, o as resolvePlane } from "./planeOps-DgG0vHN7.js";
9
+ import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u as outerWire, v as copyShape, y as downcast } from "./faceFns-pZvWlzpX.js";
10
+ import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-BEHgd_lK.js";
11
11
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
12
- import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-wdGNiImD.js";
13
- import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-DNp87aQZ.js";
14
- import { b as squareDistance2d, l as add2d, s as PRECISION_OFFSET, v as samePoint$1, x as subtract2d } from "./helpers-sDialr0f.js";
15
- import { _ as approximateAsSvgCompatibleCurve, a as edgeToCurve, f as make2dInerpolatedBSplineCurve, i as curvesAsEdgesOnPlane, l as make2dCircle, p as make2dSegmentCurve, s as make2dArcFromCenter, t as Blueprint, u as make2dEllipse, v as Curve2D, x as BoundingBox2d, y as deserializeCurve2D } from "./blueprint-Bth4EVaO.js";
16
- import { t as cornerFinder } from "./cornerFinder-Cr_04etw.js";
17
- import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BAb4SnIL.js";
18
- import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-B_jwMuej.js";
19
- import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-9AGyuZVp.js";
12
+ import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-ANbHa5lb.js";
13
+ import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-ZHeS6RGQ.js";
14
+ import { b as squareDistance2d, l as add2d, s as PRECISION_OFFSET, v as samePoint$1, x as subtract2d } from "./helpers-B4k3UskG.js";
15
+ import { _ as approximateAsSvgCompatibleCurve, a as edgeToCurve, f as make2dInerpolatedBSplineCurve, i as curvesAsEdgesOnPlane, l as make2dCircle, p as make2dSegmentCurve, s as make2dArcFromCenter, t as Blueprint, u as make2dEllipse, v as Curve2D, x as BoundingBox2d, y as deserializeCurve2D } from "./blueprint-T5IMurrv.js";
16
+ import { t as cornerFinder } from "./cornerFinder-pBdrMPZ0.js";
17
+ import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CCYpepZs.js";
18
+ import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-8cjvJO_y.js";
19
+ import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-CYdit3jH.js";
20
20
  // src/2d/lib/stitching.ts
21
21
  /**
22
22
  * Group a flat list of curves into connected chains by matching endpoints.
@@ -211,6 +211,7 @@ var BrepErrorCode = {
211
211
  ZERO_OFFSET: "ZERO_OFFSET",
212
212
  NO_EDGES: "NO_EDGES",
213
213
  NO_FACES: "NO_FACES",
214
+ FACE_NOT_IN_SHAPE: "FACE_NOT_IN_SHAPE",
214
215
  DRAFT_NO_FACES: "DRAFT_NO_FACES",
215
216
  DRAFT_INVALID_ANGLE: "DRAFT_INVALID_ANGLE",
216
217
  DRAFT_NOT_3D: "DRAFT_NOT_3D",
@@ -236,6 +237,8 @@ var BrepErrorCode = {
236
237
  SHELL_INVALID_RESULT: "SHELL_INVALID_RESULT",
237
238
  OFFSET_NOT_3D: "OFFSET_NOT_3D",
238
239
  OFFSET_INVALID_RESULT: "OFFSET_INVALID_RESULT",
240
+ REMOVE_FACES_FAILED: "REMOVE_FACES_FAILED",
241
+ REMOVE_FACES_INCOMPLETE: "REMOVE_FACES_INCOMPLETE",
239
242
  NULL_SHAPE: "NULL_SHAPE",
240
243
  NO_WRAPPER: "NO_WRAPPER",
241
244
  WELD_NOT_SHELL: "WELD_NOT_SHELL",
@@ -211,6 +211,7 @@ var BrepErrorCode = {
211
211
  ZERO_OFFSET: "ZERO_OFFSET",
212
212
  NO_EDGES: "NO_EDGES",
213
213
  NO_FACES: "NO_FACES",
214
+ FACE_NOT_IN_SHAPE: "FACE_NOT_IN_SHAPE",
214
215
  DRAFT_NO_FACES: "DRAFT_NO_FACES",
215
216
  DRAFT_INVALID_ANGLE: "DRAFT_INVALID_ANGLE",
216
217
  DRAFT_NOT_3D: "DRAFT_NOT_3D",
@@ -236,6 +237,8 @@ var BrepErrorCode = {
236
237
  SHELL_INVALID_RESULT: "SHELL_INVALID_RESULT",
237
238
  OFFSET_NOT_3D: "OFFSET_NOT_3D",
238
239
  OFFSET_INVALID_RESULT: "OFFSET_INVALID_RESULT",
240
+ REMOVE_FACES_FAILED: "REMOVE_FACES_FAILED",
241
+ REMOVE_FACES_INCOMPLETE: "REMOVE_FACES_INCOMPLETE",
239
242
  NULL_SHAPE: "NULL_SHAPE",
240
243
  NO_WRAPPER: "NO_WRAPPER",
241
244
  WELD_NOT_SHELL: "WELD_NOT_SHELL",
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-D_anqiRe.cjs");
2
- const require_errors = require("./errors-GVyCnpi0.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ENxs8uu2.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-ExC90tMw.cjs");
2
+ const require_errors = require("./errors-B9r_Dzs1.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-DYbxJ2Hy.cjs");
4
4
  const require_types = require("./types-CjF9Rofr.cjs");
5
5
  // src/topology/cast.ts
6
6
  var TOPO_ENUM = {
@@ -1,6 +1,6 @@
1
- import { i as castShape, q as getKernel } from "./shapeTypes-CgbUTASh.js";
2
- import { E as ok, P as unwrap, g as err, l as typeCastError } from "./errors-vxP5FT8B.js";
3
- import { a as getCachedSurfaceType } from "./topologyQueryFns-6M_dbT1R.js";
1
+ import { i as castShape, q as getKernel } from "./shapeTypes-Cj2qNze9.js";
2
+ import { E as ok, P as unwrap, g as err, l as typeCastError } from "./errors-CUsZRWJ7.js";
3
+ import { a as getCachedSurfaceType } from "./topologyQueryFns-C552gkmo.js";
4
4
  import { r as toVec3 } from "./types-CKXsIm9-.js";
5
5
  // src/topology/cast.ts
6
6
  var TOPO_ENUM = {