brepjs 15.0.0 → 15.1.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 (65) hide show
  1. package/dist/2d.cjs +5 -5
  2. package/dist/2d.js +5 -5
  3. package/dist/{blueprint-BwRTIyAw.cjs → blueprint-BDF8rib4.cjs} +5 -5
  4. package/dist/{blueprint-CdYlEXfG.js → blueprint-CdMqXek1.js} +5 -5
  5. package/dist/{blueprintFns-C0Gt-QwZ.js → blueprintFns-B7GolI1a.js} +2 -2
  6. package/dist/{blueprintFns-QcO6rMWf.cjs → blueprintFns-CLI0mux-.cjs} +2 -2
  7. package/dist/{boolean2D-s-HOkw92.js → boolean2D-Bu3KrOlT.js} +7 -7
  8. package/dist/{boolean2D-DFrT2rWk.cjs → boolean2D-DMAsKPoo.cjs} +7 -7
  9. package/dist/{booleanFns-DdTELRHb.cjs → booleanFns-C472V0Sm.cjs} +4 -4
  10. package/dist/{booleanFns-Ddyxzgk3.js → booleanFns-CR3IY5va.js} +4 -4
  11. package/dist/brepjs.cjs +19 -19
  12. package/dist/brepjs.js +19 -19
  13. package/dist/core.cjs +1 -1
  14. package/dist/core.js +1 -1
  15. package/dist/{cornerFinder-CJBB9kPk.js → cornerFinder-BLBo4oHd.js} +1 -1
  16. package/dist/{cornerFinder-CadmkLDu.cjs → cornerFinder-DyUqDhIU.cjs} +1 -1
  17. package/dist/{curveFns-CPSCjYH3.js → curveFns-CV6DI8jq.js} +1 -1
  18. package/dist/{curveFns-DT7CUf9U.cjs → curveFns-DWpMOhOV.cjs} +1 -1
  19. package/dist/{drawFns-DH5jLoyU.cjs → drawFns-CUiiX2yc.cjs} +10 -10
  20. package/dist/{drawFns-vCEEAtD-.js → drawFns-Dz1jwgGZ.js} +10 -10
  21. package/dist/{extrudeFns-jteSdJFq.js → extrudeFns-4Hm-WcY4.js} +1 -1
  22. package/dist/{extrudeFns-YkniZn07.cjs → extrudeFns-JOxAl83q.cjs} +1 -1
  23. package/dist/{faceFns-DSijGggR.js → faceFns-CgZkH8CF.js} +1 -1
  24. package/dist/{faceFns-CIH50WZl.cjs → faceFns-D8QJP3vb.cjs} +1 -1
  25. package/dist/{helpers-CnNA3o2i.js → helpers-61Y8pgA0.js} +5 -5
  26. package/dist/{helpers-Cs9_5_7k.cjs → helpers-D5bYCpgU.cjs} +5 -5
  27. package/dist/{historyFns-BGemHNyO.js → historyFns-CnWrEmUv.js} +4 -4
  28. package/dist/{historyFns-DJ7D_HBa.cjs → historyFns-DWt5eWkG.cjs} +4 -4
  29. package/dist/{importFns-BIq-kGc4.cjs → importFns-2TMgq7v6.cjs} +2 -2
  30. package/dist/{importFns-CXrs2hUZ.js → importFns-pJ9MJSM8.js} +2 -2
  31. package/dist/io.cjs +2 -2
  32. package/dist/io.js +2 -2
  33. package/dist/kernel/index.d.ts +4 -1
  34. package/dist/kernel/index.d.ts.map +1 -1
  35. package/dist/kernel/types.d.ts +2 -2
  36. package/dist/kernel/types.d.ts.map +1 -1
  37. package/dist/{measureFns-2OfU2IUx.js → measureFns-BJ1RwaEy.js} +2 -2
  38. package/dist/{measureFns-DlgliEOF.cjs → measureFns-D1d-Mse-.cjs} +2 -2
  39. package/dist/measurement.cjs +1 -1
  40. package/dist/measurement.js +1 -1
  41. package/dist/{meshFns-BcsZJiab.cjs → meshFns-D-OEoW44.cjs} +2 -2
  42. package/dist/{meshFns-DQDOBWkh.js → meshFns-TIFuRKbl.js} +2 -2
  43. package/dist/operations.cjs +2 -2
  44. package/dist/operations.js +2 -2
  45. package/dist/{primitiveFns-DtFo8I-j.cjs → primitiveFns-BpcNoT8D.cjs} +5 -5
  46. package/dist/{primitiveFns-C8sf6m4x.js → primitiveFns-Dzr5Yvj4.js} +5 -5
  47. package/dist/query.cjs +2 -2
  48. package/dist/query.js +2 -2
  49. package/dist/{shapeFns-DT-NmO_I.cjs → shapeFns-3V4wx4kL.cjs} +2 -2
  50. package/dist/{shapeFns-CquegVyR.js → shapeFns-BkRHmSZx.js} +2 -2
  51. package/dist/shapeRef.cjs +1 -1
  52. package/dist/shapeRef.js +1 -1
  53. package/dist/{shapeRefFns-CAOYPDJJ.js → shapeRefFns-BL10SPQL.js} +3 -3
  54. package/dist/{shapeRefFns-CfrgfNYR.cjs → shapeRefFns-Bq0urO7C.cjs} +3 -3
  55. package/dist/{shapeTypes-BUaUj4tR.cjs → shapeTypes-XxRsftAx.cjs} +5 -3
  56. package/dist/{shapeTypes-DRUSTY2w.js → shapeTypes-rrjqRE5T.js} +5 -3
  57. package/dist/sketching.cjs +2 -2
  58. package/dist/sketching.js +2 -2
  59. package/dist/{solidBuilders-DW5yg81T.cjs → solidBuilders-BWx9wv6o.cjs} +2 -2
  60. package/dist/{solidBuilders-D2n0c6sb.js → solidBuilders-DiYJf1n6.js} +2 -2
  61. package/dist/{surfaceBuilders-C78Cywl6.js → surfaceBuilders-CPm8aKiP.js} +2 -2
  62. package/dist/{surfaceBuilders-C31J-3Bz.cjs → surfaceBuilders-sx6UX4UL.cjs} +2 -2
  63. package/dist/topology.cjs +6 -6
  64. package/dist/topology.js +6 -6
  65. package/package.json +6 -2
package/dist/2d.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
3
3
  const require_errors = require("./errors-9zQcQK1H.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");
