brepjs 20.12.15 → 20.13.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 (96) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{adjacencyFns-BHdJW5pd.cjs → adjacencyFns-BXzEHSC5.cjs} +3 -3
  4. package/dist/{adjacencyFns-C4yjxKu4.js → adjacencyFns-BYjzMejn.js} +3 -3
  5. package/dist/{blueprint-D4juQWXs.cjs → blueprint-464KGkzc.cjs} +5 -5
  6. package/dist/{blueprint-ku_wYIZl.js → blueprint-D-4-uTkr.js} +5 -5
  7. package/dist/{blueprintFns-8obtvMEn.cjs → blueprintFns-BdyFiuiC.cjs} +2 -2
  8. package/dist/{blueprintFns-B0cqtoFB.js → blueprintFns-CE5RdX-E.js} +2 -2
  9. package/dist/{blueprintSketcher-CRFpnZAS.cjs → blueprintSketcher-C4XHzqTw.cjs} +3 -3
  10. package/dist/{blueprintSketcher-Dpdgf5aR.js → blueprintSketcher-CQ9LxcIl.js} +3 -3
  11. package/dist/{boolean2D-D3jxohLZ.cjs → boolean2D-CKE32vHV.cjs} +4 -4
  12. package/dist/{boolean2D-CnCDsRJ4.js → boolean2D-DwJvQ4p_.js} +4 -4
  13. package/dist/{booleanFns-CItcObM_.js → booleanFns-CsTz48A3.js} +5 -5
  14. package/dist/{booleanFns-GBPAGQ5g.cjs → booleanFns-MkzdfjDv.cjs} +5 -5
  15. package/dist/brepjs.cjs +30 -30
  16. package/dist/brepjs.js +30 -30
  17. package/dist/{cameraFns-B6ujpyKy.js → cameraFns-BDl_D28X.js} +3 -3
  18. package/dist/{cameraFns-C2XhSqrr.cjs → cameraFns-vHpapIZG.cjs} +3 -3
  19. package/dist/core.cjs +2 -2
  20. package/dist/core.js +2 -2
  21. package/dist/{cornerFinder-D3nBhdfi.js → cornerFinder-Dyk5sKEN.js} +1 -1
  22. package/dist/{cornerFinder-CqHx_Itj.cjs → cornerFinder-adDN0_C4.cjs} +1 -1
  23. package/dist/{curveFns-BQjw0VBB.cjs → curveFns-HtjEh2W-.cjs} +1 -1
  24. package/dist/{curveFns-nAwtilbz.js → curveFns-RjNVzxNc.js} +1 -1
  25. package/dist/{drawFns-hFjTvdw4.cjs → drawFns-B5gZtD_P.cjs} +12 -12
  26. package/dist/{drawFns-D9q4Hxc_.js → drawFns-stc8-Gma.js} +12 -12
  27. package/dist/{faceFns-DdMpocg9.cjs → faceFns-C7wBHMPv.cjs} +2 -2
  28. package/dist/{faceFns-Dodcduw8.js → faceFns-DaPoCzd-.js} +2 -2
  29. package/dist/{healingFns-GNF1rFuw.js → healingFns-C3Wq_hN3.js} +79 -31
  30. package/dist/{healingFns-Cdpu44d0.cjs → healingFns-zYCbT8vR.cjs} +79 -31
  31. package/dist/{helpers-TWIfnyto.cjs → helpers-BdtYVyP5.cjs} +6 -6
  32. package/dist/{helpers-CoVtL5c9.js → helpers-CDzSlBi_.js} +6 -6
  33. package/dist/{importFns-P-TcOJ1G.cjs → importFns-CotbQ9l7.cjs} +5 -5
  34. package/dist/{importFns-C9TUFscx.js → importFns-DR7Adv-W.js} +5 -5
  35. package/dist/io.cjs +2 -2
  36. package/dist/io.js +2 -2
  37. package/dist/kernel/interfaces/evolutionOps.d.ts +8 -0
  38. package/dist/kernel/interfaces/modifierOps.d.ts +17 -8
  39. package/dist/kernel/occtWasm/evolutionOps.d.ts +2 -0
  40. package/dist/kernel/occtWasm/helpers.d.ts +6 -0
  41. package/dist/kernel/occtWasm/modifierOps.d.ts +2 -8
  42. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  43. package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +3 -5
  44. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  45. package/dist/kernel/occtWasm/occtWasmTypes.d.ts +2 -0
  46. package/dist/{loftFns-Uq6BhPVL.cjs → loftFns-C9k9UAKh.cjs} +1 -1
  47. package/dist/{loftFns-DVsWk-9v.js → loftFns-Cbnrz3p8.js} +1 -1
  48. package/dist/{measureFns-B0Cy7GcQ.cjs → measureFns-Bi62maOJ.cjs} +3 -3
  49. package/dist/{measureFns-DoUWDfAP.js → measureFns-DivR02Xb.js} +3 -3
  50. package/dist/measurement.cjs +2 -2
  51. package/dist/measurement.js +2 -2
  52. package/dist/{meshFns-Bz9PPZWP.cjs → meshFns-8MTf0Lo_.cjs} +4 -4
  53. package/dist/{meshFns-BpBgKIIE.js → meshFns-CcuY52tt.js} +4 -4
  54. package/dist/{occtWasmAdapter-DeVQrL5n.js → occtWasmAdapter-1k4udeb3.js} +50 -6
  55. package/dist/{occtWasmAdapter-DzxyXpLG.cjs → occtWasmAdapter-BNOuP9DA.cjs} +50 -6
  56. package/dist/operations.cjs +2 -2
  57. package/dist/operations.js +2 -2
  58. package/dist/{primitiveFns-DE1RROq-.cjs → primitiveFns-BifV4IGL.cjs} +5 -5
  59. package/dist/{primitiveFns-Crqsdby_.js → primitiveFns-uDvN1FH6.js} +5 -5
  60. package/dist/{principalBoxFns-CzEBI6tC.cjs → principalBoxFns-DjxE8Rym.cjs} +3 -3
  61. package/dist/{principalBoxFns-DwitCsif.js → principalBoxFns-ez0xXLyK.js} +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-DgM_B9WU.cjs → refResolveFns-CTkAPUwM.cjs} +6 -6
  67. package/dist/{refResolveFns-BJz9UvXM.js → refResolveFns-CuaYXFya.js} +6 -6
  68. package/dist/{shapeFns-Ddh0M4Iz.js → shapeFns-DgpWLKra.js} +2 -2
  69. package/dist/{shapeFns-B9LB54_t.cjs → shapeFns-Rmgd4x9I.cjs} +2 -2
  70. package/dist/shapeRef.cjs +1 -1
  71. package/dist/shapeRef.js +1 -1
  72. package/dist/{shapeTypes-C1Ljs72p.cjs → shapeTypes-BjitsJRQ.cjs} +1 -1
  73. package/dist/{shapeTypes-DiCMRU6Z.js → shapeTypes-DbPghQD3.js} +1 -1
  74. package/dist/sketching.cjs +3 -3
  75. package/dist/sketching.js +3 -3
  76. package/dist/{solidBuilders-Dzhk5L6w.js → solidBuilders-BUI_fGzR.js} +3 -3
  77. package/dist/{solidBuilders-C6_6tZXG.cjs → solidBuilders-Bs2NA3xl.cjs} +3 -3
  78. package/dist/{surfaceBuilders-Idshk6C3.js → surfaceBuilders-CO_DKhWA.js} +3 -3
  79. package/dist/{surfaceBuilders-CU_vd71e.cjs → surfaceBuilders-Cn1mkQ3j.cjs} +3 -3
  80. package/dist/text.cjs +2 -2
  81. package/dist/text.js +2 -2
  82. package/dist/{textBlueprints-DyT-kfxc.js → textBlueprints-CT0Kbw1f.js} +8 -8
  83. package/dist/{textBlueprints-BmIxy1fi.cjs → textBlueprints-P_D0KUVx.cjs} +8 -8
  84. package/dist/{textMetrics-CbDASt0r.cjs → textMetrics-CVyX8GyL.cjs} +1 -1
  85. package/dist/{textMetrics-DuzBLY9z.js → textMetrics-CXKdzefS.js} +1 -1
  86. package/dist/{threadFns-YPn7KF9u.cjs → threadFns-BV4HLdPE.cjs} +7 -7
  87. package/dist/{threadFns-CN1R3YKa.js → threadFns-COs6jmaf.js} +7 -7
  88. package/dist/topology/apiTypes.d.ts +9 -0
  89. package/dist/topology/chamferAngleFns.d.ts +18 -9
  90. package/dist/topology.cjs +9 -9
  91. package/dist/topology.js +9 -9
  92. package/dist/{topologyQueryFns-CNOqc1rB.js → topologyQueryFns-J2ae_Gvc.js} +1 -1
  93. package/dist/{topologyQueryFns-0Ycw298Y.cjs → topologyQueryFns-s0LddGkF.cjs} +1 -1
  94. package/dist/{validityTypes-CXnc46WG.cjs → validityTypes-BVZ0lSNi.cjs} +1 -1
  95. package/dist/{validityTypes-rUpnumpL.js → validityTypes-CD_Xz0vZ.js} +1 -1
  96. package/package.json +2 -2
