okgeometry-api 1.5.0 → 1.6.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.map +1 -1
- package/dist/Mesh.js +9 -1
- package/dist/Mesh.js.map +1 -1
- package/dist/wasm-base64.d.ts +1 -1
- package/dist/wasm-base64.d.ts.map +1 -1
- package/dist/wasm-base64.js +1 -1
- package/dist/wasm-base64.js.map +1 -1
- package/dist/wasm-bindings.d.ts +17 -0
- package/dist/wasm-bindings.d.ts.map +1 -1
- package/dist/wasm-bindings.js +26 -0
- package/dist/wasm-bindings.js.map +1 -1
- package/package.json +1 -1
- package/src/Mesh.ts +11 -1
- package/src/wasm-base64.ts +1 -1
- package/src/wasm-bindings.d.ts +16 -0
- package/src/wasm-bindings.js +27 -0
package/src/wasm-bindings.d.ts
CHANGED
|
@@ -549,6 +549,21 @@ export function mesh_scale(vertex_count: number, buffer: Float64Array, sx: numbe
|
|
|
549
549
|
|
|
550
550
|
export function mesh_solid_split_plane(vertex_count: number, buffer: Float64Array, nx: number, ny: number, nz: number, d: number, operation: string): Float64Array;
|
|
551
551
|
|
|
552
|
+
/**
|
|
553
|
+
* Trim an OPEN host surface by all closed cutter meshes in one WASM call.
|
|
554
|
+
*
|
|
555
|
+
* `packed` layout matches `mesh_boolean_difference_all`: the FIRST mesh is
|
|
556
|
+
* the open host and every following mesh is a closed cutter volume.
|
|
557
|
+
* `flags`: `""` or `"trustedInput"`.
|
|
558
|
+
*
|
|
559
|
+
* Unlike folding pairwise surface-split subtracts over the cutter list,
|
|
560
|
+
* every host triangle is cut by ALL relevant cutters at once (one CDT per
|
|
561
|
+
* triangle) and classified inside-any-cutter — one pass over the host
|
|
562
|
+
* instead of N passes over an ever-growing, ever-degrading host.
|
|
563
|
+
* Returns the outside (kept) mesh buffer, or an empty vector on failure.
|
|
564
|
+
*/
|
|
565
|
+
export function mesh_surface_difference_all(packed: Float64Array, flags: string): Float64Array;
|
|
566
|
+
|
|
552
567
|
export function mesh_surface_split(vertex_count_a: number, buffer_a: Float64Array, vertex_count_b: number, buffer_b: Float64Array, operation: string): Float64Array;
|
|
553
568
|
|
|
554
569
|
export function mesh_surface_split_plane(vertex_count: number, buffer: Float64Array, nx: number, ny: number, nz: number, d: number, operation: string): Float64Array;
|
|
@@ -831,6 +846,7 @@ export interface InitOutput {
|
|
|
831
846
|
readonly mesh_rotate: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
832
847
|
readonly mesh_scale: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
833
848
|
readonly mesh_solid_split_plane: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
849
|
+
readonly mesh_surface_difference_all: (a: number, b: number, c: number, d: number) => [number, number];
|
|
834
850
|
readonly mesh_surface_split: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
|
|
835
851
|
readonly mesh_surface_split_plane: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
836
852
|
readonly mesh_topology_metrics: (a: number, b: number, c: number) => [number, number];
|
package/src/wasm-bindings.js
CHANGED
|
@@ -1960,6 +1960,33 @@ export function mesh_solid_split_plane(vertex_count, buffer, nx, ny, nz, d, oper
|
|
|
1960
1960
|
return v3;
|
|
1961
1961
|
}
|
|
1962
1962
|
|
|
1963
|
+
/**
|
|
1964
|
+
* Trim an OPEN host surface by all closed cutter meshes in one WASM call.
|
|
1965
|
+
*
|
|
1966
|
+
* `packed` layout matches `mesh_boolean_difference_all`: the FIRST mesh is
|
|
1967
|
+
* the open host and every following mesh is a closed cutter volume.
|
|
1968
|
+
* `flags`: `""` or `"trustedInput"`.
|
|
1969
|
+
*
|
|
1970
|
+
* Unlike folding pairwise surface-split subtracts over the cutter list,
|
|
1971
|
+
* every host triangle is cut by ALL relevant cutters at once (one CDT per
|
|
1972
|
+
* triangle) and classified inside-any-cutter — one pass over the host
|
|
1973
|
+
* instead of N passes over an ever-growing, ever-degrading host.
|
|
1974
|
+
* Returns the outside (kept) mesh buffer, or an empty vector on failure.
|
|
1975
|
+
* @param {Float64Array} packed
|
|
1976
|
+
* @param {string} flags
|
|
1977
|
+
* @returns {Float64Array}
|
|
1978
|
+
*/
|
|
1979
|
+
export function mesh_surface_difference_all(packed, flags) {
|
|
1980
|
+
const ptr0 = passArrayF64ToWasm0(packed, wasm.__wbindgen_malloc);
|
|
1981
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1982
|
+
const ptr1 = passStringToWasm0(flags, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
1983
|
+
const len1 = WASM_VECTOR_LEN;
|
|
1984
|
+
const ret = wasm.mesh_surface_difference_all(ptr0, len0, ptr1, len1);
|
|
1985
|
+
var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
|
|
1986
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
1987
|
+
return v3;
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1963
1990
|
/**
|
|
1964
1991
|
* @param {number} vertex_count_a
|
|
1965
1992
|
* @param {Float64Array} buffer_a
|