NurbsCurve
3D NURBS curves. Wire: NurbsCurve JSON string. fromSubpath takes a plane chain JSON (untagged segment bag at the wasm door; prefer PolyCurve2d / Path2d at TS call sites).
import { NurbsCurve } from '@huukhanhnguyen/geometry'API reference
NurbsCurve.axesAtParam
NurbsCurve.axesAtParam(curve_json: string, t: number): Float64ArrayWasm: curve_axes_at_param
NurbsCurve.boundingBox
NurbsCurve.boundingBox(curve_json: string): Float64ArrayWasm: curve_bounding_box
NurbsCurve.chamfer
NurbsCurve.chamfer(curve_json: string, distance1: number, distance2: number, use_indices: boolean, vertex_indices: Uint32Array): stringWasm: curve_chamfer
NurbsCurve.circle
NurbsCurve.circle(cx: number, cy: number, cz: number, radius: number, nx: number, ny: number, nz: number): stringWasm: curve_circle
NurbsCurve.closestPoint
NurbsCurve.closestPoint(curve_json: string, x: number, y: number, z: number): Float64ArrayWasm: curve_closest_point
NurbsCurve.cubicBezier
NurbsCurve.cubicBezier(p0x: number, p0y: number, p0z: number, p1x: number, p1y: number, p1z: number, p2x: number, p2y: number, p2z: number, p3x: number, p3y: number, p3z: number): stringWasm: curve_cubic_bezier
NurbsCurve.ellipse
NurbsCurve.ellipse(cx: number, cy: number, cz: number, xx: number, xy: number, xz: number, yx: number, yy: number, yz: number): stringWasm: curve_ellipse
NurbsCurve.ellipseArc
NurbsCurve.ellipseArc(cx: number, cy: number, cz: number, xx: number, xy: number, xz: number, yx: number, yy: number, yz: number, start_angle: number, end_angle: number): stringWasm: curve_ellipse_arc
NurbsCurve.endPoint
NurbsCurve.endPoint(curve_json: string): Float64ArrayWasm: curve_end_point
NurbsCurve.fillet
NurbsCurve.fillet(curve_json: string, radius: number, use_indices: boolean, vertex_indices: Uint32Array, degenerate_angle_tol: number): stringWasm: curve_fillet
NurbsCurve.fromPath
NurbsCurve.fromPath(path_json: string): stringWasm: curve_from_path
NurbsCurve.fromSubpath
NurbsCurve.fromSubpath(shape_json: string): stringWasm: curve_from_subpath
NurbsCurve.geometryToNurbs
NurbsCurve.geometryToNurbs(geometry_json: string): stringWasm: curve_geometry_to_nurbs
NurbsCurve.helix
NurbsCurve.helix(ox: number, oy: number, oz: number, ax: number, ay: number, az: number, radius: number, pitch: number, turns: number, segments_per_turn: number, clockwise: boolean): stringWasm: curve_helix
NurbsCurve.isClosed
NurbsCurve.isClosed(curve_json: string): booleanWasm: curve_is_closed
NurbsCurve.join
NurbsCurve.join(curves_json: string): stringWasm: curve_join
NurbsCurve.length
NurbsCurve.length(curve_json: string): numberWasm: curve_length
NurbsCurve.lengthAt
NurbsCurve.lengthAt(curve_json: string, t: number): numberWasm: curve_length_at
NurbsCurve.line
NurbsCurve.line(sx: number, sy: number, sz: number, ex: number, ey: number, ez: number): stringWasm: curve_line
NurbsCurve.nurbsToWire
NurbsCurve.nurbsToWire(nurbs_json: string): stringWasm: curve_nurbs_to_wire
NurbsCurve.offset
NurbsCurve.offset(curve_json: string, distance: number, direction_x: number, direction_y: number, direction_z: number, tolerance: number): stringWasm: curve_offset
NurbsCurve.overcut
NurbsCurve.overcut(curve_json: string, radius: number, overcut_type: string, reduction: number, use_indices: boolean, vertex_indices: Uint32Array, degenerate_angle_tol: number): stringWasm: curve_overcut
NurbsCurve.paramAtLength
NurbsCurve.paramAtLength(curve_json: string, length: number): numberWasm: curve_param_at_length
NurbsCurve.paramToKnot
NurbsCurve.paramToKnot(curve_json: string, t: number): numberWasm: curve_param_to_knot
NurbsCurve.pointAt
NurbsCurve.pointAt(curve_json: string, t: number): Float64ArrayWasm: curve_point_at
NurbsCurve.polyline
NurbsCurve.polyline(points: Float64Array, closed: boolean): stringWasm: curve_polyline
NurbsCurve.project
NurbsCurve.project(curve_json: string, plane_point_x: number, plane_point_y: number, plane_point_z: number, plane_normal_x: number, plane_normal_y: number, plane_normal_z: number): stringWasm: curve_project
NurbsCurve.quadraticBezier
NurbsCurve.quadraticBezier(p0x: number, p0y: number, p0z: number, p1x: number, p1y: number, p1z: number, p2x: number, p2y: number, p2z: number): stringWasm: curve_quadratic_bezier
NurbsCurve.reverse
NurbsCurve.reverse(curve_json: string): stringWasm: curve_reverse
NurbsCurve.spline
NurbsCurve.spline(points: Float64Array, degree: number): stringWasm: curve_spline
NurbsCurve.splitAt
NurbsCurve.splitAt(curve_json: string, t: number): stringWasm: curve_split_at
NurbsCurve.startPoint
NurbsCurve.startPoint(curve_json: string): Float64ArrayWasm: curve_start_point
NurbsCurve.sweepFrameAt
NurbsCurve.sweepFrameAt(curve_json: string, u: number, smooth_iter: number): Float64ArrayWasm: curve_sweep_frame_at
NurbsCurve.sweepFrameIsDiscrete
NurbsCurve.sweepFrameIsDiscrete(curve_json: string, smooth_iter: number): booleanWasm: curve_sweep_frame_is_discrete
NurbsCurve.tangentAt
NurbsCurve.tangentAt(curve_json: string, t: number): Float64ArrayWasm: curve_tangent_at
NurbsCurve.tessellate
NurbsCurve.tessellate(curve_json: string, tolerance: number): Float64ArrayWasm: curve_tessellate
NurbsCurve.toSvgPathData
NurbsCurve.toSvgPathData(curve_json: string): stringWasm: curve_to_svg_path_data
NurbsCurve.transform
NurbsCurve.transform(curve_json: string, elements: Float64Array): stringWasm: curve_transform
NurbsCurve.validationError
NurbsCurve.validationError(curve_json: string): string | undefinedWasm: curve_validation_error
NurbsCurve.wireFromPoints
NurbsCurve.wireFromPoints(points: Float64Array, closed: boolean): stringWasm: curve_wire_from_points
See GEOMETRY_CATALOG.md for catalog ownership.