brepjs 18.108.0 → 18.109.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 (86) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{blueprint-D5ArjKiA.cjs → blueprint-BwkD2qeC.cjs} +5 -5
  4. package/dist/{blueprint-CF12Nceg.js → blueprint-Dw0QqImu.js} +5 -5
  5. package/dist/{blueprintFns-CcCfkbyd.cjs → blueprintFns-B-aybpEo.cjs} +2 -2
  6. package/dist/{blueprintFns-BuPAK4OB.js → blueprintFns-BowWsZgJ.js} +2 -2
  7. package/dist/{blueprintSketcher-CEQ8s7TD.js → blueprintSketcher-7rtwqUHZ.js} +3 -3
  8. package/dist/{blueprintSketcher-DCttG3KS.cjs → blueprintSketcher-RK-cH6ps.cjs} +3 -3
  9. package/dist/{boolean2D-BCqDjg0y.cjs → boolean2D-CZUEOoAh.cjs} +4 -4
  10. package/dist/{boolean2D-8rB2sUzj.js → boolean2D-y0SSZfe2.js} +4 -4
  11. package/dist/brepjs.cjs +64 -27
  12. package/dist/brepjs.js +64 -27
  13. package/dist/{cameraFns-Bu6jgTKc.js → cameraFns-bk9e0F-T.js} +2 -2
  14. package/dist/{cameraFns-S7YbAxfg.cjs → cameraFns-uo1sZbBT.cjs} +2 -2
  15. package/dist/core.cjs +1 -1
  16. package/dist/core.js +1 -1
  17. package/dist/{cornerFinder-Ci2NbbAW.cjs → cornerFinder-B4q88TRb.cjs} +1 -1
  18. package/dist/{cornerFinder-COqoeY--.js → cornerFinder-DUGeBIvD.js} +1 -1
  19. package/dist/{curveFns-CG05Jygr.js → curveFns-CcSn4-Rf.js} +1 -1
  20. package/dist/{curveFns-Dx7_wMut.cjs → curveFns-DgUJpH4z.cjs} +1 -1
  21. package/dist/{drawFns-DYkjT_hx.cjs → drawFns-DNxs7PAT.cjs} +12 -12
  22. package/dist/{drawFns-CsXPFyDe.js → drawFns-SQIBls6p.js} +12 -12
  23. package/dist/{faceFns-mo4ThIHz.js → faceFns-B86WGqDg.js} +2 -2
  24. package/dist/{faceFns-DKg2St8b.cjs → faceFns-BV0GnTlt.cjs} +2 -2
  25. package/dist/{healingFns-OL0bBSSY.cjs → healingFns-C4UE1ZyM.cjs} +5 -5
  26. package/dist/{healingFns-C5AomW4j.js → healingFns-CPm_VFck.js} +5 -5
  27. package/dist/{helpers-8zxf2gkc.cjs → helpers-BSLPCflF.cjs} +6 -6
  28. package/dist/{helpers-DT44wBAD.js → helpers-DhJwFrkC.js} +6 -6
  29. package/dist/{importFns-B6hw9Nhx.cjs → importFns-CgMQIi0z.cjs} +2 -2
  30. package/dist/{importFns-CEczwPdN.js → importFns-nR9lEx22.js} +2 -2
  31. package/dist/io.cjs +2 -2
  32. package/dist/io.js +2 -2
  33. package/dist/kernel/brepkit/transformOps.d.ts +1 -0
  34. package/dist/kernel/interfaces/transformOps.d.ts +10 -0
  35. package/dist/kernel/occt/transformOps.d.ts +8 -0
  36. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  37. package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +1 -0
  38. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  39. package/dist/kernel/occtWasm/occtWasmTypes.d.ts +7 -0
  40. package/dist/kernel/occtWasm/transformOps.d.ts +7 -0
  41. package/dist/{loftFns-DyNuD9XL.js → loftFns-CmShFQlv.js} +1 -1
  42. package/dist/{loftFns-DaRDYpfB.cjs → loftFns-fpTmrIdd.cjs} +1 -1
  43. package/dist/{measureFns-Q2dnokUU.cjs → measureFns-DblG0Yaz.cjs} +3 -3
  44. package/dist/{measureFns-Dkh_DmrE.js → measureFns-a5Vx25or.js} +3 -3
  45. package/dist/measurement.cjs +1 -1
  46. package/dist/measurement.js +1 -1
  47. package/dist/{meshFns-JwMEfMvC.cjs → meshFns-1hQSn1p2.cjs} +3 -3
  48. package/dist/{meshFns-DeGn7mQ4.js → meshFns-DbmidUzH.js} +3 -3
  49. package/dist/{occtWasmAdapter-DDZELjlB.cjs → occtWasmAdapter-B2TEQOjs.cjs} +38 -10
  50. package/dist/{occtWasmAdapter-BDEPveZs.js → occtWasmAdapter-CKwtxwNH.js} +38 -10
  51. package/dist/operations.cjs +2 -2
  52. package/dist/operations.js +2 -2
  53. package/dist/{primitiveFns-62SO4ti5.js → primitiveFns-CBrOyk5S.js} +4 -4
  54. package/dist/{primitiveFns-BAWtMd9H.cjs → primitiveFns-DLIWtQWA.cjs} +4 -4
  55. package/dist/projection.cjs +1 -1
  56. package/dist/projection.js +1 -1
  57. package/dist/query.cjs +2 -2
  58. package/dist/query.js +2 -2
  59. package/dist/{shapeFns-DyBbhU30.js → shapeFns-DrZOVwHX.js} +44 -4
  60. package/dist/{shapeFns-L4a8kH_A.cjs → shapeFns-ybo0INGL.cjs} +55 -3
  61. package/dist/shapeRef.cjs +1 -1
  62. package/dist/shapeRef.js +1 -1
  63. package/dist/{shapeRefFns-Dij41NuC.cjs → shapeRefFns--2FPCL7P.cjs} +4 -4
  64. package/dist/{shapeRefFns-Cn4WNb3q.js → shapeRefFns-C1DefNzr.js} +4 -4
  65. package/dist/{shapeTypes-Bwgm5N6R.cjs → shapeTypes-BTTwjHy5.cjs} +18 -1
  66. package/dist/{shapeTypes-C4lPfrc2.js → shapeTypes-Dpu6mD3m.js} +18 -1
  67. package/dist/sketching.cjs +3 -3
  68. package/dist/sketching.js +3 -3
  69. package/dist/{solidBuilders-Biwv2cW3.js → solidBuilders-C32wXQWG.js} +5 -5
  70. package/dist/{solidBuilders-CgRmJEdn.cjs → solidBuilders-DiUv_mD0.cjs} +5 -5
  71. package/dist/{surfaceBuilders-FLnYYA70.cjs → surfaceBuilders-UyyfZy8w.cjs} +2 -2
  72. package/dist/{surfaceBuilders-Bww4jhBo.js → surfaceBuilders-rkE-jE90.js} +2 -2
  73. package/dist/text.cjs +2 -2
  74. package/dist/text.js +2 -2
  75. package/dist/{textBlueprints-CEzTC9vX.js → textBlueprints-BnkWAqwS.js} +7 -7
  76. package/dist/{textBlueprints-08NcMO9T.cjs → textBlueprints-D5lsZswr.cjs} +7 -7
  77. package/dist/{textMetrics-CBbDQ5QW.js → textMetrics-COGYk0LE.js} +1 -1
  78. package/dist/{textMetrics-W-H6jUDj.cjs → textMetrics-IC_IoI7l.cjs} +1 -1
  79. package/dist/{threadFns-DGYdomjN.cjs → threadFns-C8bErjVC.cjs} +6 -6
  80. package/dist/{threadFns-8rKpQXiR.js → threadFns-bCOhVQLb.js} +6 -6
  81. package/dist/topology/metadata/metadataPropagation.d.ts +21 -0
  82. package/dist/topology.cjs +8 -8
  83. package/dist/topology.js +8 -8
  84. package/dist/{topologyQueryFns-Do8E4EXj.js → topologyQueryFns-BeKaWpNm.js} +1 -1
  85. package/dist/{topologyQueryFns-ygBBXxnP.cjs → topologyQueryFns-CoXVHuN7.cjs} +1 -1
  86. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
- import { Z as getKernel, t as castShape } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, t as castShape } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, R as unwrap, b as err, l as typeCastError } from "./errors-DNWJsfVU.js";
3
- import { a as getCachedSurfaceType } from "./topologyQueryFns-Do8E4EXj.js";
3
+ import { a as getCachedSurfaceType } from "./topologyQueryFns-BeKaWpNm.js";
4
4
  import { r as toVec3 } from "./types-D24Y27N0.js";
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ygBBXxnP.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
4
4
  const require_types = require("./types-KjA8tY4Y.cjs");
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
@@ -1,11 +1,11 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ygBBXxnP.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
- const require_faceFns = require("./faceFns-DKg2St8b.cjs");
6
- const require_shapeFns = require("./shapeFns-L4a8kH_A.cjs");
5
+ const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
6
+ const require_shapeFns = require("./shapeFns-ybo0INGL.cjs");
7
7
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
8
- const require_solidBuilders = require("./solidBuilders-CgRmJEdn.cjs");
8
+ const require_solidBuilders = require("./solidBuilders-DiUv_mD0.cjs");
9
9
  //#region src/topology/threeHelpers.ts
10
10
  /**
11
11
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,11 +1,11 @@
1
- import { Z as getKernel, _ as isSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, y as isWire } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, _ as isSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, y as isWire } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-DNWJsfVU.js";
3
- import { c as getFaces, i as getCachedIsValid, l as getOrCreateCache, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-Do8E4EXj.js";
3
+ import { c as getFaces, i as getCachedIsValid, l as getOrCreateCache, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-BeKaWpNm.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
5
- import { v as downcast } from "./faceFns-mo4ThIHz.js";
6
- import { _ as propagateAllMetadata, g as collectInputFaceHashes } from "./shapeFns-DyBbhU30.js";
5
+ import { v as downcast } from "./faceFns-B86WGqDg.js";
6
+ import { g as collectInputFaceHashes, v as propagateAllMetadata } from "./shapeFns-DrZOVwHX.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-Biwv2cW3.js";
8
+ import { f as cut, h as fuseAll, m as fuse, p as cutAll } from "./solidBuilders-C32wXQWG.js";
9
9
  //#region src/topology/threeHelpers.ts
10
10
  /**
11
11
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,12 +1,12 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ygBBXxnP.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
6
- const require_faceFns = require("./faceFns-DKg2St8b.cjs");
7
- const require_shapeFns = require("./shapeFns-L4a8kH_A.cjs");
8
- const require_curveFns = require("./curveFns-Dx7_wMut.cjs");
9
- const require_measureFns = require("./measureFns-Q2dnokUU.cjs");
6
+ const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
7
+ const require_shapeFns = require("./shapeFns-ybo0INGL.cjs");
8
+ const require_curveFns = require("./curveFns-DgUJpH4z.cjs");
9
+ const require_measureFns = require("./measureFns-DblG0Yaz.cjs");
10
10
  //#region src/utils/vec2d.ts
11
11
  /** Precision for curve intersection and parameter operations. */
12
12
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,12 +1,12 @@
1
- import { Z as getKernel, p as isFace } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, p as isFace } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, T as isOk, b as err, h as bug, o as queryError } from "./errors-DNWJsfVU.js";
3
- import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-Do8E4EXj.js";
3
+ import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-BeKaWpNm.js";
4
4
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
5
  import { a as vecDot, d as vecNormalize } from "./vecOps-SKPRvPH-.js";
6
- import { l as normalAt, s as getSurfaceType } from "./faceFns-mo4ThIHz.js";
7
- import { a as isSameShape, n as getHashCode } from "./shapeFns-DyBbhU30.js";
8
- import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-CG05Jygr.js";
9
- import { n as measureArea } from "./measureFns-Dkh_DmrE.js";
6
+ import { l as normalAt, s as getSurfaceType } from "./faceFns-B86WGqDg.js";
7
+ import { a as isSameShape, n as getHashCode } from "./shapeFns-DrZOVwHX.js";
8
+ import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-CcSn4-Rf.js";
9
+ import { n as measureArea } from "./measureFns-a5Vx25or.js";
10
10
  //#region src/utils/vec2d.ts
11
11
  /** Precision for curve intersection and parameter operations. */
12
12
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.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-D5ArjKiA.cjs");
5
+ const require_blueprint = require("./blueprint-BwkD2qeC.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) {
@@ -1,8 +1,8 @@
1
- import { Z as getKernel, t as castShape } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, t as castShape } from "./shapeTypes-Dpu6mD3m.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-CF12Nceg.js";
5
+ import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-Dw0QqImu.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) {
package/dist/io.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_meshFns = require("./meshFns-JwMEfMvC.cjs");
3
- const require_importFns = require("./importFns-B6hw9Nhx.cjs");
2
+ const require_meshFns = require("./meshFns-1hQSn1p2.cjs");
3
+ const require_importFns = require("./importFns-CgMQIi0z.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-DeGn7mQ4.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-CEczwPdN.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-DbmidUzH.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-nR9lEx22.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -17,6 +17,7 @@ export declare function transformBatch(bk: BrepkitKernel, entries: TransformEntr
17
17
  /** Co-located factory: returns the transform slice of {@link KernelAdapter} bound to `bk`. */
18
18
  export declare function makeTransformOps(bk: BrepkitKernel): {
19
19
  transform: (shape: any, trsf: any) => any;
20
+ locate: (shape: any, trsf: any) => any;
20
21
  translate: (shape: any, x: number, y: number, z: number) => any;
21
22
  rotate: (shape: any, angle: number, axis: readonly [number, number, number] | undefined, center: readonly [number, number, number] | undefined) => any;
22
23
  mirror: (shape: any, origin: readonly [number, number, number], normal: readonly [number, number, number]) => any;
@@ -40,6 +40,16 @@ export interface KernelTransformOps {
40
40
  dispose: () => void;
41
41
  };
42
42
  transform(shape: KernelShape, trsf: KernelType): KernelShape;
43
+ /**
44
+ * Apply a rigid transform as a *location re-tag* that shares the source's
45
+ * underlying geometry instead of deep-copying its topology — O(1) vs
46
+ * O(topology size). `trsf` MUST be a rigid motion (rotation + translation,
47
+ * e.g. built from translate/rotate via {@link composeTransform}); non-rigid
48
+ * input (scale/shear) is unsupported. Kernels with no cheap-location concept
49
+ * fall back to a copying {@link transform}: the result is geometrically
50
+ * identical, only the cost differs.
51
+ */
52
+ locate(shape: KernelShape, trsf: KernelType): KernelShape;
43
53
  translate(shape: KernelShape, x: number, y: number, z: number): KernelShape;
44
54
  rotate(shape: KernelShape, angle: number, axis?: readonly [number, number, number], center?: readonly [number, number, number]): KernelShape;
45
55
  mirror(shape: KernelShape, origin: readonly [number, number, number], normal: readonly [number, number, number]): KernelShape;
@@ -12,6 +12,13 @@ export declare function transformBatch(oc: KernelInstance, entries: TransformEnt
12
12
  * Applies a transformation matrix to a shape.
13
13
  */
14
14
  export declare function transform(oc: KernelInstance, shape: KernelShape, trsf: KernelType): KernelShape;
15
+ /**
16
+ * Apply a rigid transform as a location re-tag. Passing copy=false makes
17
+ * BRepBuilderAPI_Transform share the source TShape under a new location for a
18
+ * rigid motion, instead of the deep topology copy {@link transform} (copy=true)
19
+ * performs. Use only for rigid `trsf` (rotation + translation).
20
+ */
21
+ export declare function locate(oc: KernelInstance, shape: KernelShape, trsf: KernelType): KernelShape;
15
22
  /**
16
23
  * Translates a shape by the given offset.
17
24
  */
@@ -43,6 +50,7 @@ export declare function simplify(oc: KernelInstance, shape: KernelShape): Kernel
43
50
  /** Co-located factory: returns the transform slice of {@link KernelAdapter} bound to `oc`. */
44
51
  export declare function makeTransformOps(oc: KernelInstance): {
45
52
  transform: (shape: any, trsf: any) => any;
53
+ locate: (shape: any, trsf: any) => any;
46
54
  translate: (shape: any, x: number, y: number, z: number) => any;
47
55
  rotate: (shape: any, angle: number, axis: readonly [number, number, number] | undefined, center: readonly [number, number, number] | undefined) => any;
48
56
  mirror: (shape: any, origin: readonly [number, number, number], normal: readonly [number, number, number]) => any;
@@ -1,3 +1,3 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_occtWasmAdapter = require("../../occtWasmAdapter-DDZELjlB.cjs");
2
+ const require_occtWasmAdapter = require("../../occtWasmAdapter-B2TEQOjs.cjs");
3
3
  exports.OcctWasmAdapter = require_occtWasmAdapter.OcctWasmAdapter;
@@ -167,6 +167,7 @@ export declare class OcctWasmAdapter implements KernelAdapter {
167
167
  dispose: () => void;
168
168
  };
169
169
  transform(shape: KernelShape, trsf: KernelType): KernelShape;
170
+ locate(shape: KernelShape, trsf: KernelType): KernelShape;
170
171
  translate(shape: KernelShape, x: number, y: number, z: number): KernelShape;
171
172
  rotate(shape: KernelShape, angle: number, axis?: readonly [number, number, number], center?: readonly [number, number, number]): KernelShape;
172
173
  mirror(shape: KernelShape, origin: readonly [number, number, number], normal: readonly [number, number, number]): KernelShape;
@@ -1,2 +1,2 @@
1
- import { t as OcctWasmAdapter } from "../../occtWasmAdapter-BDEPveZs.js";
1
+ import { t as OcctWasmAdapter } from "../../occtWasmAdapter-CKwtxwNH.js";
2
2
  export { OcctWasmAdapter };
@@ -174,6 +174,13 @@ export interface OcctKernelWasm {
174
174
  mirror(id: number, px: number, py: number, pz: number, nx: number, ny: number, nz: number): number;
175
175
  copy(id: number): number;
176
176
  transform(id: number, matrix: EmVectorDouble): number;
177
+ /**
178
+ * Cheap location-only move (a `TopLoc_Location` re-tag sharing the source
179
+ * `TShape`). Optional: absent on WASM builds published before this method
180
+ * landed, so callers must feature-detect (`typeof k.located === 'function'`)
181
+ * and fall back to {@link transform}.
182
+ */
183
+ located?(id: number, matrix: EmVectorDouble): number;
177
184
  generalTransform(id: number, matrix: EmVectorDouble): number;
178
185
  linearPattern(id: number, dx: number, dy: number, dz: number, spacing: number, count: number): number;
179
186
  circularPattern(id: number, cx: number, cy: number, cz: number, ax: number, ay: number, az: number, angle: number, count: number): number;
@@ -16,6 +16,13 @@ export declare function composeTransform(ops: Array<{
16
16
  dispose: () => void;
17
17
  };
18
18
  export declare function transform(k: OcctKernelWasm, Module: OcctWasmModule, shape: KernelShape, trsf: KernelType): KernelShape;
19
+ /**
20
+ * Cheap location-only move. Uses the occt-wasm `located` facade method (a
21
+ * `TopLoc_Location` re-tag that shares the source `TShape`) when the loaded
22
+ * WASM build exposes it; builds without `located` fall back to the copying
23
+ * `transform` — same geometry, only the cost differs.
24
+ */
25
+ export declare function locate(k: OcctKernelWasm, Module: OcctWasmModule, shape: KernelShape, trsf: KernelType): KernelShape;
19
26
  export declare function translate(k: OcctKernelWasm, shape: KernelShape, x: number, y: number, z: number): KernelShape;
20
27
  export declare function rotate(k: OcctKernelWasm, shape: KernelShape, angle: number, axis?: readonly [number, number, number], center?: readonly [number, number, number]): KernelShape;
21
28
  export declare function mirror(k: OcctKernelWasm, shape: KernelShape, origin: readonly [number, number, number], normal: readonly [number, number, number]): KernelShape;
@@ -1,4 +1,4 @@
1
- import { Z as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-DNWJsfVU.js";
3
3
  import { r as toVec3 } from "./types-D24Y27N0.js";
4
4
  import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-SKPRvPH-.js";
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_types = require("./types-KjA8tY4Y.cjs");
4
4
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ygBBXxnP.cjs");
4
- const require_faceFns = require("./faceFns-DKg2St8b.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
4
+ const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
5
5
  //#region src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,7 +1,7 @@
1
- import { Z as getKernel } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, b as err, d as validationError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
3
- import { w as kernelCallRaw } from "./topologyQueryFns-Do8E4EXj.js";
4
- import { m as uvBounds } from "./faceFns-mo4ThIHz.js";
3
+ import { w as kernelCallRaw } from "./topologyQueryFns-BeKaWpNm.js";
4
+ import { m as uvBounds } from "./faceFns-B86WGqDg.js";
5
5
  //#region src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_measureFns = require("./measureFns-Q2dnokUU.cjs");
2
+ const require_measureFns = require("./measureFns-DblG0Yaz.cjs");
3
3
  exports.createDistanceQuery = require_measureFns.createDistanceQuery;
4
4
  exports.measureArea = require_measureFns.measureArea;
5
5
  exports.measureDistance = require_measureFns.measureDistance;
@@ -1,2 +1,2 @@
1
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-Dkh_DmrE.js";
1
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-a5Vx25or.js";
2
2
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps };
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-ygBBXxnP.cjs");
4
- const require_shapeFns = require("./shapeFns-L4a8kH_A.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
4
+ const require_shapeFns = require("./shapeFns-ybo0INGL.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
- import { Z as getKernel, gt as qualityDeflection } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, gt as qualityDeflection } from "./shapeTypes-Dpu6mD3m.js";
2
2
  import { A as ok, b as err, r as ioError } from "./errors-DNWJsfVU.js";
3
- import { d as getSolids, n as getBounds } from "./topologyQueryFns-Do8E4EXj.js";
4
- import { O as getFaceOrigins } from "./shapeFns-DyBbhU30.js";
3
+ import { d as getSolids, n as getBounds } from "./topologyQueryFns-BeKaWpNm.js";
4
+ import { A as getFaceOrigins } from "./shapeFns-DrZOVwHX.js";
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -2741,28 +2741,53 @@ function composeTransform(ops) {
2741
2741
  dispose: noop
2742
2742
  };
2743
2743
  }
2744
- function transform(k, Module, shape, trsf) {
2744
+ /**
2745
+ * Extract a 12-element row-major 3x4 matrix from the trsf representations the
2746
+ * occt-wasm adapter accepts (raw array, `{ matrix }`, `{ elements }`). Returns
2747
+ * undefined when no usable matrix is present.
2748
+ */
2749
+ function toMatrix12(trsf) {
2745
2750
  const t = trsf;
2746
2751
  let matrix;
2747
2752
  if (Array.isArray(t)) matrix = t;
2748
- else if (typeof t === "object") {
2749
- if (Array.isArray(t["matrix"])) {
2750
- matrix = t["matrix"];
2751
- if (matrix.length === 16) matrix = matrix.slice(0, 12);
2752
- } else if (Array.isArray(t["elements"])) matrix = t["elements"];
2753
+ else if (t !== null && typeof t === "object") {
2754
+ if (Array.isArray(t["matrix"])) matrix = t["matrix"];
2755
+ else if (Array.isArray(t["elements"])) matrix = t["elements"];
2753
2756
  }
2757
+ if (matrix && matrix.length === 16) matrix = matrix.slice(0, 12);
2758
+ return matrix && matrix.length >= 12 ? matrix : void 0;
2759
+ }
2760
+ function transform(k, Module, shape, trsf) {
2761
+ const matrix = toMatrix12(trsf);
2754
2762
  if (matrix) {
2755
- if (matrix.length === 16) matrix = matrix.slice(0, 12);
2756
- if (matrix.length >= 12) {
2763
+ const vec = makeVecDouble(Module, matrix);
2764
+ try {
2765
+ return wrapResult(k, k.transform(unwrap(shape), vec));
2766
+ } finally {
2767
+ vec.delete();
2768
+ }
2769
+ }
2770
+ return handle(k.getShapeType(unwrap(shape)), k.copy(unwrap(shape)));
2771
+ }
2772
+ /**
2773
+ * Cheap location-only move. Uses the occt-wasm `located` facade method (a
2774
+ * `TopLoc_Location` re-tag that shares the source `TShape`) when the loaded
2775
+ * WASM build exposes it; builds without `located` fall back to the copying
2776
+ * `transform` — same geometry, only the cost differs.
2777
+ */
2778
+ function locate(k, Module, shape, trsf) {
2779
+ if (typeof k.located === "function") {
2780
+ const matrix = toMatrix12(trsf);
2781
+ if (matrix) {
2757
2782
  const vec = makeVecDouble(Module, matrix);
2758
2783
  try {
2759
- return wrapResult(k, k.transform(unwrap(shape), vec));
2784
+ return wrapResult(k, k.located(unwrap(shape), vec));
2760
2785
  } finally {
2761
2786
  vec.delete();
2762
2787
  }
2763
2788
  }
2764
2789
  }
2765
- return handle(k.getShapeType(unwrap(shape)), k.copy(unwrap(shape)));
2790
+ return transform(k, Module, shape, trsf);
2766
2791
  }
2767
2792
  function translate(k, shape, x, y, z) {
2768
2793
  return wrapResult(k, k.translate(unwrap(shape), x, y, z));
@@ -4758,6 +4783,9 @@ var OcctWasmAdapter = class OcctWasmAdapter {
4758
4783
  transform(shape, trsf) {
4759
4784
  return transform(this.k, this.Module, shape, trsf);
4760
4785
  }
4786
+ locate(shape, trsf) {
4787
+ return locate(this.k, this.Module, shape, trsf);
4788
+ }
4761
4789
  translate(shape, x, y, z) {
4762
4790
  return translate(this.k, shape, x, y, z);
4763
4791
  }
@@ -2741,28 +2741,53 @@ function composeTransform(ops) {
2741
2741
  dispose: noop
2742
2742
  };
2743
2743
  }
2744
- function transform(k, Module, shape, trsf) {
2744
+ /**
2745
+ * Extract a 12-element row-major 3x4 matrix from the trsf representations the
2746
+ * occt-wasm adapter accepts (raw array, `{ matrix }`, `{ elements }`). Returns
2747
+ * undefined when no usable matrix is present.
2748
+ */
2749
+ function toMatrix12(trsf) {
2745
2750
  const t = trsf;
2746
2751
  let matrix;
2747
2752
  if (Array.isArray(t)) matrix = t;
2748
- else if (typeof t === "object") {
2749
- if (Array.isArray(t["matrix"])) {
2750
- matrix = t["matrix"];
2751
- if (matrix.length === 16) matrix = matrix.slice(0, 12);
2752
- } else if (Array.isArray(t["elements"])) matrix = t["elements"];
2753
+ else if (t !== null && typeof t === "object") {
2754
+ if (Array.isArray(t["matrix"])) matrix = t["matrix"];
2755
+ else if (Array.isArray(t["elements"])) matrix = t["elements"];
2753
2756
  }
2757
+ if (matrix && matrix.length === 16) matrix = matrix.slice(0, 12);
2758
+ return matrix && matrix.length >= 12 ? matrix : void 0;
2759
+ }
2760
+ function transform(k, Module, shape, trsf) {
2761
+ const matrix = toMatrix12(trsf);
2754
2762
  if (matrix) {
2755
- if (matrix.length === 16) matrix = matrix.slice(0, 12);
2756
- if (matrix.length >= 12) {
2763
+ const vec = makeVecDouble(Module, matrix);
2764
+ try {
2765
+ return wrapResult(k, k.transform(unwrap(shape), vec));
2766
+ } finally {
2767
+ vec.delete();
2768
+ }
2769
+ }
2770
+ return handle(k.getShapeType(unwrap(shape)), k.copy(unwrap(shape)));
2771
+ }
2772
+ /**
2773
+ * Cheap location-only move. Uses the occt-wasm `located` facade method (a
2774
+ * `TopLoc_Location` re-tag that shares the source `TShape`) when the loaded
2775
+ * WASM build exposes it; builds without `located` fall back to the copying
2776
+ * `transform` — same geometry, only the cost differs.
2777
+ */
2778
+ function locate(k, Module, shape, trsf) {
2779
+ if (typeof k.located === "function") {
2780
+ const matrix = toMatrix12(trsf);
2781
+ if (matrix) {
2757
2782
  const vec = makeVecDouble(Module, matrix);
2758
2783
  try {
2759
- return wrapResult(k, k.transform(unwrap(shape), vec));
2784
+ return wrapResult(k, k.located(unwrap(shape), vec));
2760
2785
  } finally {
2761
2786
  vec.delete();
2762
2787
  }
2763
2788
  }
2764
2789
  }
2765
- return handle(k.getShapeType(unwrap(shape)), k.copy(unwrap(shape)));
2790
+ return transform(k, Module, shape, trsf);
2766
2791
  }
2767
2792
  function translate(k, shape, x, y, z) {
2768
2793
  return wrapResult(k, k.translate(unwrap(shape), x, y, z));
@@ -4758,6 +4783,9 @@ var OcctWasmAdapter = class OcctWasmAdapter {
4758
4783
  transform(shape, trsf) {
4759
4784
  return transform(this.k, this.Module, shape, trsf);
4760
4785
  }
4786
+ locate(shape, trsf) {
4787
+ return locate(this.k, this.Module, shape, trsf);
4788
+ }
4761
4789
  translate(shape, x, y, z) {
4762
4790
  return translate(this.k, shape, x, y, z);
4763
4791
  }
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_threadFns = require("./threadFns-DGYdomjN.cjs");
3
- const require_loftFns = require("./loftFns-DaRDYpfB.cjs");
2
+ const require_threadFns = require("./threadFns-C8bErjVC.cjs");
3
+ const require_loftFns = require("./loftFns-fpTmrIdd.cjs");
4
4
  exports.addChild = require_threadFns.addChild;
5
5
  exports.addJoint = require_threadFns.addJoint;
6
6
  exports.addStep = require_threadFns.addStep;
@@ -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-8rKpQXiR.js";
2
- import { d as twistExtrude, l as supportExtrude, o as complexExtrude, u as sweep } from "./loftFns-DyNuD9XL.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-bCOhVQLb.js";
2
+ import { d as twistExtrude, l as supportExtrude, o as complexExtrude, u as sweep } from "./loftFns-CmShFQlv.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
- import { Z as getKernel, c as createSolid, x as isClosedWire } from "./shapeTypes-C4lPfrc2.js";
1
+ import { Z as getKernel, c as createSolid, x as isClosedWire } from "./shapeTypes-Dpu6mD3m.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-DyBbhU30.js";
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-Bww4jhBo.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-Biwv2cW3.js";
4
+ import { h as translate } from "./shapeFns-DrZOVwHX.js";
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-rkE-jE90.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-C32wXQWG.js";
7
7
  //#region src/topology/primitiveFns.ts
8
8
  /**
9
9
  * Create a box with the given dimensions.
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-Bwgm5N6R.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.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-L4a8kH_A.cjs");
5
- const require_surfaceBuilders = require("./surfaceBuilders-FLnYYA70.cjs");
6
- const require_solidBuilders = require("./solidBuilders-CgRmJEdn.cjs");
4
+ const require_shapeFns = require("./shapeFns-ybo0INGL.cjs");
5
+ const require_surfaceBuilders = require("./surfaceBuilders-UyyfZy8w.cjs");
6
+ const require_solidBuilders = require("./solidBuilders-DiUv_mD0.cjs");
7
7
  //#region src/topology/primitiveFns.ts
8
8
  /**
9
9
  * Create a box with the given dimensions.
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_cameraFns = require("./cameraFns-S7YbAxfg.cjs");
2
+ const require_cameraFns = require("./cameraFns-uo1sZbBT.cjs");
3
3
  exports.PROJECTION_PLANES = require_cameraFns.PROJECTION_PLANES;
4
4
  exports.cameraFromPlane = require_cameraFns.cameraFromPlane;
5
5
  exports.cameraLookAt = require_cameraFns.cameraLookAt;
@@ -1,2 +1,2 @@
1
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, o as PROJECTION_PLANES, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-Bu6jgTKc.js";
1
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, o as PROJECTION_PLANES, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-bk9e0F-T.js";
2
2
  export { PROJECTION_PLANES, cameraFromPlane, cameraLookAt, createCamera, isProjectionPlane, makeProjectedEdges, projectEdges };
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-8zxf2gkc.cjs");
3
- const require_cornerFinder = require("./cornerFinder-Ci2NbbAW.cjs");
2
+ const require_helpers = require("./helpers-BSLPCflF.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-B4q88TRb.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-DT44wBAD.js";
2
- import { t as cornerFinder } from "./cornerFinder-COqoeY--.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-DhJwFrkC.js";
2
+ import { t as cornerFinder } from "./cornerFinder-DUGeBIvD.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };