Back to Three Js

NURBSUtils

docs/pages/module-NURBSUtils.html

latest5.0 KB
Original Source

Import

NURBSUtils is an addon, and must be imported explicitly, see Installation#Addons.

import * as NURBSUtils from 'three/addons/curves/NURBSUtils.js';

Methods

.calcBSplineDerivatives( p : number, U : Array.<number>, P : Array.<Vector4>, u : number, nd : number ) : Array.<Vector4> (inner)

Calculates derivatives of a B-Spline. See The NURBS Book, page 93, algorithm A3.2.

| p |

The degree.

| | U |

The knot vector.

| | P |

The control points

| | u |

The parametric point.

| | nd |

The number of derivatives.

|

Returns: An array[d+1] with derivatives.

.calcBSplinePoint( p : number, U : Array.<number>, P : Array.<Vector4>, u : number ) : Vector4 (inner)

Calculates B-Spline curve points. See The NURBS Book, page 82, algorithm A3.1.

| p |

The degree of the B-Spline.

| | U |

The knot vector.

| | P |

The control points

| | u |

The parametric point.

|

Returns: The point for given u.

.calcBasisFunctionDerivatives( span : number, u : number, p : number, n : number, U : Array.<number> ) : Array.<Array.<number>> (inner)

Calculates basis functions derivatives. See The NURBS Book, page 72, algorithm A2.3.

| span |

The span in which u lies.

| | u |

The parametric point.

| | p |

The degree.

| | n |

number of derivatives to calculate

| | U |

The knot vector.

|

Returns: An array[n+1][p+1] with basis functions derivatives.

.calcBasisFunctions( span : number, u : number, p : number, U : Array.<number> ) : Array.<number> (inner)

Calculates basis functions. See The NURBS Book, page 70, algorithm A2.2.

| span |

The span in which u lies.

| | u |

The parametric value.

| | p |

The degree.

| | U |

The knot vector.

|

Returns: Array[p+1] with basis functions values.

.calcKoverI( k : number, i : number ) : number (inner)

Calculates "K over I".

| k |

The K value.

| | i |

The I value.

|

Returns: k!/(i!(k-i)!)

.calcNURBSDerivatives( p : number, U : Array.<number>, P : Array.<Vector4>, u : number, nd : number ) : Array.<Vector3> (inner)

Calculates NURBS curve derivatives. See The NURBS Book, page 127, algorithm A4.2.

| p |

The degree.

| | U |

The knot vector.

| | P |

The control points in homogeneous space.

| | u |

The parametric point.

| | nd |

The number of derivatives.

|

Returns: array with derivatives for rational curve.

.calcRationalCurveDerivatives( Pders : Array.<Vector4> ) : Array.<Vector3> (inner)

Calculates derivatives (0-nd) of rational curve. See The NURBS Book, page 127, algorithm A4.2.

| Pders |

Array with derivatives.

|

Returns: An array with derivatives for rational curve.

.calcSurfacePoint( p : number, q : number, U : Array.<number>, V : Array.<number>, P : Array.<Array.<Vector4>>, u : number, v : number, target : Vector3 ) (inner)

Calculates a rational B-Spline surface point. See The NURBS Book, page 134, algorithm A4.3.

| p |

The first degree of B-Spline surface.

| | q |

The second degree of B-Spline surface.

| | U |

The first knot vector.

| | V |

The second knot vector.

| | P |

The control points in homogeneous space.

| | u |

The first parametric point.

| | v |

The second parametric point.

| | target |

The target vector.

|

.calcVolumePoint( p : number, q : number, r : number, U : Array.<number>, V : Array.<number>, W : Array.<number>, P : Array.<Array.<Array.<Vector4>>>, u : number, v : number, w : number, target : Vector3 ) (inner)

Calculates a rational B-Spline volume point. See The NURBS Book, page 134, algorithm A4.3.

| p |

The first degree of B-Spline surface.

| | q |

The second degree of B-Spline surface.

| | r |

The third degree of B-Spline surface.

| | U |

The first knot vector.

| | V |

The second knot vector.

| | W |

The third knot vector.

| | P |

The control points in homogeneous space.

| | u |

The first parametric point.

| | v |

The second parametric point.

| | w |

The third parametric point.

| | target |

The target vector.

|

.findSpan( p : number, u : number, U : Array.<number> ) : number (inner)

Finds knot vector span.

| p |

The degree.

| | u |

The parametric value.

| | U |

The knot vector.

|

Returns: The span.

Source

examples/jsm/curves/NURBSUtils.js