brepkit-wasm 2.114.20 → 2.115.1

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/brepkit_wasm.d.ts CHANGED
@@ -706,6 +706,21 @@ export class BrepKernel {
706
706
  * produces an empty or non-manifold result.
707
707
  */
708
708
  fuse(a: number, b: number): number;
709
+ /**
710
+ * Fuse (union) many solids into one in a single call.
711
+ *
712
+ * Faster than a left-fold over `fuse`: overlapping solids are reduced
713
+ * pairwise in a balanced tree while disjoint groups are merged directly
714
+ * without a boolean.
715
+ *
716
+ * Returns a new solid handle (`u32`).
717
+ *
718
+ * # Errors
719
+ *
720
+ * Returns an error if any solid handle is invalid, the list is empty,
721
+ * or a boolean operation produces an empty or non-manifold result.
722
+ */
723
+ fuseAll(solid_handles: Uint32Array): number;
709
724
  /**
710
725
  * Fuse (union) two solids and return evolution tracking data.
711
726
  *
@@ -1514,6 +1514,31 @@ export class BrepKernel {
1514
1514
  }
1515
1515
  return ret[0] >>> 0;
1516
1516
  }
1517
+ /**
1518
+ * Fuse (union) many solids into one in a single call.
1519
+ *
1520
+ * Faster than a left-fold over `fuse`: overlapping solids are reduced
1521
+ * pairwise in a balanced tree while disjoint groups are merged directly
1522
+ * without a boolean.
1523
+ *
1524
+ * Returns a new solid handle (`u32`).
1525
+ *
1526
+ * # Errors
1527
+ *
1528
+ * Returns an error if any solid handle is invalid, the list is empty,
1529
+ * or a boolean operation produces an empty or non-manifold result.
1530
+ * @param {Uint32Array} solid_handles
1531
+ * @returns {number}
1532
+ */
1533
+ fuseAll(solid_handles) {
1534
+ const ptr0 = passArray32ToWasm0(solid_handles, wasm.__wbindgen_malloc);
1535
+ const len0 = WASM_VECTOR_LEN;
1536
+ const ret = wasm.brepkernel_fuseAll(this.__wbg_ptr, ptr0, len0);
1537
+ if (ret[2]) {
1538
+ throw takeFromExternrefTable0(ret[1]);
1539
+ }
1540
+ return ret[0] >>> 0;
1541
+ }
1517
1542
  /**
1518
1543
  * Fuse (union) two solids and return evolution tracking data.
1519
1544
  *
@@ -5149,13 +5174,13 @@ export function __wbg___wbindgen_debug_string_0accd80f45e5faa2(arg0, arg1) {
5149
5174
  export function __wbg___wbindgen_throw_1506f2235d1bdba0(arg0, arg1) {
5150
5175
  throw new Error(getStringFromWasm0(arg0, arg1));
5151
5176
  }
5152
- export function __wbg_error_adf9adaf3ea7d376(arg0, arg1) {
5177
+ export function __wbg_error_3315f87bffa43b25(arg0, arg1) {
5153
5178
  console.error(getStringFromWasm0(arg0, arg1));
5154
5179
  }
5155
- export function __wbg_log_0b34bd2e6392438a(arg0, arg1) {
5180
+ export function __wbg_log_1e768c210f5c3eff(arg0, arg1) {
5156
5181
  console.log(getStringFromWasm0(arg0, arg1));
5157
5182
  }
5158
- export function __wbg_warn_31e303b9a01df6a4(arg0, arg1) {
5183
+ export function __wbg_warn_1d103c25c8b7d3ce(arg0, arg1) {
5159
5184
  console.warn(getStringFromWasm0(arg0, arg1));
5160
5185
  }
5161
5186
  export function __wbindgen_cast_0000000000000001(arg0, arg1) {
Binary file
@@ -1516,6 +1516,31 @@ class BrepKernel {
1516
1516
  }
1517
1517
  return ret[0] >>> 0;
1518
1518
  }
1519
+ /**
1520
+ * Fuse (union) many solids into one in a single call.
1521
+ *
1522
+ * Faster than a left-fold over `fuse`: overlapping solids are reduced
1523
+ * pairwise in a balanced tree while disjoint groups are merged directly
1524
+ * without a boolean.
1525
+ *
1526
+ * Returns a new solid handle (`u32`).
1527
+ *
1528
+ * # Errors
1529
+ *
1530
+ * Returns an error if any solid handle is invalid, the list is empty,
1531
+ * or a boolean operation produces an empty or non-manifold result.
1532
+ * @param {Uint32Array} solid_handles
1533
+ * @returns {number}
1534
+ */
1535
+ fuseAll(solid_handles) {
1536
+ const ptr0 = passArray32ToWasm0(solid_handles, wasm.__wbindgen_malloc);
1537
+ const len0 = WASM_VECTOR_LEN;
1538
+ const ret = wasm.brepkernel_fuseAll(this.__wbg_ptr, ptr0, len0);
1539
+ if (ret[2]) {
1540
+ throw takeFromExternrefTable0(ret[1]);
1541
+ }
1542
+ return ret[0] >>> 0;
1543
+ }
1519
1544
  /**
1520
1545
  * Fuse (union) two solids and return evolution tracking data.
1521
1546
  *
@@ -5161,13 +5186,13 @@ function __wbg_get_imports() {
5161
5186
  __wbg___wbindgen_throw_1506f2235d1bdba0: function(arg0, arg1) {
5162
5187
  throw new Error(getStringFromWasm0(arg0, arg1));
5163
5188
  },
5164
- __wbg_error_adf9adaf3ea7d376: function(arg0, arg1) {
5189
+ __wbg_error_3315f87bffa43b25: function(arg0, arg1) {
5165
5190
  console.error(getStringFromWasm0(arg0, arg1));
5166
5191
  },
5167
- __wbg_log_0b34bd2e6392438a: function(arg0, arg1) {
5192
+ __wbg_log_1e768c210f5c3eff: function(arg0, arg1) {
5168
5193
  console.log(getStringFromWasm0(arg0, arg1));
5169
5194
  },
5170
- __wbg_warn_31e303b9a01df6a4: function(arg0, arg1) {
5195
+ __wbg_warn_1d103c25c8b7d3ce: function(arg0, arg1) {
5171
5196
  console.warn(getStringFromWasm0(arg0, arg1));
5172
5197
  },
5173
5198
  __wbindgen_cast_0000000000000001: function(arg0, arg1) {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "brepkit-wasm",
3
3
  "type": "module",
4
4
  "description": "WebAssembly bindings for brepkit — browser-native B-Rep solid modeling",
5
- "version": "2.114.20",
5
+ "version": "2.115.1",
6
6
  "license": "MIT OR Apache-2.0",
7
7
  "repository": {
8
8
  "type": "git",