brepjs 20.12.12 → 20.12.14

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 (98) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{adjacencyFns-DfPO5LGP.js → adjacencyFns-DT8YVOtE.js} +3 -3
  4. package/dist/{adjacencyFns-DSGyqGyy.cjs → adjacencyFns-DyHi1paM.cjs} +3 -3
  5. package/dist/{blueprint-BYXwa2cF.js → blueprint-BzgIBZly.js} +5 -5
  6. package/dist/{blueprint-DtPRNDEu.cjs → blueprint-CGBIm-Xk.cjs} +5 -5
  7. package/dist/{blueprintFns-YuJQgywS.js → blueprintFns-CN6koAgD.js} +2 -2
  8. package/dist/{blueprintFns-y2oH3LOO.cjs → blueprintFns-Crktz0-W.cjs} +2 -2
  9. package/dist/{blueprintSketcher-DPP1g95U.js → blueprintSketcher-C28vnWYu.js} +3 -3
  10. package/dist/{blueprintSketcher-zQgjgodb.cjs → blueprintSketcher-C5Nn6Yi7.cjs} +3 -3
  11. package/dist/{boolean2D-BJFpEXix.cjs → boolean2D-BRmFbYsb.cjs} +4 -4
  12. package/dist/{boolean2D-CNf7lVXV.js → boolean2D-BWpQMVia.js} +4 -4
  13. package/dist/{booleanFns-CkcJ8WB7.cjs → booleanFns-CvBttd1y.cjs} +5 -5
  14. package/dist/{booleanFns-B9RvEpHB.js → booleanFns-Dcv_aMcv.js} +5 -5
  15. package/dist/brepjs.cjs +54 -50
  16. package/dist/brepjs.js +54 -50
  17. package/dist/{cameraFns-B9xKg36U.cjs → cameraFns-Ds_tNjP7.cjs} +3 -3
  18. package/dist/{cameraFns-CLkNCsYU.js → cameraFns-xIy84D75.js} +3 -3
  19. package/dist/core.cjs +2 -2
  20. package/dist/core.js +2 -2
  21. package/dist/{cornerFinder-DgVMDBCo.js → cornerFinder-BEUeERZd.js} +1 -1
  22. package/dist/{cornerFinder-Dzsi68w-.cjs → cornerFinder-BUj9Ms_n.cjs} +1 -1
  23. package/dist/{curveFns-EsJgIpc6.js → curveFns-DR1JAITD.js} +1 -1
  24. package/dist/{curveFns-B8mm5cou.cjs → curveFns-Dneh4D9N.cjs} +1 -1
  25. package/dist/{drawFns-Bht1ceeH.js → drawFns-BPskIgvL.js} +12 -12
  26. package/dist/{drawFns-CLJog-Xp.cjs → drawFns-CkHnrB4o.cjs} +12 -12
  27. package/dist/{faceFns-Jo9hMVqL.cjs → faceFns-ClpZLuHU.cjs} +2 -2
  28. package/dist/{faceFns-2jGPfqvB.js → faceFns-Ek2vnYA8.js} +2 -2
  29. package/dist/{healingFns-DvuJr4RS.js → healingFns-CTPsDQkF.js} +40 -15
  30. package/dist/{healingFns-DGc2hk9z.cjs → healingFns-CVGVC3-a.cjs} +40 -15
  31. package/dist/{helpers-D7Y4Vxhf.cjs → helpers-ClWqvNl5.cjs} +6 -6
  32. package/dist/{helpers-BuI9lh-t.js → helpers-TeE5hIEo.js} +6 -6
  33. package/dist/{importFns-Dwlc0KtB.cjs → importFns-1qi--R8S.cjs} +479 -57
  34. package/dist/{importFns-TKzj4FaZ.js → importFns-DTyCvMc3.js} +479 -57
  35. package/dist/io/importFns.d.ts +6 -4
  36. package/dist/io/ioUtils.d.ts +23 -5
  37. package/dist/io/meshNesting.d.ts +25 -4
  38. package/dist/io/meshTopology.d.ts +33 -0
  39. package/dist/io/stlTriangles.d.ts +10 -0
  40. package/dist/io/threemfImportFns.d.ts +9 -6
  41. package/dist/io.cjs +2 -2
  42. package/dist/io.js +2 -2
  43. package/dist/kernel/capabilities.d.ts +9 -1
  44. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  45. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  46. package/dist/{loftFns-CnerVgTM.cjs → loftFns-BqA5gWFR.cjs} +1 -1
  47. package/dist/{loftFns-jnQL_zpD.js → loftFns-DbXEtPKz.js} +1 -1
  48. package/dist/{measureFns--UKrACtx.js → measureFns-NLCrquKi.js} +3 -3
  49. package/dist/{measureFns-D8uSDn-8.cjs → measureFns-_Q-bggOu.cjs} +3 -3
  50. package/dist/measurement.cjs +2 -2
  51. package/dist/measurement.js +2 -2
  52. package/dist/{meshFns-Bo4EQJFO.js → meshFns-DBN_h_7v.js} +4 -4
  53. package/dist/{meshFns-Cs_qrlXI.cjs → meshFns-DmKYxmT_.cjs} +4 -4
  54. package/dist/{occtWasmAdapter-C-Qi-jxS.js → occtWasmAdapter-Be-xZvbQ.js} +3 -2
  55. package/dist/{occtWasmAdapter-BK--kx4R.cjs → occtWasmAdapter-TX9M5rkb.cjs} +3 -2
  56. package/dist/operations.cjs +2 -2
  57. package/dist/operations.js +2 -2
  58. package/dist/{primitiveFns-DPqHA3sX.js → primitiveFns-D53I6iYC.js} +5 -5
  59. package/dist/{primitiveFns-CZqSRhm8.cjs → primitiveFns-u5Vnoanh.cjs} +5 -5
  60. package/dist/{principalBoxFns-C3SQMyG5.js → principalBoxFns-B3NAkStp.js} +3 -3
  61. package/dist/{principalBoxFns-Cozj46sS.cjs → principalBoxFns-Cs3z4CmX.cjs} +3 -3
  62. package/dist/projection.cjs +1 -1
  63. package/dist/projection.js +1 -1
  64. package/dist/query.cjs +2 -2
  65. package/dist/query.js +2 -2
  66. package/dist/{refResolveFns-DBY8yC6n.cjs → refResolveFns-CEx0Xso0.cjs} +6 -6
  67. package/dist/{refResolveFns-DtztzO1g.js → refResolveFns-LMvuE8em.js} +6 -6
  68. package/dist/{shapeFns-kFm-m8jh.js → shapeFns-24B0u4KE.js} +2 -2
  69. package/dist/{shapeFns-D47cmLG8.cjs → shapeFns-CahtmyZr.cjs} +2 -2
  70. package/dist/shapeRef.cjs +1 -1
  71. package/dist/shapeRef.js +1 -1
  72. package/dist/{shapeTypes-C06KHgTm.cjs → shapeTypes-6tBG0xrR.cjs} +12 -15
  73. package/dist/{shapeTypes-DoPnZHn_.js → shapeTypes-DZGS7hgn.js} +12 -15
  74. package/dist/sketching.cjs +3 -3
  75. package/dist/sketching.js +3 -3
  76. package/dist/{solidBuilders-ZDGdvaTU.js → solidBuilders-BHGa-BWa.js} +3 -3
  77. package/dist/{solidBuilders-Dwm0hXn5.cjs → solidBuilders-Dl6d8fGZ.cjs} +3 -3
  78. package/dist/{surfaceBuilders-BBs6D6Km.js → surfaceBuilders-BVyLEFoG.js} +3 -3
  79. package/dist/{surfaceBuilders-D5kFAV1i.cjs → surfaceBuilders-BtYpRGXh.cjs} +3 -3
  80. package/dist/text.cjs +2 -2
  81. package/dist/text.js +2 -2
  82. package/dist/{textBlueprints-BPrPhg5b.cjs → textBlueprints-C1aPqvXX.cjs} +8 -8
  83. package/dist/{textBlueprints-Dq3pUNSr.js → textBlueprints-CihV6AGR.js} +8 -8
  84. package/dist/{textMetrics-4xkjKmD1.cjs → textMetrics-BhTII8oU.cjs} +1 -1
  85. package/dist/{textMetrics-JN70dV5x.js → textMetrics-CTA6sIE_.js} +1 -1
  86. package/dist/{threadFns-D7D_qR7t.js → threadFns-B2Foaws1.js} +7 -7
  87. package/dist/{threadFns-Dq_Gff0C.cjs → threadFns-BK2TDl2R.cjs} +7 -7
  88. package/dist/topology/apiTypes.d.ts +4 -2
  89. package/dist/topology/chamferAngleFns.d.ts +6 -4
  90. package/dist/topology/evolutionFns.d.ts +2 -0
  91. package/dist/topology/modifierFns.d.ts +8 -0
  92. package/dist/topology.cjs +9 -9
  93. package/dist/topology.js +9 -9
  94. package/dist/{topologyQueryFns-yOGEI9hO.js → topologyQueryFns-BRXpZFCi.js} +1 -1
  95. package/dist/{topologyQueryFns-BUhKY2Kj.cjs → topologyQueryFns-t8CbgIAS.cjs} +1 -1
  96. package/dist/{validityTypes-lfyOkCQm.cjs → validityTypes-CT2goK1c.cjs} +1 -1
  97. package/dist/{validityTypes-CGrEOscY.js → validityTypes-OSx482aJ.js} +1 -1
  98. 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-C06KHgTm.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
3
3
  const require_errors = require("./errors-O_blYTWT.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-BUhKY2Kj.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-zQgjgodb.cjs");
6
- const require_blueprint = require("./blueprint-DtPRNDEu.cjs");
7
- const require_boolean2D = require("./boolean2D-BJFpEXix.cjs");
8
- const require_blueprintFns = require("./blueprintFns-y2oH3LOO.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-t8CbgIAS.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-C5Nn6Yi7.cjs");
6
+ const require_blueprint = require("./blueprint-CGBIm-Xk.cjs");
7
+ const require_boolean2D = require("./boolean2D-BRmFbYsb.cjs");
8
+ const require_blueprintFns = require("./blueprintFns-Crktz0-W.cjs");
9
9
  // 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 { F as createKernelHandle, J as getKernel2D, c as createEdge } from "./shapeTypes-DoPnZHn_.js";
1
+ import { F as createKernelHandle, J as getKernel2D, c as createEdge } from "./shapeTypes-DZGS7hgn.js";
2
2
  import { E as ok, d as validationError, g as err, t as BrepErrorCode } from "./errors-BTccWbtE.js";
3
- import { E as kernelCallRaw } from "./topologyQueryFns-yOGEI9hO.js";
4
- import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-DPP1g95U.js";
5
- import { t as Blueprint, v as Curve2D, x as BoundingBox2d } from "./blueprint-BYXwa2cF.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-CNf7lVXV.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-YuJQgywS.js";
3
+ import { E as kernelCallRaw } from "./topologyQueryFns-BRXpZFCi.js";
4
+ import { a as Blueprints, i as CompoundBlueprint, r as organiseBlueprints } from "./blueprintSketcher-C28vnWYu.js";
5
+ import { t as Blueprint, v as Curve2D, x as BoundingBox2d } from "./blueprint-BzgIBZly.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-BWpQMVia.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-CN6koAgD.js";
8
8
  // src/core/curve2dHandle.ts
9
9
  /**
10
10
  * Wrap a raw kernel 2D curve handle with brand + disposal tracking.
@@ -1,6 +1,6 @@
1
- import { E as GeometryCleanupError, K as getActiveKernelId, q as getKernel, r as castResultShapeWithKnownType, t as borrowShapeWithKnownType } from "./shapeTypes-DoPnZHn_.js";
2
- import { j as isUnsupportedKernelOperationError } from "./occtWasmAdapter-C-Qi-jxS.js";
3
- import { c as getFaces, f as getVertices, l as getOrCreateCache, s as getEdges } from "./topologyQueryFns-yOGEI9hO.js";
1
+ import { E as GeometryCleanupError, K as getActiveKernelId, q as getKernel, r as castResultShapeWithKnownType, t as borrowShapeWithKnownType } from "./shapeTypes-DZGS7hgn.js";
2
+ import { j as isUnsupportedKernelOperationError } from "./occtWasmAdapter-Be-xZvbQ.js";
3
+ import { c as getFaces, f as getVertices, l as getOrCreateCache, s as getEdges } from "./topologyQueryFns-BRXpZFCi.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-iraOnb2p.js";
5
5
  // src/topology/adjacencyFns.ts
6
6
  /**
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
2
- const require_occtWasmAdapter = require("./occtWasmAdapter-BK--kx4R.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-BUhKY2Kj.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
2
+ const require_occtWasmAdapter = require("./occtWasmAdapter-TX9M5rkb.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-t8CbgIAS.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  // src/topology/adjacencyFns.ts
6
6
  /**
@@ -1,14 +1,14 @@
1
- import { B as unregisterFromCleanup, J as getKernel2D, R as registerForCleanup, c as createEdge, p as createWire, q as getKernel } from "./shapeTypes-DoPnZHn_.js";
1
+ import { B as unregisterFromCleanup, J as getKernel2D, R as registerForCleanup, c as createEdge, p as createWire, q as getKernel } from "./shapeTypes-DZGS7hgn.js";
2
2
  import { i as wasmIndex, n as bug } from "./bug-ClMTAJhe.js";
3
3
  import { E as ok, P as unwrap, d as validationError, g as err, n as computationError } from "./errors-BTccWbtE.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-iraOnb2p.js";
5
5
  import { r as toVec3 } from "./types-CKXsIm9-.js";
6
6
  import { r as makePlane } from "./planeOps-D3yDuMux.js";
7
- import { _ as cast, h as uvCoordinates, i as faceGeomType, m as uvBounds, r as faceCenter } from "./faceFns-2jGPfqvB.js";
8
- import { p as getOrientation } from "./curveFns-EsJgIpc6.js";
7
+ import { _ as cast, h as uvCoordinates, i as faceGeomType, m as uvBounds, r as faceCenter } from "./faceFns-Ek2vnYA8.js";
8
+ import { p as getOrientation } from "./curveFns-DR1JAITD.js";
9
9
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
10
- import { r as makeFace } from "./surfaceBuilders-BBs6D6Km.js";
11
- import { l as add2d, m as normalize2d$1, p as distance2d, t as getSingleFace, v as samePoint, x as subtract2d, y as scalarMultiply2d } from "./helpers-BuI9lh-t.js";
10
+ import { r as makeFace } from "./surfaceBuilders-BVyLEFoG.js";
11
+ import { l as add2d, m as normalize2d$1, p as distance2d, t as getSingleFace, v as samePoint, x as subtract2d, y as scalarMultiply2d } from "./helpers-TeE5hIEo.js";
12
12
  // 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-C06KHgTm.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
2
2
  const require_bug = require("./bug-CBcpIPuf.cjs");
3
3
  const require_errors = require("./errors-O_blYTWT.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  const require_types = require("./types-CjF9Rofr.cjs");
6
6
  const require_planeOps = require("./planeOps-DZfLToKZ.cjs");
7
- const require_faceFns = require("./faceFns-Jo9hMVqL.cjs");
8
- const require_curveFns = require("./curveFns-B8mm5cou.cjs");
7
+ const require_faceFns = require("./faceFns-ClpZLuHU.cjs");
8
+ const require_curveFns = require("./curveFns-Dneh4D9N.cjs");
9
9
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
10
- const require_surfaceBuilders = require("./surfaceBuilders-D5kFAV1i.cjs");
11
- const require_helpers = require("./helpers-D7Y4Vxhf.cjs");
10
+ const require_surfaceBuilders = require("./surfaceBuilders-BtYpRGXh.cjs");
11
+ const require_helpers = require("./helpers-ClWqvNl5.cjs");
12
12
  // 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 { E as ok, d as validationError, g as err, t as BrepErrorCode } from "./errors-BTccWbtE.js";
2
- import { i as CompoundBlueprint } from "./blueprintSketcher-DPP1g95U.js";
3
- import { t as Blueprint } from "./blueprint-BYXwa2cF.js";
2
+ import { i as CompoundBlueprint } from "./blueprintSketcher-C28vnWYu.js";
3
+ import { t as Blueprint } from "./blueprint-BzgIBZly.js";
4
4
  // 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-O_blYTWT.cjs");
2
- const require_blueprintSketcher = require("./blueprintSketcher-zQgjgodb.cjs");
3
- const require_blueprint = require("./blueprint-DtPRNDEu.cjs");
2
+ const require_blueprintSketcher = require("./blueprintSketcher-C5Nn6Yi7.cjs");
3
+ const require_blueprint = require("./blueprint-CGBIm-Xk.cjs");
4
4
  // src/2d/lib/curve2dFns.ts
5
5
  /**
6
6
  * Return a reversed copy of the curve (non-mutating).
@@ -1,10 +1,10 @@
1
- import { J as getKernel2D, q as getKernel } from "./shapeTypes-DoPnZHn_.js";
1
+ import { J as getKernel2D, q as getKernel } from "./shapeTypes-DZGS7hgn.js";
2
2
  import { i as wasmIndex, n as bug } from "./bug-ClMTAJhe.js";
3
3
  import { E as ok, P as unwrap, g as err, n as computationError, s as safeIndex, x as isOk } from "./errors-BTccWbtE.js";
4
4
  import { r as RAD2DEG, t as DEG2RAD } from "./constants-iraOnb2p.js";
5
5
  import { t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
6
- import { _ as rotate2d, b as squareDistance2d, d as cartesianToPolar, f as crossProduct2d, g as polarToCartesian, h as polarAngle2d, l as add2d, p as distance2d, v as samePoint, x as subtract2d, y as scalarMultiply2d } from "./helpers-BuI9lh-t.js";
7
- import { C as isPoint2D, b as normalize2d, c as make2dBezierCurve, d as make2dEllipseArc, g as approximateAsBSpline, h as make2dThreePointArc, l as make2dCircle, m as make2dTangentArc, n as asSVG, p as make2dSegmentCurve, r as viewbox, s as make2dArcFromCenter, t as Blueprint, v as Curve2D, x as BoundingBox2d } from "./blueprint-BYXwa2cF.js";
6
+ import { _ as rotate2d, b as squareDistance2d, d as cartesianToPolar, f as crossProduct2d, g as polarToCartesian, h as polarAngle2d, l as add2d, p as distance2d, v as samePoint, x as subtract2d, y as scalarMultiply2d } from "./helpers-TeE5hIEo.js";
7
+ import { C as isPoint2D, b as normalize2d, c as make2dBezierCurve, d as make2dEllipseArc, g as approximateAsBSpline, h as make2dThreePointArc, l as make2dCircle, m as make2dTangentArc, n as asSVG, p as make2dSegmentCurve, r as viewbox, s as make2dArcFromCenter, t as Blueprint, v as Curve2D, x as BoundingBox2d } from "./blueprint-BzgIBZly.js";
8
8
  // node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -1,10 +1,10 @@
1
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
2
2
  const require_bug = require("./bug-CBcpIPuf.cjs");
3
3
  const require_errors = require("./errors-O_blYTWT.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
6
- const require_helpers = require("./helpers-D7Y4Vxhf.cjs");
7
- const require_blueprint = require("./blueprint-DtPRNDEu.cjs");
6
+ const require_helpers = require("./helpers-ClWqvNl5.cjs");
7
+ const require_blueprint = require("./blueprint-CGBIm-Xk.cjs");
8
8
  // node_modules/flatqueue/index.js
9
9
  /**
10
10
  * @typedef {Float64ArrayConstructor | Float32ArrayConstructor |
@@ -1,10 +1,10 @@
1
1
  const require_bug = require("./bug-CBcpIPuf.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
3
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
4
- const require_surfaceBuilders = require("./surfaceBuilders-D5kFAV1i.cjs");
5
- const require_blueprintSketcher = require("./blueprintSketcher-zQgjgodb.cjs");
6
- const require_helpers = require("./helpers-D7Y4Vxhf.cjs");
7
- const require_blueprint = require("./blueprint-DtPRNDEu.cjs");
4
+ const require_surfaceBuilders = require("./surfaceBuilders-BtYpRGXh.cjs");
5
+ const require_blueprintSketcher = require("./blueprintSketcher-C5Nn6Yi7.cjs");
6
+ const require_helpers = require("./helpers-ClWqvNl5.cjs");
7
+ const require_blueprint = require("./blueprint-CGBIm-Xk.cjs");
8
8
  // 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 { i as wasmIndex, n as bug } from "./bug-ClMTAJhe.js";
2
2
  import { P as unwrap, s as safeIndex } from "./errors-BTccWbtE.js";
3
3
  import { r as lastOrThrow } from "./arrayAccess-BpgouNir.js";
4
- import { v as zip } from "./surfaceBuilders-BBs6D6Km.js";
5
- import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-DPP1g95U.js";
6
- import { f as crossProduct2d, o as PRECISION_INTERSECTION, v as samePoint$1, x as subtract2d } from "./helpers-BuI9lh-t.js";
7
- import { S as removeDuplicatePoints, p as make2dSegmentCurve, t as Blueprint } from "./blueprint-BYXwa2cF.js";
4
+ import { v as zip } from "./surfaceBuilders-BVyLEFoG.js";
5
+ import { a as Blueprints, i as CompoundBlueprint, l as intersectCurves, r as organiseBlueprints, t as BlueprintSketcher, u as Flatbush } from "./blueprintSketcher-C28vnWYu.js";
6
+ import { f as crossProduct2d, o as PRECISION_INTERSECTION, v as samePoint$1, x as subtract2d } from "./helpers-TeE5hIEo.js";
7
+ import { S as removeDuplicatePoints, p as make2dSegmentCurve, t as Blueprint } from "./blueprint-BzgIBZly.js";
8
8
  // src/2d/blueprints/cannedBlueprints.ts
9
9
  /**
10
10
  * Create a regular polygon blueprint inscribed in a circle of the given radius.
@@ -1,14 +1,14 @@
1
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-BUhKY2Kj.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-t8CbgIAS.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
6
6
  const require_planeOps = require("./planeOps-DZfLToKZ.cjs");
7
- const require_solidBuilders = require("./solidBuilders-Dwm0hXn5.cjs");
7
+ const require_solidBuilders = require("./solidBuilders-Dl6d8fGZ.cjs");
8
8
  const require_faceRoleFns = require("./faceRoleFns-Db5bYj4Q.cjs");
9
- const require_shapeFns = require("./shapeFns-D47cmLG8.cjs");
9
+ const require_shapeFns = require("./shapeFns-CahtmyZr.cjs");
10
10
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
11
- const require_surfaceBuilders = require("./surfaceBuilders-D5kFAV1i.cjs");
11
+ const require_surfaceBuilders = require("./surfaceBuilders-BtYpRGXh.cjs");
12
12
  // src/topology/metadata/faceTagFns.ts
13
13
  var shapeTagStore = /* @__PURE__ */ new WeakMap();
14
14
  var tagMetadataStore = /* @__PURE__ */ new WeakMap();
@@ -1,14 +1,14 @@
1
- import { D as getShapeKind, E as GeometryCleanupError, G as _usingCtx, h as disposeResultShape, n as castResultShape, q as getKernel, x as isShape3D } from "./shapeTypes-DoPnZHn_.js";
1
+ import { D as getShapeKind, E as GeometryCleanupError, G as _usingCtx, h as disposeResultShape, n as castResultShape, q as getKernel, x as isShape3D } from "./shapeTypes-DZGS7hgn.js";
2
2
  import { E as ok, P as unwrap, b as isErr, d as validationError, g as err, i as kernelError, l as typeCastError, t as BrepErrorCode } from "./errors-BTccWbtE.js";
3
- import { C as subShapeHashes, c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-yOGEI9hO.js";
3
+ import { C as subShapeHashes, c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-BRXpZFCi.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-iraOnb2p.js";
5
5
  import { a as vecDot, g as vecSub, h as vecScale, t as vecAdd } from "./vecOps-S-m9H_fe.js";
6
6
  import { o as resolvePlane } from "./planeOps-D3yDuMux.js";
7
- import { d as getFaceOrigins, f as propagateOriginsByHash, p as propagateOriginsFromEvolution } from "./solidBuilders-ZDGdvaTU.js";
7
+ import { d as getFaceOrigins, f as propagateOriginsByHash, p as propagateOriginsFromEvolution } from "./solidBuilders-BHGa-BWa.js";
8
8
  import { n as hasFaceRoles, r as propagateFaceRolesFromEvolution } from "./faceRoleFns-BPxzQF-n.js";
9
- import { t as clone } from "./shapeFns-kFm-m8jh.js";
9
+ import { t as clone } from "./shapeFns-24B0u4KE.js";
10
10
  import { n as getAtOrThrow, t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
11
- import { r as makeFace } from "./surfaceBuilders-BBs6D6Km.js";
11
+ import { r as makeFace } from "./surfaceBuilders-BVyLEFoG.js";
12
12
  // src/topology/metadata/faceTagFns.ts
13
13
  var shapeTagStore = /* @__PURE__ */ new WeakMap();
14
14
  var tagMetadataStore = /* @__PURE__ */ new WeakMap();
package/dist/brepjs.cjs CHANGED
@@ -1,42 +1,42 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_rolldown_runtime = require("./rolldown-runtime-BW-eSwOZ.cjs");
3
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
4
- const require_occtWasmAdapter = require("./occtWasmAdapter-BK--kx4R.cjs");
3
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
4
+ const require_occtWasmAdapter = require("./occtWasmAdapter-TX9M5rkb.cjs");
5
5
  const require_bug = require("./bug-CBcpIPuf.cjs");
6
6
  const require_errors = require("./errors-O_blYTWT.cjs");
7
- const require_topologyQueryFns = require("./topologyQueryFns-BUhKY2Kj.cjs");
8
- const require_validityTypes = require("./validityTypes-lfyOkCQm.cjs");
7
+ const require_topologyQueryFns = require("./topologyQueryFns-t8CbgIAS.cjs");
8
+ const require_validityTypes = require("./validityTypes-CT2goK1c.cjs");
9
9
  const require_constants = require("./constants-oee0S_x6.cjs");
10
10
  const require_types = require("./types-CjF9Rofr.cjs");
11
11
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
12
12
  const require_planeOps = require("./planeOps-DZfLToKZ.cjs");
13
- const require_faceFns = require("./faceFns-Jo9hMVqL.cjs");
14
- const require_solidBuilders = require("./solidBuilders-Dwm0hXn5.cjs");
15
- const require_booleanFns = require("./booleanFns-CkcJ8WB7.cjs");
16
- const require_primitiveFns = require("./primitiveFns-CZqSRhm8.cjs");
17
- const require_shapeFns = require("./shapeFns-D47cmLG8.cjs");
18
- const require_curveFns = require("./curveFns-B8mm5cou.cjs");
19
- const require_meshFns = require("./meshFns-Cs_qrlXI.cjs");
13
+ const require_faceFns = require("./faceFns-ClpZLuHU.cjs");
14
+ const require_solidBuilders = require("./solidBuilders-Dl6d8fGZ.cjs");
15
+ const require_booleanFns = require("./booleanFns-CvBttd1y.cjs");
16
+ const require_primitiveFns = require("./primitiveFns-u5Vnoanh.cjs");
17
+ const require_shapeFns = require("./shapeFns-CahtmyZr.cjs");
18
+ const require_curveFns = require("./curveFns-Dneh4D9N.cjs");
19
+ const require_meshFns = require("./meshFns-DmKYxmT_.cjs");
20
20
  const require_arrayAccess = require("./arrayAccess-DpJYARwv.cjs");
21
- const require_surfaceBuilders = require("./surfaceBuilders-D5kFAV1i.cjs");
22
- const require_healingFns = require("./healingFns-DGc2hk9z.cjs");
23
- const require_threadFns = require("./threadFns-Dq_Gff0C.cjs");
24
- const require_blueprintSketcher = require("./blueprintSketcher-zQgjgodb.cjs");
25
- const require_helpers = require("./helpers-D7Y4Vxhf.cjs");
26
- const require_blueprint = require("./blueprint-DtPRNDEu.cjs");
27
- const require_drawFns = require("./drawFns-CLJog-Xp.cjs");
28
- const require_measureFns = require("./measureFns-D8uSDn-8.cjs");
29
- const require_cornerFinder = require("./cornerFinder-Dzsi68w-.cjs");
30
- const require_boolean2D = require("./boolean2D-BJFpEXix.cjs");
31
- const require_blueprintFns = require("./blueprintFns-y2oH3LOO.cjs");
32
- const require_importFns = require("./importFns-Dwlc0KtB.cjs");
33
- const require_textBlueprints = require("./textBlueprints-BPrPhg5b.cjs");
34
- const require_loftFns = require("./loftFns-CnerVgTM.cjs");
35
- const require_refResolveFns = require("./refResolveFns-DBY8yC6n.cjs");
36
- const require_adjacencyFns = require("./adjacencyFns-DSGyqGyy.cjs");
37
- const require_cameraFns = require("./cameraFns-B9xKg36U.cjs");
38
- const require_textMetrics = require("./textMetrics-4xkjKmD1.cjs");
39
- const require_principalBoxFns = require("./principalBoxFns-Cozj46sS.cjs");
21
+ const require_surfaceBuilders = require("./surfaceBuilders-BtYpRGXh.cjs");
22
+ const require_healingFns = require("./healingFns-CVGVC3-a.cjs");
23
+ const require_threadFns = require("./threadFns-BK2TDl2R.cjs");
24
+ const require_blueprintSketcher = require("./blueprintSketcher-C5Nn6Yi7.cjs");
25
+ const require_helpers = require("./helpers-ClWqvNl5.cjs");
26
+ const require_blueprint = require("./blueprint-CGBIm-Xk.cjs");
27
+ const require_drawFns = require("./drawFns-CkHnrB4o.cjs");
28
+ const require_measureFns = require("./measureFns-_Q-bggOu.cjs");
29
+ const require_cornerFinder = require("./cornerFinder-BUj9Ms_n.cjs");
30
+ const require_boolean2D = require("./boolean2D-BRmFbYsb.cjs");
31
+ const require_blueprintFns = require("./blueprintFns-Crktz0-W.cjs");
32
+ const require_importFns = require("./importFns-1qi--R8S.cjs");
33
+ const require_textBlueprints = require("./textBlueprints-C1aPqvXX.cjs");
34
+ const require_loftFns = require("./loftFns-BqA5gWFR.cjs");
35
+ const require_refResolveFns = require("./refResolveFns-CEx0Xso0.cjs");
36
+ const require_adjacencyFns = require("./adjacencyFns-DyHi1paM.cjs");
37
+ const require_cameraFns = require("./cameraFns-Ds_tNjP7.cjs");
38
+ const require_textMetrics = require("./textMetrics-BhTII8oU.cjs");
39
+ const require_principalBoxFns = require("./principalBoxFns-Cs3z4CmX.cjs");
40
40
  const require_workerPool = require("./workerPool-D5tiNXrI.cjs");
41
41
  // src/kernel/types.ts
42
42
  /** Check if the kernel supports hidden-line-removal projection. */
@@ -7279,7 +7279,7 @@ function buildSolidFromMesh$1(vertices, faces) {
7279
7279
  }
7280
7280
  // src/io/threemfImportFns.ts
7281
7281
  /**
7282
- * 3MF import: parses a 3MF ZIP archive and builds one solid per placed object via sewing.
7282
+ * 3MF import: parses a 3MF ZIP archive and builds one shape per placed object via sewing.
7283
7283
  */
7284
7284
  function extractFromZip(data, target) {
7285
7285
  let eocdOffset = -1;
@@ -7668,6 +7668,19 @@ function findDominantColor(triangleColors) {
7668
7668
  }
7669
7669
  function buildSolidFromMesh(mesh) {
7670
7670
  const kernel = require_shapeTypes.getKernel();
7671
+ const triangles = [];
7672
+ for (const [v1, v2, v3] of mesh.triangles) {
7673
+ const va = mesh.vertices[v1];
7674
+ const vb = mesh.vertices[v2];
7675
+ const vc = mesh.vertices[v3];
7676
+ if (!va || !vb || !vc) continue;
7677
+ triangles.push([
7678
+ va,
7679
+ vb,
7680
+ vc
7681
+ ]);
7682
+ }
7683
+ if (kernel.capabilities.sewKeepsOrientation === true) return require_importFns.sewMeshToSolid(triangles, require_errors.BrepErrorCode.THREEMF_IMPORT_FAILED);
7671
7684
  const points = mesh.vertices.map(([x, y, z]) => ({
7672
7685
  x,
7673
7686
  y,
@@ -7678,22 +7691,10 @@ function buildSolidFromMesh(mesh) {
7678
7691
  const solid = kernel.buildSolidFromFaces(points, faces, 1e-6);
7679
7692
  return require_errors.ok(require_shapeTypes.castResultShape(solid));
7680
7693
  } catch {
7681
- const triangles = [];
7682
- for (const [v1, v2, v3] of mesh.triangles) {
7683
- const va = mesh.vertices[v1];
7684
- const vb = mesh.vertices[v2];
7685
- const vc = mesh.vertices[v3];
7686
- if (!va || !vb || !vc) continue;
7687
- triangles.push([
7688
- va,
7689
- vb,
7690
- vc
7691
- ]);
7692
- }
7693
7694
  return require_importFns.sewMeshToSolid(triangles, require_errors.BrepErrorCode.THREEMF_IMPORT_FAILED);
7694
7695
  }
7695
7696
  }
7696
- /** One solid per mesh; several are grouped into a compound that takes ownership of them. */
7697
+ /** One shape per mesh; several are grouped into a compound that takes ownership of them. */
7697
7698
  function buildShapeFromMeshes(meshes) {
7698
7699
  const solids = [];
7699
7700
  for (const mesh of meshes) {
@@ -7713,14 +7714,17 @@ function buildShapeFromMeshes(meshes) {
7713
7714
  /**
7714
7715
  * Import a 3MF file from a Blob.
7715
7716
  *
7716
- * Extracts the model XML from the ZIP archive and builds one solid per placed
7717
- * object by sewing its triangles. Build-item and component transforms are
7718
- * applied, and coordinates are scaled from the model `unit` to millimeters.
7717
+ * Extracts the model XML from the ZIP archive and builds a shape per placed
7718
+ * object by sewing its triangles as `importSTL` sews a file: a `Solid` per
7719
+ * closed body, a `Shell` per open one, and each sealed cavity cut from the body
7720
+ * around it. Build-item and component transforms are applied, and coordinates
7721
+ * are scaled from the model `unit` to millimeters.
7719
7722
  *
7720
7723
  * @param blob - A Blob or File containing 3MF data (.3mf).
7721
- * @returns A `Result` wrapping the imported solid (a `Compound` of solids when the
7722
- * build places several objects), or an error if parsing fails or the build
7723
- * expands to more than 100,000 placed objects or 2,000,000 triangles.
7724
+ * @returns A `Result` wrapping the imported shape (a `Compound` when the build
7725
+ * places several objects or an object holds several bodies), or an error if
7726
+ * parsing fails or the build expands to more than 100,000 placed objects or
7727
+ * 2,000,000 triangles.
7724
7728
  *
7725
7729
  * @example
7726
7730
  * ```ts
package/dist/brepjs.js CHANGED
@@ -1,40 +1,40 @@
1
- import { $ as initFromOC, A as as3D, C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, G as _usingCtx, H as withScope, I as getDisposalStats, J as getKernel2D, K as getActiveKernelId, L as isLive, M as is3D, N as DisposalScope, P as createHandle, Q as initFromManifold, S as isShell, T as isWire, U as withScopeResult, V as withArenaCheckpoint, W as withScopeResultAsync, X as getKernelTier, Y as getKernelCapabilities, Z as init, _ as isCompound, a as castShape3D, at as withTier, b as isShape1D, c as createEdge, ct as resetPerformanceStats, d as createSolid, et as prewarm, f as createVertex, h as disposeResultShape, i as castShape, it as withQuality, j as is2D, k as as2D, l as createFace, lt as currentQuality, n as castResultShape, nt as registerKernelTier, ot as BrepkitAdapter, p as createWire, q as getKernel, rt as withKernel, s as createCompound, st as getPerformanceStats, tt as registerKernel, u as createShell, ut as qualityDeflection, v as isEdge, w as isVertex, x as isShape3D, y as isFace, z as resetDisposalStats } from "./shapeTypes-DoPnZHn_.js";
2
- import { M as DEFAULT_CAPABILITIES, N as EXACT_BREP_CAPABILITIES, t as OcctWasmAdapter } from "./occtWasmAdapter-C-Qi-jxS.js";
1
+ import { $ as initFromOC, A as as3D, C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, G as _usingCtx, H as withScope, I as getDisposalStats, J as getKernel2D, K as getActiveKernelId, L as isLive, M as is3D, N as DisposalScope, P as createHandle, Q as initFromManifold, S as isShell, T as isWire, U as withScopeResult, V as withArenaCheckpoint, W as withScopeResultAsync, X as getKernelTier, Y as getKernelCapabilities, Z as init, _ as isCompound, a as castShape3D, at as withTier, b as isShape1D, c as createEdge, ct as resetPerformanceStats, d as createSolid, et as prewarm, f as createVertex, h as disposeResultShape, i as castShape, it as withQuality, j as is2D, k as as2D, l as createFace, lt as currentQuality, n as castResultShape, nt as registerKernelTier, ot as BrepkitAdapter, p as createWire, q as getKernel, rt as withKernel, s as createCompound, st as getPerformanceStats, tt as registerKernel, u as createShell, ut as qualityDeflection, v as isEdge, w as isVertex, x as isShape3D, y as isFace, z as resetDisposalStats } from "./shapeTypes-DZGS7hgn.js";
2
+ import { M as DEFAULT_CAPABILITIES, N as EXACT_BREP_CAPABILITIES, t as OcctWasmAdapter } from "./occtWasmAdapter-Be-xZvbQ.js";
3
3
  import { i as wasmIndex, n as bug, t as BrepBugError } from "./bug-ClMTAJhe.js";
4
4
  import { A as tap, C as mapBoth, D as or, E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, O as orElse, P as unwrap, R as zip, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, j as tapErr, k as pipeline, l as typeCastError, m as andThen, n as computationError, o as queryError, p as all, r as ioError, t as BrepErrorCode, u as unsupportedError, v as flatten, w as mapErr, x as isOk, y as fromNullable } from "./errors-BTccWbtE.js";
5
- import { D as kernelCallScoped, E as kernelCallRaw, T as kernelCall, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as vertexPosition, x as iterWires, y as iterSolids } from "./topologyQueryFns-yOGEI9hO.js";
6
- import { a as isPlanarFace, c as manifoldShell, d as planarWire, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, o as isPlanarWire, r as isManifoldShell, s as isValidSolid, t as closedWire, u as planarFace } from "./validityTypes-CGrEOscY.js";
5
+ import { D as kernelCallScoped, E as kernelCallRaw, T as kernelCall, _ as iterFaces, a as getCachedSurfaceType, b as iterVertices, c as getFaces, d as getSolids, f as getVertices, g as iterEdges, h as iterCompSolids, m as invalidateShapeCache, n as getBounds, o as getCompSolids, p as getWires, s as getEdges, t as describe$1, u as getShells, v as iterShells, w as vertexPosition, x as iterWires, y as iterSolids } from "./topologyQueryFns-BRXpZFCi.js";
6
+ import { a as isPlanarFace, c as manifoldShell, d as planarWire, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, o as isPlanarWire, r as isManifoldShell, s as isValidSolid, t as closedWire, u as planarFace } from "./validityTypes-OSx482aJ.js";
7
7
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-iraOnb2p.js";
8
8
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-CKXsIm9-.js";
9
9
  import { a as vecDot, c as vecLength, d as vecNormalize, f as vecProjectToPlane, g as vecSub, h as vecScale, i as vecDistance, l as vecLengthSq, m as vecRotate, n as vecAngle, o as vecEquals, p as vecRepr, r as vecCross, s as vecIsZero, t as vecAdd, u as vecNegate } from "./vecOps-S-m9H_fe.js";
10
10
  import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-D3yDuMux.js";
11
- import { C as shapeType, S as iterTopo, _ as cast, a as faceOrientation, b as fromBREP, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, x as isCompSolid, y as downcast } from "./faceFns-2jGPfqvB.js";
12
- import { d as getFaceOrigins, m as setShapeOrigin, r as makeCylinder, t as makeCompound } from "./solidBuilders-ZDGdvaTU.js";
13
- import { C as getFaceTags, E as tagFaces, S as findFacesByTag, T as setTagMetadata, _ as colorFaces, a as fuse$2, b as getShapeColor, c as section$1, d as split$1, g as propagateMetadataThroughRelocation, i as cutAll$2, l as sectionToFace$1, o as fuseAll$2, p as hasAnyMetadata, r as cut$2, s as intersect$2, t as booleanPipeline, u as slice$1, v as colorShape, w as getTagMetadata, x as parseColor, y as getFaceColor } from "./booleanFns-B9RvEpHB.js";
14
- import { A as locate$1, C as threePointArc, D as wireLoop, E as wire, F as transformCopy$1, I as translate$2, M as resize, N as rotate$2, O as applyMatrix$1, P as scale$3, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, j as mirror$2, k as composeTransforms, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-DPqHA3sX.js";
15
- import { a as isSameShape, i as isEqualShape, n as getHashCode, o as simplify$1, r as isEmpty$2, s as toBREP$1, t as clone$1 } from "./shapeFns-kFm-m8jh.js";
16
- import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-EsJgIpc6.js";
17
- import { a as meshEdges$1, c as meshMultiLOD, d as buildMeshCacheKey, f as clearMeshCache, i as mesh$1, l as scaleDefaultTolerance, n as exportSTEP, o as meshLODs, p as createMeshCache, r as exportSTL, s as meshLODsProgressive, t as exportIGES } from "./meshFns-Bo4EQJFO.js";
11
+ import { C as shapeType, S as iterTopo, _ as cast, a as faceOrientation, b as fromBREP, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, x as isCompSolid, y as downcast } from "./faceFns-Ek2vnYA8.js";
12
+ import { d as getFaceOrigins, m as setShapeOrigin, r as makeCylinder, t as makeCompound } from "./solidBuilders-BHGa-BWa.js";
13
+ import { C as getFaceTags, E as tagFaces, S as findFacesByTag, T as setTagMetadata, _ as colorFaces, a as fuse$2, b as getShapeColor, c as section$1, d as split$1, g as propagateMetadataThroughRelocation, i as cutAll$2, l as sectionToFace$1, o as fuseAll$2, p as hasAnyMetadata, r as cut$2, s as intersect$2, t as booleanPipeline, u as slice$1, v as colorShape, w as getTagMetadata, x as parseColor, y as getFaceColor } from "./booleanFns-Dcv_aMcv.js";
14
+ import { A as locate$1, C as threePointArc, D as wireLoop, E as wire, F as transformCopy$1, I as translate$2, M as resize, N as rotate$2, O as applyMatrix$1, P as scale$3, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, j as mirror$2, k as composeTransforms, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-D53I6iYC.js";
15
+ import { a as isSameShape, i as isEqualShape, n as getHashCode, o as simplify$1, r as isEmpty$2, s as toBREP$1, t as clone$1 } from "./shapeFns-24B0u4KE.js";
16
+ import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-DR1JAITD.js";
17
+ import { a as meshEdges$1, c as meshMultiLOD, d as buildMeshCacheKey, f as clearMeshCache, i as mesh$1, l as scaleDefaultTolerance, n as exportSTEP, o as meshLODs, p as createMeshCache, r as exportSTL, s as meshLODsProgressive, t as exportIGES } from "./meshFns-DBN_h_7v.js";
18
18
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-BpgouNir.js";
19
- import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, p as makeEllipseArc, r as makeFace, s as assembleWire, u as makeBezierCurve } from "./surfaceBuilders-BBs6D6Km.js";
20
- import { A as thicken$1, C as chamferDistAngles, D as offset$1, E as fillet$2, F as toLODGeometryLevels, I as toLineGeometryData, M as toBufferGeometryData, N as toGroupedBufferGeometryData, O as removeFaces$1, P as toLODGeometryData, S as chamferDistAngle, T as draft$1, _ as checkBoolean, a as healFace, b as getNurbsCurveData, c as isValid$1, d as chamferWithEvolution, f as cutWithEvolution, g as shellWithEvolution, h as intersectWithEvolution, i as heal$1, j as variableFillet, k as shell$2, l as solidFromShell, m as fuseWithEvolution, n as fixSelfIntersection, o as healSolid, p as filletWithEvolution, r as fixShape, s as healWire, t as autoHeal, u as positionOnCurve, v as cutAllBisect, w as chamfer$2, x as getNurbsSurfaceData, y as fuseAllBisect } from "./healingFns-DvuJr4RS.js";
21
- import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, G as quatFromAxisAngle, H as circularPattern, I as createAssemblyNode, J as quatRotate, K as quatFromTo, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as quatMultiply, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-D7D_qR7t.js";
22
- import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-DPP1g95U.js";
23
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-BuI9lh-t.js";
24
- import { _ as approximateAsSvgCompatibleCurve, o as ellipseArcFlags } from "./blueprint-BYXwa2cF.js";
25
- import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-Bht1ceeH.js";
26
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns--UKrACtx.js";
27
- import { t as cornerFinder } from "./cornerFinder-DgVMDBCo.js";
28
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CNf7lVXV.js";
29
- import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-YuJQgywS.js";
30
- import { a as exportSTEPConfigured, c as exportThreeMF, d as exportGlb, f as exportGltf, i as sewMeshToSolid, l as blueprintToDXF, n as importSTEP, o as importSVG, p as exportOBJ, r as importSTL, s as importSVGPathD, t as importIGES, u as exportDXF } from "./importFns-TKzj4FaZ.js";
31
- import { S as revolve$2, a as Sketches, b as extrude$2, c as compoundSketchFace, d as sketchExtrude, f as sketchFace, g as sketchWires, h as sketchSweep, i as setFallbackFont, l as compoundSketchLoft, m as sketchRevolve, n as getFont, o as Sketch, p as sketchLoft, r as loadFont, s as compoundSketchExtrude, t as textBlueprints, u as compoundSketchRevolve, x as extrudeAll, y as CompoundSketch } from "./textBlueprints-Dq3pUNSr.js";
32
- import { a as multiSectionSweep, c as twistExtrude, i as guidedSweep, n as loftAll, o as supportExtrude, r as complexExtrude, s as sweep$1, t as loft$2 } from "./loftFns-jnQL_zpD.js";
33
- import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-DtztzO1g.js";
34
- import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, l as wiresOfFace, n as adjacentFaces, o as sharedEdges, r as edgesOfFace, s as verticesOfEdge } from "./adjacencyFns-DfPO5LGP.js";
35
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-CLkNCsYU.js";
36
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-JN70dV5x.js";
37
- import { t as principalBoundingBox } from "./principalBoxFns-C3SQMyG5.js";
19
+ import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, p as makeEllipseArc, r as makeFace, s as assembleWire, u as makeBezierCurve } from "./surfaceBuilders-BVyLEFoG.js";
20
+ import { A as thicken$1, C as chamferDistAngles, D as offset$1, E as fillet$2, F as toLODGeometryLevels, I as toLineGeometryData, M as toBufferGeometryData, N as toGroupedBufferGeometryData, O as removeFaces$1, P as toLODGeometryData, S as chamferDistAngle, T as draft$1, _ as checkBoolean, a as healFace, b as getNurbsCurveData, c as isValid$1, d as chamferWithEvolution, f as cutWithEvolution, g as shellWithEvolution, h as intersectWithEvolution, i as heal$1, j as variableFillet, k as shell$2, l as solidFromShell, m as fuseWithEvolution, n as fixSelfIntersection, o as healSolid, p as filletWithEvolution, r as fixShape, s as healWire, t as autoHeal, u as positionOnCurve, v as cutAllBisect, w as chamfer$2, x as getNurbsSurfaceData, y as fuseAllBisect } from "./healingFns-CTPsDQkF.js";
21
+ import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, G as quatFromAxisAngle, H as circularPattern, I as createAssemblyNode, J as quatRotate, K as quatFromTo, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as quatMultiply, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-B2Foaws1.js";
22
+ import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-C28vnWYu.js";
23
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-TeE5hIEo.js";
24
+ import { _ as approximateAsSvgCompatibleCurve, o as ellipseArcFlags } from "./blueprint-BzgIBZly.js";
25
+ import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-BPskIgvL.js";
26
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-NLCrquKi.js";
27
+ import { t as cornerFinder } from "./cornerFinder-BEUeERZd.js";
28
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BWpQMVia.js";
29
+ import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-CN6koAgD.js";
30
+ import { a as exportSTEPConfigured, c as exportThreeMF, d as exportGlb, f as exportGltf, i as sewMeshToSolid, l as blueprintToDXF, n as importSTEP, o as importSVG, p as exportOBJ, r as importSTL, s as importSVGPathD, t as importIGES, u as exportDXF } from "./importFns-DTyCvMc3.js";
31
+ import { S as revolve$2, a as Sketches, b as extrude$2, c as compoundSketchFace, d as sketchExtrude, f as sketchFace, g as sketchWires, h as sketchSweep, i as setFallbackFont, l as compoundSketchLoft, m as sketchRevolve, n as getFont, o as Sketch, p as sketchLoft, r as loadFont, s as compoundSketchExtrude, t as textBlueprints, u as compoundSketchRevolve, x as extrudeAll, y as CompoundSketch } from "./textBlueprints-CihV6AGR.js";
32
+ import { a as multiSectionSweep, c as twistExtrude, i as guidedSweep, n as loftAll, o as supportExtrude, r as complexExtrude, s as sweep$1, t as loft$2 } from "./loftFns-DbXEtPKz.js";
33
+ import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-LMvuE8em.js";
34
+ import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, l as wiresOfFace, n as adjacentFaces, o as sharedEdges, r as edgesOfFace, s as verticesOfEdge } from "./adjacencyFns-DT8YVOtE.js";
35
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-xIy84D75.js";
36
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-CTA6sIE_.js";
37
+ import { t as principalBoundingBox } from "./principalBoxFns-B3NAkStp.js";
38
38
  import { _ as isSuccessResponse, a as createWorkerClient, c as enqueueTask, d as rejectAll, f as isBatchRequest, g as isOperationRequest, h as isInitRequest, i as registerHandler, l as isEmpty$1, m as isErrorResponse, n as createOperationRegistry, o as createTaskQueue, p as isDisposeRequest, r as createWorkerHandler, s as dequeueTask, t as createWorkerPool, u as pendingCount } from "./workerPool-Bc5hmJc4.js";
39
39
  // \0rolldown/runtime.js
40
40
  var __defProp = Object.defineProperty;
@@ -7288,7 +7288,7 @@ function buildSolidFromMesh$1(vertices, faces) {
7288
7288
  }
7289
7289
  // src/io/threemfImportFns.ts
7290
7290
  /**
7291
- * 3MF import: parses a 3MF ZIP archive and builds one solid per placed object via sewing.
7291
+ * 3MF import: parses a 3MF ZIP archive and builds one shape per placed object via sewing.
7292
7292
  */
7293
7293
  function extractFromZip(data, target) {
7294
7294
  let eocdOffset = -1;
@@ -7677,6 +7677,19 @@ function findDominantColor(triangleColors) {
7677
7677
  }
7678
7678
  function buildSolidFromMesh(mesh) {
7679
7679
  const kernel = getKernel();
7680
+ const triangles = [];
7681
+ for (const [v1, v2, v3] of mesh.triangles) {
7682
+ const va = mesh.vertices[v1];
7683
+ const vb = mesh.vertices[v2];
7684
+ const vc = mesh.vertices[v3];
7685
+ if (!va || !vb || !vc) continue;
7686
+ triangles.push([
7687
+ va,
7688
+ vb,
7689
+ vc
7690
+ ]);
7691
+ }
7692
+ if (kernel.capabilities.sewKeepsOrientation === true) return sewMeshToSolid(triangles, BrepErrorCode.THREEMF_IMPORT_FAILED);
7680
7693
  const points = mesh.vertices.map(([x, y, z]) => ({
7681
7694
  x,
7682
7695
  y,
@@ -7687,22 +7700,10 @@ function buildSolidFromMesh(mesh) {
7687
7700
  const solid = kernel.buildSolidFromFaces(points, faces, 1e-6);
7688
7701
  return ok(castResultShape(solid));
7689
7702
  } catch {
7690
- const triangles = [];
7691
- for (const [v1, v2, v3] of mesh.triangles) {
7692
- const va = mesh.vertices[v1];
7693
- const vb = mesh.vertices[v2];
7694
- const vc = mesh.vertices[v3];
7695
- if (!va || !vb || !vc) continue;
7696
- triangles.push([
7697
- va,
7698
- vb,
7699
- vc
7700
- ]);
7701
- }
7702
7703
  return sewMeshToSolid(triangles, BrepErrorCode.THREEMF_IMPORT_FAILED);
7703
7704
  }
7704
7705
  }
7705
- /** One solid per mesh; several are grouped into a compound that takes ownership of them. */
7706
+ /** One shape per mesh; several are grouped into a compound that takes ownership of them. */
7706
7707
  function buildShapeFromMeshes(meshes) {
7707
7708
  const solids = [];
7708
7709
  for (const mesh of meshes) {
@@ -7722,14 +7723,17 @@ function buildShapeFromMeshes(meshes) {
7722
7723
  /**
7723
7724
  * Import a 3MF file from a Blob.
7724
7725
  *
7725
- * Extracts the model XML from the ZIP archive and builds one solid per placed
7726
- * object by sewing its triangles. Build-item and component transforms are
7727
- * applied, and coordinates are scaled from the model `unit` to millimeters.
7726
+ * Extracts the model XML from the ZIP archive and builds a shape per placed
7727
+ * object by sewing its triangles as `importSTL` sews a file: a `Solid` per
7728
+ * closed body, a `Shell` per open one, and each sealed cavity cut from the body
7729
+ * around it. Build-item and component transforms are applied, and coordinates
7730
+ * are scaled from the model `unit` to millimeters.
7728
7731
  *
7729
7732
  * @param blob - A Blob or File containing 3MF data (.3mf).
7730
- * @returns A `Result` wrapping the imported solid (a `Compound` of solids when the
7731
- * build places several objects), or an error if parsing fails or the build
7732
- * expands to more than 100,000 placed objects or 2,000,000 triangles.
7733
+ * @returns A `Result` wrapping the imported shape (a `Compound` when the build
7734
+ * places several objects or an object holds several bodies), or an error if
7735
+ * parsing fails or the build expands to more than 100,000 placed objects or
7736
+ * 2,000,000 triangles.
7733
7737
  *
7734
7738
  * @example
7735
7739
  * ```ts
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-BUhKY2Kj.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-t8CbgIAS.cjs");
4
4
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
5
- const require_shapeFns = require("./shapeFns-D47cmLG8.cjs");
5
+ const require_shapeFns = require("./shapeFns-CahtmyZr.cjs");
6
6
  // src/projection/projectionPlanes.ts
7
7
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
8
8
  var PROJECTION_PLANES = {
@@ -1,8 +1,8 @@
1
- import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-DoPnZHn_.js";
1
+ import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-DZGS7hgn.js";
2
2
  import { E as ok, P as unwrap, d as validationError, g as err } from "./errors-BTccWbtE.js";
3
- import { s as getEdges } from "./topologyQueryFns-yOGEI9hO.js";
3
+ import { s as getEdges } from "./topologyQueryFns-BRXpZFCi.js";
4
4
  import { c as vecLength, d as vecNormalize, g as vecSub, r as vecCross } from "./vecOps-S-m9H_fe.js";
5
- import { t as clone } from "./shapeFns-kFm-m8jh.js";
5
+ import { t as clone } from "./shapeFns-24B0u4KE.js";
6
6
  // src/projection/projectionPlanes.ts
7
7
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
8
8
  var PROJECTION_PLANES = {
package/dist/core.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-C06KHgTm.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-6tBG0xrR.cjs");
3
3
  const require_bug = require("./bug-CBcpIPuf.cjs");
4
4
  const require_errors = require("./errors-O_blYTWT.cjs");
5
- const require_validityTypes = require("./validityTypes-lfyOkCQm.cjs");
5
+ const require_validityTypes = require("./validityTypes-CT2goK1c.cjs");
6
6
  const require_constants = require("./constants-oee0S_x6.cjs");
7
7
  const require_types = require("./types-CjF9Rofr.cjs");
8
8
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");