@@ -2,6 +2,7 @@ import { KernelCapabilities } from '../capabilities.js';
2
2
  import { BooleanOpType, BooleanOptions, CheckBooleanResult, DiagnosticOperationResult, DistanceResult, KernelAdapter, KernelEdgeMeshResult, KernelInstance, KernelMeshResult, KernelShape, KernelType, MeshOptions, NurbsCurveData, OperationResult, ShapeOrientation, ShapeType, StepAssemblyPart, SurfaceType } from '../types.js';
3
3
  import { BulkMeasurement, Matrix3 } from '../interfaces/measureOps.js';
4
4
  import { TransformEntry } from '../interfaces/transformOps.js';
5
+ import { ChamferDistAngleEdge } from '../interfaces/modifierOps.js';
5
6
  import { Curve2dHandle, BBox2dHandle } from '../kernel2dTypes.js';
6
7
  import { OcctWasmModule, OcctKernelWasm } from './occtWasmTypes.js';
7
8
  /**
@@ -166,11 +167,7 @@ export declare class OcctWasmAdapter implements KernelAdapter {
166
167
  fillet(shape: KernelShape, edges: KernelShape[], radius: number | [number, number] | ((edge: KernelShape) => number | [number, number])): KernelShape;
167
168
  chamfer(shape: KernelShape, edges: KernelShape[], distance: number | [number, number] | ((edge: KernelShape) => number | [number, number])): KernelShape;
168
169
  chamferDistAngle(shape: KernelShape, edges: KernelShape[], distance: number, angleDeg: number): KernelShape;
169
- chamferDistAngles(shape: KernelShape, edges: ReadonlyArray<{
170
- edge: KernelShape;
171
- distance: number;
172
- angleDeg: number;
173
- }>): KernelShape;
170
+ chamferDistAngles(shape: KernelShape, edges: ReadonlyArray<ChamferDistAngleEdge>): KernelShape;
174
171
  shell(shape: KernelShape, faces: KernelShape[], thickness: number, tolerance?: number): KernelShape;
175
172
  thicken(shape: KernelShape, thickness: number): KernelShape;
176
173
  offset(shape: KernelShape, distance: number, tolerance?: number): KernelShape;
@@ -216,6 +213,7 @@ export declare class OcctWasmAdapter implements KernelAdapter {
216
213
  intersectWithHistory(shape: KernelShape, tool: KernelShape, inputFaceHashes: number[], hashUpperBound: number, options?: BooleanOptions): DiagnosticOperationResult;
217
214
  filletWithHistory(shape: KernelShape, edges: KernelShape[], radius: number | [number, number] | ((edge: KernelShape) => number | [number, number]), inputFaceHashes: number[], hashUpperBound: number): OperationResult;
218
215
  chamferWithHistory(shape: KernelShape, edges: KernelShape[], distance: number | [number, number] | ((edge: KernelShape) => number | [number, number]), inputFaceHashes: number[], hashUpperBound: number): OperationResult;
216
+ chamferDistAnglesWithHistory(shape: KernelShape, edges: ReadonlyArray<ChamferDistAngleEdge>, inputFaceHashes: number[], hashUpperBound: number): OperationResult;
219
217
  shellWithHistory(shape: KernelShape, faces: KernelShape[], thickness: number, inputFaceHashes: number[], hashUpperBound: number, tolerance?: number): OperationResult;
220
218
  thickenWithHistory(shape: KernelShape, thickness: number, inputFaceHashes: number[], hashUpperBound: number): OperationResult;
221
219
  offsetWithHistory(shape: KernelShape, distance: number, inputFaceHashes: number[], hashUpperBound: number, tolerance?: number): OperationResult;
@@ -1 +1 @@
1
- export { t as OcctWasmAdapter } from "../../occtWasmAdapter-DeVQrL5n.js";
1
+ export { t as OcctWasmAdapter } from "../../occtWasmAdapter-1k4udeb3.js";
@@ -333,6 +333,8 @@ export interface OcctKernelWasm {
333
333
  filletRadiiWithHistory?(solidId: number, edgeIds: EmVectorUint32, startRadii: EmVectorDouble, endRadii: EmVectorDouble, inputFaceHashes: EmVectorInt, hashUpperBound: number): EmEvolutionData;
334
334
  /** occt-wasm >= 5.9.0: {@link chamferDistances} with face evolution. */
