brepjs 18.97.1 → 18.98.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 (55) hide show
  1. package/README.md +7 -7
  2. package/dist/2d.cjs +4 -4
  3. package/dist/2d.js +4 -4
  4. package/dist/{blueprint-KrNFTiyX.cjs → blueprint-BoK8H4Eq.cjs} +1 -1
  5. package/dist/{blueprint-BL2TdtBX.js → blueprint-Dg3dsUal.js} +1 -1
  6. package/dist/{blueprintFns-Dp0_BOuL.cjs → blueprintFns-C3F0jZOe.cjs} +2 -2
  7. package/dist/{blueprintFns-DCA97w4C.js → blueprintFns-CuZU7Dt6.js} +2 -2
  8. package/dist/{blueprintSketcher-ChpPo7tq.cjs → blueprintSketcher-B7QRguA5.cjs} +2 -2
  9. package/dist/{blueprintSketcher-CxFmYBvh.js → blueprintSketcher-CIsOckAh.js} +2 -2
  10. package/dist/{boolean2D-CIohnI9l.js → boolean2D-CZiGMjEF.js} +3 -3
  11. package/dist/{boolean2D-RC6jXv4x.cjs → boolean2D-DcowIZPB.cjs} +3 -3
  12. package/dist/brepjs.cjs +16 -16
  13. package/dist/brepjs.js +16 -16
  14. package/dist/{cornerFinder-DKyR_u8g.cjs → cornerFinder-C83MpPRk.cjs} +1 -1
  15. package/dist/{cornerFinder-7M1wdtcY.js → cornerFinder-eoxdiUiN.js} +1 -1
  16. package/dist/{drawFns-CAqyimmT.cjs → drawFns-C6K03snv.cjs} +6 -6
  17. package/dist/{drawFns-BKYgyfW4.js → drawFns-D23xqM0C.js} +6 -6
  18. package/dist/{healingFns-B1axWCr3.cjs → healingFns-CRH5H0ik.cjs} +2 -2
  19. package/dist/{healingFns-Cxi24K_n.js → healingFns-jp-NXq1c.js} +2 -2
  20. package/dist/{helpers-Cvrmxw4s.cjs → helpers-Bykw93Yc.cjs} +1 -1
  21. package/dist/{helpers-CKjmUSf0.js → helpers-mPnUPOIM.js} +1 -1
  22. package/dist/{importFns-CDaNqu4H.js → importFns-CJVyVdNQ.js} +1 -1
  23. package/dist/{importFns-D09lb1dB.cjs → importFns-Nlx1v8IF.cjs} +1 -1
  24. package/dist/io/gltfExportFns.d.ts +1 -1
  25. package/dist/io.cjs +2 -2
  26. package/dist/io.js +2 -2
  27. package/dist/{meshFns-7IXB_Bua.cjs → meshFns-Cv-_-nIL.cjs} +1 -1
  28. package/dist/{meshFns-CtchqgDR.js → meshFns-IeQzI5dz.js} +1 -1
  29. package/dist/operations.cjs +1 -1
  30. package/dist/operations.js +1 -1
  31. package/dist/{primitiveFns-Bdqm8wjI.cjs → primitiveFns-BDQodKI0.cjs} +2 -2
  32. package/dist/{primitiveFns-D7R24hoz.js → primitiveFns-DOHI4nuz.js} +2 -2
  33. package/dist/query.cjs +2 -2
  34. package/dist/query.js +2 -2
  35. package/dist/{shapeFns-CeSEceUG.cjs → shapeFns-CqYYHFqr.cjs} +1 -1
  36. package/dist/{shapeFns-B0lN3o3r.js → shapeFns-DGjXjLp_.js} +1 -1
  37. package/dist/shapeRef.cjs +1 -1
  38. package/dist/shapeRef.js +1 -1
  39. package/dist/{shapeRefFns-BsX2j-n3.cjs → shapeRefFns-9Fexl5XC.cjs} +1 -1
  40. package/dist/{shapeRefFns-C4JSc_jF.js → shapeRefFns-DNbdr2rL.js} +1 -1
  41. package/dist/sketching.cjs +3 -3
  42. package/dist/sketching.js +3 -3
  43. package/dist/{solidBuilders-B_5FgvuK.cjs → solidBuilders-DtK5cc9v.cjs} +1 -1
  44. package/dist/{solidBuilders-Bb5_uC7F.js → solidBuilders-cM4rOTJ5.js} +1 -1
  45. package/dist/text.cjs +2 -2
  46. package/dist/text.js +2 -2
  47. package/dist/{textBlueprints-CouQdmgT.cjs → textBlueprints-BXfjcyoe.cjs} +2 -2
  48. package/dist/{textBlueprints-zVMpbHdE.js → textBlueprints-BxSDf_IW.js} +2 -2
  49. package/dist/{textMetrics-CfsZHNGo.js → textMetrics-CiCNsEr-.js} +1 -1
  50. package/dist/{textMetrics-D0bIGN8i.cjs → textMetrics-DRo8iTiW.cjs} +1 -1
  51. package/dist/{threadFns-DdesdIxG.js → threadFns-YDyX33Wl.js} +3 -3
  52. package/dist/{threadFns-Cw02--J3.cjs → threadFns-p7X2MRCA.cjs} +3 -3
  53. package/dist/topology.cjs +5 -5
  54. package/dist/topology.js +5 -5
  55. package/package.json +2 -2
package/README.md CHANGED
@@ -103,22 +103,22 @@ Layer 0 kernel/, utils/ WASM bindings
103
103
 
104
104
  Imports flow downward only. Boundaries are enforced in CI.
105
105
 
106
- ## Authoring CAD with AI (brepjs-verify)
106
+ ## Authoring CAD with AI (brepjs-cad)
107
107
 
