Skip to content
Shapemetry

@huukhanhnguyen/geometry / namespaces/NurbsCurve

namespaces/NurbsCurve

axesAtParam

const axesAtParam: (curve_json, t) => Float64Array = wasm.curve_axes_at_param

origin(3), xAxis(3), yAxis(3), zAxis(3) — the sweep-frame trihedron.

Parameters

curve_json

string

t

number

Returns

Float64Array


boundingBox

const boundingBox: (curve_json) => Float64Array = wasm.curve_bounding_box

[minX, minY, minZ, maxX, maxY, maxZ] of the CONTROL POLYGON, which is the curve's convex hull.

Parameters

curve_json

string

Returns

Float64Array


chamfer

const chamfer: (curve_json, distance1, distance2, use_indices, vertex_indices) => string = wasm.curve_chamfer

Parameters

curve_json

string

distance1

number

distance2

number

use_indices

boolean

vertex_indices

Uint32Array

Returns

string


circle

const circle: (cx, cy, cz, radius, nx, ny, nz) => string = wasm.curve_circle

Parameters

cx

number

cy

number

cz

number

radius

number

nx

number

ny

number

nz

number

Returns

string


closestPoint

const closestPoint: (curve_json, x, y, z) => Float64Array = wasm.curve_closest_point

Parameters

curve_json

string

x

number

y

number

z

number

Returns

Float64Array


cubicBezier

const cubicBezier: (p0x, p0y, p0z, p1x, p1y, p1z, p2x, p2y, p2z, p3x, p3y, p3z) => string = wasm.curve_cubic_bezier

Parameters

p0x

number

p0y

number

p0z

number

p1x

number

p1y

number

p1z

number

p2x

number

p2y

number

p2z

number

p3x

number

p3y

number

p3z

number

Returns

string


ellipse

const ellipse: (cx, cy, cz, xx, xy, xz, yx, yy, yz) => string = wasm.curve_ellipse

Parameters

cx

number

cy

number

cz

number

xx

number

xy

number

xz

number

yx

number

yy

number

yz

number

Returns

string


ellipseArc

const ellipseArc: (cx, cy, cz, xx, xy, xz, yx, yy, yz, start_angle, end_angle) => string = wasm.curve_ellipse_arc

Parameters

cx

number

cy

number

cz

number

xx

number

xy

number

xz

number

yx

number

yy

number

yz

number

start_angle

number

end_angle

number

Returns

string


endPoint

const endPoint: (curve_json) => Float64Array = wasm.curve_end_point

Parameters

curve_json

string

Returns

Float64Array


fillet

const fillet: (curve_json, radius, use_indices, vertex_indices, degenerate_angle_tol) => string = wasm.curve_fillet

use_indices = false is the TS null default — every corner.

Parameters

curve_json

string

radius

number

use_indices

boolean

vertex_indices

Uint32Array

degenerate_angle_tol

number

Returns

string


fromPath

const fromPath: (path_json) => string = wasm.curve_from_path

A JSON array of ContourJson in, a JSON array of NurbsCurveJSON out.

Parameters

path_json

string

Returns

string


fromSubpath

const fromSubpath: (shape_json) => string = wasm.curve_from_subpath

ContourJson in, one NurbsCurveJSON out.

Parameters

shape_json

string

Returns

string


geometryToNurbs

const geometryToNurbs: (geometry_json) => string = wasm.curve_geometry_to_nurbs

curveGeometryToNurbs — takes either a bare NurbsCurve or a Wire / PolyCurve document and returns the NurbsCurve every other curve_* / nurbs_* export reads.

Parameters

geometry_json

string

Returns

string


helix

const helix: (ox, oy, oz, ax, ay, az, radius, pitch, turns, segments_per_turn, clockwise) => string = wasm.curve_helix

Parameters

ox

number

oy

number

oz

number

ax

number

ay

number

az

number

radius

number

pitch

number

turns

number

segments_per_turn

number

clockwise

boolean

Returns

string


isClosed

const isClosed: (curve_json) => boolean = wasm.curve_is_closed

Parameters

curve_json

string

Returns

boolean


join

const join: (curves_json) => string = wasm.curve_join

curves_json is a JSON array of NurbsCurveJSON.

Parameters

curves_json

string

Returns

string


length

const length: (curve_json) => number = wasm.curve_length

Parameters

curve_json

string

Returns

number


lengthAt

const lengthAt: (curve_json, t) => number = wasm.curve_length_at

Parameters

curve_json

string

t

number

Returns

number


line

const line: (sx, sy, sz, ex, ey, ez) => string = wasm.curve_line

Parameters

sx

number

sy

number

sz

number

ex

number

ey

number

ez

number

Returns

string


nurbsToWire

const nurbsToWire: (nurbs_json) => string = wasm.curve_nurbs_to_wire

nurbsToWire — the other direction: a NURBS curve as a one-edge Wire document (legacy curve entity geometry path).

Parameters

nurbs_json

string

Returns

string


offset

const offset: (curve_json, distance, direction_x, direction_y, direction_z, tolerance) => string = wasm.curve_offset

Parameters

curve_json

string

distance

number

direction_x

number

direction_y

number

direction_z

number

tolerance

number

Returns

string


overcut

const overcut: (curve_json, radius, overcut_type, reduction, use_indices, vertex_indices, degenerate_angle_tol) => string = wasm.curve_overcut

overcut_type is "dogbone", "longTbone" or "shortTbone".

Parameters

curve_json

string

radius

number

overcut_type

string

reduction

number

use_indices

boolean

vertex_indices

Uint32Array

degenerate_angle_tol

number

Returns

string


paramAtLength

const paramAtLength: (curve_json, length) => number = wasm.curve_param_at_length

Parameters

curve_json

string

length

number

Returns

number


paramToKnot

const paramToKnot: (curve_json, t) => number = wasm.curve_param_to_knot

Parameters

curve_json

string

t

number

Returns

number


pointAt

const pointAt: (curve_json, t) => Float64Array = wasm.curve_point_at

Parameters

curve_json

string

t

number

Returns

Float64Array


polyline

const polyline: (points, closed) => string = wasm.curve_polyline

points is a flat [x, y, z, ...] run.

Parameters

points

Float64Array

closed

boolean

Returns

string


project

const project: (curve_json, plane_point_x, plane_point_y, plane_point_z, plane_normal_x, plane_normal_y, plane_normal_z) => string = wasm.curve_project

Parameters

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

Returns

string


quadraticBezier

const quadraticBezier: (p0x, p0y, p0z, p1x, p1y, p1z, p2x, p2y, p2z) => string = wasm.curve_quadratic_bezier

Parameters

p0x

number

p0y

number

p0z

number

p1x

number

p1y

number

p1z

number

p2x

number

p2y

number

p2z

number

Returns

string


reverse

const reverse: (curve_json) => string = wasm.curve_reverse

Parameters

curve_json

string

Returns

string


spline

const spline: (points, degree) => string = wasm.curve_spline

Parameters

points

Float64Array

degree

number

Returns

string


splitAt

const splitAt: (curve_json, t) => string = wasm.curve_split_at

Both halves, as a JSON array of two NurbsCurveJSON.

Parameters

curve_json

string

t

number

Returns

string


startPoint

const startPoint: (curve_json) => Float64Array = wasm.curve_start_point

Parameters

curve_json

string

Returns

Float64Array


sweepFrameAt

const sweepFrameAt: (curve_json, u, smooth_iter, tilt_samples) => Float64Array = wasm.curve_sweep_frame_at

The sweep frame at u. tilt_samples is a flat (u, radians) table the caller fills by evaluating its own tilt law; empty means no extra twist. The interpolated tilt rotates the frame about its x-axis.

Parameters

curve_json

string

u

number

smooth_iter

number

tilt_samples

Float64Array

Returns

Float64Array


sweepFrameIsDiscrete

const sweepFrameIsDiscrete: (curve_json, smooth_iter) => boolean = wasm.curve_sweep_frame_is_discrete

Whether the sweep frame took the DiscreteTrihedron fallback (cumulative torsion above 3*pi) rather than CorrectedFrenet.

Parameters

curve_json

string

smooth_iter

number

Returns

boolean


tangentAt

const tangentAt: (curve_json, t) => Float64Array = wasm.curve_tangent_at

Parameters

curve_json

string

t

number

Returns

Float64Array


tessellate

const tessellate: (curve_json, tolerance) => Float64Array = wasm.curve_tessellate

Parameters

curve_json

string

tolerance

number

Returns

Float64Array


toSvgPathData

const toSvgPathData: (curve_json) => string = wasm.curve_to_svg_path_data

Parameters

curve_json

string

Returns

string


transform

const transform: (curve_json, elements) => string = wasm.curve_transform

Parameters

curve_json

string

elements

Float64Array

Returns

string


validationError

const validationError: (curve_json) => string | undefined = wasm.curve_validation_error

The constructor's checks. Returns undefined when valid, or the message the TypeScript constructor would have thrown.

Parameters

curve_json

string

Returns

string | undefined


wireFromPoints

const wireFromPoints: (points, closed) => string = wasm.curve_wire_from_points

wireFromPoints — a chain wire through ordered points, each span its own degree-1 edge. Points cross as the flat [x0, y0, z0, x1, ...] run every other point list uses.

Parameters

points

Float64Array

closed

boolean

Returns

string

Last updated: 📖 9 min readEdit on GitHub