okgeometry-api 0.2.13 → 0.2.14
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/Polyline.d.ts +13 -0
- package/dist/Polyline.d.ts.map +1 -1
- package/dist/Polyline.js +31 -0
- package/dist/Polyline.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/package.json +1 -1
- package/wasm/okgeometrycore.d.ts +0 -94
- package/wasm/okgeometrycore.js +1 -1
- package/wasm/okgeometrycore_bg.js +81 -0
- package/wasm/okgeometrycore_bg.wasm +0 -0
- package/wasm/okgeometrycore_bg.wasm.d.ts +4 -0
package/dist/wasm-base64.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm-base64.js","sourceRoot":"","sources":["../src/wasm-base64.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,MAAM,CAAC,MAAM,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"wasm-base64.js","sourceRoot":"","sources":["../src/wasm-base64.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,MAAM,CAAC,MAAM,QAAQ,GAAG,s7goBAAs7goB,CAAC"}
|
package/package.json
CHANGED
package/wasm/okgeometrycore.d.ts
CHANGED
|
@@ -402,97 +402,3 @@ export function test_wasm(): string;
|
|
|
402
402
|
* Get version info
|
|
403
403
|
*/
|
|
404
404
|
export function version(): string;
|
|
405
|
-
|
|
406
|
-
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
407
|
-
|
|
408
|
-
export interface InitOutput {
|
|
409
|
-
readonly memory: WebAssembly.Memory;
|
|
410
|
-
readonly arc_length: (a: number, b: number, c: number) => number;
|
|
411
|
-
readonly arc_point_at: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number];
|
|
412
|
-
readonly chamfer_polycurve: (a: number, b: number, c: number) => [number, number];
|
|
413
|
-
readonly circle_length: (a: number) => number;
|
|
414
|
-
readonly circle_point_at: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
|
|
415
|
-
readonly create_arc: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number];
|
|
416
|
-
readonly create_circle: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
|
|
417
|
-
readonly create_line: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
418
|
-
readonly create_polyline: (a: number, b: number, c: number) => [number, number];
|
|
419
|
-
readonly curve_to_points: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
420
|
-
readonly evaluate_nurbs_curve_at: (a: number, b: number, c: number) => [number, number];
|
|
421
|
-
readonly extrude_circle: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number) => [number, number];
|
|
422
|
-
readonly extrude_line: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number];
|
|
423
|
-
readonly extrude_polyline: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
424
|
-
readonly fillet_polycurve: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
425
|
-
readonly line_length: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
|
|
426
|
-
readonly line_point_at: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
427
|
-
readonly line_tangent: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
428
|
-
readonly loft_circles: (a: number, b: number, c: number, d: number) => [number, number];
|
|
429
|
-
readonly loft_nurbs_surface: (a: number, b: number) => [number, number];
|
|
430
|
-
readonly loft_polylines: (a: number, b: number, c: number, d: number) => [number, number];
|
|
431
|
-
readonly make_nurbs_curves_compatible: (a: number, b: number) => [number, number];
|
|
432
|
-
readonly mesh_apply_matrix: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
433
|
-
readonly mesh_boolean_intersection: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
434
|
-
readonly mesh_boolean_operation: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
|
|
435
|
-
readonly mesh_boolean_subtraction: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
436
|
-
readonly mesh_boolean_union: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
437
|
-
readonly mesh_boundary_polylines: (a: number, b: number, c: number) => [number, number];
|
|
438
|
-
readonly mesh_chamfer_all_edges: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
439
|
-
readonly mesh_create_box: (a: number, b: number, c: number) => [number, number];
|
|
440
|
-
readonly mesh_create_cone: (a: number, b: number, c: number) => [number, number];
|
|
441
|
-
readonly mesh_create_cylinder: (a: number, b: number, c: number) => [number, number];
|
|
442
|
-
readonly mesh_create_prism: (a: number, b: number, c: number) => [number, number];
|
|
443
|
-
readonly mesh_create_sphere: (a: number, b: number, c: number) => [number, number];
|
|
444
|
-
readonly mesh_export_obj: (a: number, b: number, c: number) => [number, number];
|
|
445
|
-
readonly mesh_get_stats: (a: number, b: number, c: number) => [number, number];
|
|
446
|
-
readonly mesh_import_obj: (a: number, b: number) => [number, number];
|
|
447
|
-
readonly mesh_mesh_intersect: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
448
|
-
readonly mesh_plane_intersect: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
449
|
-
readonly mesh_rotate: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
450
|
-
readonly mesh_scale: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
451
|
-
readonly mesh_translate: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
452
|
-
readonly nurbs_curve_curve_intersect: (a: number, b: number, c: number, d: number) => [number, number];
|
|
453
|
-
readonly nurbs_curve_plane_intersect: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
454
|
-
readonly nurbs_surface_evaluate: (a: number, b: number, c: number, d: number) => [number, number];
|
|
455
|
-
readonly nurbs_surface_plane_intersect: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
456
|
-
readonly nurbs_surface_surface_intersect: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
457
|
-
readonly offset_polyline_curve: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
458
|
-
readonly polycurve_to_nurbs: (a: number, b: number) => [number, number];
|
|
459
|
-
readonly polyline_length: (a: number, b: number) => number;
|
|
460
|
-
readonly polyline_point_at: (a: number, b: number, c: number) => [number, number];
|
|
461
|
-
readonly ray_closest_point: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
462
|
-
readonly ray_closest_point_parameter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
463
|
-
readonly ray_point_at: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
464
|
-
readonly sample_nurbs_curve: (a: number, b: number, c: number) => [number, number];
|
|
465
|
-
readonly sweep_curves: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
466
|
-
readonly sweep_polylines: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
467
|
-
readonly tessellate_nurbs_surface: (a: number, b: number) => [number, number];
|
|
468
|
-
readonly test_wasm: () => [number, number];
|
|
469
|
-
readonly version: () => [number, number];
|
|
470
|
-
readonly ray_distance_to_point: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
471
|
-
readonly __wbindgen_externrefs: WebAssembly.Table;
|
|
472
|
-
readonly __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
473
|
-
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
474
|
-
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
475
|
-
readonly __wbindgen_start: () => void;
|
|
476
|
-
}
|
|
477
|
-
|
|
478
|
-
export type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
479
|
-
|
|
480
|
-
/**
|
|
481
|
-
* Instantiates the given `module`, which can either be bytes or
|
|
482
|
-
* a precompiled `WebAssembly.Module`.
|
|
483
|
-
*
|
|
484
|
-
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
|
|
485
|
-
*
|
|
486
|
-
* @returns {InitOutput}
|
|
487
|
-
*/
|
|
488
|
-
export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
|
|
489
|
-
|
|
490
|
-
/**
|
|
491
|
-
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
492
|
-
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
493
|
-
*
|
|
494
|
-
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
495
|
-
*
|
|
496
|
-
* @returns {Promise<InitOutput>}
|
|
497
|
-
*/
|
|
498
|
-
export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|
package/wasm/okgeometrycore.js
CHANGED
|
@@ -5,5 +5,5 @@ import { __wbg_set_wasm } from "./okgeometrycore_bg.js";
|
|
|
5
5
|
__wbg_set_wasm(wasm);
|
|
6
6
|
wasm.__wbindgen_start();
|
|
7
7
|
export {
|
|
8
|
-
arc_length, arc_point_at, chamfer_polycurve, circle_length, circle_point_at, create_arc, create_circle, create_line, create_polyline, curve_to_points, evaluate_nurbs_curve_at, extrude_circle, extrude_line, extrude_polyline, fillet_polycurve, line_length, line_point_at, line_tangent, loft_circles, loft_nurbs_surface, loft_polylines, make_nurbs_curves_compatible, mesh_apply_matrix, mesh_boolean_intersection, mesh_boolean_operation, mesh_boolean_subtraction, mesh_boolean_union, mesh_boundary_polylines, mesh_chamfer_all_edges, mesh_create_box, mesh_create_cone, mesh_create_cylinder, mesh_create_prism, mesh_create_sphere, mesh_export_obj, mesh_get_stats, mesh_import_obj, mesh_mesh_intersect, mesh_plane_intersect, mesh_rotate, mesh_scale, mesh_translate, nurbs_curve_curve_intersect, nurbs_curve_plane_intersect, nurbs_surface_evaluate, nurbs_surface_plane_intersect, nurbs_surface_surface_intersect, offset_polyline_curve, polycurve_to_nurbs, polyline_length, polyline_point_at, sample_nurbs_curve, sweep_curves, sweep_polylines, tessellate_nurbs_surface, test_wasm, version
|
|
8
|
+
arc_length, arc_point_at, chamfer_polycurve, circle_length, circle_point_at, create_arc, create_circle, create_line, create_polyline, curve_to_points, evaluate_nurbs_curve_at, extrude_circle, extrude_line, extrude_polyline, fillet_polycurve, line_length, line_point_at, line_tangent, loft_circles, loft_nurbs_surface, loft_polylines, make_nurbs_curves_compatible, mesh_apply_matrix, mesh_boolean_intersection, mesh_boolean_operation, mesh_boolean_subtraction, mesh_boolean_union, mesh_boundary_polylines, mesh_chamfer_all_edges, mesh_create_box, mesh_create_cone, mesh_create_cylinder, mesh_create_prism, mesh_create_sphere, mesh_export_obj, mesh_get_stats, mesh_import_obj, mesh_mesh_intersect, mesh_plane_intersect, mesh_rotate, mesh_scale, mesh_translate, nurbs_curve_curve_intersect, nurbs_curve_plane_intersect, nurbs_surface_evaluate, nurbs_surface_plane_intersect, nurbs_surface_surface_intersect, offset_polyline_curve, polycurve_to_nurbs, polyline_length, polyline_point_at, ray_closest_point, ray_closest_point_parameter, ray_distance_to_point, ray_point_at, sample_nurbs_curve, sweep_curves, sweep_polylines, tessellate_nurbs_surface, test_wasm, version
|
|
9
9
|
} from "./okgeometrycore_bg.js";
|
|
@@ -943,6 +943,87 @@ export function polyline_point_at(coords, t) {
|
|
|
943
943
|
return v2;
|
|
944
944
|
}
|
|
945
945
|
|
|
946
|
+
/**
|
|
947
|
+
* Find the closest point on a ray to a given point.
|
|
948
|
+
* Returns [x, y, z] of the closest point on the ray.
|
|
949
|
+
* @param {number} ox
|
|
950
|
+
* @param {number} oy
|
|
951
|
+
* @param {number} oz
|
|
952
|
+
* @param {number} dx
|
|
953
|
+
* @param {number} dy
|
|
954
|
+
* @param {number} dz
|
|
955
|
+
* @param {number} px
|
|
956
|
+
* @param {number} py
|
|
957
|
+
* @param {number} pz
|
|
958
|
+
* @returns {Float64Array}
|
|
959
|
+
*/
|
|
960
|
+
export function ray_closest_point(ox, oy, oz, dx, dy, dz, px, py, pz) {
|
|
961
|
+
const ret = wasm.ray_closest_point(ox, oy, oz, dx, dy, dz, px, py, pz);
|
|
962
|
+
var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
|
|
963
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
964
|
+
return v1;
|
|
965
|
+
}
|
|
966
|
+
|
|
967
|
+
/**
|
|
968
|
+
* Find the parameter t for the closest point on a ray to a given point.
|
|
969
|
+
* The closest point is at: origin + t * direction
|
|
970
|
+
* Note: t can be negative if the closest point is "behind" the ray origin.
|
|
971
|
+
* @param {number} ox
|
|
972
|
+
* @param {number} oy
|
|
973
|
+
* @param {number} oz
|
|
974
|
+
* @param {number} dx
|
|
975
|
+
* @param {number} dy
|
|
976
|
+
* @param {number} dz
|
|
977
|
+
* @param {number} px
|
|
978
|
+
* @param {number} py
|
|
979
|
+
* @param {number} pz
|
|
980
|
+
* @returns {number}
|
|
981
|
+
*/
|
|
982
|
+
export function ray_closest_point_parameter(ox, oy, oz, dx, dy, dz, px, py, pz) {
|
|
983
|
+
const ret = wasm.ray_closest_point_parameter(ox, oy, oz, dx, dy, dz, px, py, pz);
|
|
984
|
+
return ret;
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
/**
|
|
988
|
+
* Compute the distance from a ray to a point.
|
|
989
|
+
* Ray is defined by origin (ox, oy, oz) and direction (dx, dy, dz).
|
|
990
|
+
* Direction should be normalized for accurate distance.
|
|
991
|
+
* Returns the perpendicular distance from the ray to the point.
|
|
992
|
+
* @param {number} ox
|
|
993
|
+
* @param {number} oy
|
|
994
|
+
* @param {number} oz
|
|
995
|
+
* @param {number} dx
|
|
996
|
+
* @param {number} dy
|
|
997
|
+
* @param {number} dz
|
|
998
|
+
* @param {number} px
|
|
999
|
+
* @param {number} py
|
|
1000
|
+
* @param {number} pz
|
|
1001
|
+
* @returns {number}
|
|
1002
|
+
*/
|
|
1003
|
+
export function ray_distance_to_point(ox, oy, oz, dx, dy, dz, px, py, pz) {
|
|
1004
|
+
const ret = wasm.ray_distance_to_point(ox, oy, oz, dx, dy, dz, px, py, pz);
|
|
1005
|
+
return ret;
|
|
1006
|
+
}
|
|
1007
|
+
|
|
1008
|
+
/**
|
|
1009
|
+
* Get a point along the ray at parameter t.
|
|
1010
|
+
* Returns [x, y, z] = origin + t * direction
|
|
1011
|
+
* @param {number} ox
|
|
1012
|
+
* @param {number} oy
|
|
1013
|
+
* @param {number} oz
|
|
1014
|
+
* @param {number} dx
|
|
1015
|
+
* @param {number} dy
|
|
1016
|
+
* @param {number} dz
|
|
1017
|
+
* @param {number} t
|
|
1018
|
+
* @returns {Float64Array}
|
|
1019
|
+
*/
|
|
1020
|
+
export function ray_point_at(ox, oy, oz, dx, dy, dz, t) {
|
|
1021
|
+
const ret = wasm.ray_point_at(ox, oy, oz, dx, dy, dz, t);
|
|
1022
|
+
var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
|
|
1023
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
|
|
1024
|
+
return v1;
|
|
1025
|
+
}
|
|
1026
|
+
|
|
946
1027
|
/**
|
|
947
1028
|
* Sample a NURBS curve.
|
|
948
1029
|
* Input: degree, then flat control points [x,y,z,...], then flat weights, then flat knots
|
|
Binary file
|
|
@@ -52,12 +52,16 @@ export const offset_polyline_curve: (a: number, b: number, c: number, d: number,
|
|
|
52
52
|
export const polycurve_to_nurbs: (a: number, b: number) => [number, number];
|
|
53
53
|
export const polyline_length: (a: number, b: number) => number;
|
|
54
54
|
export const polyline_point_at: (a: number, b: number, c: number) => [number, number];
|
|
55
|
+
export const ray_closest_point: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
56
|
+
export const ray_closest_point_parameter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
57
|
+
export const ray_point_at: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
55
58
|
export const sample_nurbs_curve: (a: number, b: number, c: number) => [number, number];
|
|
56
59
|
export const sweep_curves: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
57
60
|
export const sweep_polylines: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
58
61
|
export const tessellate_nurbs_surface: (a: number, b: number) => [number, number];
|
|
59
62
|
export const test_wasm: () => [number, number];
|
|
60
63
|
export const version: () => [number, number];
|
|
64
|
+
export const ray_distance_to_point: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => number;
|
|
61
65
|
export const __wbindgen_externrefs: WebAssembly.Table;
|
|
62
66
|
export const __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
63
67
|
export const __wbindgen_malloc: (a: number, b: number) => number;
|