4
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
5
+ const require_boolean2D = require("./boolean2D-DMAsKPoo.cjs");
6
+ const require_blueprint = require("./blueprint-BDF8rib4.cjs");
7
+ const require_blueprintFns = require("./blueprintFns-CLI0mux-.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 { B as createKernelHandle, Z as getKernel2D, a as createEdge } from "./shapeTypes-DRUSTY2w.js";
1
+ import { B as createKernelHandle, Z as getKernel2D, a as createEdge } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-C-cgQA3w.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";
3
+ import { z as kernelCallRaw } from "./faceFns-CgZkH8CF.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-Bu3KrOlT.js";
5
+ import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-CdMqXek1.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-B7GolI1a.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-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.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-DT7CUf9U.cjs");
7
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
8
8
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
9
- const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
10
- const require_helpers = require("./helpers-Cs9_5_7k.cjs");
9
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
10
+ const require_helpers = require("./helpers-D5bYCpgU.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 { G as unregisterFromCleanup, U as registerForCleanup, X as getKernel, Z as getKernel2D, a as createEdge, u as createWire } from "./shapeTypes-DRUSTY2w.js";
1
+ import { G as unregisterFromCleanup, U as registerForCleanup, X as getKernel, Z as getKernel2D, a as createEdge, u as createWire } from "./shapeTypes-rrjqRE5T.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 { M as cast, m as uvCoordinates, n as faceCenter, p as uvBounds, r as faceGeomType } from "./faceFns-DSijGggR.js";
3
+ import { M as cast, m as uvCoordinates, n as faceCenter, p as uvBounds, r as faceGeomType } from "./faceFns-CgZkH8CF.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-CPSCjYH3.js";
7
+ import { f as getOrientation } from "./curveFns-CV6DI8jq.js";
8
8
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.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";
9
+ import { r as makeFace } from "./surfaceBuilders-CPm8aKiP.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-61Y8pgA0.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-s-HOkw92.js";
3
- import { t as Blueprint } from "./blueprint-CdYlEXfG.js";
2
+ import { g as CompoundBlueprint } from "./boolean2D-Bu3KrOlT.js";
3
+ import { t as Blueprint } from "./blueprint-CdMqXek1.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-DFrT2rWk.cjs");
3
- const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
2
+ const require_boolean2D = require("./boolean2D-DMAsKPoo.cjs");
3
+ const require_blueprint = require("./blueprint-BDF8rib4.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
- 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";
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-rrjqRE5T.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 { N as downcast, c as normalAt, p as uvBounds, u as pointOnSurface } from "./faceFns-DSijGggR.js";
3
+ import { N as downcast, c as normalAt, p as uvBounds, u as pointOnSurface } from "./faceFns-CgZkH8CF.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-CPSCjYH3.js";
8
+ import { c as curveStartPoint, l as curveTangentAt, r as curveIsClosed } from "./curveFns-CV6DI8jq.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-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";
10
+ import { _ as zip, i as makeNewFaceWithinFace, r as makeFace, s as assembleWire } from "./surfaceBuilders-CPm8aKiP.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-61Y8pgA0.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-CdMqXek1.js";
13
+ import { c as sweep, i as complexExtrude, l as twistExtrude, r as revolve, t as extrude } from "./extrudeFns-4Hm-WcY4.js";
14
14
  //#region node_modules/flatqueue/index.js
15
15
  /** @template T */
16
16
  var FlatQueue = class {
@@ -1,16 +1,16 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.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-DT7CUf9U.cjs");
8
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-CmulMesb.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");
10
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
11
+ const require_helpers = require("./helpers-D5bYCpgU.cjs");
12
+ const require_blueprint = require("./blueprint-BDF8rib4.cjs");
13
+ const require_extrudeFns = require("./extrudeFns-JOxAl83q.cjs");
14
14
  //#region node_modules/flatqueue/index.js
15
15
  /** @template T */
16
16
  var FlatQueue = class {
@@ -1,12 +1,12 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
6
6
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
7
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
7
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
8
8
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
9
- const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
9
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
10
10
  //#region src/topology/booleanFns.ts
11
11
  /**
12
12
  * Boolean and compound operations — functional replacements for _3DShape boolean methods.
@@ -1,12 +1,12 @@
1
- import { X as getKernel, h as isShape3D, t as castShape } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, h as isShape3D, t as castShape } from "./shapeTypes-rrjqRE5T.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
+ import { C as getVertices, b as getEdges, w as getWires } from "./faceFns-CgZkH8CF.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-B9u763C3.js";
5
5
  import { h as vecScale, t as vecAdd } from "./vecOps-D9etjPgV.js";
6
6
  import { o as resolvePlane } from "./planeOps-gTOEarV2.js";
7
- import { _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-CquegVyR.js";
7
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-BkRHmSZx.js";
8
8
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
9
- import { r as makeFace } from "./surfaceBuilders-C78Cywl6.js";
9
+ import { r as makeFace } from "./surfaceBuilders-CPm8aKiP.js";
10
10
  //#region src/topology/booleanFns.ts
11
11
  /**
12
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-DH5jLoyU.cjs");
3
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
+ const require_drawFns = require("./drawFns-CUiiX2yc.cjs");
3
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
4
4
  const require_errors = require("./errors-9zQcQK1H.cjs");
5
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
5
+ const require_faceFns = require("./faceFns-D8QJP3vb.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-DT-NmO_I.cjs");
11
- const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
12
- const require_meshFns = require("./meshFns-BcsZJiab.cjs");
10
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
11
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
12
+ const require_meshFns = require("./meshFns-D-OEoW44.cjs");
13
13
  const require_arrayAccess = require("./arrayAccess-CmulMesb.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");
14
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
15
+ const require_booleanFns = require("./booleanFns-C472V0Sm.cjs");
16
+ const require_primitiveFns = require("./primitiveFns-BpcNoT8D.cjs");
17
+ const require_historyFns = require("./historyFns-DWt5eWkG.cjs");
18
+ const require_boolean2D = require("./boolean2D-DMAsKPoo.cjs");
19
+ const require_helpers = require("./helpers-D5bYCpgU.cjs");
20
+ const require_solidBuilders = require("./solidBuilders-BWx9wv6o.cjs");
21
+ const require_measureFns = require("./measureFns-D1d-Mse-.cjs");
22
+ const require_cornerFinder = require("./cornerFinder-DyUqDhIU.cjs");
23
+ const require_extrudeFns = require("./extrudeFns-JOxAl83q.cjs");
24
+ const require_blueprintFns = require("./blueprintFns-CLI0mux-.cjs");
25
+ const require_importFns = require("./importFns-2TMgq7v6.cjs");
26
+ const require_shapeRefFns = require("./shapeRefFns-Bq0urO7C.cjs");
27
27
  const require_workerHandler = require("./workerHandler-C-7OUJsa.cjs");
28
28
  //#region src/topology/shapeBooleans.ts
29
29
  var BOPAlgo_GlueShift = 1;
package/dist/brepjs.js CHANGED
@@ -1,28 +1,28 @@
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";
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-rrjqRE5T.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 { 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";
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-CgZkH8CF.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 { 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";
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-BkRHmSZx.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-CV6DI8jq.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-TIFuRKbl.js";
11
11
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.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";
12
+ import { n as fill, r as makeFace } from "./surfaceBuilders-CPm8aKiP.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-CR3IY5va.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-Dzr5Yvj4.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-CnWrEmUv.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-Bu3KrOlT.js";
17
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-61Y8pgA0.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-Dz1jwgGZ.js";
19
+ import { r as makeCylinder } from "./solidBuilders-DiYJf1n6.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-BJ1RwaEy.js";
21
+ import { t as cornerFinder } from "./cornerFinder-BLBo4oHd.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-4Hm-WcY4.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-B7GolI1a.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-pJ9MJSM8.js";
25
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-BL10SPQL.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;
package/dist/core.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.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");
package/dist/core.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, R as DisposalScope, S as isManifoldShell, _ as isSolid, b as closedWire, d as isCompound, f as isEdge, g as isShell, h as isShape3D, j as validSolid, m as isShape1D, p as isFace, q as withScopeResult, t as castShape, v as isVertex, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DRUSTY2w.js";
1
+ import { B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, R as DisposalScope, S as isManifoldShell, _ as isSolid, b as closedWire, d as isCompound, f as isEdge, g as isShell, h as isShape3D, j as validSolid, m as isShape1D, p as isFace, q as withScopeResult, t as castShape, v as isVertex, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, B as unwrapOr, E as map, I as tryCatch, L as tryCatchAsync, O as mapErr, R as unwrap, T as isOk, V as unwrapOrElse, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-C-cgQA3w.js";
3
3
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-B9u763C3.js";
4
4
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BWBlwp6w.js";
@@ -1,6 +1,6 @@
1
1
  import { t as DEG2RAD } from "./constants-B9u763C3.js";
2
2
  import { n as getAtOrThrow } from "./arrayAccess-xxcB3YNq.js";
3
- import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-CnNA3o2i.js";
3
+ import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-61Y8pgA0.js";
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,6 +1,6 @@
1
1
  const require_constants = require("./constants-unWN8k4c.cjs");
2
2
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
3
- const require_helpers = require("./helpers-Cs9_5_7k.cjs");
3
+ const require_helpers = require("./helpers-D5bYCpgU.cjs");
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,4 +1,4 @@
1
- import { X as getKernel, f as isEdge, t as castShape, y as isWire } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, f as isEdge, t as castShape, y as isWire } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, l as typeCastError } from "./errors-C-cgQA3w.js";
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
@@ -29,22 +29,22 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
29
29
  enumerable: true
30
30
  }) : target, mod));
31
31
  //#endregion
32
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
32
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
33
33
  const require_errors = require("./errors-9zQcQK1H.cjs");
34
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
34
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
35
35
  const require_constants = require("./constants-unWN8k4c.cjs");
36
36
  const require_types = require("./types-BjDcsS7l.cjs");
37
37
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
38
38
  const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
39
- const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
39
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
40
40
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
41
- const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
42
- const require_boolean2D = require("./boolean2D-DFrT2rWk.cjs");
43
- const require_helpers = require("./helpers-Cs9_5_7k.cjs");
44
- const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
45
- const require_solidBuilders = require("./solidBuilders-DW5yg81T.cjs");
46
- const require_cornerFinder = require("./cornerFinder-CadmkLDu.cjs");
47
- const require_extrudeFns = require("./extrudeFns-YkniZn07.cjs");
41
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
42
+ const require_boolean2D = require("./boolean2D-DMAsKPoo.cjs");
43
+ const require_helpers = require("./helpers-D5bYCpgU.cjs");
44
+ const require_blueprint = require("./blueprint-BDF8rib4.cjs");
45
+ const require_solidBuilders = require("./solidBuilders-BWx9wv6o.cjs");
46
+ const require_cornerFinder = require("./cornerFinder-DyUqDhIU.cjs");
47
+ const require_extrudeFns = require("./extrudeFns-JOxAl83q.cjs");
48
48
  let opentype_js = require("opentype.js");
49
49
  opentype_js = __toESM(opentype_js);
50
50
  //#region src/2d/lib/stitching.ts
@@ -1,19 +1,19 @@
1
- import { R as DisposalScope, X as getKernel, Y as _usingCtx, o as createFace, p as isFace, t as castShape, u as createWire } from "./shapeTypes-DRUSTY2w.js";
1
+ import { R as DisposalScope, X as getKernel, Y as _usingCtx, o as createFace, p as isFace, t as castShape, u as createWire } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, R as unwrap, T as isOk, b as err, d as validationError, h as bug, r as ioError, s as safeIndex, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
3
- import { M as cast, N as downcast, b as getEdges, c as normalAt, l as outerWire, n as faceCenter } from "./faceFns-DSijGggR.js";
3
+ import { M as cast, N as downcast, b as getEdges, c as normalAt, l as outerWire, n as faceCenter } from "./faceFns-CgZkH8CF.js";
4
4
  import { t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  import { r as toVec3 } from "./types-BWBlwp6w.js";
6
6
  import { c as vecLength, d as vecNormalize, g as vecSub, h as vecScale, m as vecRotate, r as vecCross } from "./vecOps-D9etjPgV.js";
7
7
  import { a as planeToWorld, o as resolvePlane } from "./planeOps-gTOEarV2.js";
8
- import { m as offsetWire2D } from "./curveFns-CPSCjYH3.js";
8
+ import { m as offsetWire2D } from "./curveFns-CV6DI8jq.js";
9
9
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-xxcB3YNq.js";
10
- import { c as makeBSplineApproximation, d as makeEllipse, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-C78Cywl6.js";
11
- import { S as Flatbush, _ as Blueprints, b as make2dOffset, c as roundedRectangleBlueprint, f as Sketch, g as CompoundBlueprint, h as organiseBlueprints, l as BaseSketcher2d, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D, u as BlueprintSketcher, v as chamferCurves, x as intersectCurves, y as filletCurves } from "./boolean2D-s-HOkw92.js";
12
- import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-CnNA3o2i.js";
13
- import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-CdYlEXfG.js";
14
- import { o as makeSolid, t as makeCompound } from "./solidBuilders-D2n0c6sb.js";
15
- import { t as cornerFinder } from "./cornerFinder-CJBB9kPk.js";
16
- import { i as complexExtrude, l as twistExtrude, r as revolve, t as extrude } from "./extrudeFns-jteSdJFq.js";
10
+ import { c as makeBSplineApproximation, d as makeEllipse, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-CPm8aKiP.js";
11
+ import { S as Flatbush, _ as Blueprints, b as make2dOffset, c as roundedRectangleBlueprint, f as Sketch, g as CompoundBlueprint, h as organiseBlueprints, l as BaseSketcher2d, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D, u as BlueprintSketcher, v as chamferCurves, x as intersectCurves, y as filletCurves } from "./boolean2D-Bu3KrOlT.js";
12
+ import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-61Y8pgA0.js";
13
+ import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-CdMqXek1.js";
14
+ import { o as makeSolid, t as makeCompound } from "./solidBuilders-DiYJf1n6.js";
15
+ import { t as cornerFinder } from "./cornerFinder-BLBo4oHd.js";
16
+ import { i as complexExtrude, l as twistExtrude, r as revolve, t as extrude } from "./extrudeFns-4Hm-WcY4.js";
17
17
  import opentype from "opentype.js";
18
18
  //#region src/2d/lib/stitching.ts
19
19
  /**
@@ -1,4 +1,4 @@
1
- import { X as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-rrjqRE5T.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 } from "./errors-C-cgQA3w.js";
3
3
  import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-D9etjPgV.js";
4
4
  //#region src/operations/extrudeUtils.ts
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
3
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
4
4
  //#region src/operations/extrudeUtils.ts
@@ -1,4 +1,4 @@
1
- import { N as getOrQueryType, R as DisposalScope, X as getKernel, Y as _usingCtx, r as castShapeWithKnownType, t as castShape } from "./shapeTypes-DRUSTY2w.js";
1
+ import { N as getOrQueryType, R as DisposalScope, X as getKernel, Y as _usingCtx, r as castShapeWithKnownType, t as castShape } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, R as unwrap, b as err, f as getSuggestionForCode, l as typeCastError, p as translateKernelError } from "./errors-C-cgQA3w.js";
3
3
  import { r as toVec3 } from "./types-BWBlwp6w.js";
4
4
  //#region src/core/kernelCall.ts
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
3
  const require_types = require("./types-BjDcsS7l.cjs");
4
4
  //#region src/core/kernelCall.ts
@@ -1,11 +1,11 @@
1
- import { X as getKernel, p as isFace } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, p as isFace } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, R as unwrap, T as isOk, b as err, h as bug, o as queryError } from "./errors-C-cgQA3w.js";
3
- import { C as getVertices, b as getEdges, c as normalAt, o as getSurfaceType, w as getWires, x as getFaces } from "./faceFns-DSijGggR.js";
3
+ import { C as getVertices, b as getEdges, c as normalAt, o as getSurfaceType, w as getWires, x as getFaces } from "./faceFns-CgZkH8CF.js";
4
4
  import { t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  import { a as vecDot, d as vecNormalize } from "./vecOps-D9etjPgV.js";
6
- import { a as isSameShape, n as getHashCode } from "./shapeFns-CquegVyR.js";
7
- import { a as curveLength, d as getCurveType, r as curveIsClosed } from "./curveFns-CPSCjYH3.js";
8
- import { n as measureArea } from "./measureFns-2OfU2IUx.js";
6
+ import { a as isSameShape, n as getHashCode } from "./shapeFns-BkRHmSZx.js";
7
+ import { a as curveLength, d as getCurveType, r as curveIsClosed } from "./curveFns-CV6DI8jq.js";
8
+ import { n as measureArea } from "./measureFns-BJ1RwaEy.js";
9
9
  //#region src/utils/vec2d.ts
10
10
  /** Precision for curve intersection and parameter operations. */
11
11
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,11 +1,11 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
6
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
7
- const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
8
- const require_measureFns = require("./measureFns-DlgliEOF.cjs");
6
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
7
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
8
+ const require_measureFns = require("./measureFns-D1d-Mse-.cjs");
9
9
  //#region src/utils/vec2d.ts
10
10
  /** Precision for curve intersection and parameter operations. */
11
11
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,9 +1,9 @@
1
- import { B as createKernelHandle, X as getKernel, t as castShape } from "./shapeTypes-DRUSTY2w.js";
1
+ import { B as createKernelHandle, X as getKernel, t as castShape } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, d as validationError, n as computationError, r as ioError } from "./errors-C-cgQA3w.js";
3
- import { P as fromBREP } from "./faceFns-DSijGggR.js";
3
+ import { P as fromBREP } from "./faceFns-CgZkH8CF.js";
4
4
  import { d as vecNormalize, s as vecIsZero } from "./vecOps-D9etjPgV.js";
5
- import { s as toBREP } from "./shapeFns-CquegVyR.js";
6
- import { a as fuseAll } from "./booleanFns-Ddyxzgk3.js";
5
+ import { s as toBREP } from "./shapeFns-BkRHmSZx.js";
6
+ import { a as fuseAll } from "./booleanFns-CR3IY5va.js";
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  const require_vecOps = require("./vecOps-BXvBYIor.cjs");
5
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
6
- const require_booleanFns = require("./booleanFns-DdTELRHb.cjs");
5
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
6
+ const require_booleanFns = require("./booleanFns-C472V0Sm.cjs");
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
3
  const require_arrayAccess = require("./arrayAccess-CmulMesb.cjs");
4
- const require_blueprint = require("./blueprint-BwRTIyAw.cjs");
4
+ const require_blueprint = require("./blueprint-BDF8rib4.cjs");
5
5
  //#region src/io/objExportFns.ts
6
6
  /** Read a vec3 from a typed array at the given vertex index. */
7
7
  function vec3At(arr, i) {
@@ -1,7 +1,7 @@
1
- import { X as getKernel, t as castShape } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, t as castShape } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, r as ioError, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
3
3
  import { n as getAtOrThrow } from "./arrayAccess-xxcB3YNq.js";
4
- import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-CdYlEXfG.js";
4
+ import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-CdMqXek1.js";
5
5
  //#region src/io/objExportFns.ts
6
6
  /** Read a vec3 from a typed array at the given vertex index. */
7
7
  function vec3At(arr, i) {
package/dist/io.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_meshFns = require("./meshFns-BcsZJiab.cjs");
3
- const require_importFns = require("./importFns-BIq-kGc4.cjs");
2
+ const require_meshFns = require("./meshFns-D-OEoW44.cjs");
3
+ const require_importFns = require("./importFns-2TMgq7v6.cjs");
4
4
  exports.blueprintToDXF = require_importFns.blueprintToDXF;
5
5
  exports.exportDXF = require_importFns.exportDXF;
6
6
  exports.exportGlb = require_importFns.exportGlb;
package/dist/io.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-DQDOBWkh.js";
2
- import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-CXrs2hUZ.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-TIFuRKbl.js";
2
+ import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-pJ9MJSM8.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -47,11 +47,13 @@ export declare function prewarm(): void;
47
47
  * Auto-detect and initialise the best available kernel.
48
48
  *
49
49
  * Tries `brepjs-opencascade` (OCCT) first, then falls back to `brepkit-wasm`.
50
+ * For `occt-wasm`, use {@link registerKernel} directly (see tests/helpers/kernelInit.ts).
51
+ *
50
52
  * Idempotent — calling it again after a kernel is registered is a no-op that
51
53
  * returns the current kernel ID immediately.
52
54
  *
53
55
  * @returns The kernel ID that was initialised (`'occt'` or `'brepkit'`).
54
- * @throws If neither `brepjs-opencascade` nor `brepkit-wasm` can be imported.
56
+ * @throws If no kernel package can be imported.
55
57
  *
56
58
  * @example
57
59
  * ```ts
@@ -70,6 +72,7 @@ export { supportsKernel2D } from './kernel2dTypes.js';
70
72
  export type { Kernel2DCapability, Curve2dHandle, BBox2dHandle } from './kernel2dTypes.js';
71
73
  export { BrepkitAdapter } from './brepkit/brepkitAdapter.js';
72
74
  export type { BrepkitHandle } from './brepkit/helpers.js';
75
+ export type { OcctWasmHandle } from './occtWasm/occtWasmTypes.js';
73
76
  export { getPerformanceStats, resetPerformanceStats, perfTimer } from './perfStats.js';
74
77
  export type { PerfCategory, PerformanceStats } from './perfStats.js';
75
78
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kernel/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAsB7D;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAIvE;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa,CAcpD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,kBAAkB,CAM3E;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,EACrE,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,CAAC,GACV,CAAC,CAoBH;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAYnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAU9B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CA8B5C;AAED,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,cAAc,IAAI,mBAAmB,EACrC,cAAc,EACd,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC1E,YAAY,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAEnF,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE1F,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACvF,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kernel/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAsB7D;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAIvE;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa,CAcpD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,kBAAkB,CAM3E;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,EACrE,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,CAAC,GACV,CAAC,CAoBH;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAYnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAU9B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAoC5C;AAED,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,cAAc,IAAI,mBAAmB,EACrC,cAAc,EACd,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC1E,YAAY,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAEnF,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE1F,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,YAAY,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACvF,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -185,8 +185,8 @@ export interface ConstraintSketchCapability {
185
185
  }
186
186
  /** Capability for hidden-line removal (3D → 2D projection). */
187
187
  export interface ProjectionCapability {
188
- /** Project a 3D shape onto a 2D plane along a view direction. */
189
- projectShape(shape: KernelShape, viewOrigin: [number, number, number], viewDirection: [number, number, number]): {
188
+ /** Project 3D edges onto a 2D plane (hidden line removal). */
189
+ projectEdges(shape: KernelShape, cameraOrigin: [number, number, number], cameraDirection: [number, number, number], cameraXAxis?: [number, number, number]): {
190
190
  visible: {
191
191
  outline: KernelShape;
192
192
  smooth: KernelShape;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/kernel/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/kernel/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC;AAEjC;;;GAGG;AAEH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC;AAE9B;;;GAGG;AAEH,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC;AAE7B,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAAC;IAClD,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sHAAsH;IACtH,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACjC,oEAAoE;IACpE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,OAAO,GACP,WAAW,GACX,UAAU,CAAC;AAEf,2DAA2D;AAC3D,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,UAAU,GACV,MAAM,GACN,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,SAAS,GACT,YAAY,GACZ,WAAW,GACX,QAAQ,GACR,OAAO,CAAC;AAEZ,yBAAyB;AACzB,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAEhF,MAAM,WAAW,WAAW;IAC1B,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,WAAW,CAAC;IACvB,GAAG,EAAE,YAAY,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IAC1D,sFAAsF;IACtF,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IAC3D,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;CACpC;AAED,uDAAuD;AACvD,MAAM,WAAW,kBAAkB;IACjC,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,oDAAoD;IACpD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,kDAAkD;AAClD,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAC1C;AAED,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wCAAwC;AACxC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C;AAED,+CAA+C;AAC/C,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC;AAEzD,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,kCAAkC;AAClC,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAMD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D,mDAAmD;AACnD,MAAM,WAAW,0BAA0B;IACzC,uEAAuE;IACvE,SAAS,IAAI,MAAM,CAAC;IACpB,mEAAmE;IACnE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7E,uEAAuE;IACvE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1F,yEAAyE;IACzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAClE,mFAAmF;IACnF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9E,oFAAoF;IACpF,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;AAED,+DAA+D;AAC/D,MAAM,WAAW,oBAAoB;IACnC,8DAA8D;IAC9D,YAAY,CACV,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACtC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACzC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACrC;QACD,OAAO,EAAE;YAAE,OAAO,EAAE,WAAW,CAAC;YAAC,MAAM,EAAE,WAAW,CAAC;YAAC,KAAK,EAAE,WAAW,CAAA;SAAE,CAAC;QAC3E,MAAM,EAAE;YAAE,OAAO,EAAE,WAAW,CAAC;YAAC,MAAM,EAAE,WAAW,CAAC;YAAC,KAAK,EAAE,WAAW,CAAA;SAAE,CAAC;KAC3E,CAAC;CACH;AAMD,mEAAmE;AACnE,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,aAAa,GACpB,MAAM,IAAI,aAAa,GAAG,oBAAoB,CAEhD;AAED,iEAAiE;AACjE,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,aAAa,GACpB,MAAM,IAAI,aAAa,GAAG,0BAA0B,CAEtD"}
@@ -1,6 +1,6 @@
1
- import { X as getKernel } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
3
- import { p as uvBounds, z as kernelCallRaw } from "./faceFns-DSijGggR.js";
3
+ import { p as uvBounds, z as kernelCallRaw } from "./faceFns-CgZkH8CF.js";
4
4
  //#region src/measurement/measureCache.ts
5
5
  var cache = /* @__PURE__ */ new WeakMap();
6
6
  function getCachedMeasurement(shape, key) {
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  //#region src/measurement/measureCache.ts
5
5
  var cache = /* @__PURE__ */ new WeakMap();
6
6
  function getCachedMeasurement(shape, key) {
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_measureFns = require("./measureFns-DlgliEOF.cjs");
2
+ const require_measureFns = require("./measureFns-D1d-Mse-.cjs");
3
3
  exports.createDistanceQuery = require_measureFns.createDistanceQuery;
4
4
  exports.measureArea = require_measureFns.measureArea;
5
5
  exports.measureDistance = require_measureFns.measureDistance;
@@ -1,2 +1,2 @@
1
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-2OfU2IUx.js";
1
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-BJ1RwaEy.js";
2
2
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps };
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
3
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
4
4
  //#region src/topology/meshCache.ts
5
5
  /**
6
6
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,6 +1,6 @@
1
- import { X as getKernel } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, r as ioError } from "./errors-C-cgQA3w.js";
3
- import { O as getFaceOrigins } from "./shapeFns-CquegVyR.js";
3
+ import { O as getFaceOrigins } from "./shapeFns-BkRHmSZx.js";
4
4
  //#region src/topology/meshCache.ts
5
5
  /**
6
6
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_historyFns = require("./historyFns-DJ7D_HBa.cjs");
3
- const require_extrudeFns = require("./extrudeFns-YkniZn07.cjs");
2
+ const require_historyFns = require("./historyFns-DWt5eWkG.cjs");
3
+ const require_extrudeFns = require("./extrudeFns-JOxAl83q.cjs");
4
4
  exports.addChild = require_historyFns.addChild;
5
5
  exports.addStep = require_historyFns.addStep;
6
6
  exports.circularPattern = require_historyFns.circularPattern;
@@ -1,3 +1,3 @@
1
- import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-BGemHNyO.js";
2
- import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-jteSdJFq.js";
1
+ import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-CnWrEmUv.js";
2
+ import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-4Hm-WcY4.js";
3
3
  export { addChild, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, exportAssemblySTEP, findNode, findStep, getShape as getHistoryShape, gridPattern, linearPattern, modifyStep, registerOperation, registerShape, removeChild, replayFrom, replayHistory, stepCount, stepsFrom, supportExtrude, sweep, twistExtrude, undoLast, updateNode, walkAssembly };
@@ -1,10 +1,10 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
6
- const require_surfaceBuilders = require("./surfaceBuilders-C31J-3Bz.cjs");
7
- const require_solidBuilders = require("./solidBuilders-DW5yg81T.cjs");
5
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
6
+ const require_surfaceBuilders = require("./surfaceBuilders-sx6UX4UL.cjs");
7
+ const require_solidBuilders = require("./solidBuilders-BWx9wv6o.cjs");
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
10
10
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,10 +1,10 @@
1
- import { X as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, v as andThen, w as isErr } from "./errors-C-cgQA3w.js";
3
- import { N as downcast, S as getOrCreateCache, b as getEdges, v as getCachedIsValid, w as getWires, x as getFaces } from "./faceFns-DSijGggR.js";
3
+ import { N as downcast, S as getOrCreateCache, b as getEdges, v as getCachedIsValid, w as getWires, x as getFaces } from "./faceFns-CgZkH8CF.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-B9u763C3.js";
5
- import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-CquegVyR.js";
6
- import { a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeEllipse, f as makeEllipseArc, g as makeThreePointArc, h as makeTangentArc, i as makeNewFaceWithinFace, l as makeBezierCurve, m as makeLine, o as makePolygon, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-C78Cywl6.js";
7
- import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-D2n0c6sb.js";
5
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-BkRHmSZx.js";
6
+ import { a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeEllipse, f as makeEllipseArc, g as makeThreePointArc, h as makeTangentArc, i as makeNewFaceWithinFace, l as makeBezierCurve, m as makeLine, o as makePolygon, p as makeHelix, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeCircle } from "./surfaceBuilders-CPm8aKiP.js";
7
+ import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-DiYJf1n6.js";
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
10
10
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-Cs9_5_7k.cjs");
3
- const require_cornerFinder = require("./cornerFinder-CadmkLDu.cjs");
2
+ const require_helpers = require("./helpers-D5bYCpgU.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-DyUqDhIU.cjs");
4
4
  exports.cornerFinder = require_cornerFinder.cornerFinder;
5
5
  exports.edgeFinder = require_helpers.edgeFinder;
6
6
  exports.faceFinder = require_helpers.faceFinder;
package/dist/query.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-CnNA3o2i.js";
2
- import { t as cornerFinder } from "./cornerFinder-CJBB9kPk.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-61Y8pgA0.js";
2
+ import { t as cornerFinder } from "./cornerFinder-BLBo4oHd.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  const require_constants = require("./constants-unWN8k4c.cjs");
5
5
  //#region src/topology/metadata/originTrackingFns.ts
6
6
  /**
@@ -1,6 +1,6 @@
1
- import { X as getKernel, t as castShape } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, t as castShape } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-C-cgQA3w.js";
3
- import { R as kernelCall, S as getOrCreateCache, _ as getCacheEntry, x as getFaces, z as kernelCallRaw } from "./faceFns-DSijGggR.js";
3
+ import { R as kernelCall, S as getOrCreateCache, _ as getCacheEntry, x as getFaces, z as kernelCallRaw } from "./faceFns-CgZkH8CF.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-B9u763C3.js";
5
5
  //#region src/topology/metadata/originTrackingFns.ts
6
6
  /**
package/dist/shapeRef.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeRefFns = require("./shapeRefFns-CfrgfNYR.cjs");
2
+ const require_shapeRefFns = require("./shapeRefFns-Bq0urO7C.cjs");
3
3
  exports.assignRoles = require_shapeRefFns.assignRoles;
4
4
  exports.captureHint = require_shapeRefFns.captureHint;
5
5
  exports.createRef = require_shapeRefFns.createRef;
package/dist/shapeRef.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-CAOYPDJJ.js";
1
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-BL10SPQL.js";
2
2
  export { assignRoles, captureHint, createRef, defaultScorer, resolveRef, updateRoles };
@@ -1,6 +1,6 @@
1
- import { c as normalAt, n as faceCenter, r as faceGeomType, x as getFaces } from "./faceFns-DSijGggR.js";
2
- import { n as getHashCode } from "./shapeFns-CquegVyR.js";
3
- import { n as measureArea } from "./measureFns-2OfU2IUx.js";
1
+ import { c as normalAt, n as faceCenter, r as faceGeomType, x as getFaces } from "./faceFns-CgZkH8CF.js";
2
+ import { n as getHashCode } from "./shapeFns-BkRHmSZx.js";
3
+ import { n as measureArea } from "./measureFns-BJ1RwaEy.js";
4
4
  //#region src/topology/shapeRef/scoring.ts
5
5
  /**
6
6
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -1,6 +1,6 @@
1
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
2
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
3
- const require_measureFns = require("./measureFns-DlgliEOF.cjs");
1
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
2
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
3
+ const require_measureFns = require("./measureFns-D1d-Mse-.cjs");
4
4
  //#region src/topology/shapeRef/scoring.ts
5
5
  /**
6
6
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -11197,7 +11197,7 @@ var BrepkitAdapter = class {
11197
11197
  //#region src/kernel/types.ts
11198
11198
  /** Check if the kernel supports hidden-line-removal projection. */
11199
11199
  function supportsProjection(kernel) {
11200
- return "projectShape" in kernel;
11200
+ return "projectEdges" in kernel;
11201
11201
  }
11202
11202
  /** Check if the kernel supports 2D constraint sketch solving. */
11203
11203
  function supportsConstraintSketch(kernel) {
@@ -11300,11 +11300,13 @@ function prewarm() {
11300
11300
  * Auto-detect and initialise the best available kernel.
11301
11301
  *
11302
11302
  * Tries `brepjs-opencascade` (OCCT) first, then falls back to `brepkit-wasm`.
11303
+ * For `occt-wasm`, use {@link registerKernel} directly (see tests/helpers/kernelInit.ts).
11304
+ *
11303
11305
  * Idempotent — calling it again after a kernel is registered is a no-op that
11304
11306
  * returns the current kernel ID immediately.
11305
11307
  *
11306
11308
  * @returns The kernel ID that was initialised (`'occt'` or `'brepkit'`).
11307
- * @throws If neither `brepjs-opencascade` nor `brepkit-wasm` can be imported.
11309
+ * @throws If no kernel package can be imported.
11308
11310
  *
11309
11311
  * @example
11310
11312
  * ```ts
@@ -11332,7 +11334,7 @@ async function init() {
11332
11334
  registerKernel("brepkit", new BrepkitAdapter(new bk.BrepKernel()));
11333
11335
  return "brepkit";
11334
11336
  } catch {}
11335
- throw new Error("brepjs: no kernel package found. Install one of:\n npm install brepjs-opencascade (recommended)\n npm install brepkit-wasm");
11337
+ throw new Error("brepjs: no kernel package found. Install one of:\n npm install brepjs-opencascade (recommended)\n npm install brepkit-wasm\n npm install occt-wasm (requires manual registerKernel)");
11336
11338
  }
11337
11339
  //#endregion
11338
11340
  //#region \0@oxc-project+runtime@0.120.0/helpers/usingCtx.js
@@ -11197,7 +11197,7 @@ var BrepkitAdapter = class {
11197
11197
  //#region src/kernel/types.ts
11198
11198
  /** Check if the kernel supports hidden-line-removal projection. */
11199
11199
  function supportsProjection(kernel) {
11200
- return "projectShape" in kernel;
11200
+ return "projectEdges" in kernel;
11201
11201
  }
11202
11202
  /** Check if the kernel supports 2D constraint sketch solving. */
11203
11203
  function supportsConstraintSketch(kernel) {
@@ -11300,11 +11300,13 @@ function prewarm() {
11300
11300
  * Auto-detect and initialise the best available kernel.
11301
11301
  *
11302
11302
  * Tries `brepjs-opencascade` (OCCT) first, then falls back to `brepkit-wasm`.
11303
+ * For `occt-wasm`, use {@link registerKernel} directly (see tests/helpers/kernelInit.ts).
11304
+ *
11303
11305
  * Idempotent — calling it again after a kernel is registered is a no-op that
11304
11306
  * returns the current kernel ID immediately.
11305
11307
  *
11306
11308
  * @returns The kernel ID that was initialised (`'occt'` or `'brepkit'`).
11307
- * @throws If neither `brepjs-opencascade` nor `brepkit-wasm` can be imported.
11309
+ * @throws If no kernel package can be imported.
11308
11310
  *
11309
11311
  * @example
11310
11312
  * ```ts
@@ -11332,7 +11334,7 @@ async function init() {
11332
11334
  registerKernel("brepkit", new BrepkitAdapter(new bk.BrepKernel()));
11333
11335
  return "brepkit";
11334
11336
  } catch {}
11335
- throw new Error("brepjs: no kernel package found. Install one of:\n npm install brepjs-opencascade (recommended)\n npm install brepkit-wasm");
11337
+ throw new Error("brepjs: no kernel package found. Install one of:\n npm install brepjs-opencascade (recommended)\n npm install brepkit-wasm\n npm install occt-wasm (requires manual registerKernel)");
11336
11338
  }
11337
11339
  //#endregion
11338
11340
  //#region \0@oxc-project+runtime@0.120.0/helpers/usingCtx.js
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_drawFns = require("./drawFns-DH5jLoyU.cjs");
3
- const require_boolean2D = require("./boolean2D-DFrT2rWk.cjs");
2
+ const require_drawFns = require("./drawFns-CUiiX2yc.cjs");
3
+ const require_boolean2D = require("./boolean2D-DMAsKPoo.cjs");
4
4
  //#region src/sketching.ts
5
5
  /**
6
6
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
package/dist/sketching.js CHANGED
@@ -1,5 +1,5 @@
1
- import { d as FaceSketcher, f as Sketch, l as BaseSketcher2d, u as BlueprintSketcher } from "./boolean2D-s-HOkw92.js";
2
- import { $ as sketchFaceOffset, A as DrawingPen, B as drawSingleCircle, F as drawParametricFunction, H as drawText, I as drawPointsInterpolation, L as drawPolysides, M as draw, N as drawCircle, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, V as drawSingleEllipse, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, at as Sketcher, 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, k as Drawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-vCEEAtD-.js";
1
+ import { d as FaceSketcher, f as Sketch, l as BaseSketcher2d, u as BlueprintSketcher } from "./boolean2D-Bu3KrOlT.js";
2
+ import { $ as sketchFaceOffset, A as DrawingPen, B as drawSingleCircle, F as drawParametricFunction, H as drawText, I as drawPointsInterpolation, L as drawPolysides, M as draw, N as drawCircle, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, V as drawSingleEllipse, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, at as Sketcher, 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, k as Drawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-Dz1jwgGZ.js";
3
3
  //#region src/sketching.ts
4
4
  /**
5
5
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  //#region src/topology/shapeUtils.ts
5
5
  /**
6
6
  * Shape assembly utilities — welding and sewing operations.
@@ -1,6 +1,6 @@
1
- import { X as getKernel, _ as isSolid, c as createSolid, g as isShell, h as isShape3D, i as createCompound, l as createVertex } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, _ as isSolid, c as createSolid, g as isShell, h as isShape3D, i as createCompound, l as createVertex } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, R as unwrap, b as err, l as typeCastError, v as andThen } from "./errors-C-cgQA3w.js";
3
- import { M as cast, N as downcast } from "./faceFns-DSijGggR.js";
3
+ import { M as cast, N as downcast } from "./faceFns-CgZkH8CF.js";
4
4
  //#region src/topology/shapeUtils.ts
5
5
  /**
6
6
  * Shape assembly utilities — welding and sewing operations.
@@ -1,6 +1,6 @@
1
- import { X as getKernel, a as createEdge, o as createFace, p as isFace, u as createWire, w as isPlanarFace } from "./shapeTypes-DRUSTY2w.js";
1
+ import { X as getKernel, a as createEdge, o as createFace, p as isFace, u as createWire, w as isPlanarFace } from "./shapeTypes-rrjqRE5T.js";
2
2
  import { A as ok, b as err, d as validationError, i as kernelError, v as andThen } from "./errors-C-cgQA3w.js";
3
- import { M as cast, l as outerWire } from "./faceFns-DSijGggR.js";
3
+ import { M as cast, l as outerWire } from "./faceFns-CgZkH8CF.js";
4
4
  //#region src/utils/range.ts
5
5
  /** Generate an array of integers `[0, 1, …, len - 1]`. */
6
6
  function range(len) {
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BUaUj4tR.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-XxRsftAx.cjs");
2
2
  const require_errors = require("./errors-9zQcQK1H.cjs");
3
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
4
4
  //#region src/utils/range.ts
5
5
  /** Generate an array of integers `[0, 1, …, len - 1]`. */
6
6
  function range(len) {
package/dist/topology.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_faceFns = require("./faceFns-CIH50WZl.cjs");
3
- const require_shapeFns = require("./shapeFns-DT-NmO_I.cjs");
4
- const require_curveFns = require("./curveFns-DT7CUf9U.cjs");
5
- const require_meshFns = require("./meshFns-BcsZJiab.cjs");
6
- const require_booleanFns = require("./booleanFns-DdTELRHb.cjs");
7
- const require_primitiveFns = require("./primitiveFns-DtFo8I-j.cjs");
2
+ const require_faceFns = require("./faceFns-D8QJP3vb.cjs");
3
+ const require_shapeFns = require("./shapeFns-3V4wx4kL.cjs");
4
+ const require_curveFns = require("./curveFns-DWpMOhOV.cjs");
5
+ const require_meshFns = require("./meshFns-D-OEoW44.cjs");
6
+ const require_booleanFns = require("./booleanFns-C472V0Sm.cjs");
7
+ const require_primitiveFns = require("./primitiveFns-BpcNoT8D.cjs");
8
8
  exports.addHoles = require_primitiveFns.addHoles;
9
9
  exports.adjacentFaces = require_primitiveFns.adjacentFaces;
10
10
  exports.approximateCurve = require_curveFns.approximateCurve;
package/dist/topology.js CHANGED
@@ -1,7 +1,7 @@
1
- import { A as vertexPosition, 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, T as invalidateShapeCache, a as flipFaceOrientation, b as getEdges, c as normalAt, d as projectPointOnFace, g as getBounds, 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 } from "./faceFns-DSijGggR.js";
2
- import { a as isSameShape, i as isEqualShape, n as getHashCode } from "./shapeFns-CquegVyR.js";
3
- 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";
4
- import { c as createMeshCache, n as exportSTEP, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-DQDOBWkh.js";
5
- import { a as fuseAll, r as cutAll } from "./booleanFns-Ddyxzgk3.js";
6
- import { $ as getNurbsSurfaceData, A as fixShape, C as threePointArc, D as wireLoop, E as wire, G as chamferWithEvolution, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, S as tangentArc, T as vertex, U as variableFillet, 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, k as fixSelfIntersection, l as ellipse, 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 } from "./primitiveFns-C8sf6m4x.js";
1
+ import { A as vertexPosition, 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, T as invalidateShapeCache, a as flipFaceOrientation, b as getEdges, c as normalAt, d as projectPointOnFace, g as getBounds, 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 } from "./faceFns-CgZkH8CF.js";
2
+ import { a as isSameShape, i as isEqualShape, n as getHashCode } from "./shapeFns-BkRHmSZx.js";
3
+ 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-CV6DI8jq.js";
4
+ import { c as createMeshCache, n as exportSTEP, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-TIFuRKbl.js";
5
+ import { a as fuseAll, r as cutAll } from "./booleanFns-CR3IY5va.js";
6
+ import { $ as getNurbsSurfaceData, A as fixShape, C as threePointArc, D as wireLoop, E as wire, G as chamferWithEvolution, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, S as tangentArc, T as vertex, U as variableFillet, 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, k as fixSelfIntersection, l as ellipse, 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 } from "./primitiveFns-Dzr5Yvj4.js";
7
7
  export { addHoles, adjacentFaces, approximateCurve, asTopo, autoHeal, bezier, box, bsplineApprox, cast, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkBoolean, circle, classifyPointOnFace, clearMeshCache, compound, cone, createMeshCache, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cutAll, cutWithEvolution, cylinder, fromBREP as deserializeShape, downcast, edgesOfFace, ellipse, ellipseArc, ellipsoid, exportIGES, exportSTEP, exportSTL, face, faceCenter, faceGeomType, faceOrientation, facesOfEdge, filledFace, filletWithEvolution, fixSelfIntersection, fixShape, flipFaceOrientation, flipOrientation, fuseAll, fuseWithEvolution, getBounds, getCurveType, getEdges, getFaces, getHashCode, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getSurfaceType, getVertices, getWires, healFace, healSolid, healWire, helix, innerWires, interpolateCurve, intersectWithEvolution, invalidateShapeCache, isCompSolid, isEqualShape, isSameShape, iterEdges, iterFaces, iterTopo, iterVertices, iterWires, line, normalAt, offsetFace, offsetWire2D, outerWire, pointOnSurface, polygon, positionOnCurve, projectPointOnFace, sewShells, shapeType, sharedEdges, shellWithEvolution, solid, solidFromShell, sphere, subFace, tangentArc, threePointArc, toBufferGeometryData, toGroupedBufferGeometryData, toLineGeometryData, torus, uvBounds, uvCoordinates, variableFillet, vertex, vertexPosition, verticesOfEdge, wire, wireLoop, wiresOfFace };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brepjs",
3
- "version": "15.0.0",
3
+ "version": "15.1.0",
4
4
  "description": "Web CAD library with pluggable geometry kernel",
5
5
  "keywords": [
6
6
  "cad",
@@ -227,7 +227,8 @@
227
227
  },
228
228
  "peerDependencies": {
229
229
  "brepjs-opencascade": "^0.5.1 || ^0.6.0 || ^0.7.0 || ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^0.14.0 || ^0.15.0",
230
- "brepkit-wasm": "^0.10.1 || ^1.0.0 || ^2.0.0"
230
+ "brepkit-wasm": "^0.10.1 || ^1.0.0 || ^2.0.0",
231
+ "occt-wasm": "^0.1.0"
231
232
  },
232
233
  "peerDependenciesMeta": {
233
234
  "brepjs-opencascade": {
@@ -235,6 +236,9 @@
235
236
  },
236
237
  "brepkit-wasm": {
237
238
  "optional": true
239
+ },
240
+ "occt-wasm": {
241
+ "optional": true
238
242
  }
239
243
  },
240
244
  "dependencies": {