# NurbsCurve

class compas.geometry.NurbsCurve(*args, **kwargs)[source]

Bases: Curve

A NURBS curve is defined by control points, weights, knots, and a degree.

Parameters

name (str, optional) – The name of the curve.

Attributes
• points (list[Point], read-only) – The control points.

• weights (list[float], read-only) – The weights of the control points.

• knots (list[float], read-only) – The knots, without multiplicity.

• knotsequence (list[float], read-only) – The complete knot vector.

• multiplicity (list[int], read-only) – The multiplicities of the knots.

• continuity (int, read-only) – The degree of continuity of the curve.

• degree (int, read-only) – The degree of the curve.

• order (int, read-only) – The order of the curve (degree + 1).

Methods

 copy Make an independent copy of the current curve. from_arc Construct a NURBS curve from an arc. from_circle Construct a NURBS curve from a circle. from_data Construct a NURBS curve from its data representation. from_ellipse Construct a NURBS curve from an ellipse. from_interpolation Construct a NURBS curve by interpolating a set of points. from_line Construct a NURBS curve from a line. from_parameters Construct a NURBS curve from explicit curve parameters. from_points Construct a NURBS curve from control points. from_step Load a NURBS curve from an STP file.

Inherited Methods

 ToString Converts the instance to a string. aabb Compute the axis aligned bounding box of the curve. closest_point Compute the closest point on the curve to a given point. curvature_at Compute the curvature of the curve at a parameter. divide_by_count Divide the curve into a specific number of equal length segments. divide_by_length Divide the curve into segments of specified length. fair frame_at Compute the local frame of the curve at a parameter. from_json Construct an object from serialized data contained in a JSON file. from_jsonstring Construct an object from serialized data contained in a JSON string. from_obj Load a curve from an OBJ file. length Compute the length of the curve. locus Compute the locus of points on the curve. offset point_at Compute a point of the curve at a parameter. reverse Reverse the parametrisation of the curve. reversed Reverse a copy of the curve. sha256 Compute a hash of the data for comparison during version control using the sha256 algorithm. smooth space Compute evenly spaced parameters over the curve domain. split tangent_at Compute the tangent vector of the curve at a parameter. to_data Convert an object to its native data representation. to_json Serialize the data representation of an object to a JSON file. to_jsonstring Serialize the data representation of an object to a JSON string. to_obj Write the curve geometry to an OBJ file. to_step Write the curve geometry to a STP file. torsion_at Compute the torsion of the curve at a parameter. transform Transform the geometry. transformed Returns a transformed copy of this geometry. trim validate_data Validate the object's data against its data schema. validate_json Validate the object's data against its json schema.