108
- [`brepjs-verify`](https://www.npmjs.com/package/brepjs-verify) helps an AI agent (or you) author CAD in brepjs and **prove it is correct** before handing it off. An LLM can't see geometry, so it writes a `.brep.ts` part, runs it on a real kernel, and reads a deterministic report instead of guessing from how the code reads. It ships as two cooperating pieces: a **Claude Code skill** (the authoring loop) and a **verification CLI** (validity + measured dimensions + multi-view snapshots + STEP export).
108
+ [`brepjs-cad`](https://www.npmjs.com/package/brepjs-cad) helps an AI agent (or you) author CAD in brepjs and **prove it is correct** before handing it off. An LLM can't see geometry, so it writes a `.brep.ts` part, runs it on a real kernel, and reads a deterministic report instead of guessing from how the code reads. It ships as two cooperating pieces: a **Claude Code skill** (the authoring loop) and a **verification CLI** (validity + measured dimensions + multi-view snapshots + STEP export).
109
109
 
110
110
  Install both; they ride on two rails:
111
111
 
112
112
  ```bash
113
113
  # 1. The skill - Claude Code plugin (delivered via this repo's marketplace)
114
114
  /plugin marketplace add andymai/brepjs
115
- /plugin install brepjs-verify@brepjs
115
+ /plugin install brepjs@brepjs
116
116
 
117
117
  # 2. The runtime - the CLI the skill drives
118
- npm i -D brepjs-verify
118
+ npm i -D brepjs-cad
119
119
  ```
120
120
 
121
- `brepjs-verify` bundles its own `brepjs` + `occt-wasm`, so it runs in an empty directory; inside an existing brepjs project it prefers your installed versions so verified parts match what you ship. A model is a module that default-exports a zero-arg function returning a shape:
121
+ `brepjs-cad` bundles its own `brepjs` + `occt-wasm`, so it runs in an empty directory; inside an existing brepjs project it prefers your installed versions so verified parts match what you ship. A model is a module that default-exports a zero-arg function returning a shape:
122
122
 
123
123
  ```typescript
124
124
  // bracket.brep.ts
@@ -128,10 +128,10 @@ export default () => box(40, 20, 10, { centered: true });
128
128
  ```
129
129
 
130
130
  ```bash
131
- npx -y brepjs-verify bracket.brep.ts --check --step bracket.step --json report.json
131
+ npx -y -p brepjs-cad brep bracket.brep.ts --check --step bracket.step --json report.json
132
132
  ```
133
133
 
134
- The command exits non-zero unless the report is `ok` (valid **and** every declared dimension within tolerance), so it drops straight into CI or an agent loop. For MCP-capable agents the package also ships a stdio MCP server (`brepjs-verify-mcp`) exposing the same build-and-verify step as a `run_program` tool. See the [**Authoring with AI**](https://brepjs.dev/agent/overview) guide for the full loop, CLI reference, the MCP server, examples, and the measurement eval.
134
+ The command exits non-zero unless the report is `ok` (valid **and** every declared dimension within tolerance), so it drops straight into CI or an agent loop. For MCP-capable agents the package also ships a stdio MCP server (`brep-mcp`) exposing the same build-and-verify step as a `run_program` tool. See the [**Authoring with AI**](https://brepjs.dev/agent/overview) guide for the full loop, CLI reference, the MCP server, examples, and the measurement eval.
135
135
 
136
136
  ## Projects Using brepjs
137
137
 
package/dist/2d.cjs CHANGED
@@ -2,10 +2,10 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
4
  const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
6
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
7
- const require_boolean2D = require("./boolean2D-RC6jXv4x.cjs");
8
- const require_blueprintFns = require("./blueprintFns-Dp0_BOuL.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
6
+ const require_blueprint = require("./blueprint-BoK8H4Eq.cjs");
7
+ const require_boolean2D = require("./boolean2D-DcowIZPB.cjs");
8
+ const require_blueprintFns = require("./blueprintFns-C3F0jZOe.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
1
  import { B as createKernelHandle, Q as getKernel2D, a as createEdge } from "./shapeTypes-BIcALNFv.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
3
3
  import { w as kernelCallRaw } from "./topologyQueryFns-0BIOC7YH.js";
4
- import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-CxFmYBvh.js";
5
- import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-BL2TdtBX.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-CIohnI9l.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-DCA97w4C.js";
4
+ import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-CIsOckAh.js";
5
+ import { _ as Curve2D, t as Blueprint, y as BoundingBox2d } from "./blueprint-Dg3dsUal.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-CZiGMjEF.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-CuZU7Dt6.js";
8
8
  //#region src/core/curve2dHandle.ts
9
9
  /**
10
10
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
@@ -8,7 +8,7 @@ const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
8
8
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
10
10
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
11
- const require_helpers = require("./helpers-Cvrmxw4s.cjs");
11
+ const require_helpers = require("./helpers-Bykw93Yc.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) {
@@ -8,7 +8,7 @@ import { _ as cast, h as uvCoordinates, i as faceGeomType, m as uvBounds, r as f
8
8
  import { p as getOrientation } from "./curveFns-DT1yMgBI.js";
9
9
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
10
10
  import { r as makeFace } from "./surfaceBuilders-BQx3TjMH.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-CKjmUSf0.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-mPnUPOIM.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,6 +1,6 @@
1
1
  const require_errors = require("./errors-CXJtc4I7.cjs");
2
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
3
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
2
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
3
+ const require_blueprint = require("./blueprint-BoK8H4Eq.cjs");
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
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
2
- import { i as CompoundBlueprint } from "./blueprintSketcher-CxFmYBvh.js";
3
- import { t as Blueprint } from "./blueprint-BL2TdtBX.js";
2
+ import { i as CompoundBlueprint } from "./blueprintSketcher-CIsOckAh.js";
3
+ import { t as Blueprint } from "./blueprint-Dg3dsUal.js";
4
4
  //#region src/2d/lib/curve2dFns.ts
5
5
  /**
6
6
  * Return a reversed copy of the curve (non-mutating).
@@ -3,8 +3,8 @@ 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-Cvrmxw4s.cjs");
7
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
6
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
7
+ const require_blueprint = require("./blueprint-BoK8H4Eq.cjs");
8
8
  //#region node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -3,8 +3,8 @@ 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-CKjmUSf0.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-BL2TdtBX.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-mPnUPOIM.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-Dg3dsUal.js";
8
8
  //#region node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -2,9 +2,9 @@ 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
4
  import { v as zip } from "./surfaceBuilders-BQx3TjMH.js";
5
- import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-CxFmYBvh.js";
6
- import { _ as samePoint$1, b as subtract2d, f as crossProduct2d, s as PRECISION_INTERSECTION } from "./helpers-CKjmUSf0.js";
7
- import { b as removeDuplicatePoints, f as make2dSegmentCurve, t as Blueprint } from "./blueprint-BL2TdtBX.js";
5
+ import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-CIsOckAh.js";
6
+ import { _ as samePoint$1, b as subtract2d, f as crossProduct2d, s as PRECISION_INTERSECTION } from "./helpers-mPnUPOIM.js";
7
+ import { b as removeDuplicatePoints, f as make2dSegmentCurve, t as Blueprint } from "./blueprint-Dg3dsUal.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.
@@ -2,9 +2,9 @@ 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
4
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
6
- const require_helpers = require("./helpers-Cvrmxw4s.cjs");
7
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
6
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
7
+ const require_blueprint = require("./blueprint-BoK8H4Eq.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.
package/dist/brepjs.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_textBlueprints = require("./textBlueprints-CouQdmgT.cjs");
2
+ const require_textBlueprints = require("./textBlueprints-BXfjcyoe.cjs");
3
3
  const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
4
4
  const require_occtWasmAdapter = require("./occtWasmAdapter-Bv2OTOX9.cjs");
5
5
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
@@ -10,28 +10,28 @@ 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
12
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
13
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
13
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
14
14
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
15
- const require_meshFns = require("./meshFns-7IXB_Bua.cjs");
15
+ const require_meshFns = require("./meshFns-Cv-_-nIL.cjs");
16
16
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
17
17
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
18
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
19
- const require_healingFns = require("./healingFns-B1axWCr3.cjs");
20
- const require_threadFns = require("./threadFns-Cw02--J3.cjs");
21
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
22
- const require_helpers = require("./helpers-Cvrmxw4s.cjs");
23
- const require_drawFns = require("./drawFns-CAqyimmT.cjs");
18
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
19
+ const require_healingFns = require("./healingFns-CRH5H0ik.cjs");
20
+ const require_threadFns = require("./threadFns-p7X2MRCA.cjs");
21
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
22
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
23
+ const require_drawFns = require("./drawFns-C6K03snv.cjs");
24
24
  const require_measureFns = require("./measureFns-BtPAmRfH.cjs");
25
- const require_cornerFinder = require("./cornerFinder-DKyR_u8g.cjs");
26
- const require_boolean2D = require("./boolean2D-RC6jXv4x.cjs");
27
- const require_blueprintFns = require("./blueprintFns-Dp0_BOuL.cjs");
28
- const require_importFns = require("./importFns-D09lb1dB.cjs");
25
+ const require_cornerFinder = require("./cornerFinder-C83MpPRk.cjs");
26
+ const require_boolean2D = require("./boolean2D-DcowIZPB.cjs");
27
+ const require_blueprintFns = require("./blueprintFns-C3F0jZOe.cjs");
28
+ const require_importFns = require("./importFns-Nlx1v8IF.cjs");
29
29
  const require_loftFns = require("./loftFns-CyrWJCXb.cjs");
30
30
  const require_cameraFns = require("./cameraFns-IL7qYFaG.cjs");
31
- const require_textMetrics = require("./textMetrics-D0bIGN8i.cjs");
32
- const require_shapeRefFns = require("./shapeRefFns-BsX2j-n3.cjs");
31
+ const require_textMetrics = require("./textMetrics-DRo8iTiW.cjs");
32
+ const require_shapeRefFns = require("./shapeRefFns-9Fexl5XC.cjs");
33
33
  const require_workerHandler = require("./workerHandler-CdlOTwJg.cjs");
34
- const require_primitiveFns = require("./primitiveFns-Bdqm8wjI.cjs");
34
+ const require_primitiveFns = require("./primitiveFns-BDQodKI0.cjs");
35
35
  //#region src/topology/shapeBooleans.ts
36
36
  var BOPAlgo_GlueShift = 1;
37
37
  var BOPAlgo_GlueFull = 2;
package/dist/brepjs.js CHANGED
@@ -8,29 +8,29 @@ import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N
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
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-CmhEEB-L.js";
11
- 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$2, h as translate$2, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$3, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$2, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-B0lN3o3r.js";
11
+ 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$2, h as translate$2, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$3, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$2, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-DGjXjLp_.js";
12
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-DT1yMgBI.js";
13
- 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-CtchqgDR.js";
13
+ 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-IeQzI5dz.js";
14
14
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
15
15
  import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-BQx3TjMH.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, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-Bb5_uC7F.js";
17
- import { A as edgesOfFace, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, F as chamferDistAngle, I as toBufferGeometryData, L as toGroupedBufferGeometryData, M as sharedEdges, N as verticesOfEdge, O as getNurbsSurfaceData, P as wiresOfFace, R as toLODGeometryData, 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 facesOfEdge, k as adjacentFaces, 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, z as toLineGeometryData } from "./healingFns-Cxi24K_n.js";
18
- import { A as setJointValue, B as findNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as quatRotate, H as updateNode, I as addChild, J as createAssembly, K as linearPattern, L as collectShapes, M as sphericalJoint, N as quatFromAxisAngle, O as prismaticJoint, P as quatFromTo, R as countNodes, S as addJoint, T as jointTransform, U as walkAssembly, V as removeChild, W as circularPattern, _ 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 exportAssemblySTEP, 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 createAssemblyNode } from "./threadFns-DdesdIxG.js";
19
- import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-CxFmYBvh.js";
20
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-CKjmUSf0.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-BKYgyfW4.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, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-cM4rOTJ5.js";
17
+ import { A as edgesOfFace, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, F as chamferDistAngle, I as toBufferGeometryData, L as toGroupedBufferGeometryData, M as sharedEdges, N as verticesOfEdge, O as getNurbsSurfaceData, P as wiresOfFace, R as toLODGeometryData, 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 facesOfEdge, k as adjacentFaces, 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, z as toLineGeometryData } from "./healingFns-jp-NXq1c.js";
18
+ import { A as setJointValue, B as findNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as quatRotate, H as updateNode, I as addChild, J as createAssembly, K as linearPattern, L as collectShapes, M as sphericalJoint, N as quatFromAxisAngle, O as prismaticJoint, P as quatFromTo, R as countNodes, S as addJoint, T as jointTransform, U as walkAssembly, V as removeChild, W as circularPattern, _ 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 exportAssemblySTEP, 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 createAssemblyNode } from "./threadFns-YDyX33Wl.js";
19
+ import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-CIsOckAh.js";
20
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-mPnUPOIM.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-D23xqM0C.js";
22
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-D0e8tGSP.js";
23
- import { t as cornerFinder } from "./cornerFinder-7M1wdtcY.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-CIohnI9l.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-DCA97w4C.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-CDaNqu4H.js";
23
+ import { t as cornerFinder } from "./cornerFinder-eoxdiUiN.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-CZiGMjEF.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-CuZU7Dt6.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-CJVyVdNQ.js";
27
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-CxnBxE9h.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-zVMpbHdE.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-BxSDf_IW.js";
29
29
  import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-BA7CVtWJ.js";
30
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-CfsZHNGo.js";
31
- import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-C4JSc_jF.js";
30
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-CiCNsEr-.js";
31
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-DNbdr2rL.js";
32
32
  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-CFetYgIm.js";
33
- 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-D7R24hoz.js";
33
+ 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-DOHI4nuz.js";
34
34
  //#region \0rolldown/runtime.js
35
35
  var __defProp = Object.defineProperty;
36
36
  var __exportAll = (all, no_symbols) => {
@@ -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-Cvrmxw4s.cjs");
3
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
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
  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-CKjmUSf0.js";
3
+ import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-mPnUPOIM.js";
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
- const require_textBlueprints = require("./textBlueprints-CouQdmgT.cjs");
1
+ const require_textBlueprints = require("./textBlueprints-BXfjcyoe.cjs");
2
2
  const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
3
3
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
4
4
  const require_errors = require("./errors-CXJtc4I7.cjs");
@@ -11,11 +11,11 @@ const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
11
11
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
12
12
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
13
13
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
14
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
15
- const require_helpers = require("./helpers-Cvrmxw4s.cjs");
16
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
17
- const require_cornerFinder = require("./cornerFinder-DKyR_u8g.cjs");
18
- const require_boolean2D = require("./boolean2D-RC6jXv4x.cjs");
14
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
15
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
16
+ const require_blueprint = require("./blueprint-BoK8H4Eq.cjs");
17
+ const require_cornerFinder = require("./cornerFinder-C83MpPRk.cjs");
18
+ const require_boolean2D = require("./boolean2D-DcowIZPB.cjs");
19
19
  const require_cameraFns = require("./cameraFns-IL7qYFaG.cjs");
20
20
  //#region src/2d/lib/stitching.ts
21
21
  /**
@@ -10,12 +10,12 @@ import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u a
10
10
  import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-DT1yMgBI.js";
11
11
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
12
12
  import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-BQx3TjMH.js";
13
- import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-CxFmYBvh.js";
14
- import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-CKjmUSf0.js";
15
- 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-BL2TdtBX.js";
16
- import { t as cornerFinder } from "./cornerFinder-7M1wdtcY.js";
17
- import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CIohnI9l.js";
18
- import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-zVMpbHdE.js";
13
+ import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-CIsOckAh.js";
14
+ import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-mPnUPOIM.js";
15
+ 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-Dg3dsUal.js";
16
+ import { t as cornerFinder } from "./cornerFinder-eoxdiUiN.js";
17
+ import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CZiGMjEF.js";
18
+ import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-BxSDf_IW.js";
19
19
  import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-BA7CVtWJ.js";
20
20
  //#region src/2d/lib/stitching.ts
21
21
  /**
@@ -3,9 +3,9 @@ const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
6
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
6
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
7
7
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
8
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
8
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
9
9
  //#region src/topology/threeHelpers.ts
10
10
  /**
11
11
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -3,9 +3,9 @@ import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l
3
3
  import { c as getFaces, i as getCachedIsValid, l as getOrCreateCache, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-0BIOC7YH.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
5
5
  import { v as downcast } from "./faceFns-CmhEEB-L.js";
6
- import { _ as propagateAllMetadata, g as collectInputFaceHashes } from "./shapeFns-B0lN3o3r.js";
6
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes } from "./shapeFns-DGjXjLp_.js";
7
7
  import { t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
8
- import { f as cut, h as fuseAll, m as fuse, p as cutAll } from "./solidBuilders-Bb5_uC7F.js";
8
+ import { f as cut, h as fuseAll, m as fuse, p as cutAll } from "./solidBuilders-cM4rOTJ5.js";
9
9
  //#region src/topology/threeHelpers.ts
10
10
  /**
11
11
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -4,7 +4,7 @@ const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
6
6
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
7
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
7
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
8
8
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
9
9
  const require_measureFns = require("./measureFns-BtPAmRfH.cjs");
10
10
  //#region src/utils/vec2d.ts
@@ -4,7 +4,7 @@ import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from ".
4
4
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
5
  import { a as vecDot, d as vecNormalize } from "./vecOps-SKPRvPH-.js";
6
6
  import { l as normalAt, s as getSurfaceType } from "./faceFns-CmhEEB-L.js";
7
- import { a as isSameShape, n as getHashCode } from "./shapeFns-B0lN3o3r.js";
7
+ import { a as isSameShape, n as getHashCode } from "./shapeFns-DGjXjLp_.js";
8
8
  import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-DT1yMgBI.js";
9
9
  import { n as measureArea } from "./measureFns-D0e8tGSP.js";
10
10
  //#region src/utils/vec2d.ts
@@ -2,7 +2,7 @@ import { Z as getKernel, t as castShape } from "./shapeTypes-BIcALNFv.js";
2
2
  import { n as wasmIndex, t as vec3At$1 } from "./vec3-Dpha8d5k.js";
3
3
  import { A as ok, b as err, r as ioError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
4
4
  import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
5
- import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-BL2TdtBX.js";
5
+ import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-Dg3dsUal.js";
6
6
  //#region src/io/objExportFns.ts
7
7
  /** Read a vec3 from a typed array at the given vertex index. */
8
8
  function vec3At(arr, i) {
@@ -2,7 +2,7 @@ const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
2
2
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
3
3
  const require_errors = require("./errors-CXJtc4I7.cjs");
4
4
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
5
- const require_blueprint = require("./blueprint-KrNFTiyX.cjs");
5
+ const require_blueprint = require("./blueprint-BoK8H4Eq.cjs");
6
6
  //#region src/io/objExportFns.ts
7
7
  /** Read a vec3 from a typed array at the given vertex index. */
8
8
  function vec3At(arr, i) {
@@ -27,7 +27,7 @@ export interface GltfFace {
27
27
  /**
28
28
  * Per-face material selector. Called once per face group; return a material to
29
29
  * paint that face, or `undefined` to leave it at the glTF default. Consumed by
30
- * tooling (e.g. brepjs-verify's `export const materials`) that has the mesh and
30
+ * tooling (e.g. brepjs-cad's `export const materials`) that has the mesh and
31
31
  * builds the faceId→material map passed to {@link GltfExportOptions.materials}.
32
32
  */
33
33
  export type MaterialFn = (face: GltfFace) => GltfMaterial | undefined;
package/dist/io.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_meshFns = require("./meshFns-7IXB_Bua.cjs");
3
- const require_importFns = require("./importFns-D09lb1dB.cjs");
2
+ const require_meshFns = require("./meshFns-Cv-_-nIL.cjs");
3
+ const require_importFns = require("./importFns-Nlx1v8IF.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-CtchqgDR.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-CDaNqu4H.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-IeQzI5dz.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-CJVyVdNQ.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -1,7 +1,7 @@
1
1
  const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
4
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
4
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,7 +1,7 @@
1
1
  import { Z as getKernel, gt as qualityDeflection } from "./shapeTypes-BIcALNFv.js";
2
2
  import { A as ok, b as err, r as ioError } from "./errors-DNWJsfVU.js";
3
3
  import { d as getSolids, n as getBounds } from "./topologyQueryFns-0BIOC7YH.js";
4
- import { O as getFaceOrigins } from "./shapeFns-B0lN3o3r.js";
4
+ import { O as getFaceOrigins } from "./shapeFns-DGjXjLp_.js";
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_threadFns = require("./threadFns-Cw02--J3.cjs");
2
+ const require_threadFns = require("./threadFns-p7X2MRCA.cjs");
3
3
  const require_loftFns = require("./loftFns-CyrWJCXb.cjs");
4
4
  exports.addChild = require_threadFns.addChild;
5
5
  exports.addJoint = require_threadFns.addJoint;
@@ -1,3 +1,3 @@
1
- import { A as setJointValue, B as findNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, G as gridPattern, H as updateNode, I as addChild, J as createAssembly, K as linearPattern, L as collectShapes, M as sphericalJoint, O as prismaticJoint, R as countNodes, S as addJoint, T as jointTransform, U as walkAssembly, V as removeChild, W as circularPattern, _ as exportURDF, 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, q as exportAssemblySTEP, 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 createAssemblyNode } from "./threadFns-DdesdIxG.js";
1
+ import { A as setJointValue, B as findNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, G as gridPattern, H as updateNode, I as addChild, J as createAssembly, K as linearPattern, L as collectShapes, M as sphericalJoint, O as prismaticJoint, R as countNodes, S as addJoint, T as jointTransform, U as walkAssembly, V as removeChild, W as circularPattern, _ as exportURDF, 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, q as exportAssemblySTEP, 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 createAssemblyNode } from "./threadFns-YDyX33Wl.js";
2
2
  import { d as twistExtrude, l as supportExtrude, o as complexExtrude, u as sweep } from "./loftFns-CxnBxE9h.js";
3
3
  export { addChild, addJoint, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, cylindricalJoint, exportAssemblySTEP, exportURDF, findNode, findStep, forwardKinematics, getShape as getHistoryShape, gridPattern, importURDF, inverseKinematics, jointTrajectory, jointTransform, jointsFromDH, linearPattern, mechanismDOF, modifyStep, planarJoint, prismaticJoint, registerOperation, registerShape, removeChild, replayFrom, replayHistory, revoluteJoint, setJointValue, setJointValues, sphericalJoint, stepCount, stepsFrom, supportExtrude, sweep, thread, twistExtrude, undoLast, updateNode, walkAssembly };
@@ -1,9 +1,9 @@
1
1
  const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_constants = require("./constants-BOVyEYGH.cjs");
4
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
4
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
5
5
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
6
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
6
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
7
7
  //#region src/topology/primitiveFns.ts
8
8
  /**
9
9
  * Create a box with the given dimensions.
@@ -1,9 +1,9 @@
1
1
  import { Z as getKernel, c as createSolid, x as isClosedWire } from "./shapeTypes-BIcALNFv.js";
2
2
  import { A as ok, b as err, d as validationError, v as andThen } from "./errors-DNWJsfVU.js";
3
3
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
4
- import { h as translate } from "./shapeFns-B0lN3o3r.js";
4
+ import { h as translate } from "./shapeFns-DGjXjLp_.js";
5
5
  import { _ as makeThreePointArc, a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, g as makeTangentArc, h as makeLine, i as makeNewFaceWithinFace, m as makeHelix, o as makePolygon, p as makeEllipseArc, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeBezierCurve } from "./surfaceBuilders-BQx3TjMH.js";
6
- 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-Bb5_uC7F.js";
6
+ 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-cM4rOTJ5.js";
7
7
  //#region src/topology/primitiveFns.ts
8
8
  /**
9
9
  * Create a box with the given dimensions.
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-Cvrmxw4s.cjs");
3
- const require_cornerFinder = require("./cornerFinder-DKyR_u8g.cjs");
2
+ const require_helpers = require("./helpers-Bykw93Yc.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-C83MpPRk.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-CKjmUSf0.js";
2
- import { t as cornerFinder } from "./cornerFinder-7M1wdtcY.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-mPnUPOIM.js";
2
+ import { t as cornerFinder } from "./cornerFinder-eoxdiUiN.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };
@@ -43,7 +43,7 @@ function propagateOriginsFromEvolution(evolution, inputs, result) {
43
43
  else resultMap.set(hash, origin);
44
44
  const generatedHashes = evolution.generated.get(hash);
45
45
  if (generatedHashes) {
46
- for (const genHash of generatedHashes) if (!resultMap.has(genHash)) resultMap.set(genHash, 0);
46
+ for (const genHash of generatedHashes) if (!resultMap.has(genHash)) resultMap.set(genHash, origin);
47
47
  }
48
48
  }
49
49
  if (resultMap.size > 0) {
@@ -43,7 +43,7 @@ function propagateOriginsFromEvolution(evolution, inputs, result) {
43
43
  else resultMap.set(hash, origin);
44
44
  const generatedHashes = evolution.generated.get(hash);
45
45
  if (generatedHashes) {
46
- for (const genHash of generatedHashes) if (!resultMap.has(genHash)) resultMap.set(genHash, 0);
46
+ for (const genHash of generatedHashes) if (!resultMap.has(genHash)) resultMap.set(genHash, origin);
47
47
  }
48
48
  }
49
49
  if (resultMap.size > 0) {
package/dist/shapeRef.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeRefFns = require("./shapeRefFns-BsX2j-n3.cjs");
2
+ const require_shapeRefFns = require("./shapeRefFns-9Fexl5XC.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-C4JSc_jF.js";
1
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-DNbdr2rL.js";
2
2
  export { assignRoles, captureHint, createRef, defaultScorer, resolveRef, updateRoles };
@@ -1,7 +1,7 @@
1
1
  const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
2
2
  const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
3
3
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
4
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
4
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
5
5
  const require_measureFns = require("./measureFns-BtPAmRfH.cjs");
6
6
  //#region src/topology/shapeRef/scoring.ts
7
7
  /**
@@ -1,7 +1,7 @@
1
1
  import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
2
2
  import { c as getFaces } from "./topologyQueryFns-0BIOC7YH.js";
3
3
  import { i as faceGeomType, l as normalAt, r as faceCenter } from "./faceFns-CmhEEB-L.js";
4
- import { n as getHashCode } from "./shapeFns-B0lN3o3r.js";
4
+ import { n as getHashCode } from "./shapeFns-DGjXjLp_.js";
5
5
  import { n as measureArea } from "./measureFns-D0e8tGSP.js";
6
6
  //#region src/topology/shapeRef/scoring.ts
7
7
  /**
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_textBlueprints = require("./textBlueprints-CouQdmgT.cjs");
3
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
4
- const require_drawFns = require("./drawFns-CAqyimmT.cjs");
2
+ const require_textBlueprints = require("./textBlueprints-BXfjcyoe.cjs");
3
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
4
+ const require_drawFns = require("./drawFns-C6K03snv.cjs");
5
5
  //#region src/sketching.ts
6
6
  /**
7
7
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
package/dist/sketching.js CHANGED
@@ -1,6 +1,6 @@
1
- import { n as BaseSketcher2d, t as BlueprintSketcher } from "./blueprintSketcher-CxFmYBvh.js";
2
- import { A as sketchEllipse, C as DrawingPen, 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, T as Drawing, _ 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-BKYgyfW4.js";
3
- 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, o as compoundSketchExtrude, p as sketchRevolve, s as compoundSketchFace, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-zVMpbHdE.js";
1
+ import { n as BaseSketcher2d, t as BlueprintSketcher } from "./blueprintSketcher-CIsOckAh.js";
2
+ import { A as sketchEllipse, C as DrawingPen, 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, T as Drawing, _ 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-D23xqM0C.js";
3
+ 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, o as compoundSketchExtrude, p as sketchRevolve, s as compoundSketchFace, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-BxSDf_IW.js";
4
4
  //#region src/sketching.ts
5
5
  /**
6
6
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
@@ -5,7 +5,7 @@ const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
6
6
  const require_planeOps = require("./planeOps-BA4HfgQu.cjs");
7
7
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
8
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
8
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
10
10
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
11
11
  //#region src/topology/booleanFns.ts
@@ -5,7 +5,7 @@ import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
5
5
  import { h as vecScale, t as vecAdd } from "./vecOps-SKPRvPH-.js";
6
6
  import { o as resolvePlane } from "./planeOps-DSjjtrjg.js";
7
7
  import { _ as cast, v as downcast } from "./faceFns-CmhEEB-L.js";
8
- import { _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-B0lN3o3r.js";
8
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, v as propagateMetadataByHash } from "./shapeFns-DGjXjLp_.js";
9
9
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
10
10
  import { r as makeFace } from "./surfaceBuilders-BQx3TjMH.js";
11
11
  //#region src/topology/booleanFns.ts
package/dist/text.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_textBlueprints = require("./textBlueprints-CouQdmgT.cjs");
3
- const require_textMetrics = require("./textMetrics-D0bIGN8i.cjs");
2
+ const require_textBlueprints = require("./textBlueprints-BXfjcyoe.cjs");
3
+ const require_textMetrics = require("./textMetrics-DRo8iTiW.cjs");
4
4
  exports.fontMetrics = require_textMetrics.fontMetrics;
5
5
  exports.getFont = require_textBlueprints.getFont;
6
6
  exports.loadFont = require_textBlueprints.loadFont;
package/dist/text.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as getFont, r as loadFont, t as textBlueprints } from "./textBlueprints-zVMpbHdE.js";
2
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-CfsZHNGo.js";
1
+ import { n as getFont, r as loadFont, t as textBlueprints } from "./textBlueprints-BxSDf_IW.js";
2
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-CiCNsEr-.js";
3
3
  export { fontMetrics, getFont, loadFont, sketchText, textBlueprints, textMetrics };
@@ -38,8 +38,8 @@ const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
38
38
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
39
39
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
40
40
  const require_surfaceBuilders = require("./surfaceBuilders-DvpxHHIm.cjs");
41
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
42
- const require_blueprintSketcher = require("./blueprintSketcher-ChpPo7tq.cjs");
41
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
42
+ const require_blueprintSketcher = require("./blueprintSketcher-B7QRguA5.cjs");
43
43
  const require_loftFns = require("./loftFns-CyrWJCXb.cjs");
44
44
  let opentype_js = require("opentype.js");
45
45
  opentype_js = __toESM(opentype_js, 1);
@@ -7,8 +7,8 @@ import { v as downcast } from "./faceFns-CmhEEB-L.js";
7
7
  import { l as curveStartPoint, u as curveTangentAt } from "./curveFns-DT1yMgBI.js";
8
8
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
9
9
  import { i as makeNewFaceWithinFace, r as makeFace, t as addHolesInFace } from "./surfaceBuilders-BQx3TjMH.js";
10
- import { o as makeSolid, p as cutAll, t as makeCompound } from "./solidBuilders-Bb5_uC7F.js";
11
- import { r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-CxFmYBvh.js";
10
+ import { o as makeSolid, p as cutAll, t as makeCompound } from "./solidBuilders-cM4rOTJ5.js";
11
+ import { r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-CIsOckAh.js";
12
12
  import { a as revolve, d as twistExtrude, o as complexExtrude, r as extrude, t as loft, u as sweep } from "./loftFns-CxnBxE9h.js";
13
13
  import opentype from "opentype.js";
14
14
  //#region src/sketching/compoundSketch.ts
@@ -1,5 +1,5 @@
1
1
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
2
- import { g as wrapSketchData, i as Sketches, n as getFont, t as textBlueprints, v as CompoundSketch } from "./textBlueprints-zVMpbHdE.js";
2
+ import { g as wrapSketchData, i as Sketches, n as getFont, t as textBlueprints, v as CompoundSketch } from "./textBlueprints-BxSDf_IW.js";
3
3
  //#region src/text/sketchText.ts
4
4
  /**
5
5
  * Render text as 3D sketch outlines on a plane.
@@ -1,4 +1,4 @@
1
- const require_textBlueprints = require("./textBlueprints-CouQdmgT.cjs");
1
+ const require_textBlueprints = require("./textBlueprints-BXfjcyoe.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  //#region src/text/sketchText.ts
4
4
  /**
@@ -2,10 +2,10 @@ import { B as createKernelHandle, R as DisposalScope, Y as _usingCtx, Z as getKe
2
2
  import { A as ok, T as isOk, b as err, d as validationError, n as computationError, r as ioError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
3
3
  import { d as vecNormalize, s as vecIsZero } from "./vecOps-SKPRvPH-.js";
4
4
  import { y as fromBREP } from "./faceFns-CmhEEB-L.js";
5
- import { s as toBREP } from "./shapeFns-B0lN3o3r.js";
6
- import { h as fuseAll } from "./solidBuilders-Bb5_uC7F.js";
5
+ import { s as toBREP } from "./shapeFns-DGjXjLp_.js";
6
+ import { h as fuseAll } from "./solidBuilders-cM4rOTJ5.js";
7
7
  import { t as loft } from "./loftFns-CxnBxE9h.js";
8
- import { E as wire, h as line } from "./primitiveFns-D7R24hoz.js";
8
+ import { E as wire, h as line } from "./primitiveFns-DOHI4nuz.js";
9
9
  //#region src/utils/uuid.ts
10
10
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
11
11
  function uuidv() {
@@ -2,10 +2,10 @@ const require_shapeTypes = require("./shapeTypes-DwNTiXjG.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
4
4
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
5
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
6
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
5
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
6
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
7
7
  const require_loftFns = require("./loftFns-CyrWJCXb.cjs");
8
- const require_primitiveFns = require("./primitiveFns-Bdqm8wjI.cjs");
8
+ const require_primitiveFns = require("./primitiveFns-BDQodKI0.cjs");
9
9
  //#region src/utils/uuid.ts
10
10
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
11
11
  function uuidv() {
package/dist/topology.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_topologyQueryFns = require("./topologyQueryFns-a2i0YhGF.cjs");
3
3
  const require_faceFns = require("./faceFns-DSdVqqVP.cjs");
4
- const require_shapeFns = require("./shapeFns-CeSEceUG.cjs");
4
+ const require_shapeFns = require("./shapeFns-CqYYHFqr.cjs");
5
5
  const require_curveFns = require("./curveFns-D3k8aHIE.cjs");
6
- const require_meshFns = require("./meshFns-7IXB_Bua.cjs");
7
- const require_solidBuilders = require("./solidBuilders-B_5FgvuK.cjs");
8
- const require_healingFns = require("./healingFns-B1axWCr3.cjs");
9
- const require_primitiveFns = require("./primitiveFns-Bdqm8wjI.cjs");
6
+ const require_meshFns = require("./meshFns-Cv-_-nIL.cjs");
7
+ const require_solidBuilders = require("./solidBuilders-DtK5cc9v.cjs");
8
+ const require_healingFns = require("./healingFns-CRH5H0ik.cjs");
9
+ const require_primitiveFns = require("./primitiveFns-BDQodKI0.cjs");
10
10
  exports.addHoles = require_primitiveFns.addHoles;
11
11
  exports.adjacentFaces = require_healingFns.adjacentFaces;
12
12
  exports.approximateCurve = require_curveFns.approximateCurve;
package/dist/topology.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { S as vertexPosition, _ as iterFaces, b as iterVertices, c as getFaces, f as getVertices, g as iterEdges, m as invalidateShapeCache, n as getBounds, p as getWires, s as getEdges, x as iterWires } from "./topologyQueryFns-0BIOC7YH.js";
2
2
  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, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, v as downcast, x as iterTopo, y as fromBREP } from "./faceFns-CmhEEB-L.js";
3
- import { a as isSameShape, i as isEqualShape, n as getHashCode } from "./shapeFns-B0lN3o3r.js";
3
+ import { a as isSameShape, i as isEqualShape, n as getHashCode } from "./shapeFns-DGjXjLp_.js";
4
4
  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-DT1yMgBI.js";
5
- import { c as createMeshCache, n as exportSTEP, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-CtchqgDR.js";
6
- import { h as fuseAll, p as cutAll } from "./solidBuilders-Bb5_uC7F.js";
7
- import { A as edgesOfFace, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, F as chamferDistAngle, I as toBufferGeometryData, L as toGroupedBufferGeometryData, M as sharedEdges, N as verticesOfEdge, O as getNurbsSurfaceData, P as wiresOfFace, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, g as variableFillet, j as facesOfEdge, k as adjacentFaces, l as solidFromShell, n as fixSelfIntersection, o as healSolid, r as fixShape, s as healWire, t as autoHeal, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution, z as toLineGeometryData } from "./healingFns-Cxi24K_n.js";
8
- import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere, 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, x as subFace, y as solid } from "./primitiveFns-D7R24hoz.js";
5
+ import { c as createMeshCache, n as exportSTEP, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-IeQzI5dz.js";
6
+ import { h as fuseAll, p as cutAll } from "./solidBuilders-cM4rOTJ5.js";
7
+ import { A as edgesOfFace, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, F as chamferDistAngle, I as toBufferGeometryData, L as toGroupedBufferGeometryData, M as sharedEdges, N as verticesOfEdge, O as getNurbsSurfaceData, P as wiresOfFace, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, g as variableFillet, j as facesOfEdge, k as adjacentFaces, l as solidFromShell, n as fixSelfIntersection, o as healSolid, r as fixShape, s as healWire, t as autoHeal, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution, z as toLineGeometryData } from "./healingFns-jp-NXq1c.js";
8
+ import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere, 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, x as subFace, y as solid } from "./primitiveFns-DOHI4nuz.js";
9
9
  export { addHoles, adjacentFaces, approximateCurve, asTopo, autoHeal, bezier, box, bsplineApprox, cast, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkBoolean, circle, classifyPointOnFace, clearMeshCache, compound, cone, createMeshCache, curveAxis, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cutAll, cutAllBisect, cutWithEvolution, cylinder, fromBREP as deserializeShape, downcast, edgesOfFace, ellipse, ellipseArc, ellipsoid, exportIGES, exportSTEP, exportSTL, face, faceAxis, faceCenter, faceGeomType, faceOrientation, facesOfEdge, filledFace, filletWithEvolution, fixSelfIntersection, fixShape, flipFaceOrientation, flipOrientation, fuseAll, fuseAllBisect, 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": "18.97.1",
3
+ "version": "18.98.0",
4
4
  "description": "Web CAD library with pluggable geometry kernel",
5
5
  "keywords": [
6
6
  "cad",
@@ -28,7 +28,7 @@
28
28
  "packages/brepjs-manifold",
29
29
  "packages/brepjs-voxel-wasm",
30
30
  "packages/brepjs-voxel",
31
- "packages/brepjs-verify",
31
+ "packages/brepjs-cad",
32
32
  "packages/brepjs-viewer",
33
33
  "packages/brepjs-vscode",
34
34
  "apps/playground",