335
335
  chamferDistancesWithHistory?(solidId: number, edgeIds: EmVectorUint32, distances1: EmVectorDouble, distances2: EmVectorDouble, referenceFaceIds: EmVectorUint32, inputFaceHashes: EmVectorInt, hashUpperBound: number): EmEvolutionData;
336
+ /** occt-wasm >= 5.11.0: {@link chamferDistAngles} with face evolution. */
337
+ chamferDistAnglesWithHistory?(solidId: number, edgeIds: EmVectorUint32, distances: EmVectorDouble, anglesDeg: EmVectorDouble, referenceFaceIds: EmVectorUint32, inputFaceHashes: EmVectorInt, hashUpperBound: number): EmEvolutionData;
336
338
  /** occt-wasm >= 5.9.0 (npm build): {@link draftFaces} with face evolution. */
337
339
  draftFacesWithHistory?(shapeId: number, faceIds: EmVectorUint32, anglesRad: EmVectorDouble, dx: number, dy: number, dz: number, px: number, py: number, pz: number, nx: number, ny: number, nz: number, inputFaceHashes: EmVectorInt, hashUpperBound: number): EmEvolutionData;
338
340
  shellWithHistory(solidId: number, faceIds: EmVectorUint32, thickness: number, tolerance: number, inputFaceHashes: EmVectorInt, hashUpperBound: number): EmEvolutionData;
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
3
  const require_types = require("./types-CjF9Rofr.cjs");
4
4
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
@@ -1,4 +1,4 @@
1
- import { G as _usingCtx, T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, x as isShape3D } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { G as _usingCtx, T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, x as isShape3D } from "./shapeTypes-DbPghQD3.js";
2
2
  import { E as ok, b as isErr, d as validationError, g as err, i as kernelError, l as typeCastError, t as BrepErrorCode } from "./errors-BTccWbtE.js";
3
3
  import { r as toVec3 } from "./types-CKXsIm9-.js";
4
4
  import { c as vecLength, t as vecAdd } from "./vecOps-S-m9H_fe.js";
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-0Ycw298Y.cjs");
4
- const require_faceFns = require("./faceFns-DdMpocg9.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-s0LddGkF.cjs");
4
+ const require_faceFns = require("./faceFns-C7wBHMPv.cjs");
5
5
  // src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,7 +1,7 @@
1
- import { q as getKernel } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { q as getKernel } from "./shapeTypes-DbPghQD3.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-CNOqc1rB.js";
4
- import { m as uvBounds } from "./faceFns-Dodcduw8.js";
3
+ import { E as kernelCallRaw } from "./topologyQueryFns-J2ae_Gvc.js";
4
+ import { m as uvBounds } from "./faceFns-DaPoCzd-.js";
5
5
  // src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_measureFns = require("./measureFns-B0Cy7GcQ.cjs");
3
- const require_principalBoxFns = require("./principalBoxFns-CzEBI6tC.cjs");
2
+ const require_measureFns = require("./measureFns-Bi62maOJ.cjs");
3
+ const require_principalBoxFns = require("./principalBoxFns-DjxE8Rym.cjs");
4
4
  exports.createDistanceQuery = require_measureFns.createDistanceQuery;
5
5
  exports.measureArea = require_measureFns.measureArea;
6
6
  exports.measureDistance = require_measureFns.measureDistance;
