okgeometry-api 1.4.0 → 1.5.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.
package/dist/Mesh.d.ts CHANGED
@@ -572,6 +572,38 @@ export declare class Mesh {
572
572
  * @returns New mesh containing only the overlapping volume
573
573
  */
574
574
  intersect(other: Mesh, options?: MeshBooleanOptions): Mesh;
575
+ /**
576
+ * Union many meshes into a single mesh in ONE WASM call.
577
+ *
578
+ * Substantially faster than chaining pairwise `union()` calls: every input
579
+ * crosses the JS/WASM boundary once, intermediate results never round-trip
580
+ * through buffers, mutually disjoint inputs are concatenated instead of
581
+ * run through CSG, and overlapping inputs are merged smallest-first.
582
+ *
583
+ * Requires all inputs to be closed volumes.
584
+ * @param meshes - Meshes to union (order does not affect the result)
585
+ * @param options - Optional safety overrides
586
+ * @returns New mesh containing the combined volume of all inputs
587
+ */
588
+ static unionAll(meshes: Mesh[], options?: MeshBooleanOptions): Mesh;
589
+ /**
590
+ * Subtract many cutter meshes from this mesh in ONE WASM call.
591
+ *
592
+ * The kernel culls cutters that miss this mesh's bounds, unions mutually
593
+ * overlapping cutters, combines disjoint cutters into one multi-shell
594
+ * operand, and performs a single CSG subtraction — instead of N pairwise
595
+ * subtractions that re-process the shrinking host every time.
596
+ *
597
+ * The fast batched path requires this mesh and all cutters to be closed
598
+ * volumes; open-mesh combinations fall back to sequential pairwise
599
+ * `subtract()` (which carries the split-based open-host trim semantics).
600
+ * @param others - Cutter meshes to subtract
601
+ * @param options - Optional safety overrides
602
+ * @returns New mesh with all cutter volumes removed from this
603
+ */
604
+ subtractAll(others: Mesh[], options?: MeshBooleanOptions): Mesh;
605
+ private static enforceBatchBooleanLimits;
606
+ private static decodeBatchBooleanResult;
575
607
  private splitWithMesh;
576
608
  private splitWithPlane;
577
609
  private splitWithCurve;
@@ -1 +1 @@
1
- {"version":3,"file":"Mesh.d.ts","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mesh.d.ts","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"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"}
package/dist/Mesh.js CHANGED
@@ -1614,6 +1614,115 @@ export class Mesh {
1614
1614
  const operationToken = Mesh.encodeBooleanOperationToken("intersection", lhs, rhs, options);
1615
1615
  return lhs.runBoolean(rhs, "intersection", () => wasm.mesh_boolean_operation(lhs._vertexCount, lhs._buffer, rhs._vertexCount, rhs._buffer, operationToken), options);
1616
1616
  }
1617
+ /**
1618
+ * Union many meshes into a single mesh in ONE WASM call.
1619
+ *
1620
+ * Substantially faster than chaining pairwise `union()` calls: every input
1621
+ * crosses the JS/WASM boundary once, intermediate results never round-trip
1622
+ * through buffers, mutually disjoint inputs are concatenated instead of
1623
+ * run through CSG, and overlapping inputs are merged smallest-first.
1624
+ *
1625
+ * Requires all inputs to be closed volumes.
1626
+ * @param meshes - Meshes to union (order does not affect the result)
1627
+ * @param options - Optional safety overrides
1628
+ * @returns New mesh containing the combined volume of all inputs
1629
+ */
1630
+ static unionAll(meshes, options) {
1631
+ ensureInit();
1632
+ const inputs = meshes
1633
+ .filter((mesh) => mesh.faceCount > 0)
1634
+ .map((mesh) => Mesh.normalizeClosedVolumeOrientation(mesh));
1635
+ if (inputs.length === 0)
1636
+ return Mesh.emptyMesh();
1637
+ if (inputs.length === 1)
1638
+ return Mesh.cloneMesh(inputs[0]);
1639
+ const openCount = inputs.reduce((count, mesh) => count + (mesh.isClosedVolume() ? 0 : 1), 0);
1640
+ if (openCount > 0) {
1641
+ throw new Error(`Boolean unionAll requires all inputs to be closed volumes (${openCount} of ${inputs.length} inputs are open). `
1642
+ + "Close or cap the open meshes before calling unionAll().");
1643
+ }
1644
+ Mesh.enforceBatchBooleanLimits("unionAll", inputs, options);
1645
+ const flags = inputs.every((mesh) => mesh._trustedBooleanInput) ? "trustedInput" : "";
1646
+ const result = wasm.mesh_boolean_union_all(Mesh.packMeshes(inputs), flags);
1647
+ return Mesh.decodeBatchBooleanResult("unionAll", result);
1648
+ }
1649
+ /**
1650
+ * Subtract many cutter meshes from this mesh in ONE WASM call.
1651
+ *
1652
+ * The kernel culls cutters that miss this mesh's bounds, unions mutually
1653
+ * overlapping cutters, combines disjoint cutters into one multi-shell
1654
+ * operand, and performs a single CSG subtraction — instead of N pairwise
1655
+ * subtractions that re-process the shrinking host every time.
1656
+ *
1657
+ * The fast batched path requires this mesh and all cutters to be closed
1658
+ * volumes; open-mesh combinations fall back to sequential pairwise
1659
+ * `subtract()` (which carries the split-based open-host trim semantics).
1660
+ * @param others - Cutter meshes to subtract
1661
+ * @param options - Optional safety overrides
1662
+ * @returns New mesh with all cutter volumes removed from this
1663
+ */
1664
+ subtractAll(others, options) {
1665
+ ensureInit();
1666
+ if (this.faceCount === 0)
1667
+ return Mesh.emptyMesh();
1668
+ const host = Mesh.normalizeClosedVolumeOrientation(this);
1669
+ const cutters = others
1670
+ .filter((mesh) => mesh.faceCount > 0)
1671
+ .map((mesh) => Mesh.normalizeClosedVolumeOrientation(mesh));
1672
+ if (cutters.length === 0)
1673
+ return Mesh.cloneMesh(host);
1674
+ if (cutters.length === 1)
1675
+ return host.subtract(cutters[0], options);
1676
+ if (!host.isClosedVolume() || cutters.some((mesh) => !mesh.isClosedVolume())) {
1677
+ return cutters.reduce((acc, cutter) => acc.subtract(cutter, options), host);
1678
+ }
1679
+ // Cheap bounds cull before crossing into WASM at all.
1680
+ const hostBounds = Mesh.computeRawBounds(host);
1681
+ const relevant = cutters.filter((cutter) => {
1682
+ const cutterBounds = Mesh.computeRawBounds(cutter);
1683
+ const contactTol = Mesh.booleanContactTolerance(hostBounds, cutterBounds);
1684
+ return Mesh.boundsOverlap(hostBounds, cutterBounds, contactTol);
1685
+ });
1686
+ if (relevant.length === 0)
1687
+ return Mesh.cloneMesh(host);
1688
+ Mesh.enforceBatchBooleanLimits("subtractAll", [host, ...relevant], options);
1689
+ const flags = host._trustedBooleanInput && relevant.every((mesh) => mesh._trustedBooleanInput)
1690
+ ? "trustedInput"
1691
+ : "";
1692
+ const result = wasm.mesh_boolean_difference_all(Mesh.packMeshes([host, ...relevant]), flags);
1693
+ return Mesh.decodeBatchBooleanResult("subtractAll", result);
1694
+ }
1695
+ static enforceBatchBooleanLimits(operation, inputs, options) {
1696
+ if (options?.allowUnsafe)
1697
+ return;
1698
+ const limits = Mesh.resolveBooleanLimits(options?.limits);
1699
+ let combinedInputFaces = 0;
1700
+ for (const mesh of inputs) {
1701
+ if (mesh.faceCount > limits.maxInputFacesPerMesh) {
1702
+ throw new Error(`Boolean ${operation} blocked by safety limits `
1703
+ + `(input faces=${mesh.faceCount} > maxInputFacesPerMesh=${limits.maxInputFacesPerMesh}). `
1704
+ + "Simplify inputs, run in a Worker, or pass allowUnsafe: true to force execution.");
1705
+ }
1706
+ combinedInputFaces += mesh.faceCount;
1707
+ }
1708
+ if (combinedInputFaces > limits.maxCombinedInputFaces) {
1709
+ throw new Error(`Boolean ${operation} blocked by safety limits `
1710
+ + `(combined faces=${combinedInputFaces} > maxCombinedInputFaces=${limits.maxCombinedInputFaces}). `
1711
+ + "Simplify inputs, run in a Worker, or pass allowUnsafe: true to force execution.");
1712
+ }
1713
+ }
1714
+ static decodeBatchBooleanResult(operation, result) {
1715
+ if (result.length === 0) {
1716
+ throw new Error(`Boolean ${operation} failed and returned an invalid mesh buffer.`);
1717
+ }
1718
+ const vertexCount = result[0];
1719
+ if (!Number.isFinite(vertexCount) || vertexCount < 0) {
1720
+ throw new Error(`Boolean ${operation} failed and returned a corrupt mesh buffer.`);
1721
+ }
1722
+ if (vertexCount === 0)
1723
+ return Mesh.emptyMesh();
1724
+ return Mesh.fromTrustedBuffer(result);
1725
+ }
1617
1726
  splitWithMesh(other, options) {
1618
1727
  ensureInit();
1619
1728
  const faceCountA = this.faceCount;