brepjs 18.118.4 → 18.118.6

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 (78) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{adjacencyFns-CiDCunAU.cjs → adjacencyFns-CpyYIeax.cjs} +2 -2
  4. package/dist/{adjacencyFns-CxepMm7H.js → adjacencyFns-cSvOB_Ze.js} +2 -2
  5. package/dist/{blueprint-BIf01dZl.js → blueprint-BelsntLG.js} +5 -5
  6. package/dist/{blueprint-Bp_sSxx2.cjs → blueprint-CsxL1j9L.cjs} +5 -5
  7. package/dist/{blueprintFns-Dl_drDhd.js → blueprintFns-CAut3zwQ.js} +2 -2
  8. package/dist/{blueprintFns-Dc8amB5a.cjs → blueprintFns-DT6M5_k_.cjs} +2 -2
  9. package/dist/{blueprintSketcher-XiLc6fJ4.cjs → blueprintSketcher-CcZ_89uU.cjs} +3 -3
  10. package/dist/{blueprintSketcher-D-xSC6Mp.js → blueprintSketcher-x4mNzlv3.js} +3 -3
  11. package/dist/{boolean2D-BfKG5Wio.cjs → boolean2D-BLigmyIR.cjs} +4 -4
  12. package/dist/{boolean2D-BNjpYyZl.js → boolean2D-nGqoIZh4.js} +4 -4
  13. package/dist/brepjs.cjs +45 -39
  14. package/dist/brepjs.js +45 -39
  15. package/dist/{cameraFns-ClE0QcuX.cjs → cameraFns-C3Xf7-I7.cjs} +2 -2
  16. package/dist/{cameraFns-DyMKpFHq.js → cameraFns-DmLhH9Pr.js} +2 -2
  17. package/dist/core/shapeTypes.d.ts +8 -0
  18. package/dist/core.cjs +1 -1
  19. package/dist/core.js +1 -1
  20. package/dist/{cornerFinder-DFswCdwf.js → cornerFinder-BC2eaeW9.js} +1 -1
  21. package/dist/{cornerFinder-CINnfCPc.cjs → cornerFinder-C6IpCea0.cjs} +1 -1
  22. package/dist/{curveFns-BYcTyyb7.js → curveFns-Ca020OZW.js} +14 -8
  23. package/dist/{curveFns-YvH970hp.cjs → curveFns-D7d2foN-.cjs} +14 -8
  24. package/dist/{drawFns-DkhqDgS5.js → drawFns-BW8OeXum.js} +12 -12
  25. package/dist/{drawFns-CG3ksr6q.cjs → drawFns-Bz_jLHCa.cjs} +12 -12
  26. package/dist/{faceFns-DnLXDWq2.cjs → faceFns-mARULpM7.cjs} +2 -2
  27. package/dist/{faceFns-CpOAl1K5.js → faceFns-yqC4gDSc.js} +2 -2
  28. package/dist/{healingFns-BIcPeCM9.cjs → healingFns-CV0xzJi6.cjs} +38 -29
  29. package/dist/{healingFns-BP0xjoIs.js → healingFns-D7uMxSHi.js} +38 -29
  30. package/dist/{helpers-Beq_ugyN.cjs → helpers-CEi8kRzi.cjs} +6 -6
  31. package/dist/{helpers-BVkEnH5n.js → helpers-DcWisIKC.js} +6 -6
  32. package/dist/{importFns-DPQmk2TS.js → importFns-B8II-pj-.js} +2 -2
  33. package/dist/{importFns-BZYgEOu-.cjs → importFns-DUniB9wl.cjs} +2 -2
  34. package/dist/io.cjs +2 -2
  35. package/dist/io.js +2 -2
  36. package/dist/{loftFns-NauDWzek.js → loftFns-B4ZJYoX2.js} +72 -31
  37. package/dist/{loftFns-CZC_NH_h.cjs → loftFns-oCtEZjxa.cjs} +72 -31
  38. package/dist/{measureFns-C4BxD4kC.cjs → measureFns-BD9_NT7u.cjs} +3 -3
  39. package/dist/{measureFns-BLmLZr0K.js → measureFns-CLWtxkh6.js} +3 -3
  40. package/dist/measurement.cjs +1 -1
  41. package/dist/measurement.js +1 -1
  42. package/dist/{meshFns-BK5O_pJ9.js → meshFns-Cd2zde-k.js} +3 -3
  43. package/dist/{meshFns-BoF6g1go.cjs → meshFns-Cim4Y6vz.cjs} +3 -3
  44. package/dist/operations.cjs +2 -2
  45. package/dist/operations.js +2 -2
  46. package/dist/{primitiveFns-DOyyz54-.cjs → primitiveFns-CHrrghJM.cjs} +4 -4
  47. package/dist/{primitiveFns-DJUXtN6W.js → primitiveFns-DplUMAxU.js} +4 -4
  48. package/dist/projection.cjs +1 -1
  49. package/dist/projection.js +1 -1
  50. package/dist/query.cjs +2 -2
  51. package/dist/query.js +2 -2
  52. package/dist/{refResolveFns-DL1zXF8u.js → refResolveFns-CJ58ZH-S.js} +6 -6
  53. package/dist/{refResolveFns-DbTYd_Nj.cjs → refResolveFns-TdGhQZUP.cjs} +6 -6
  54. package/dist/{shapeFns-DED4C70_.js → shapeFns-DjiKoRrd.js} +2 -2
  55. package/dist/{shapeFns-DxAhtxFP.cjs → shapeFns-DxbbLpGg.cjs} +2 -2
  56. package/dist/shapeRef.cjs +1 -1
  57. package/dist/shapeRef.js +1 -1
  58. package/dist/{shapeTypes-Ca76Bklg.cjs → shapeTypes-BbUKvpaO.cjs} +17 -0
  59. package/dist/{shapeTypes-BguzpBK0.js → shapeTypes-Osdj5kMc.js} +12 -1
  60. package/dist/sketching.cjs +3 -3
  61. package/dist/sketching.js +3 -3
  62. package/dist/{solidBuilders-_8mqPO7I.js → solidBuilders-B8hK3cdi.js} +16 -23
  63. package/dist/{solidBuilders-yyfZ2Q-7.cjs → solidBuilders-BASH2bih.cjs} +16 -23
  64. package/dist/{surfaceBuilders-CT__o6Be.js → surfaceBuilders-CMUEd1bK.js} +2 -2
  65. package/dist/{surfaceBuilders-De2XKidK.cjs → surfaceBuilders-DDfVCOVg.cjs} +2 -2
  66. package/dist/text.cjs +2 -2
  67. package/dist/text.js +2 -2
  68. package/dist/{textBlueprints-D9l3v-f3.js → textBlueprints-BKwbX7PZ.js} +7 -7
  69. package/dist/{textBlueprints-C17PPSzH.cjs → textBlueprints-DdfGcHik.cjs} +7 -7
  70. package/dist/{textMetrics-GSAxEtaJ.js → textMetrics-DIVTsrHQ.js} +1 -1
  71. package/dist/{textMetrics-BwQ7TD47.cjs → textMetrics-DNF4ITX5.cjs} +1 -1
  72. package/dist/{threadFns-DOqhI5OK.js → threadFns-DbqB5RMq.js} +10 -10
  73. package/dist/{threadFns-Bu2c-lu_.cjs → threadFns-DetQVphJ.cjs} +10 -10
  74. package/dist/topology.cjs +9 -9
  75. package/dist/topology.js +9 -9
  76. package/dist/{topologyQueryFns-B1QAiZVI.cjs → topologyQueryFns-Cf2j9Zt0.cjs} +1 -1
  77. package/dist/{topologyQueryFns-Dl2F-2d9.js → topologyQueryFns-DzOSCj5J.js} +1 -1
  78. package/package.json +1 -1
