brepjs 18.35.1 → 18.35.3

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 (83) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{blueprint-BF0DcVwE.cjs → blueprint-BZtQ37hZ.cjs} +5 -5
  4. package/dist/{blueprint-KwH2JNPU.js → blueprint-BugZrlJZ.js} +5 -5
  5. package/dist/{blueprintFns-CbPsMijw.cjs → blueprintFns-Cd6RX-3U.cjs} +2 -2
  6. package/dist/{blueprintFns-X7jVGGUE.js → blueprintFns-DZreBQDw.js} +2 -2
  7. package/dist/{blueprintSketcher-BwFpbp0B.js → blueprintSketcher-Br9S5j8n.js} +3 -3
  8. package/dist/{blueprintSketcher-m18T1U1T.cjs → blueprintSketcher-CeUtlreY.cjs} +3 -3
  9. package/dist/{boolean2D-BzlbvCIH.cjs → boolean2D-B30MyM5A.cjs} +4 -4
  10. package/dist/{boolean2D-DAq015PP.js → boolean2D-jMwDLuLK.js} +4 -4
  11. package/dist/{booleanFns-nHsLqZ7Y.js → booleanFns-BPWMgD1t.js} +4 -4
  12. package/dist/{booleanFns-D19tR8Gn.cjs → booleanFns-NkgP7bZA.cjs} +4 -4
  13. package/dist/brepjs.cjs +25 -25
  14. package/dist/brepjs.js +25 -25
  15. package/dist/{cameraFns-Bhjy2SuC.js → cameraFns-B5FrSRRP.js} +2 -2
  16. package/dist/{cameraFns-D_8-JO0p.cjs → cameraFns-Bb5fmsNi.cjs} +2 -2
  17. package/dist/core.cjs +1 -1
  18. package/dist/core.js +1 -1
  19. package/dist/{cornerFinder-U6kzoCXY.js → cornerFinder-NT0nEY2D.js} +1 -1
  20. package/dist/{cornerFinder-Bmp3Vm5g.cjs → cornerFinder-Nd00yMHA.cjs} +1 -1
  21. package/dist/{curveFns-rUkX4tEm.js → curveFns-D1IaRpWu.js} +1 -1
  22. package/dist/{curveFns-p1YEnmZu.cjs → curveFns-tBJhB6jA.cjs} +1 -1
  23. package/dist/{drawFns-ZhKR7xa0.js → drawFns-BetA5msk.js} +12 -12
  24. package/dist/{drawFns-BGIQ1IeV.cjs → drawFns-C9WFdiAW.cjs} +12 -12
  25. package/dist/{extrudeFns-DpRGUaxD.cjs → extrudeFns-Bg-IXT_O.cjs} +1 -1
  26. package/dist/{extrudeFns-Cl_azGgy.js → extrudeFns-DWeYb6cu.js} +1 -1
  27. package/dist/{faceFns-eVWgSIzt.js → faceFns-DBEEcVC-.js} +2 -2
  28. package/dist/{faceFns-C6qUr_gw.cjs → faceFns-ThsHosgU.cjs} +2 -2
  29. package/dist/{helpers-BhJOo535.js → helpers-D2RrISk0.js} +6 -6
  30. package/dist/{helpers-DNVILwHA.cjs → helpers-D6XMORWy.cjs} +6 -6
  31. package/dist/{historyFns-ByJG4mBP.js → historyFns-BSSA9qoA.js} +4 -4
  32. package/dist/{historyFns-C2glA6vu.cjs → historyFns-DrjICLPB.cjs} +4 -4
  33. package/dist/{importFns-CJc5NYJp.cjs → importFns-B7nffQNd.cjs} +2 -2
  34. package/dist/{importFns-DuAmdf0Q.js → importFns-Cq-bKeDn.js} +2 -2
  35. package/dist/io.cjs +2 -2
  36. package/dist/io.js +2 -2
  37. package/dist/kernel/occtWasm/constructionOps.d.ts +1 -0
  38. package/dist/kernel/occtWasm/ioOps.d.ts +1 -1
  39. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  40. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  41. package/dist/kernel/occtWasm/occtWasmTypes.d.ts +7 -2
  42. package/dist/kernel/occtWasm/sweepOps.d.ts +1 -1
  43. package/dist/{measureFns-D7lxkIjt.cjs → measureFns-BT_G8lXZ.cjs} +3 -3
  44. package/dist/{measureFns-BiflqrZ_.js → measureFns-BTn_t0LK.js} +3 -3
  45. package/dist/measurement.cjs +1 -1
  46. package/dist/measurement.js +1 -1
  47. package/dist/{meshFns-D66okPxP.cjs → meshFns-BcYvu4zj.cjs} +37 -4
  48. package/dist/{meshFns-Bbm7_5wS.js → meshFns-CR68GwS8.js} +37 -4
  49. package/dist/{occtWasmAdapter-COKB8ItA.js → occtWasmAdapter-DUruQhFF.js} +42 -40
  50. package/dist/{occtWasmAdapter-CdyaMnBW.cjs → occtWasmAdapter-R8zCS1h7.cjs} +42 -40
  51. package/dist/operations.cjs +2 -2
  52. package/dist/operations.js +2 -2
  53. package/dist/{primitiveFns-vQh7Lz7B.js → primitiveFns-BjeLfI12.js} +7 -7
  54. package/dist/{primitiveFns-CXn9Jl4q.cjs → primitiveFns-DtY84t7q.cjs} +7 -7
  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-B3v9_keQ.cjs → shapeFns-lDEvCF5Q.cjs} +2 -2
  60. package/dist/{shapeFns-BbHQjI5-.js → shapeFns-oS8Us7JQ.js} +2 -2
  61. package/dist/shapeRef.cjs +1 -1
  62. package/dist/shapeRef.js +1 -1
  63. package/dist/{shapeRefFns-BOsX8Tim.js → shapeRefFns-C2DbyKEO.js} +4 -4
  64. package/dist/{shapeRefFns-CkafUjdM.cjs → shapeRefFns-DHioZfFV.cjs} +4 -4
  65. package/dist/{shapeTypes-C-MpR5-e.js → shapeTypes-BH-9bXON.js} +1 -1
  66. package/dist/{shapeTypes-Bbh2doYh.cjs → shapeTypes-BiX2PjaO.cjs} +1 -1
  67. package/dist/sketching.cjs +3 -3
  68. package/dist/sketching.js +3 -3
  69. package/dist/{solidBuilders-C44fKbQQ.js → solidBuilders-BiduNSRx.js} +2 -2
  70. package/dist/{solidBuilders-Ck6gpdQR.cjs → solidBuilders-DR3oU7Fb.cjs} +2 -2
  71. package/dist/{surfaceBuilders-DsISMCwj.cjs → surfaceBuilders-s2Uo2ard.cjs} +2 -2
  72. package/dist/{surfaceBuilders-D4p1YPCz.js → surfaceBuilders-xmm7fFbW.js} +2 -2
  73. package/dist/text.cjs +2 -2
  74. package/dist/text.js +2 -2
  75. package/dist/{textBlueprints-C93RophN.cjs → textBlueprints-Ca1NcWQg.cjs} +7 -7
  76. package/dist/{textBlueprints-BKdQqBn8.js → textBlueprints-DRh48_Fo.js} +7 -7
  77. package/dist/{textMetrics-DEmVsP5C.js → textMetrics-BU6Ow8mb.js} +1 -1
  78. package/dist/{textMetrics-2vq4PFfz.cjs → textMetrics-CGN19mAp.cjs} +1 -1
  79. package/dist/topology.cjs +7 -7
  80. package/dist/topology.js +7 -7
  81. package/dist/{topologyQueryFns-B81GSST_.js → topologyQueryFns-B8uqQlEU.js} +1 -1
  82. package/dist/{topologyQueryFns-C0kAqcn5.cjs → topologyQueryFns-BoMkI1jZ.cjs} +1 -1
  83. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
- import { B as createKernelHandle, Z as getKernel, t as castShape } from "./shapeTypes-C-MpR5-e.js";
1
+ import { B as createKernelHandle, Z as getKernel, t as castShape } from "./shapeTypes-BH-9bXON.js";
2
2
  import { A as ok, b as err, d as validationError, n as computationError, r as ioError } from "./errors-DNWJsfVU.js";
3
3
  import { d as vecNormalize, s as vecIsZero } from "./vecOps-SKPRvPH-.js";
4
- import { v as fromBREP } from "./faceFns-eVWgSIzt.js";
5
- import { s as toBREP } from "./shapeFns-BbHQjI5-.js";
6
- import { a as fuseAll } from "./booleanFns-nHsLqZ7Y.js";
4
+ import { v as fromBREP } from "./faceFns-DBEEcVC-.js";
5
+ import { s as toBREP } from "./shapeFns-oS8Us7JQ.js";
6
+ import { a as fuseAll } from "./booleanFns-BPWMgD1t.js";
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-Bbh2doYh.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BiX2PjaO.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
3
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
4
- const require_faceFns = require("./faceFns-C6qUr_gw.cjs");
5
- const require_shapeFns = require("./shapeFns-B3v9_keQ.cjs");
6
- const require_booleanFns = require("./booleanFns-D19tR8Gn.cjs");
4
+ const require_faceFns = require("./faceFns-ThsHosgU.cjs");
5
+ const require_shapeFns = require("./shapeFns-lDEvCF5Q.cjs");
6
+ const require_booleanFns = require("./booleanFns-NkgP7bZA.cjs");
7
7
  //#region src/utils/uuid.ts
8
8
  /** Generate a v4-style UUID string using `crypto.getRandomValues`. */
9
9
  function uuidv() {
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-Bbh2doYh.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BiX2PjaO.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-BF0DcVwE.cjs");
5
+ const require_blueprint = require("./blueprint-BZtQ37hZ.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-C-MpR5-e.js";
1
+ import { Z as getKernel, t as castShape } from "./shapeTypes-BH-9bXON.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-KwH2JNPU.js";
5
+ import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-BugZrlJZ.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-D66okPxP.cjs");
3
- const require_importFns = require("./importFns-CJc5NYJp.cjs");
2
+ const require_meshFns = require("./meshFns-BcYvu4zj.cjs");
3
+ const require_importFns = require("./importFns-B7nffQNd.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-Bbm7_5wS.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-DuAmdf0Q.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-CR68GwS8.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-Cq-bKeDn.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -3,6 +3,7 @@ import { OcctKernelWasm, OcctWasmModule } from './occtWasmTypes.js';
3
3
  export declare function makeVertex(k: OcctKernelWasm, x: number, y: number, z: number): KernelShape;
4
4
  export declare function makeEdge(_k: OcctKernelWasm, curve: KernelType): KernelShape;
5
5
  export declare function makeWire(k: OcctKernelWasm, Module: OcctWasmModule, edges: KernelShape[]): KernelShape;
6
+ export declare function makeWireFromMixed(k: OcctKernelWasm, Module: OcctWasmModule, items: KernelShape[]): KernelShape;
6
7
  export declare function makeFace(k: OcctKernelWasm, wire: KernelShape, _planar?: boolean): KernelShape;
7
8
  export declare function makeLineEdge(k: OcctKernelWasm, p1: [number, number, number], p2: [number, number, number]): KernelShape;
8
9
  export declare function makeCircleEdge(k: OcctKernelWasm, center: [number, number, number], normal: [number, number, number], radius: number): KernelShape;
@@ -31,7 +31,7 @@ export declare function exportOBJ(mesh: MeshFn, shape: KernelShape, tolerance: n
31
31
  export declare function exportPLY(mesh: MeshFn, shape: KernelShape, tolerance: number): ArrayBuffer;
32
32
  export declare function toBREP(k: OcctKernelWasm, shape: KernelShape): string;
33
33
  export declare function fromBREP(k: OcctKernelWasm, data: string): KernelShape;
34
- export declare function createXCAFDocument(k: OcctKernelWasm, Module: OcctWasmModule, shapes: Array<{
34
+ export declare function createXCAFDocument(k: OcctKernelWasm, _Module: OcctWasmModule, shapes: Array<{
35
35
  shape: KernelShape;
36
36
  name: string;
37
37
  color?: [number, number, number, number] | undefined;
@@ -1,3 +1,3 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_occtWasmAdapter = require("../../occtWasmAdapter-CdyaMnBW.cjs");
2
+ const require_occtWasmAdapter = require("../../occtWasmAdapter-R8zCS1h7.cjs");
3
3
  exports.OcctWasmAdapter = require_occtWasmAdapter.OcctWasmAdapter;
@@ -1,2 +1,2 @@
1
- import { t as OcctWasmAdapter } from "../../occtWasmAdapter-COKB8ItA.js";
1
+ import { t as OcctWasmAdapter } from "../../occtWasmAdapter-DUruQhFF.js";
2
2
  export { OcctWasmAdapter };
@@ -230,8 +230,13 @@ export interface OcctKernelWasm {
230
230
  projectEdges(shapeId: number, ox: number, oy: number, oz: number, dx: number, dy: number, dz: number, xx: number, xy: number, xz: number, hasXAxis: boolean): EmProjectionData;
231
231
  getNurbsCurveData(edgeId: number): EmNurbsCurveData;
232
232
  liftCurve2dToPlane(flatPoints2d: EmVectorDouble, planeOx: number, planeOy: number, planeOz: number, planeZx: number, planeZy: number, planeZz: number, planeXx: number, planeXy: number, planeXz: number): number;
233
- createXCAFDocument(shapeIds: EmVectorUint32, joinedNames: string, flatColors: EmVectorDouble): number;
234
- writeXCAFToSTEP(docId: number): string;
233
+ xcafNewDocument(): number;
234
+ xcafClose(docId: number): void;
235
+ xcafAddShape(docId: number, shapeId: number): number;
236
+ xcafSetColor(docId: number, labelId: number, r: number, g: number, b: number): void;
237
+ xcafSetName(docId: number, labelId: number, name: string): void;
238
+ xcafGetRootLabels(docId: number): EmVectorInt;
239
+ xcafExportSTEP(docId: number): string;
235
240
  bsplineSurface(flatPoints: EmVectorDouble, rows: number, cols: number): number;
236
241
  makeFaceOnSurface(faceId: number, wireId: number): number;
237
242
  makeNullShape(): number;
@@ -2,7 +2,7 @@ import { KernelShape, KernelType } from '../types.js';
2
2
  import { OcctKernelWasm, OcctWasmModule } from './occtWasmTypes.js';
3
3
  export declare function extrude(k: OcctKernelWasm, face: KernelShape, direction: [number, number, number], length: number): KernelShape;
4
4
  export declare function revolve(k: OcctKernelWasm, shape: KernelShape, axis: KernelType, angle: number): KernelShape;
5
- export declare function loft(k: OcctKernelWasm, Module: OcctWasmModule, wires: KernelShape[], ruled?: boolean, _startShape?: KernelShape, _endShape?: KernelShape): KernelShape;
5
+ export declare function loft(k: OcctKernelWasm, Module: OcctWasmModule, wires: KernelShape[], ruled?: boolean, startShape?: KernelShape, endShape?: KernelShape): KernelShape;
6
6
  export declare function sweep(k: OcctKernelWasm, wire: KernelShape, spine: KernelShape, options?: {
7
7
  transitionMode?: number;
8
8
  }): KernelShape;
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bbh2doYh.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BiX2PjaO.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-C0kAqcn5.cjs");
4
- const require_faceFns = require("./faceFns-C6qUr_gw.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-BoMkI1jZ.cjs");
4
+ const require_faceFns = require("./faceFns-ThsHosgU.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-C-MpR5-e.js";
1
+ import { Z as getKernel } from "./shapeTypes-BH-9bXON.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-B81GSST_.js";
4
- import { p as uvBounds } from "./faceFns-eVWgSIzt.js";
3
+ import { w as kernelCallRaw } from "./topologyQueryFns-B8uqQlEU.js";
4
+ import { p as uvBounds } from "./faceFns-DBEEcVC-.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-D7lxkIjt.cjs");
2
+ const require_measureFns = require("./measureFns-BT_G8lXZ.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-BiflqrZ_.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-BTn_t0LK.js";
2
2
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps };
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bbh2doYh.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BiX2PjaO.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-C0kAqcn5.cjs");
4
- const require_shapeFns = require("./shapeFns-B3v9_keQ.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-BoMkI1jZ.cjs");
4
+ const require_shapeFns = require("./shapeFns-lDEvCF5Q.cjs");
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -196,6 +196,32 @@ function exportError(e, fmt) {
196
196
  return require_errors.ioError(`${fmt}_FILE_READ_ERROR`, `Failed to read exported ${fmt} file`, e);
197
197
  }
198
198
  /**
199
+ * When a compound's bounds probe fails, localize the offending sub-solid(s) so the
200
+ * caller can heal or drop them. Returns a suffix for the error message; empty when
201
+ * the shape is a single solid or localization itself fails. Only reached on the
202
+ * error path, so the extra per-solid probes cost nothing in the happy case.
203
+ */
204
+ function describeOffendingSolids(shape) {
205
+ let solids;
206
+ try {
207
+ solids = require_topologyQueryFns.getSolids(shape);
208
+ } catch {
209
+ return "";
210
+ }
211
+ if (solids.length <= 1) return "";
212
+ const bad = [];
213
+ solids.forEach((solid, i) => {
214
+ try {
215
+ require_topologyQueryFns.getBounds(solid);
216
+ } catch (e) {
217
+ if (e instanceof TypeError) throw e;
218
+ bad.push(i);
219
+ }
220
+ });
221
+ if (bad.length === 0) return `; could not localize the offending sub-solid among ${solids.length} solids`;
222
+ return `; offending sub-solid${bad.length > 1 ? "s" : ""} (of ${solids.length}): index ${bad.join(", ")}`;
223
+ }
224
+ /**
199
225
  * Probe a shape's bounding box before handing it to the STEP/STL writer.
200
226
  *
201
227
  * Some sub-shapes pass `isValid`/`validSolid` yet are degenerate enough that the
@@ -205,6 +231,13 @@ function exportError(e, fmt) {
205
231
  * cheap pre-export probe lets us return a clean `Err` instead of crashing.
206
232
  * Heuristic, not universal: it only catches shapes whose bounding-box evaluation
207
233
  * also throws.
234
+ *
235
+ * Note: the canonical #1126 shape (an annular-sector tread fused with a frenet
236
+ * helical rail) is NOT caught here — `getBounds` *succeeds* on it, as do
237
+ * `isValid`/`validSolid`/`mesh`/`measureArea`, and `autoHeal` cannot repair it.
238
+ * No known non-trapping check detects that BOPAlgo corruption; the only safety net
239
+ * for it is `exportError` classifying the writer's `WebAssembly.RuntimeError` as
240
+ * `*_EXPORT_CRASHED`. A real fix must come from the kernel (OCCT BOPAlgo).
208
241
  */
209
242
  function probeSerializable(shape, fmt) {
210
243
  try {
@@ -212,7 +245,7 @@ function probeSerializable(shape, fmt) {
212
245
  return null;
213
246
  } catch (e) {
214
247
  if (e instanceof TypeError) throw e;
215
- return require_errors.ioError(`${fmt}_EXPORT_UNSERIALIZABLE`, `${fmt} export aborted: the shape contains degenerate geometry the ${fmt} writer cannot serialize (bounding-box evaluation failed); export was skipped to avoid crashing the kernel`, e);
248
+ return require_errors.ioError(`${fmt}_EXPORT_UNSERIALIZABLE`, `${fmt} export aborted: the shape contains degenerate geometry the ${fmt} writer cannot serialize (bounding-box evaluation failed); export was skipped to avoid crashing the kernel${describeOffendingSolids(shape)}`, e);
216
249
  }
217
250
  }
218
251
  function exportSTEP(shape) {
@@ -1,7 +1,7 @@
1
- import { Z as getKernel } from "./shapeTypes-C-MpR5-e.js";
1
+ import { Z as getKernel } from "./shapeTypes-BH-9bXON.js";
2
2
  import { A as ok, b as err, r as ioError } from "./errors-DNWJsfVU.js";
3
- import { n as getBounds } from "./topologyQueryFns-B81GSST_.js";
4
- import { O as getFaceOrigins } from "./shapeFns-BbHQjI5-.js";
3
+ import { d as getSolids, n as getBounds } from "./topologyQueryFns-B8uqQlEU.js";
4
+ import { O as getFaceOrigins } from "./shapeFns-oS8Us7JQ.js";
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -196,6 +196,32 @@ function exportError(e, fmt) {
196
196
  return ioError(`${fmt}_FILE_READ_ERROR`, `Failed to read exported ${fmt} file`, e);
197
197
  }
198
198
  /**
199
+ * When a compound's bounds probe fails, localize the offending sub-solid(s) so the
200
+ * caller can heal or drop them. Returns a suffix for the error message; empty when
201
+ * the shape is a single solid or localization itself fails. Only reached on the
202
+ * error path, so the extra per-solid probes cost nothing in the happy case.
203
+ */
204
+ function describeOffendingSolids(shape) {
205
+ let solids;
206
+ try {
207
+ solids = getSolids(shape);
208
+ } catch {
209
+ return "";
210
+ }
211
+ if (solids.length <= 1) return "";
212
+ const bad = [];
213
+ solids.forEach((solid, i) => {
214
+ try {
215
+ getBounds(solid);
216
+ } catch (e) {
217
+ if (e instanceof TypeError) throw e;
218
+ bad.push(i);
219
+ }
220
+ });
221
+ if (bad.length === 0) return `; could not localize the offending sub-solid among ${solids.length} solids`;
222
+ return `; offending sub-solid${bad.length > 1 ? "s" : ""} (of ${solids.length}): index ${bad.join(", ")}`;
223
+ }
224
+ /**
199
225
  * Probe a shape's bounding box before handing it to the STEP/STL writer.
200
226
  *
201
227
  * Some sub-shapes pass `isValid`/`validSolid` yet are degenerate enough that the
@@ -205,6 +231,13 @@ function exportError(e, fmt) {
205
231
  * cheap pre-export probe lets us return a clean `Err` instead of crashing.
206
232
  * Heuristic, not universal: it only catches shapes whose bounding-box evaluation
207
233
  * also throws.
234
+ *
235
+ * Note: the canonical #1126 shape (an annular-sector tread fused with a frenet
236
+ * helical rail) is NOT caught here — `getBounds` *succeeds* on it, as do
237
+ * `isValid`/`validSolid`/`mesh`/`measureArea`, and `autoHeal` cannot repair it.
238
+ * No known non-trapping check detects that BOPAlgo corruption; the only safety net
239
+ * for it is `exportError` classifying the writer's `WebAssembly.RuntimeError` as
240
+ * `*_EXPORT_CRASHED`. A real fix must come from the kernel (OCCT BOPAlgo).
208
241
  */
209
242
  function probeSerializable(shape, fmt) {
210
243
  try {
@@ -212,7 +245,7 @@ function probeSerializable(shape, fmt) {
212
245
  return null;
213
246
  } catch (e) {
214
247
  if (e instanceof TypeError) throw e;
215
- return ioError(`${fmt}_EXPORT_UNSERIALIZABLE`, `${fmt} export aborted: the shape contains degenerate geometry the ${fmt} writer cannot serialize (bounding-box evaluation failed); export was skipped to avoid crashing the kernel`, e);
248
+ return ioError(`${fmt}_EXPORT_UNSERIALIZABLE`, `${fmt} export aborted: the shape contains degenerate geometry the ${fmt} writer cannot serialize (bounding-box evaluation failed); export was skipped to avoid crashing the kernel${describeOffendingSolids(shape)}`, e);
216
249
  }
217
250
  }
218
251
  function exportSTEP(shape) {
@@ -1894,9 +1894,12 @@ function revolve(k, shape, axis, angle) {
1894
1894
  const d = axis.direction;
1895
1895
  return wrapResult(k, k.revolve(unwrap(shape), o.x, o.y, o.z, d.x, d.y, d.z, angle));
1896
1896
  }
1897
- function loft(k, Module, wires, ruled, _startShape, _endShape) {
1897
+ function loft(k, Module, wires, ruled, startShape, endShape) {
1898
+ const startV = startShape ? unwrap(startShape) : 0;
1899
+ const endV = endShape ? unwrap(endShape) : 0;
1898
1900
  const vec = makeVecU32(Module, wires.map(unwrap));
1899
1901
  try {
1902
+ if (startV || endV) return wrapResult(k, k.loftWithVertices(vec, true, ruled ?? false, startV, endV));
1900
1903
  return wrapResult(k, k.loft(vec, true, ruled ?? false));
1901
1904
  } finally {
1902
1905
  vec.delete();
@@ -2520,52 +2523,33 @@ function toBREP(k, shape) {
2520
2523
  function fromBREP(k, data) {
2521
2524
  return wrapResult(k, k.fromBREP(data));
2522
2525
  }
2523
- function createXCAFDocument(k, Module, shapes) {
2524
- const ids = new Module.VectorUint32();
2525
- const colors = new Module.VectorDouble();
2526
- const nameParts = [];
2526
+ function createXCAFDocument(k, _Module, shapes) {
2527
+ const docId = k.xcafNewDocument();
2527
2528
  for (const entry of shapes) {
2528
- ids.push_back(unwrap(entry.shape));
2529
- nameParts.push(entry.name);
2530
- const [r, g, b, a] = entry.color ?? [
2531
- .5,
2532
- .5,
2533
- .5,
2534
- 1
2535
- ];
2536
- colors.push_back(r);
2537
- colors.push_back(g);
2538
- colors.push_back(b);
2539
- colors.push_back(a);
2540
- }
2541
- try {
2542
- const joinedNames = nameParts.join("\0");
2543
- return handle("compound", k.createXCAFDocument(ids, joinedNames, colors));
2544
- } finally {
2545
- ids.delete();
2546
- colors.delete();
2529
+ const labelId = k.xcafAddShape(docId, unwrap(entry.shape));
2530
+ if (entry.name) k.xcafSetName(docId, labelId, entry.name);
2531
+ if (entry.color) {
2532
+ const [r, g, b] = entry.color;
2533
+ k.xcafSetColor(docId, labelId, r / 255, g / 255, b / 255);
2534
+ }
2547
2535
  }
2536
+ return handle("compound", docId);
2548
2537
  }
2549
2538
  function writeXCAFToSTEP(k, doc, _options) {
2550
- const id = unwrap(doc);
2551
- const subs = k.getSubShapes(id, "solid");
2552
- if (!(() => {
2539
+ const docId = unwrap(doc);
2540
+ const roots = k.xcafGetRootLabels(docId);
2541
+ const hasShapes = (() => {
2553
2542
  try {
2554
- return subs.size() > 0;
2543
+ return roots.size() > 0;
2555
2544
  } finally {
2556
- subs.delete();
2545
+ roots.delete();
2557
2546
  }
2558
- })()) {
2559
- const faces = k.getSubShapes(id, "face");
2560
- if (!(() => {
2561
- try {
2562
- return faces.size() > 0;
2563
- } finally {
2564
- faces.delete();
2565
- }
2566
- })()) return "";
2547
+ })();
2548
+ try {
2549
+ return hasShapes ? k.xcafExportSTEP(docId) : "";
2550
+ } finally {
2551
+ k.xcafClose(docId);
2567
2552
  }
2568
- return k.writeXCAFToSTEP(id);
2569
2553
  }
2570
2554
  function exportSTEPConfigured(k, Module, shapes, _options) {
2571
2555
  if (shapes.length === 0) return "";
@@ -2597,6 +2581,24 @@ function makeWire(k, Module, edges) {
2597
2581
  vec.delete();
2598
2582
  }
2599
2583
  }
2584
+ function makeWireFromMixed(k, Module, items) {
2585
+ const edgeIds = [];
2586
+ for (const item of items) {
2587
+ const sub = k.getSubShapes(unwrap(item), "edge");
2588
+ try {
2589
+ const n = sub.size();
2590
+ for (let i = 0; i < n; i++) edgeIds.push(sub.get(i));
2591
+ } finally {
2592
+ sub.delete();
2593
+ }
2594
+ }
2595
+ const vec = makeVecU32(Module, edgeIds);
2596
+ try {
2597
+ return handle("wire", k.makeWire(vec));
2598
+ } finally {
2599
+ vec.delete();
2600
+ }
2601
+ }
2600
2602
  function makeFace(k, wire, _planar) {
2601
2603
  return handle("face", k.makeFace(unwrap(wire)));
2602
2604
  }
@@ -3947,7 +3949,7 @@ var OcctWasmAdapter = class OcctWasmAdapter {
3947
3949
  return makeHelixWire(this.k, pitch, height, radius, center, direction);
3948
3950
  }
3949
3951
  makeWireFromMixed(items) {
3950
- return this.makeWire(items);
3952
+ return makeWireFromMixed(this.k, this.Module, items);
3951
3953
  }
3952
3954
  makeCompound(shapes) {
3953
3955
  return makeCompound(this.k, this.Module, shapes);
@@ -1894,9 +1894,12 @@ function revolve(k, shape, axis, angle) {
1894
1894
  const d = axis.direction;
1895
1895
  return wrapResult(k, k.revolve(unwrap(shape), o.x, o.y, o.z, d.x, d.y, d.z, angle));
1896
1896
  }
1897
- function loft(k, Module, wires, ruled, _startShape, _endShape) {
1897
+ function loft(k, Module, wires, ruled, startShape, endShape) {
1898
+ const startV = startShape ? unwrap(startShape) : 0;
1899
+ const endV = endShape ? unwrap(endShape) : 0;
1898
1900
  const vec = makeVecU32(Module, wires.map(unwrap));
1899
1901
  try {
1902
+ if (startV || endV) return wrapResult(k, k.loftWithVertices(vec, true, ruled ?? false, startV, endV));
1900
1903
  return wrapResult(k, k.loft(vec, true, ruled ?? false));
1901
1904
  } finally {
1902
1905
  vec.delete();
@@ -2520,52 +2523,33 @@ function toBREP(k, shape) {
2520
2523
  function fromBREP(k, data) {
2521
2524
  return wrapResult(k, k.fromBREP(data));
2522
2525
  }
2523
- function createXCAFDocument(k, Module, shapes) {
2524
- const ids = new Module.VectorUint32();
2525
- const colors = new Module.VectorDouble();
2526
- const nameParts = [];
2526
+ function createXCAFDocument(k, _Module, shapes) {
2527
+ const docId = k.xcafNewDocument();
2527
2528
  for (const entry of shapes) {
2528
- ids.push_back(unwrap(entry.shape));
2529
- nameParts.push(entry.name);
2530
- const [r, g, b, a] = entry.color ?? [
2531
- .5,
2532
- .5,
2533
- .5,
2534
- 1
2535
- ];
2536
- colors.push_back(r);
2537
- colors.push_back(g);
2538
- colors.push_back(b);
2539
- colors.push_back(a);
2540
- }
2541
- try {
2542
- const joinedNames = nameParts.join("\0");
2543
- return handle("compound", k.createXCAFDocument(ids, joinedNames, colors));
2544
- } finally {
2545
- ids.delete();
2546
- colors.delete();
2529
+ const labelId = k.xcafAddShape(docId, unwrap(entry.shape));
2530
+ if (entry.name) k.xcafSetName(docId, labelId, entry.name);
2531
+ if (entry.color) {
2532
+ const [r, g, b] = entry.color;
2533
+ k.xcafSetColor(docId, labelId, r / 255, g / 255, b / 255);
2534
+ }
2547
2535
  }
2536
+ return handle("compound", docId);
2548
2537
  }
2549
2538
  function writeXCAFToSTEP(k, doc, _options) {
2550
- const id = unwrap(doc);
2551
- const subs = k.getSubShapes(id, "solid");
2552
- if (!(() => {
2539
+ const docId = unwrap(doc);
2540
+ const roots = k.xcafGetRootLabels(docId);
2541
+ const hasShapes = (() => {
2553
2542
  try {
2554
- return subs.size() > 0;
2543
+ return roots.size() > 0;
2555
2544
  } finally {
2556
- subs.delete();
2545
+ roots.delete();
2557
2546
  }
2558
- })()) {
2559
- const faces = k.getSubShapes(id, "face");
2560
- if (!(() => {
2561
- try {
2562
- return faces.size() > 0;
2563
- } finally {
2564
- faces.delete();
2565
- }
2566
- })()) return "";
2547
+ })();
2548
+ try {
2549
+ return hasShapes ? k.xcafExportSTEP(docId) : "";
2550
+ } finally {
2551
+ k.xcafClose(docId);
2567
2552
  }
2568
- return k.writeXCAFToSTEP(id);
2569
2553
  }
2570
2554
  function exportSTEPConfigured(k, Module, shapes, _options) {
2571
2555
  if (shapes.length === 0) return "";
@@ -2597,6 +2581,24 @@ function makeWire(k, Module, edges) {
2597
2581
  vec.delete();
2598
2582
  }
2599
2583
  }
2584
+ function makeWireFromMixed(k, Module, items) {
2585
+ const edgeIds = [];
2586
+ for (const item of items) {
2587
+ const sub = k.getSubShapes(unwrap(item), "edge");
2588
+ try {
2589
+ const n = sub.size();
2590
+ for (let i = 0; i < n; i++) edgeIds.push(sub.get(i));
2591
+ } finally {
2592
+ sub.delete();
2593
+ }
2594
+ }
2595
+ const vec = makeVecU32(Module, edgeIds);
2596
+ try {
2597
+ return handle("wire", k.makeWire(vec));
2598
+ } finally {
2599
+ vec.delete();
2600
+ }
2601
+ }
2600
2602
  function makeFace(k, wire, _planar) {
2601
2603
  return handle("face", k.makeFace(unwrap(wire)));
2602
2604
  }
@@ -3947,7 +3949,7 @@ var OcctWasmAdapter = class OcctWasmAdapter {
3947
3949
  return makeHelixWire(this.k, pitch, height, radius, center, direction);
3948
3950
  }
3949
3951
  makeWireFromMixed(items) {
3950
- return this.makeWire(items);
3952
+ return makeWireFromMixed(this.k, this.Module, items);
3951
3953
  }
3952
3954
  makeCompound(shapes) {
3953
3955
  return makeCompound(this.k, this.Module, shapes);
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_historyFns = require("./historyFns-C2glA6vu.cjs");
3
- const require_extrudeFns = require("./extrudeFns-DpRGUaxD.cjs");
2
+ const require_historyFns = require("./historyFns-DrjICLPB.cjs");
3
+ const require_extrudeFns = require("./extrudeFns-Bg-IXT_O.cjs");
4
4
  exports.addChild = require_historyFns.addChild;
5
5
  exports.addStep = require_historyFns.addStep;
6
6
  exports.circularPattern = require_historyFns.circularPattern;
@@ -1,3 +1,3 @@
1
- import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-ByJG4mBP.js";
2
- import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-Cl_azGgy.js";
1
+ import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, T as gridPattern, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, g as addChild, h as undoLast, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-BSSA9qoA.js";
2
+ import { c as sweep, i as complexExtrude, l as twistExtrude, s as supportExtrude } from "./extrudeFns-DWeYb6cu.js";
3
3
  export { addChild, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, exportAssemblySTEP, findNode, findStep, getShape as getHistoryShape, gridPattern, linearPattern, modifyStep, registerOperation, registerShape, removeChild, replayFrom, replayHistory, stepCount, stepsFrom, supportExtrude, sweep, twistExtrude, undoLast, updateNode, walkAssembly };
@@ -1,13 +1,13 @@
1
- import { Z as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-C-MpR5-e.js";
1
+ import { Z as getKernel, _ as isSolid, c as createSolid, h as isShape3D, p as isFace, r as castShapeWithKnownType, t as castShape, x as isClosedWire, y as isWire } from "./shapeTypes-BH-9bXON.js";
2
2
  import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, v as andThen, w as isErr } from "./errors-DNWJsfVU.js";
3
- import { c as getFaces, i as getCachedIsValid, l as getOrCreateCache, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-B81GSST_.js";
3
+ import { c as getFaces, i as getCachedIsValid, l as getOrCreateCache, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-B8uqQlEU.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
- import { _ as downcast } from "./faceFns-eVWgSIzt.js";
6
- import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-BbHQjI5-.js";
5
+ import { _ as downcast } from "./faceFns-DBEEcVC-.js";
6
+ import { _ as propagateAllMetadata, g as collectInputFaceHashes, h as translate } from "./shapeFns-oS8Us7JQ.js";
7
7
  import { t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
8
- 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-D4p1YPCz.js";
9
- import { a as fuseAll, i as fuse, n as cut, r as cutAll } from "./booleanFns-nHsLqZ7Y.js";
10
- 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-C44fKbQQ.js";
8
+ 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-xmm7fFbW.js";
9
+ import { a as fuseAll, i as fuse, n as cut, r as cutAll } from "./booleanFns-BPWMgD1t.js";
10
+ 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-BiduNSRx.js";
11
11
  //#region src/topology/threeHelpers.ts
12
12
  /**
13
13
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,13 +1,13 @@
1
- const require_shapeTypes = require("./shapeTypes-Bbh2doYh.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BiX2PjaO.cjs");
2
2
  const require_errors = require("./errors-CXJtc4I7.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-C0kAqcn5.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-BoMkI1jZ.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
- const require_faceFns = require("./faceFns-C6qUr_gw.cjs");
6
- const require_shapeFns = require("./shapeFns-B3v9_keQ.cjs");
5
+ const require_faceFns = require("./faceFns-ThsHosgU.cjs");
6
+ const require_shapeFns = require("./shapeFns-lDEvCF5Q.cjs");
7
7
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
8
- const require_surfaceBuilders = require("./surfaceBuilders-DsISMCwj.cjs");
9
- const require_booleanFns = require("./booleanFns-D19tR8Gn.cjs");
10
- const require_solidBuilders = require("./solidBuilders-Ck6gpdQR.cjs");
8
+ const require_surfaceBuilders = require("./surfaceBuilders-s2Uo2ard.cjs");
9
+ const require_booleanFns = require("./booleanFns-NkgP7bZA.cjs");
10
+ const require_solidBuilders = require("./solidBuilders-DR3oU7Fb.cjs");
11
11
  //#region src/topology/threeHelpers.ts
12
12
  /**
13
13
  * Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_cameraFns = require("./cameraFns-D_8-JO0p.cjs");
2
+ const require_cameraFns = require("./cameraFns-Bb5fmsNi.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-Bhjy2SuC.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-B5FrSRRP.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-DNVILwHA.cjs");
3
- const require_cornerFinder = require("./cornerFinder-Bmp3Vm5g.cjs");
2
+ const require_helpers = require("./helpers-D6XMORWy.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-Nd00yMHA.cjs");
4
4
  exports.cornerFinder = require_cornerFinder.cornerFinder;
5
5
  exports.edgeFinder = require_helpers.edgeFinder;
6
6
  exports.faceFinder = require_helpers.faceFinder;