@@ -1,3 +1,3 @@
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-DoUWDfAP.js";
2
- import { t as principalBoundingBox } from "./principalBoxFns-DwitCsif.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-DivR02Xb.js";
2
+ import { t as principalBoundingBox } from "./principalBoxFns-ez0xXLyK.js";
3
3
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, principalBoundingBox };
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
2
- const require_occtWasmAdapter = require("./occtWasmAdapter-DzxyXpLG.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
+ const require_occtWasmAdapter = require("./occtWasmAdapter-BNOuP9DA.cjs");
3
3
  const require_errors = require("./errors-O_blYTWT.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-0Ycw298Y.cjs");
5
- const require_solidBuilders = require("./solidBuilders-C6_6tZXG.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-s0LddGkF.cjs");
5
+ const require_solidBuilders = require("./solidBuilders-Bs2NA3xl.cjs");
6
6
  // src/topology/meshCache.ts
7
7
  /**
8
8
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,8 +1,8 @@
1
- import { q as getKernel, ut as qualityDeflection } from "./shapeTypes-DiCMRU6Z.js";
2
- import { j as isUnsupportedKernelOperationError } from "./occtWasmAdapter-DeVQrL5n.js";
1
+ import { q as getKernel, ut as qualityDeflection } from "./shapeTypes-DbPghQD3.js";
2
+ import { j as isUnsupportedKernelOperationError } from "./occtWasmAdapter-1k4udeb3.js";
3
3
  import { E as ok, g as err, r as ioError, t as BrepErrorCode, u as unsupportedError } from "./errors-BTccWbtE.js";
4
- import { d as getSolids, n as getBounds } from "./topologyQueryFns-CNOqc1rB.js";
5
- import { d as getFaceOrigins } from "./solidBuilders-Dzhk5L6w.js";
4
+ import { d as getSolids, n as getBounds } from "./topologyQueryFns-J2ae_Gvc.js";
5
+ import { d as getFaceOrigins } from "./solidBuilders-BUI_fGzR.js";
6
6
  // src/topology/meshCache.ts
7
7
  /**
8
8
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -2343,6 +2343,14 @@ function runEdgeTreatment(Module, edges, value, uniform, perEdge) {
2343
2343
  edgeVec.delete();
2344
2344
  }
2345
2345
  }
2346
+ /**
2347
+ * A per-edge chamfer's `referenceFaceIds`: empty when no edge names its
2348
+ * reference face, else one id per edge, 0 where the facade picks the face.
2349
+ */
2350
+ function referenceFaceIds(faces) {
2351
+ if (faces.every((face) => face === void 0)) return [];
2352
+ return faces.map((face) => face === void 0 ? 0 : unwrap(face));
2353
+ }
2346
2354
  /** Each face's draft angle, in radians. */
2347
2355
  function draftAnglesRad(faces, angleDeg) {
2348
2356
  return faces.map((face) => (typeof angleDeg === "function" ? angleDeg(face) : angleDeg) * Math.PI / 180);
@@ -2354,6 +2362,9 @@ function needsOcctWasm59(what) {
2354
2362
  function needsOcctWasm510(what) {
2355
2363
  return new UnsupportedKernelOperationError(`occt-wasm: ${what} requires occt-wasm >= 5.10.0`);
2356
2364
  }
2365
+ function needsOcctWasm511(what) {
2366
+ return new UnsupportedKernelOperationError(`occt-wasm: ${what} requires occt-wasm >= 5.11.0`);
2367
+ }
2357
2368
  /**
2358
2369
  * Rotate a shape from the kernel's default Z-axis to an arbitrary direction.
2359
2370
  * Used by primitives whose creation API only takes a Z-aligned form.
@@ -3817,21 +3828,23 @@ function chamfer(k, Module, shape, edges, distance) {
3817
3828
  }
3818
3829
  }
3819
3830
  /**
3820
- * Chamfer edge i by `distances[i]` and `anglesDeg[i]`. Builds without the
3821
- * per-edge entry point take only `shared`, the one value every edge has.
3831
+ * Chamfer edge i by `distances[i]` and `anglesDeg[i]` from reference face
3832
+ * `faceIds[i]` (see {@link referenceFaceIds}). Builds without the per-edge
3833
+ * entry point take only `shared`, the one value every edge has, and no faces.
3822
3834
  */
3823
- function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, shared) {
3835
+ function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, faceIds, shared) {
3824
3836
  const id = unwrap(shape);
3825
3837
  const edgeVec = makeVecU32(Module, edges.map(unwrap));
3826
3838
  try {
3827
3839
  if (!k.chamferDistAngles) {
3840
+ if (faceIds.length > 0) throw needsOcctWasm59("distance-angle chamfers measured from a given face");
3828
3841
  if (!shared) throw needsOcctWasm59("per-edge distance-angle chamfers");
3829
3842
  return wrapResult(k, k.chamferDistAngle(id, edgeVec, shared.distance, shared.angleDeg));
3830
3843
  }
3831
3844
  const chamferDistAngles = k.chamferDistAngles.bind(k);
3832
3845
  const distanceVec = makeVecDouble(Module, distances);
3833
3846
  const angleVec = makeVecDouble(Module, anglesDeg);
3834
- const faceVec = makeVecU32(Module, []);
3847
+ const faceVec = makeVecU32(Module, faceIds);
3835
3848
  try {
3836
3849
  return wrapResult(k, reportingFaultyEdges(edges, () => chamferDistAngles(id, edgeVec, distanceVec, angleVec, faceVec)));
3837
3850
  } finally {
@@ -3844,7 +3857,7 @@ function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, sha
3844
3857
  }
3845
3858
  }
3846
3859
  function chamferDistAngle(k, Module, shape, edges, distance, angleDeg) {
3847
- return runChamferDistAngles(k, Module, shape, edges, Array(edges.length).fill(distance), Array(edges.length).fill(angleDeg), {
3860
+ return runChamferDistAngles(k, Module, shape, edges, Array(edges.length).fill(distance), Array(edges.length).fill(angleDeg), [], {
3848
3861
  distance,
3849
3862
  angleDeg
3850
3863
  });
@@ -3856,7 +3869,7 @@ function sharedDistAngle(entries) {
3856
3869
  return entries.every((e) => e.distance === first.distance && e.angleDeg === first.angleDeg) ? first : void 0;
3857
3870
  }
3858
3871
  function chamferDistAngles(k, Module, shape, entries) {
3859
- return runChamferDistAngles(k, Module, shape, entries.map((e) => e.edge), entries.map((e) => e.distance), entries.map((e) => e.angleDeg), sharedDistAngle(entries));
3872
+ return runChamferDistAngles(k, Module, shape, entries.map((e) => e.edge), entries.map((e) => e.distance), entries.map((e) => e.angleDeg), referenceFaceIds(entries.map((e) => e.face)), sharedDistAngle(entries));
3860
3873
  }
3861
3874
  function shell(k, Module, shape, faces, thickness, tolerance) {
3862
3875
  const vec = makeVecU32(Module, faces.map(unwrap));
@@ -6204,6 +6217,34 @@ function chamferWithHistory(k, Module, shape, edges, distance, inputFaceHashes,
6204
6217
  hashVec.delete();
6205
6218
  }
6206
6219
  }
6220
+ function chamferDistAnglesWithHistory(k, Module, shape, entries, inputFaceHashes, hashUpperBound) {
6221
+ if (!k.chamferDistAnglesWithHistory) throw needsOcctWasm511("a distance-angle chamfer with face history");
6222
+ const withHistory = k.chamferDistAnglesWithHistory.bind(k);
6223
+ const shapeId = unwrap(shape);
6224
+ const edges = entries.map((e) => e.edge);
6225
+ const edgeIds = edges.map(unwrap);
6226
+ const distances = entries.map((e) => e.distance);
6227
+ const anglesDeg = entries.map((e) => e.angleDeg);
6228
+ const faceIds = referenceFaceIds(entries.map((e) => e.face));
6229
+ const edgeVec = makeVecU32(Module, edgeIds);
6230
+ const distanceVec = makeVecDouble(Module, distances);
6231
+ const angleVec = makeVecDouble(Module, anglesDeg);
6232
+ const faceVec = makeVecU32(Module, faceIds);
6233
+ const hashVec = makeVecInt(Module, inputFaceHashes);
6234
+ try {
6235
+ const { id, evolution } = parseEvolution(reportingFaultyEdges(edges, () => withHistory(shapeId, edgeVec, distanceVec, angleVec, faceVec, hashVec, hashUpperBound)));
6236
+ return {
6237
+ shape: wrapResult(k, id),
6238
+ evolution
6239
+ };
6240
+ } finally {
6241
+ edgeVec.delete();
6242
+ distanceVec.delete();
6243
+ angleVec.delete();
6244
+ faceVec.delete();
6245
+ hashVec.delete();
6246
+ }
6247
+ }
6207
6248
  function shellWithHistory(k, Module, shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance) {
6208
6249
  const faceVec = makeVecU32(Module, faces.map(unwrap));
6209
6250
  const hashVec = makeVecInt(Module, inputFaceHashes);
@@ -6713,6 +6754,9 @@ var OcctWasmAdapter = class OcctWasmAdapter {
6713
6754
  chamferWithHistory(shape, edges, distance, inputFaceHashes, hashUpperBound) {
6714
6755
  return chamferWithHistory(this.k, this.Module, shape, edges, distance, inputFaceHashes, hashUpperBound);
6715
6756
  }
6757
+ chamferDistAnglesWithHistory(shape, edges, inputFaceHashes, hashUpperBound) {
6758
+ return chamferDistAnglesWithHistory(this.k, this.Module, shape, edges, inputFaceHashes, hashUpperBound);
6759
+ }
6716
6760
  shellWithHistory(shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance) {
6717
6761
  return shellWithHistory(this.k, this.Module, shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance);
6718
6762
  }
@@ -2343,6 +2343,14 @@ function runEdgeTreatment(Module, edges, value, uniform, perEdge) {
2343
2343
  edgeVec.delete();
2344
2344
  }
2345
2345
  }
2346
+ /**
2347
+ * A per-edge chamfer's `referenceFaceIds`: empty when no edge names its
2348
+ * reference face, else one id per edge, 0 where the facade picks the face.
2349
+ */
2350
+ function referenceFaceIds(faces) {
2351
+ if (faces.every((face) => face === void 0)) return [];
2352
+ return faces.map((face) => face === void 0 ? 0 : unwrap(face));
2353
+ }
2346
2354
  /** Each face's draft angle, in radians. */
2347
2355
  function draftAnglesRad(faces, angleDeg) {
2348
2356
  return faces.map((face) => (typeof angleDeg === "function" ? angleDeg(face) : angleDeg) * Math.PI / 180);
@@ -2354,6 +2362,9 @@ function needsOcctWasm59(what) {
2354
2362
  function needsOcctWasm510(what) {
2355
2363
  return new UnsupportedKernelOperationError(`occt-wasm: ${what} requires occt-wasm >= 5.10.0`);
2356
2364
  }
2365
+ function needsOcctWasm511(what) {
2366
+ return new UnsupportedKernelOperationError(`occt-wasm: ${what} requires occt-wasm >= 5.11.0`);
2367
+ }
2357
2368
  /**
2358
2369
  * Rotate a shape from the kernel's default Z-axis to an arbitrary direction.
2359
2370
  * Used by primitives whose creation API only takes a Z-aligned form.
@@ -3817,21 +3828,23 @@ function chamfer(k, Module, shape, edges, distance) {
3817
3828
  }
3818
3829
  }
3819
3830
  /**
3820
- * Chamfer edge i by `distances[i]` and `anglesDeg[i]`. Builds without the
3821
- * per-edge entry point take only `shared`, the one value every edge has.
3831
+ * Chamfer edge i by `distances[i]` and `anglesDeg[i]` from reference face
3832
+ * `faceIds[i]` (see {@link referenceFaceIds}). Builds without the per-edge
3833
+ * entry point take only `shared`, the one value every edge has, and no faces.
3822
3834
  */
3823
- function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, shared) {
3835
+ function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, faceIds, shared) {
3824
3836
  const id = unwrap(shape);
3825
3837
  const edgeVec = makeVecU32(Module, edges.map(unwrap));
3826
3838
  try {
3827
3839
  if (!k.chamferDistAngles) {
3840
+ if (faceIds.length > 0) throw needsOcctWasm59("distance-angle chamfers measured from a given face");
3828
3841
  if (!shared) throw needsOcctWasm59("per-edge distance-angle chamfers");
3829
3842
  return wrapResult(k, k.chamferDistAngle(id, edgeVec, shared.distance, shared.angleDeg));
3830
3843
  }
3831
3844
  const chamferDistAngles = k.chamferDistAngles.bind(k);
3832
3845
  const distanceVec = makeVecDouble(Module, distances);
3833
3846
  const angleVec = makeVecDouble(Module, anglesDeg);
3834
- const faceVec = makeVecU32(Module, []);
3847
+ const faceVec = makeVecU32(Module, faceIds);
3835
3848
  try {
3836
3849
  return wrapResult(k, reportingFaultyEdges(edges, () => chamferDistAngles(id, edgeVec, distanceVec, angleVec, faceVec)));
3837
3850
  } finally {
@@ -3844,7 +3857,7 @@ function runChamferDistAngles(k, Module, shape, edges, distances, anglesDeg, sha
3844
3857
  }
3845
3858
  }
3846
3859
  function chamferDistAngle(k, Module, shape, edges, distance, angleDeg) {
3847
- return runChamferDistAngles(k, Module, shape, edges, Array(edges.length).fill(distance), Array(edges.length).fill(angleDeg), {
3860
+ return runChamferDistAngles(k, Module, shape, edges, Array(edges.length).fill(distance), Array(edges.length).fill(angleDeg), [], {
3848
3861
  distance,
3849
3862
  angleDeg
3850
3863
  });
@@ -3856,7 +3869,7 @@ function sharedDistAngle(entries) {
3856
3869
  return entries.every((e) => e.distance === first.distance && e.angleDeg === first.angleDeg) ? first : void 0;
3857
3870
  }
3858
3871
  function chamferDistAngles(k, Module, shape, entries) {
3859
- return runChamferDistAngles(k, Module, shape, entries.map((e) => e.edge), entries.map((e) => e.distance), entries.map((e) => e.angleDeg), sharedDistAngle(entries));
3872
+ return runChamferDistAngles(k, Module, shape, entries.map((e) => e.edge), entries.map((e) => e.distance), entries.map((e) => e.angleDeg), referenceFaceIds(entries.map((e) => e.face)), sharedDistAngle(entries));
3860
3873
  }
3861
3874
  function shell(k, Module, shape, faces, thickness, tolerance) {
3862
3875
  const vec = makeVecU32(Module, faces.map(unwrap));
@@ -6204,6 +6217,34 @@ function chamferWithHistory(k, Module, shape, edges, distance, inputFaceHashes,
6204
6217
  hashVec.delete();
6205
6218
  }
6206
6219
  }
6220
+ function chamferDistAnglesWithHistory(k, Module, shape, entries, inputFaceHashes, hashUpperBound) {
6221
+ if (!k.chamferDistAnglesWithHistory) throw needsOcctWasm511("a distance-angle chamfer with face history");
6222
+ const withHistory = k.chamferDistAnglesWithHistory.bind(k);
6223
+ const shapeId = unwrap(shape);
6224
+ const edges = entries.map((e) => e.edge);
6225
+ const edgeIds = edges.map(unwrap);
6226
+ const distances = entries.map((e) => e.distance);
6227
+ const anglesDeg = entries.map((e) => e.angleDeg);
6228
+ const faceIds = referenceFaceIds(entries.map((e) => e.face));
6229
+ const edgeVec = makeVecU32(Module, edgeIds);
6230
+ const distanceVec = makeVecDouble(Module, distances);
6231
+ const angleVec = makeVecDouble(Module, anglesDeg);
6232
+ const faceVec = makeVecU32(Module, faceIds);
6233
+ const hashVec = makeVecInt(Module, inputFaceHashes);
6234
+ try {
6235
+ const { id, evolution } = parseEvolution(reportingFaultyEdges(edges, () => withHistory(shapeId, edgeVec, distanceVec, angleVec, faceVec, hashVec, hashUpperBound)));
6236
+ return {
6237
+ shape: wrapResult(k, id),
6238
+ evolution
6239
+ };
6240
+ } finally {
6241
+ edgeVec.delete();
6242
+ distanceVec.delete();
6243
+ angleVec.delete();
6244
+ faceVec.delete();
6245
+ hashVec.delete();
6246
+ }
6247
+ }
6207
6248
  function shellWithHistory(k, Module, shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance) {
6208
6249
  const faceVec = makeVecU32(Module, faces.map(unwrap));
6209
6250
  const hashVec = makeVecInt(Module, inputFaceHashes);
@@ -6713,6 +6754,9 @@ var OcctWasmAdapter = class OcctWasmAdapter {
6713
6754
  chamferWithHistory(shape, edges, distance, inputFaceHashes, hashUpperBound) {
6714
6755
  return chamferWithHistory(this.k, this.Module, shape, edges, distance, inputFaceHashes, hashUpperBound);
6715
6756
  }
6757
+ chamferDistAnglesWithHistory(shape, edges, inputFaceHashes, hashUpperBound) {
6758
+ return chamferDistAnglesWithHistory(this.k, this.Module, shape, edges, inputFaceHashes, hashUpperBound);
6759
+ }
6716
6760
  shellWithHistory(shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance) {
6717
6761
  return shellWithHistory(this.k, this.Module, shape, faces, thickness, inputFaceHashes, hashUpperBound, tolerance);
6718
6762
  }
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_threadFns = require("./threadFns-YPn7KF9u.cjs");
3
- const require_loftFns = require("./loftFns-Uq6BhPVL.cjs");
2
+ const require_threadFns = require("./threadFns-BV4HLdPE.cjs");
3
+ const require_loftFns = require("./loftFns-C9k9UAKh.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 walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, H as circularPattern, I as createAssemblyNode, 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, 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, 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-CN1R3YKa.js";
2
- import { c as twistExtrude, o as supportExtrude, r as complexExtrude, s as sweep } from "./loftFns-DVsWk-9v.js";
1
+ import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, H as circularPattern, I as createAssemblyNode, 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, 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, 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-COs6jmaf.js";
2
+ import { c as twistExtrude, o as supportExtrude, r as complexExtrude, s as sweep } from "./loftFns-Cbnrz3p8.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,11 +1,11 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
- const require_validityTypes = require("./validityTypes-CXnc46WG.cjs");
3
+ const require_validityTypes = require("./validityTypes-BVZ0lSNi.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
6
- const require_solidBuilders = require("./solidBuilders-C6_6tZXG.cjs");
7
- const require_booleanFns = require("./booleanFns-GBPAGQ5g.cjs");
8
- const require_surfaceBuilders = require("./surfaceBuilders-CU_vd71e.cjs");
6
+ const require_solidBuilders = require("./solidBuilders-Bs2NA3xl.cjs");
7
+ const require_booleanFns = require("./booleanFns-MkzdfjDv.cjs");
8
+ const require_surfaceBuilders = require("./surfaceBuilders-Cn1mkQ3j.cjs");
9
9
  // src/topology/transformFns.ts
10
10
  /**
11
11
  * Immutable shape transforms — translate, rotate, scale, mirror, applyMatrix.
@@ -1,11 +1,11 @@
1
- import { E as GeometryCleanupError, G as _usingCtx, d as createSolid, n as castResultShape, q as getKernel } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { E as GeometryCleanupError, G as _usingCtx, d as createSolid, n as castResultShape, q as getKernel } from "./shapeTypes-DbPghQD3.js";
2
2
  import { E as ok, d as validationError, g as err, m as andThen, t as BrepErrorCode } from "./errors-BTccWbtE.js";
3
- import { n as isClosedWire } from "./validityTypes-rUpnumpL.js";
3
+ import { n as isClosedWire } from "./validityTypes-CD_Xz0vZ.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-iraOnb2p.js";
5
5
  import { d as vecNormalize, h as vecScale } from "./vecOps-S-m9H_fe.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-Dzhk5L6w.js";
7
- import { f as collectInputFaceHashes, g as propagateMetadataThroughRelocation, h as propagateMetadataByHash, m as propagateAllMetadata, p as hasAnyMetadata } from "./booleanFns-CItcObM_.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-Idshk6C3.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-BUI_fGzR.js";
7
+ import { f as collectInputFaceHashes, g as propagateMetadataThroughRelocation, h as propagateMetadataByHash, m as propagateAllMetadata, p as hasAnyMetadata } from "./booleanFns-CsTz48A3.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-CO_DKhWA.js";
9
9
  // src/topology/transformFns.ts
10
10
  /**
11
11
  * Immutable shape transforms — translate, rotate, scale, mirror, applyMatrix.
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
2
  const require_bug = require("./bug-CBcpIPuf.cjs");
3
3
  const require_errors = require("./errors-O_blYTWT.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-0Ycw298Y.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-s0LddGkF.cjs");
5
5
  const require_vecOps = require("./vecOps-CrGEPPQM.cjs");
6
- const require_measureFns = require("./measureFns-B0Cy7GcQ.cjs");
6
+ const require_measureFns = require("./measureFns-Bi62maOJ.cjs");
7
7
  // src/measurement/principalBoxFns.ts
8
8
  /**
9
9
  * Principal-axes bounding box: a solid's extent measured in the frame of its
@@ -1,9 +1,9 @@
1
- import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { G as _usingCtx, n as castResultShape, q as getKernel } from "./shapeTypes-DbPghQD3.js";
2
2
  import { i as wasmIndex } from "./bug-ClMTAJhe.js";
3
3
  import { E as ok, d as validationError, g as err, t as BrepErrorCode, u as unsupportedError } from "./errors-BTccWbtE.js";
4
- import { E as kernelCallRaw } from "./topologyQueryFns-CNOqc1rB.js";
4
+ import { E as kernelCallRaw } from "./topologyQueryFns-J2ae_Gvc.js";
5
5
  import { r as vecCross } from "./vecOps-S-m9H_fe.js";
6
- import { f as withCompoundOf, h as setCachedMeasurement, m as getCachedMeasurement, p as withSubShapes } from "./measureFns-DoUWDfAP.js";
6
+ import { f as withCompoundOf, h as setCachedMeasurement, m as getCachedMeasurement, p as withSubShapes } from "./measureFns-DivR02Xb.js";
7
7
  // src/measurement/principalBoxFns.ts
8
8
  /**
9
9
  * Principal-axes bounding box: a solid's extent measured in the frame of its
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_cameraFns = require("./cameraFns-C2XhSqrr.cjs");
2
+ const require_cameraFns = require("./cameraFns-vHpapIZG.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 +1 @@
1
- export { o as PROJECTION_PLANES, t as cameraFromPlane, n as cameraLookAt, r as createCamera, s as isProjectionPlane, a as makeProjectedEdges, i as projectEdges } from "./cameraFns-B6ujpyKy.js";
1
+ export { o as PROJECTION_PLANES, t as cameraFromPlane, n as cameraLookAt, r as createCamera, s as isProjectionPlane, a as makeProjectedEdges, i as projectEdges } from "./cameraFns-BDl_D28X.js";
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-TWIfnyto.cjs");
3
- const require_cornerFinder = require("./cornerFinder-CqHx_Itj.cjs");
2
+ const require_helpers = require("./helpers-BdtYVyP5.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-adDN0_C4.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-CoVtL5c9.js";
2
- import { t as cornerFinder } from "./cornerFinder-D3nBhdfi.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-CDzSlBi_.js";
2
+ import { t as cornerFinder } from "./cornerFinder-Dyk5sKEN.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };
@@ -1,10 +1,10 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
2
- const require_topologyQueryFns = require("./topologyQueryFns-0Ycw298Y.cjs");
3
- const require_faceFns = require("./faceFns-DdMpocg9.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
+ const require_topologyQueryFns = require("./topologyQueryFns-s0LddGkF.cjs");
3
+ const require_faceFns = require("./faceFns-C7wBHMPv.cjs");
4
4
  const require_faceRoleFns = require("./faceRoleFns-Db5bYj4Q.cjs");
5
- const require_shapeFns = require("./shapeFns-B9LB54_t.cjs");
6
- const require_measureFns = require("./measureFns-B0Cy7GcQ.cjs");
7
- const require_adjacencyFns = require("./adjacencyFns-BHdJW5pd.cjs");
5
+ const require_shapeFns = require("./shapeFns-Rmgd4x9I.cjs");
6
+ const require_measureFns = require("./measureFns-Bi62maOJ.cjs");
7
+ const require_adjacencyFns = require("./adjacencyFns-BXzEHSC5.cjs");
8
8
  // src/topology/shapeRef/scoring.ts
9
9
  /**
10
10
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -1,10 +1,10 @@
1
- import { g as disposeTransientSubShape, o as castShapeWithKnownType, q as getKernel } from "./shapeTypes-DiCMRU6Z.js";
2
- import { c as getFaces, w as vertexPosition } from "./topologyQueryFns-CNOqc1rB.js";
3
- import { i as faceGeomType, l as normalAt, r as faceCenter } from "./faceFns-Dodcduw8.js";
1
+ import { g as disposeTransientSubShape, o as castShapeWithKnownType, q as getKernel } from "./shapeTypes-DbPghQD3.js";
2
+ import { c as getFaces, w as vertexPosition } from "./topologyQueryFns-J2ae_Gvc.js";
3
+ import { i as faceGeomType, l as normalAt, r as faceCenter } from "./faceFns-DaPoCzd-.js";
4
4
  import { t as getFaceRoles } from "./faceRoleFns-BPxzQF-n.js";
5
- import { n as getHashCode } from "./shapeFns-Ddh0M4Iz.js";
6
- import { n as measureArea, s as measureLength } from "./measureFns-DoUWDfAP.js";
7
- import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, o as sharedEdges, s as verticesOfEdge, t as adjacentFaceHashes } from "./adjacencyFns-C4yjxKu4.js";
5
+ import { n as getHashCode } from "./shapeFns-DgpWLKra.js";
6
+ import { n as measureArea, s as measureLength } from "./measureFns-DivR02Xb.js";
7
+ import { a as facesOfVertex, c as verticesOfFace, i as facesOfEdge, o as sharedEdges, s as verticesOfEdge, t as adjacentFaceHashes } from "./adjacencyFns-BYjzMejn.js";
8
8
  // src/topology/shapeRef/scoring.ts
9
9
  /**
10
10
  * Default face scorer combining surface type, normal alignment, centroid proximity,
@@ -1,6 +1,6 @@
1
- import { q as getKernel } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { q as getKernel } from "./shapeTypes-DbPghQD3.js";
2
2
  import { t as BrepErrorCode } from "./errors-BTccWbtE.js";
3
- import { E as kernelCallRaw, T as kernelCall } from "./topologyQueryFns-CNOqc1rB.js";
3
+ import { E as kernelCallRaw, T as kernelCall } from "./topologyQueryFns-J2ae_Gvc.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-iraOnb2p.js";
5
5
  // src/topology/shapeFns.ts
6
6
  /**
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-C1Ljs72p.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BjitsJRQ.cjs");
2
2
  const require_errors = require("./errors-O_blYTWT.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-0Ycw298Y.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-s0LddGkF.cjs");
4
4
  const require_constants = require("./constants-oee0S_x6.cjs");
5
5
  // src/topology/shapeFns.ts
6
6
  /**
package/dist/shapeRef.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_refResolveFns = require("./refResolveFns-DgM_B9WU.cjs");
2
+ const require_refResolveFns = require("./refResolveFns-CTkAPUwM.cjs");
3
3
  exports.assignRoles = require_refResolveFns.assignRoles;
4
4
  exports.captureHint = require_refResolveFns.captureHint;
5
5
  exports.createDerivedFaceRef = require_refResolveFns.createDerivedFaceRef;
package/dist/shapeRef.js CHANGED
@@ -1 +1 @@
1
- export { h as assignRoles, g as captureHint, l as createDerivedFaceRef, p as createEdgeRef, _ as createRef, d as createVertexRef, b as defaultScorer, t as isDerivedFaceRef, n as isEdgeRef, r as isFaceRef, i as isLineageRef, a as isVertexRef, u as resolveDerivedFaceRef, m as resolveEdgeRef, o as resolveLineageRef, v as resolveRef, s as resolveRefIn, c as resolveRefParams, f as resolveVertexRef, y as updateRoles } from "./refResolveFns-BJz9UvXM.js";
1
+ export { h as assignRoles, g as captureHint, l as createDerivedFaceRef, p as createEdgeRef, _ as createRef, d as createVertexRef, b as defaultScorer, t as isDerivedFaceRef, n as isEdgeRef, r as isFaceRef, i as isLineageRef, a as isVertexRef, u as resolveDerivedFaceRef, m as resolveEdgeRef, o as resolveLineageRef, v as resolveRef, s as resolveRefIn, c as resolveRefParams, f as resolveVertexRef, y as updateRoles } from "./refResolveFns-CuaYXFya.js";
@@ -1,4 +1,4 @@
1
- const require_occtWasmAdapter = require("./occtWasmAdapter-DzxyXpLG.cjs");
1
+ const require_occtWasmAdapter = require("./occtWasmAdapter-BNOuP9DA.cjs");
2
2
  const require_bug = require("./bug-CBcpIPuf.cjs");
3
3
  // src/kernel/quality.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { A as UnsupportedKernelOperationError, C as reverseCurve2d$2, D as tangentCurve2d, E as serializeCurve2d$2, N as EXACT_BREP_CAPABILITIES, O as translateCurve2d$2, P as OCCT_CAPABILITIES, S as offsetCurve2d$2, T as scaleCurve2d$2, _ as makeCircle2d$2, a as buildAsciiSTL, b as mirrorAcrossAxis, c as createBBox2d, d as deserializeCurve2d$2, f as evaluateCurve2d$2, g as makeBezier2d$2, h as makeArc2dThreePoints, i as DEFAULT_STL_TOLERANCE, j as isUnsupportedKernelOperationError, k as quickHull, l as curveBounds, m as makeArc2dTangent, o as buildBinarySTL, p as intersectCurves2dFn, r as DEFAULT_STL_ANGULAR_TOLERANCE, s as addCurveToBBox, t as OcctWasmAdapter, u as curveTypeName, v as makeEllipse2d$2, w as rotateCurve2d$2, x as mirrorAtPoint, y as makeLine2d$2 } from "./occtWasmAdapter-DeVQrL5n.js";
1
+ import { A as UnsupportedKernelOperationError, C as reverseCurve2d$2, D as tangentCurve2d, E as serializeCurve2d$2, N as EXACT_BREP_CAPABILITIES, O as translateCurve2d$2, P as OCCT_CAPABILITIES, S as offsetCurve2d$2, T as scaleCurve2d$2, _ as makeCircle2d$2, a as buildAsciiSTL, b as mirrorAcrossAxis, c as createBBox2d, d as deserializeCurve2d$2, f as evaluateCurve2d$2, g as makeBezier2d$2, h as makeArc2dThreePoints, i as DEFAULT_STL_TOLERANCE, j as isUnsupportedKernelOperationError, k as quickHull, l as curveBounds, m as makeArc2dTangent, o as buildBinarySTL, p as intersectCurves2dFn, r as DEFAULT_STL_ANGULAR_TOLERANCE, s as addCurveToBBox, t as OcctWasmAdapter, u as curveTypeName, v as makeEllipse2d$2, w as rotateCurve2d$2, x as mirrorAtPoint, y as makeLine2d$2 } from "./occtWasmAdapter-1k4udeb3.js";
2
2
  import { i as wasmIndex, r as vec3At } from "./bug-ClMTAJhe.js";
3
3
  // src/kernel/quality.ts
4
4
  /**
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_blueprintSketcher = require("./blueprintSketcher-CRFpnZAS.cjs");
3
- const require_drawFns = require("./drawFns-hFjTvdw4.cjs");
4
- const require_textBlueprints = require("./textBlueprints-BmIxy1fi.cjs");
2
+ const require_blueprintSketcher = require("./blueprintSketcher-C4XHzqTw.cjs");
3
+ const require_drawFns = require("./drawFns-B5gZtD_P.cjs");
4
+ const require_textBlueprints = require("./textBlueprints-P_D0KUVx.cjs");
5
5
  // src/sketching.ts
6
6
  /**
7
7
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
package/dist/sketching.js CHANGED
@@ -1,6 +1,6 @@
1
- import { n as BaseSketcher2d, t as BlueprintSketcher } from "./blueprintSketcher-Dpdgf5aR.js";
2
- import { A as sketchEllipse, C as DrawingPen, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, T as Drawing, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-D9q4Hxc_.js";
3
- import { a as Sketches, c as compoundSketchFace, d as sketchExtrude, f as sketchFace, g as sketchWires, h as sketchSweep, l as compoundSketchLoft, m as sketchRevolve, o as Sketch, p as sketchLoft, s as compoundSketchExtrude, u as compoundSketchRevolve, y as CompoundSketch } from "./textBlueprints-DyT-kfxc.js";
1
+ import { n as BaseSketcher2d, t as BlueprintSketcher } from "./blueprintSketcher-CQ9LxcIl.js";
2
+ import { A as sketchEllipse, C as DrawingPen, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, T as Drawing, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-stc8-Gma.js";
3
+ import { a as Sketches, c as compoundSketchFace, d as sketchExtrude, f as sketchFace, g as sketchWires, h as sketchSweep, l as compoundSketchLoft, m as sketchRevolve, o as Sketch, p as sketchLoft, s as compoundSketchExtrude, u as compoundSketchRevolve, y as CompoundSketch } from "./textBlueprints-CT0Kbw1f.js";
4
4
  // src/sketching.ts
5
5
  /**
6
6
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
@@ -1,8 +1,8 @@
1
- import { C as isSolid, G as _usingCtx, S as isShell, d as createSolid, f as createVertex, h as disposeResultShape, n as castResultShape, q as getKernel, s as createCompound, x as isShape3D } from "./shapeTypes-DiCMRU6Z.js";
1
+ import { C as isSolid, G as _usingCtx, S as isShell, d as createSolid, f as createVertex, h as disposeResultShape, n as castResultShape, q as getKernel, s as createCompound, x as isShape3D } from "./shapeTypes-DbPghQD3.js";
2
2
  import { E as ok, g as err, l as typeCastError, m as andThen } from "./errors-BTccWbtE.js";
3
- import { C as subShapeHashes, c as getFaces, l as getOrCreateCache, r as getCacheEntry } from "./topologyQueryFns-CNOqc1rB.js";
3
+ import { C as subShapeHashes, c as getFaces, l as getOrCreateCache, r as getCacheEntry } from "./topologyQueryFns-J2ae_Gvc.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-iraOnb2p.js";
5
- import { _ as cast, y as downcast } from "./faceFns-Dodcduw8.js";
5
+ import { _ as cast, y as downcast } from "./faceFns-DaPoCzd-.js";
6
6
  // src/topology/metadata/originTrackingFns.ts
7
7
  /**
8
8
  * Face origin tracking — tag faces with integer origins and propagate