package/dist/2d.cjs CHANGED
@@ -1,11 +1,11 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-B1QAiZVI.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-XiLc6fJ4.cjs");
6
- const require_blueprint = require("./blueprint-Bp_sSxx2.cjs");
7
- const require_boolean2D = require("./boolean2D-BfKG5Wio.cjs");
8
- const require_blueprintFns = require("./blueprintFns-Dc8amB5a.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-Cf2j9Zt0.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-CcZ_89uU.cjs");
6
+ const require_blueprint = require("./blueprint-CsxL1j9L.cjs");
7
+ const require_boolean2D = require("./boolean2D-BLigmyIR.cjs");
8
+ const require_blueprintFns = require("./blueprintFns-DT6M5_k_.cjs");
9
9
  //#region src/core/curve2dHandle.ts
10
10
  /**
11
11
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
package/dist/2d.js CHANGED
@@ -1,10 +1,10 @@
1
- import { U as createKernelHandle, o as createEdge, tt as getKernel2D } from "./shapeTypes-BguzpBK0.js";
1
+ import { W as createKernelHandle, nt as getKernel2D, o as createEdge } from "./shapeTypes-Osdj5kMc.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
3
- import { w as kernelCallRaw } from "./topologyQueryFns-Dl2F-2d9.js";
4
- import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-D-xSC6Mp.js";
5
- import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-BIf01dZl.js";
6
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BNjpYyZl.js";
7
- 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-Dl_drDhd.js";
3
+ import { w as kernelCallRaw } from "./topologyQueryFns-DzOSCj5J.js";
4
+ import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-x4mNzlv3.js";
5
+ import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-BelsntLG.js";
6
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-nGqoIZh4.js";
7
+ 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-CAut3zwQ.js";
8
8
  //#region src/core/curve2dHandle.ts
9
9
  /**
10
10
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
@@ -1,5 +1,5 @@
1
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
2
- const require_topologyQueryFns = require("./topologyQueryFns-B1QAiZVI.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
2
+ const require_topologyQueryFns = require("./topologyQueryFns-Cf2j9Zt0.cjs");
3
3
  const require_constants = require("./constants-BOVyEYGH.cjs");
4
4
  //#region src/topology/adjacencyFns.ts
5
5
  /**
@@ -1,5 +1,5 @@
1
- import { et as getKernel, i as castShapeWithKnownType } from "./shapeTypes-BguzpBK0.js";
2
- import { l as getOrCreateCache } from "./topologyQueryFns-Dl2F-2d9.js";
1
+ import { i as castShapeWithKnownType, tt as getKernel } from "./shapeTypes-Osdj5kMc.js";
2
+ import { l as getOrCreateCache } from "./topologyQueryFns-DzOSCj5J.js";
3
3
  import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
4
4
  //#region src/topology/adjacencyFns.ts
5
5
  /**
@@ -1,14 +1,14 @@
1
- import { J as unregisterFromCleanup, K as registerForCleanup, d as createWire, et as getKernel, o as createEdge, tt as getKernel2D } from "./shapeTypes-BguzpBK0.js";
1
+ import { Y as unregisterFromCleanup, d as createWire, nt as getKernel2D, o as createEdge, q as registerForCleanup, tt as getKernel } from "./shapeTypes-Osdj5kMc.js";
2
2
  import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
3
3
  import { A as ok, R as unwrap, b as err, d as validationError, h as bug, n as computationError } from "./errors-DNWJsfVU.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
5
  import { r as toVec3 } from "./types-D24Y27N0.js";
6
6
  import { r as makePlane } from "./planeOps-DSjjtrjg.js";
7
- import { _ as cast, h as uvCoordinates, i as faceGeomType, m as uvBounds, r as faceCenter } from "./faceFns-CpOAl1K5.js";
8
- import { p as getOrientation } from "./curveFns-BYcTyyb7.js";
7
+ import { _ as cast, h as uvCoordinates, i as faceGeomType, m as uvBounds, r as faceCenter } from "./faceFns-yqC4gDSc.js";
8
+ import { p as getOrientation } from "./curveFns-Ca020OZW.js";
9
9
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
10
- import { r as makeFace } from "./surfaceBuilders-CT__o6Be.js";
11
- import { _ as samePoint, b as subtract2d, l as add2d, o as normalize2d, p as distance2d, t as getSingleFace, v as scalarMultiply2d } from "./helpers-BVkEnH5n.js";
10
+ import { r as makeFace } from "./surfaceBuilders-CMUEd1bK.js";
11
+ import { _ as samePoint, b as subtract2d, l as add2d, o as normalize2d, p as distance2d, t as getSingleFace, v as scalarMultiply2d } from "./helpers-DcWisIKC.js";
12
12
  //#region src/2d/lib/definitions.ts
13
13
  /** Type guard that checks whether a value is a `Point2D`. */
14
14
  function isPoint2D(point) {
@@ -1,14 +1,14 @@
1
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
2
2
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_types = require("./types-KjA8tY4Y.cjs");
6
6
  const require_planeOps = require("./planeOps-BA4HfgQu.cjs");
7
- const require_faceFns = require("./faceFns-DnLXDWq2.cjs");
8
- const require_curveFns = require("./curveFns-YvH970hp.cjs");
7
+ const require_faceFns = require("./faceFns-mARULpM7.cjs");
8
+ const require_curveFns = require("./curveFns-D7d2foN-.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
10
- const require_surfaceBuilders = require("./surfaceBuilders-De2XKidK.cjs");
11
- const require_helpers = require("./helpers-Beq_ugyN.cjs");
10
+ const require_surfaceBuilders = require("./surfaceBuilders-DDfVCOVg.cjs");
11
+ const require_helpers = require("./helpers-CEi8kRzi.cjs");
12
12
  //#region src/2d/lib/definitions.ts
13
13
  /** Type guard that checks whether a value is a `Point2D`. */
14
14
  function isPoint2D(point) {
@@ -1,6 +1,6 @@
1
1
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
2
- import { i as CompoundBlueprint } from "./blueprintSketcher-D-xSC6Mp.js";
3
- import { t as Blueprint } from "./blueprint-BIf01dZl.js";
2
+ import { i as CompoundBlueprint } from "./blueprintSketcher-x4mNzlv3.js";
3
+ import { t as Blueprint } from "./blueprint-BelsntLG.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-CXJtc4I7.cjs");
2
- const require_blueprintSketcher = require("./blueprintSketcher-XiLc6fJ4.cjs");
3
- const require_blueprint = require("./blueprint-Bp_sSxx2.cjs");
2
+ const require_blueprintSketcher = require("./blueprintSketcher-CcZ_89uU.cjs");
3
+ const require_blueprint = require("./blueprint-CsxL1j9L.cjs");
4
4
  //#region src/2d/lib/curve2dFns.ts
5
5
  /**
6
6
  * Return a reversed copy of the curve (non-mutating).
@@ -1,10 +1,10 @@
1
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
2
2
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
6
- const require_helpers = require("./helpers-Beq_ugyN.cjs");
7
- const require_blueprint = require("./blueprint-Bp_sSxx2.cjs");
6
+ const require_helpers = require("./helpers-CEi8kRzi.cjs");
7
+ const require_blueprint = require("./blueprint-CsxL1j9L.cjs");
8
8
  //#region node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -1,10 +1,10 @@
1
- import { et as getKernel, tt as getKernel2D } from "./shapeTypes-BguzpBK0.js";
1
+ import { nt as getKernel2D, tt as getKernel } from "./shapeTypes-Osdj5kMc.js";
2
2
  import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
3
3
  import { A as ok, R as unwrap, T as isOk, b as err, h as bug, n as computationError, s as safeIndex } from "./errors-DNWJsfVU.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
5
  import { t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
6
- import { _ as samePoint, 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, v as scalarMultiply2d } from "./helpers-BVkEnH5n.js";
7
- import { _ as Curve2D, 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-BIf01dZl.js";
6
+ import { _ as samePoint, 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, v as scalarMultiply2d } from "./helpers-DcWisIKC.js";
7
+ import { _ as Curve2D, 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-BelsntLG.js";
8
8
  //#region node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -1,10 +1,10 @@
1
1
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
4
- const require_surfaceBuilders = require("./surfaceBuilders-De2XKidK.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-XiLc6fJ4.cjs");
6
- const require_helpers = require("./helpers-Beq_ugyN.cjs");
7
- const require_blueprint = require("./blueprint-Bp_sSxx2.cjs");
4
+ const require_surfaceBuilders = require("./surfaceBuilders-DDfVCOVg.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-CcZ_89uU.cjs");
6
+ const require_helpers = require("./helpers-CEi8kRzi.cjs");
7
+ const require_blueprint = require("./blueprint-CsxL1j9L.cjs");
8
8
  //#region src/2d/blueprints/cannedBlueprints.ts
9
9
  /**
10
10
  * Create a regular polygon blueprint inscribed in a circle of the given radius.
@@ -1,10 +1,10 @@
1
1
  import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
2
2
  import { R as unwrap, h as bug, s as safeIndex } from "./errors-DNWJsfVU.js";
3
3
  import { r as lastOrThrow } from "./arrayAccess-DrUGPADn.js";
4
- import { v as zip } from "./surfaceBuilders-CT__o6Be.js";
5
- import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-D-xSC6Mp.js";
6
- import { _ as samePoint$1, b as subtract2d, f as crossProduct2d, s as PRECISION_INTERSECTION } from "./helpers-BVkEnH5n.js";
7
- import { b as removeDuplicatePoints, f as make2dSegmentCurve, t as Blueprint } from "./blueprint-BIf01dZl.js";
4
+ import { v as zip } from "./surfaceBuilders-CMUEd1bK.js";
5
+ import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-x4mNzlv3.js";
6
+ import { _ as samePoint$1, b as subtract2d, f as crossProduct2d, s as PRECISION_INTERSECTION } from "./helpers-DcWisIKC.js";
7
+ import { b as removeDuplicatePoints, f as make2dSegmentCurve, t as Blueprint } from "./blueprint-BelsntLG.js";
8
8
  //#region src/2d/blueprints/cannedBlueprints.ts
9
9
  /**
10
10
  * Create a regular polygon blueprint inscribed in a circle of the given radius.
package/dist/brepjs.cjs CHANGED
@@ -1,38 +1,38 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_textBlueprints = require("./textBlueprints-C17PPSzH.cjs");
3
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
2
+ const require_textBlueprints = require("./textBlueprints-DdfGcHik.cjs");
3
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
4
4
  const require_occtWasmAdapter = require("./occtWasmAdapter-Bj9dX3Lb.cjs");
5
5
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
6
6
  const require_errors = require("./errors-CXJtc4I7.cjs");
7
- const require_topologyQueryFns = require("./topologyQueryFns-B1QAiZVI.cjs");
7
+ const require_topologyQueryFns = require("./topologyQueryFns-Cf2j9Zt0.cjs");
8
8
  const require_constants = require("./constants-BOVyEYGH.cjs");
9
9
  const require_types = require("./types-KjA8tY4Y.cjs");
10
10
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
11
11
  const require_planeOps = require("./planeOps-BA4HfgQu.cjs");
12
- const require_faceFns = require("./faceFns-DnLXDWq2.cjs");
13
- const require_shapeFns = require("./shapeFns-DxAhtxFP.cjs");
14
- const require_curveFns = require("./curveFns-YvH970hp.cjs");
15
- const require_meshFns = require("./meshFns-BoF6g1go.cjs");
12
+ const require_faceFns = require("./faceFns-mARULpM7.cjs");
13
+ const require_shapeFns = require("./shapeFns-DxbbLpGg.cjs");
14
+ const require_curveFns = require("./curveFns-D7d2foN-.cjs");
15
+ const require_meshFns = require("./meshFns-Cim4Y6vz.cjs");
16
16
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
17
- const require_surfaceBuilders = require("./surfaceBuilders-De2XKidK.cjs");
18
- const require_solidBuilders = require("./solidBuilders-yyfZ2Q-7.cjs");
19
- const require_healingFns = require("./healingFns-BIcPeCM9.cjs");
20
- const require_threadFns = require("./threadFns-Bu2c-lu_.cjs");
21
- const require_blueprintSketcher = require("./blueprintSketcher-XiLc6fJ4.cjs");
22
- const require_helpers = require("./helpers-Beq_ugyN.cjs");
23
- const require_drawFns = require("./drawFns-CG3ksr6q.cjs");
24
- const require_measureFns = require("./measureFns-C4BxD4kC.cjs");
25
- const require_cornerFinder = require("./cornerFinder-CINnfCPc.cjs");
26
- const require_boolean2D = require("./boolean2D-BfKG5Wio.cjs");
27
- const require_blueprintFns = require("./blueprintFns-Dc8amB5a.cjs");
28
- const require_importFns = require("./importFns-BZYgEOu-.cjs");
29
- const require_loftFns = require("./loftFns-CZC_NH_h.cjs");
30
- const require_cameraFns = require("./cameraFns-ClE0QcuX.cjs");
31
- const require_textMetrics = require("./textMetrics-BwQ7TD47.cjs");
32
- const require_adjacencyFns = require("./adjacencyFns-CiDCunAU.cjs");
33
- const require_refResolveFns = require("./refResolveFns-DbTYd_Nj.cjs");
17
+ const require_surfaceBuilders = require("./surfaceBuilders-DDfVCOVg.cjs");
18
+ const require_solidBuilders = require("./solidBuilders-BASH2bih.cjs");
19
+ const require_healingFns = require("./healingFns-CV0xzJi6.cjs");
20
+ const require_threadFns = require("./threadFns-DetQVphJ.cjs");
21
+ const require_blueprintSketcher = require("./blueprintSketcher-CcZ_89uU.cjs");
22
+ const require_helpers = require("./helpers-CEi8kRzi.cjs");
23
+ const require_drawFns = require("./drawFns-Bz_jLHCa.cjs");
24
+ const require_measureFns = require("./measureFns-BD9_NT7u.cjs");
25
+ const require_cornerFinder = require("./cornerFinder-C6IpCea0.cjs");
26
+ const require_boolean2D = require("./boolean2D-BLigmyIR.cjs");
27
+ const require_blueprintFns = require("./blueprintFns-DT6M5_k_.cjs");
28
+ const require_importFns = require("./importFns-DUniB9wl.cjs");
29
+ const require_loftFns = require("./loftFns-oCtEZjxa.cjs");
30
+ const require_cameraFns = require("./cameraFns-C3Xf7-I7.cjs");
31
+ const require_textMetrics = require("./textMetrics-DNF4ITX5.cjs");
32
+ const require_adjacencyFns = require("./adjacencyFns-CpyYIeax.cjs");
33
+ const require_refResolveFns = require("./refResolveFns-TdGhQZUP.cjs");
34
34
  const require_workerPool = require("./workerPool-D30NsiIW.cjs");
35
- const require_primitiveFns = require("./primitiveFns-DOyyz54-.cjs");
35
+ const require_primitiveFns = require("./primitiveFns-CHrrghJM.cjs");
36
36
  //#region src/topology/shapeBooleans.ts
37
37
  var BOPAlgo_GlueShift = 1;
38
38
  var BOPAlgo_GlueFull = 2;
@@ -1228,9 +1228,9 @@ function buildBSplineSurface(heights, rows, cols, dx, dy, scaleZ) {
1228
1228
  z
1229
1229
  ]);
1230
1230
  }
1231
- const shape = require_shapeTypes.castShape(require_shapeTypes.getKernel().bsplineSurface(points, rows, cols));
1231
+ const shape = require_shapeTypes.castResultShape(require_shapeTypes.getKernel().bsplineSurface(points, rows, cols));
1232
1232
  if (require_shapeTypes.isFace(shape)) return require_errors.ok(shape);
1233
- shape[Symbol.dispose]();
1233
+ require_shapeTypes.disposeResultShape(shape);
1234
1234
  return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.SURFACE_FAILED, "B-spline surface did not produce a face"));
1235
1235
  }
1236
1236
  /** Build a triangulated surface by sewing triangular faces. */
@@ -1245,10 +1245,10 @@ function buildTriangulatedSurface(heights, rows, cols, dx, dy, scaleZ) {
1245
1245
  z
1246
1246
  ]);
1247
1247
  }
1248
- const shape = require_shapeTypes.castShape(require_shapeTypes.getKernel().triangulatedSurface(points, rows, cols));
1248
+ const shape = require_shapeTypes.castResultShape(require_shapeTypes.getKernel().triangulatedSurface(points, rows, cols));
1249
1249
  if (require_shapeTypes.isFace(shape)) return require_errors.ok(shape);
1250
1250
  if (require_shapeTypes.isShell(shape)) return require_errors.ok(shape);
1251
- shape[Symbol.dispose]();
1251
+ require_shapeTypes.disposeResultShape(shape);
1252
1252
  return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.SURFACE_FAILED, "surfaceFromGrid: unexpected shape type from sewing"));
1253
1253
  }
1254
1254
  /**
@@ -1350,8 +1350,11 @@ function hull(shapes, options = {}) {
1350
1350
  try {
1351
1351
  const kernel = require_shapeTypes.getKernel();
1352
1352
  const ocShapes = shapes.map((s) => s.wrapped);
1353
- const cast = require_shapeTypes.castShape(kernel.hull(ocShapes, tolerance));
1354
- if (!require_shapeTypes.isSolid(cast)) return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.HULL_NOT_3D, "Hull result is not a solid; input may be degenerate"));
1353
+ const cast = require_shapeTypes.castResultShape(kernel.hull(ocShapes, tolerance));
1354
+ if (!require_shapeTypes.isSolid(cast)) {
1355
+ require_shapeTypes.disposeResultShape(cast);
1356
+ return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.HULL_NOT_3D, "Hull result is not a solid; input may be degenerate"));
1357
+ }
1355
1358
  return require_errors.ok(cast);
1356
1359
  } catch (e) {
1357
1360
  const raw = e instanceof Error ? e.message : String(e);
@@ -1386,8 +1389,11 @@ function convexHull(points) {
1386
1389
  y: p[1],
1387
1390
  z: p[2]
1388
1391
  }));
1389
- const cast = require_shapeTypes.castShape(kernel.hullFromPoints(objPoints, .1));
1390
- if (!require_shapeTypes.isSolid(cast)) return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.HULL_NOT_3D, "convexHull result is not a solid; points may be coplanar"));
1392
+ const cast = require_shapeTypes.castResultShape(kernel.hullFromPoints(objPoints, .1));
1393
+ if (!require_shapeTypes.isSolid(cast)) {
1394
+ require_shapeTypes.disposeResultShape(cast);
1395
+ return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.HULL_NOT_3D, "convexHull result is not a solid; points may be coplanar"));
1396
+ }
1391
1397
  return require_errors.ok(cast);
1392
1398
  } catch (e) {
1393
1399
  const raw = e instanceof Error ? e.message : String(e);
@@ -1418,9 +1424,9 @@ function detectSphere(shape) {
1418
1424
  }
1419
1425
  function minkowskiSphere(shape, radius, tolerance) {
1420
1426
  try {
1421
- const wrapped = require_shapeTypes.castShape(require_shapeTypes.getKernel().offset(shape.wrapped, radius, tolerance));
1427
+ const wrapped = require_shapeTypes.castResultShape(require_shapeTypes.getKernel().offset(shape.wrapped, radius, tolerance));
1422
1428
  if (!require_shapeTypes.isShape3D(wrapped)) {
1423
- wrapped[Symbol.dispose]();
1429
+ require_shapeTypes.disposeResultShape(wrapped);
1424
1430
  return require_errors.err(require_errors.typeCastError(require_errors.BrepErrorCode.MINKOWSKI_NOT_3D, "Minkowski sphere offset did not produce a 3D shape"));
1425
1431
  }
1426
1432
  return require_errors.ok(wrapped);
@@ -1457,9 +1463,9 @@ function minkowskiGeneral(shape, tool, tolerance) {
1457
1463
  });
1458
1464
  }
1459
1465
  }
1460
- const wrapped = require_shapeTypes.castShape(kernel.hullFromPoints(sumPoints, tolerance));
1466
+ const wrapped = require_shapeTypes.castResultShape(kernel.hullFromPoints(sumPoints, tolerance));
1461
1467
  if (!require_shapeTypes.isShape3D(wrapped)) {
1462
- wrapped[Symbol.dispose]();
1468
+ require_shapeTypes.disposeResultShape(wrapped);
1463
1469
  return require_errors.err(require_errors.typeCastError(require_errors.BrepErrorCode.MINKOWSKI_NOT_3D, "Minkowski hull did not produce a 3D shape"));
1464
1470
  }
1465
1471
  return require_errors.ok(wrapped);
@@ -1515,9 +1521,9 @@ function polyhedron(points, faces, options = {}) {
1515
1521
  y,
1516
1522
  z
1517
1523
  }));
1518
- const cast = require_shapeTypes.castShape(kernel.buildSolidFromFaces(ptObjs, triangles, tolerance));
1524
+ const cast = require_shapeTypes.castResultShape(kernel.buildSolidFromFaces(ptObjs, triangles, tolerance));
1519
1525
  if (!require_shapeTypes.isSolid(cast)) {
1520
- cast[Symbol.dispose]();
1526
+ require_shapeTypes.disposeResultShape(cast);
1521
1527
  return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.POLYHEDRON_FAILED, "Polyhedron did not produce a solid"));
1522
1528
  }
1523
1529
  return require_errors.ok(cast);
package/dist/brepjs.js CHANGED
@@ -1,37 +1,37 @@
1
- import { $ as getActiveKernelId, A as manifoldShell, B as is3D, C as closedWire, D as isPlanarFace, E as isOrientedFace, F as getShapeKind, G as isLive, H as createHandle, L as as2D, M as planarFace, N as planarWire, O as isPlanarWire, P as validSolid, Q as _usingCtx, R as as3D, S as isWire, T as isManifoldShell, U as createKernelHandle, V as DisposalScope, W as getDisposalStats, X as withScopeResult, Y as withScope, Z as withScopeResultAsync, _ as isShape1D, _t as resetPerformanceStats, a as createCompound, at as initFromManifold, b as isSolid, c as createShell, ct as registerKernel, d as createWire, dt as withQuality, et as getKernel, ft as withTier, g as isFace, gt as getPerformanceStats, h as isEdge, ht as BrepkitAdapter, it as init, j as orientedFace, k as isValidSolid, l as createSolid, lt as registerKernelTier, m as isCompound, mt as supportsProjection, n as castShape, nt as getKernelCapabilities, o as createEdge, ot as initFromOC, pt as supportsConstraintSketch, q as resetDisposalStats, r as castShape3D, rt as getKernelTier, s as createFace, st as prewarm, u as createVertex, ut as withKernel, v as isShape3D, vt as currentQuality, w as isClosedWire, x as isVertex, y as isShell, yt as qualityDeflection, z as is2D } from "./shapeTypes-BguzpBK0.js";
1
+ import { $ as _usingCtx, A as isValidSolid, B as is2D, C as isWire, D as isOrientedFace, E as isManifoldShell, F as validSolid, G as getDisposalStats, H as DisposalScope, I as getShapeKind, J as resetDisposalStats, K as isLive, M as orientedFace, N as planarFace, O as isPlanarFace, P as planarWire, Q as withScopeResultAsync, R as as2D, S as isVertex, T as isClosedWire, U as createHandle, V as is3D, W as createKernelHandle, X as withScope, Z as withScopeResult, _ as isFace, _t as getPerformanceStats, a as createCompound, at as init, b as isShell, bt as qualityDeflection, c as createShell, ct as prewarm, d as createWire, dt as withKernel, et as getActiveKernelId, ft as withQuality, g as isEdge, gt as BrepkitAdapter, h as isCompound, ht as supportsProjection, it as getKernelTier, j as manifoldShell, k as isPlanarWire, l as createSolid, lt as registerKernel, mt as supportsConstraintSketch, n as castShape, o as createEdge, ot as initFromManifold, p as disposeResultShape, pt as withTier, r as castShape3D, rt as getKernelCapabilities, s as createFace, st as initFromOC, t as castResultShape, tt as getKernel, u as createVertex, ut as registerKernelTier, v as isShape1D, vt as resetPerformanceStats, w as closedWire, x as isSolid, y as isShape3D, yt as currentQuality, z as as3D } from "./shapeTypes-Osdj5kMc.js";
2
2
  import { D as DEFAULT_CAPABILITIES, O as EXACT_BREP_CAPABILITIES, t as OcctWasmAdapter } from "./occtWasmAdapter-wBLknH8f.js";
3
3
  import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
4
4
  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-DNWJsfVU.js";
5
- import { C as kernelCall, S as vertexPosition, T as kernelCallScoped, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as kernelCallRaw, x as iterWires, y as iterSolids } from "./topologyQueryFns-Dl2F-2d9.js";
5
+ import { C as kernelCall, S as vertexPosition, T as kernelCallScoped, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as kernelCallRaw, x as iterWires, y as iterSolids } from "./topologyQueryFns-DzOSCj5J.js";
6
6
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
7
7
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N0.js";
8
8
  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-SKPRvPH-.js";
9
9
  import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-DSjjtrjg.js";
10
- import { S as shapeType, _ as cast, a as faceOrientation, b as isCompSolid, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, v as downcast, x as iterTopo, y as fromBREP } from "./faceFns-CpOAl1K5.js";
11
- import { A as tagFaces, C as colorShape, D as getFaceTags, E as findFacesByTag, M as setShapeOrigin, O as getTagMetadata, S as colorFaces, T as getShapeColor, a as isSameShape, c as applyMatrix$1, d as mirror$2, f as resize, g as translate$2, h as transformCopy$1, i as isEqualShape, j as getFaceOrigins, k as setTagMetadata, l as composeTransforms, m as scale$3, n as getHashCode, o as simplify$1, p as rotate$2, r as isEmpty$2, s as toBREP$1, t as clone$1, u as locate$1, v as hasAnyMetadata, w as getFaceColor, x as propagateMetadataThroughRelocation } from "./shapeFns-DED4C70_.js";
12
- import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-BYcTyyb7.js";
13
- import { a as meshEdges$1, c as meshMultiLOD, d as createMeshCache, i as mesh$1, l as buildMeshCacheKey, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as clearMeshCache } from "./meshFns-BK5O_pJ9.js";
10
+ import { S as shapeType, _ as cast, a as faceOrientation, b as isCompSolid, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, v as downcast, x as iterTopo, y as fromBREP } from "./faceFns-yqC4gDSc.js";
11
+ import { A as tagFaces, C as colorShape, D as getFaceTags, E as findFacesByTag, M as setShapeOrigin, O as getTagMetadata, S as colorFaces, T as getShapeColor, a as isSameShape, c as applyMatrix$1, d as mirror$2, f as resize, g as translate$2, h as transformCopy$1, i as isEqualShape, j as getFaceOrigins, k as setTagMetadata, l as composeTransforms, m as scale$3, n as getHashCode, o as simplify$1, p as rotate$2, r as isEmpty$2, s as toBREP$1, t as clone$1, u as locate$1, v as hasAnyMetadata, w as getFaceColor, x as propagateMetadataThroughRelocation } from "./shapeFns-DjiKoRrd.js";
12
+ import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-Ca020OZW.js";
13
+ import { a as meshEdges$1, c as meshMultiLOD, d as createMeshCache, i as mesh$1, l as buildMeshCacheKey, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as clearMeshCache } from "./meshFns-Cd2zde-k.js";
14
14
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
15
- import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-CT__o6Be.js";
16
- import { _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-_8mqPO7I.js";
17
- import { A as toBufferGeometryData, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, M as toLODGeometryData, N as toLODGeometryLevels, O as getNurbsSurfaceData, P as toLineGeometryData, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, c as isValid$1, d as draft$1, f as fillet$1, g as variableFillet, h as thicken$1, i as heal$1, j as toGroupedBufferGeometryData, k as chamferDistAngle, l as solidFromShell, m as shell$1, n as fixSelfIntersection, o as healSolid, p as offset$1, r as fixShape, s as healWire, t as autoHeal, u as chamfer$1, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution } from "./healingFns-BP0xjoIs.js";
18
- import { A as setJointValue, B as createAssemblyNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as quatMultiply, G as circularPattern, H as removeChild, I as quatRotate, J as exportAssemblySTEP, K as gridPattern, L as addChild, M as sphericalJoint, N as quatFromAxisAngle, O as prismaticJoint, P as quatFromTo, R as collectShapes, S as addJoint, T as jointTransform, U as updateNode, V as findNode, W as walkAssembly, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as linearPattern, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as countNodes } from "./threadFns-DOqhI5OK.js";
19
- import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-D-xSC6Mp.js";
20
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-BVkEnH5n.js";
21
- import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-DkhqDgS5.js";
22
- 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-BLmLZr0K.js";
23
- import { t as cornerFinder } from "./cornerFinder-DFswCdwf.js";
24
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BNjpYyZl.js";
25
- 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-Dl_drDhd.js";
26
- 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-DPQmk2TS.js";
27
- import { a as revolve$1, c as multiSectionSweep, d as twistExtrude, i as extrudeAll, l as supportExtrude, n as loftAll, o as complexExtrude, r as extrude$1, s as guidedSweep, t as loft$1, u as sweep$1 } from "./loftFns-NauDWzek.js";
28
- import { a as Sketch, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-D9l3v-f3.js";
29
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-DyMKpFHq.js";
30
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-GSAxEtaJ.js";
31
- import { a as sharedEdges, c as wiresOfFace, i as facesOfVertex, n as edgesOfFace, o as verticesOfEdge, r as facesOfEdge, s as verticesOfFace, t as adjacentFaces } from "./adjacencyFns-CxepMm7H.js";
32
- import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-DL1zXF8u.js";
15
+ import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-CMUEd1bK.js";
16
+ import { _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-B8hK3cdi.js";
17
+ import { A as toBufferGeometryData, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, M as toLODGeometryData, N as toLODGeometryLevels, O as getNurbsSurfaceData, P as toLineGeometryData, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, c as isValid$1, d as draft$1, f as fillet$1, g as variableFillet, h as thicken$1, i as heal$1, j as toGroupedBufferGeometryData, k as chamferDistAngle, l as solidFromShell, m as shell$1, n as fixSelfIntersection, o as healSolid, p as offset$1, r as fixShape, s as healWire, t as autoHeal, u as chamfer$1, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution } from "./healingFns-D7uMxSHi.js";
18
+ import { A as setJointValue, B as createAssemblyNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as quatMultiply, G as circularPattern, H as removeChild, I as quatRotate, J as exportAssemblySTEP, K as gridPattern, L as addChild, M as sphericalJoint, N as quatFromAxisAngle, O as prismaticJoint, P as quatFromTo, R as collectShapes, S as addJoint, T as jointTransform, U as updateNode, V as findNode, W as walkAssembly, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as linearPattern, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as countNodes } from "./threadFns-DbqB5RMq.js";
19
+ import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-x4mNzlv3.js";
20
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-DcWisIKC.js";
21
+ import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-BW8OeXum.js";
22
+ 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-CLWtxkh6.js";
23
+ import { t as cornerFinder } from "./cornerFinder-BC2eaeW9.js";
24
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-nGqoIZh4.js";
25
+ 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-CAut3zwQ.js";
26
+ 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-B8II-pj-.js";
27
+ import { a as revolve$1, c as multiSectionSweep, d as twistExtrude, i as extrudeAll, l as supportExtrude, n as loftAll, o as complexExtrude, r as extrude$1, s as guidedSweep, t as loft$1, u as sweep$1 } from "./loftFns-B4ZJYoX2.js";
28
+ import { a as Sketch, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-BKwbX7PZ.js";
29
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-DmLhH9Pr.js";
30
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-DIVTsrHQ.js";
31
+ import { a as sharedEdges, c as wiresOfFace, i as facesOfVertex, n as edgesOfFace, o as verticesOfEdge, r as facesOfEdge, s as verticesOfFace, t as adjacentFaces } from "./adjacencyFns-cSvOB_Ze.js";
32
+ import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-CJ58ZH-S.js";
33
33
  import { _ as isSuccessResponse, a as createWorkerClient, c as enqueueTask, d as rejectAll, f as isBatchRequest, g as isOperationRequest, h as isInitRequest, i as registerHandler, l as isEmpty$1, m as isErrorResponse, n as createOperationRegistry, o as createTaskQueue, p as isDisposeRequest, r as createWorkerHandler, s as dequeueTask, t as createWorkerPool, u as pendingCount } from "./workerPool-XcYX2UZ0.js";
34
- import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-DJUXtN6W.js";
34
+ import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-DplUMAxU.js";
35
35
  //#region \0rolldown/runtime.js
36
36
  var __defProp = Object.defineProperty;
37
37
  var __exportAll = (all, no_symbols) => {
@@ -1239,9 +1239,9 @@ function buildBSplineSurface(heights, rows, cols, dx, dy, scaleZ) {
1239
1239
  z
1240
1240
  ]);
1241
1241
  }
1242
- const shape = castShape(getKernel().bsplineSurface(points, rows, cols));
1242
+ const shape = castResultShape(getKernel().bsplineSurface(points, rows, cols));
1243
1243
  if (isFace(shape)) return ok(shape);
1244
- shape[Symbol.dispose]();
1244
+ disposeResultShape(shape);
1245
1245
  return err(kernelError(BrepErrorCode.SURFACE_FAILED, "B-spline surface did not produce a face"));
1246
1246
  }
1247
1247
  /** Build a triangulated surface by sewing triangular faces. */
@@ -1256,10 +1256,10 @@ function buildTriangulatedSurface(heights, rows, cols, dx, dy, scaleZ) {
1256
1256
  z
1257
1257
  ]);
1258
1258
  }
1259
- const shape = castShape(getKernel().triangulatedSurface(points, rows, cols));
1259
+ const shape = castResultShape(getKernel().triangulatedSurface(points, rows, cols));
1260
1260
  if (isFace(shape)) return ok(shape);
1261
1261
  if (isShell(shape)) return ok(shape);
1262
- shape[Symbol.dispose]();
1262
+ disposeResultShape(shape);
1263
1263
  return err(kernelError(BrepErrorCode.SURFACE_FAILED, "surfaceFromGrid: unexpected shape type from sewing"));
1264
1264
  }
1265
1265
  /**
@@ -1361,8 +1361,11 @@ function hull(shapes, options = {}) {
1361
1361
  try {
1362
1362
  const kernel = getKernel();
1363
1363
  const ocShapes = shapes.map((s) => s.wrapped);
1364
- const cast = castShape(kernel.hull(ocShapes, tolerance));
1365
- if (!isSolid(cast)) return err(kernelError(BrepErrorCode.HULL_NOT_3D, "Hull result is not a solid; input may be degenerate"));
1364
+ const cast = castResultShape(kernel.hull(ocShapes, tolerance));
1365
+ if (!isSolid(cast)) {
1366
+ disposeResultShape(cast);
1367
+ return err(kernelError(BrepErrorCode.HULL_NOT_3D, "Hull result is not a solid; input may be degenerate"));
1368
+ }
1366
1369
  return ok(cast);
1367
1370
  } catch (e) {
1368
1371
  const raw = e instanceof Error ? e.message : String(e);
@@ -1397,8 +1400,11 @@ function convexHull(points) {
1397
1400
  y: p[1],
1398
1401
  z: p[2]
1399
1402
  }));
1400
- const cast = castShape(kernel.hullFromPoints(objPoints, .1));
1401
- if (!isSolid(cast)) return err(kernelError(BrepErrorCode.HULL_NOT_3D, "convexHull result is not a solid; points may be coplanar"));
1403
+ const cast = castResultShape(kernel.hullFromPoints(objPoints, .1));
1404
+ if (!isSolid(cast)) {
1405
+ disposeResultShape(cast);
1406
+ return err(kernelError(BrepErrorCode.HULL_NOT_3D, "convexHull result is not a solid; points may be coplanar"));
1407
+ }
1402
1408
  return ok(cast);
1403
1409
  } catch (e) {
1404
1410
  const raw = e instanceof Error ? e.message : String(e);
@@ -1429,9 +1435,9 @@ function detectSphere(shape) {
1429
1435
  }
1430
1436
  function minkowskiSphere(shape, radius, tolerance) {
1431
1437
  try {
1432
- const wrapped = castShape(getKernel().offset(shape.wrapped, radius, tolerance));
1438
+ const wrapped = castResultShape(getKernel().offset(shape.wrapped, radius, tolerance));
1433
1439
  if (!isShape3D(wrapped)) {
1434
- wrapped[Symbol.dispose]();
1440
+ disposeResultShape(wrapped);
1435
1441
  return err(typeCastError(BrepErrorCode.MINKOWSKI_NOT_3D, "Minkowski sphere offset did not produce a 3D shape"));
1436
1442
  }
1437
1443
  return ok(wrapped);
@@ -1468,9 +1474,9 @@ function minkowskiGeneral(shape, tool, tolerance) {
1468
1474
  });
1469
1475
  }
1470
1476
  }
1471
- const wrapped = castShape(kernel.hullFromPoints(sumPoints, tolerance));
1477
+ const wrapped = castResultShape(kernel.hullFromPoints(sumPoints, tolerance));
1472
1478
  if (!isShape3D(wrapped)) {
1473
- wrapped[Symbol.dispose]();
1479
+ disposeResultShape(wrapped);
1474
1480
  return err(typeCastError(BrepErrorCode.MINKOWSKI_NOT_3D, "Minkowski hull did not produce a 3D shape"));
1475
1481
  }
1476
1482
  return ok(wrapped);
@@ -1526,9 +1532,9 @@ function polyhedron(points, faces, options = {}) {
1526
1532
  y,
1527
1533
  z
1528
1534
  }));
1529
- const cast = castShape(kernel.buildSolidFromFaces(ptObjs, triangles, tolerance));
1535
+ const cast = castResultShape(kernel.buildSolidFromFaces(ptObjs, triangles, tolerance));
1530
1536
  if (!isSolid(cast)) {
1531
- cast[Symbol.dispose]();
1537
+ disposeResultShape(cast);
1532
1538
  return err(kernelError(BrepErrorCode.POLYHEDRON_FAILED, "Polyhedron did not produce a solid"));
1533
1539
  }
1534
1540
  return ok(cast);
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-B1QAiZVI.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-Cf2j9Zt0.cjs");
4
4
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
5
5
  //#region src/projection/projectionPlanes.ts
6
6
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
@@ -1,6 +1,6 @@
1
- import { et as getKernel, n as castShape } from "./shapeTypes-BguzpBK0.js";
1
+ import { n as castShape, tt as getKernel } from "./shapeTypes-Osdj5kMc.js";
2
2
  import { A as ok, b as err, d as validationError } from "./errors-DNWJsfVU.js";
3
- import { s as getEdges } from "./topologyQueryFns-Dl2F-2d9.js";
3
+ import { s as getEdges } from "./topologyQueryFns-DzOSCj5J.js";
4
4
  import { c as vecLength, d as vecNormalize, g as vecSub, r as vecCross } from "./vecOps-SKPRvPH-.js";
5
5
  //#region src/projection/projectionPlanes.ts
6
6
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
@@ -150,6 +150,14 @@ export declare function castResultShape<D extends Dimension = '3D'>(ocShape: Ker
150
150
  * already freed above, and their `dispose()` has no double-free guard.
151
151
  */
152
152
  export declare function disposeTransientSubShape(handle: ShapeHandle, rawSource: KernelShape): void;
153
+ /**
154
+ * Release a branded shape on an error path — when a cast result is rejected and
155
+ * discarded. Releases the arena slot (occt-wasm's own `delete` is a no-op) then
156
+ * runs the handle's disposer for stats/registry. Safe on every kernel: the
157
+ * disposer's `delete()` runs inside createHandle's try/catch, so the repeated
158
+ * free after `getKernel().dispose()` is swallowed.
159
+ */
160
+ export declare function disposeResultShape(handle: ShapeHandle): void;
153
161
  /**
154
162
  * Fast-path cast when the shape type is already known (e.g., from iterShapes).
155
163
  * Skips the shapeType() WASM call — only performs downcast + branded handle creation.
package/dist/core.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-Ca76Bklg.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-BbUKvpaO.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_types = require("./types-KjA8tY4Y.cjs");
package/dist/core.js CHANGED
@@ -1,4 +1,4 @@
1
- import { A as manifoldShell, B as is3D, C as closedWire, E as isOrientedFace, F as getShapeKind, G as isLive, H as createHandle, P as validSolid, S as isWire, T as isManifoldShell, U as createKernelHandle, V as DisposalScope, X as withScopeResult, Y as withScope, Z as withScopeResultAsync, _ as isShape1D, b as isSolid, g as isFace, h as isEdge, j as orientedFace, k as isValidSolid, m as isCompound, n as castShape, v as isShape3D, w as isClosedWire, x as isVertex, y as isShell, z as is2D } from "./shapeTypes-BguzpBK0.js";
1
+ import { A as isValidSolid, B as is2D, C as isWire, D as isOrientedFace, E as isManifoldShell, F as validSolid, H as DisposalScope, I as getShapeKind, K as isLive, M as orientedFace, Q as withScopeResultAsync, S as isVertex, T as isClosedWire, U as createHandle, V as is3D, W as createKernelHandle, X as withScope, Z as withScopeResult, _ as isFace, b as isShell, g as isEdge, h as isCompound, j as manifoldShell, n as castShape, v as isShape1D, w as closedWire, x as isSolid, y as isShape3D } from "./shapeTypes-Osdj5kMc.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-DNWJsfVU.js";
3
3
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
4
4
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N0.js";
@@ -1,6 +1,6 @@
1
1
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
2
2
  import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
3
- import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-BVkEnH5n.js";
3
+ import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-DcWisIKC.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-BOVyEYGH.cjs");
2
2
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
3
- const require_helpers = require("./helpers-Beq_ugyN.cjs");
3
+ const require_helpers = require("./helpers-CEi8kRzi.cjs");
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {