NurbsCurve
- class compas.geometry.NurbsCurve(*args, **kwargs)[source]
Bases:
compas.geometry.curves.curve.Curve
Class representing a NURBS curve.
- Attributes
points (List[Point]) – The control points of the curve.
weights (List[float]) – The weights of the control points.
knots (List[float]) – The knot vector, without duplicates.
multiplicities (List[int]) – The multiplicities of the knots in the knot vector.
knotsequence (List[float]) – The knot vector, with repeating values according to the multiplicities.
degree (int) – The degree of the polynomials.
order (int) – The order of the curve.
domain (Tuple[float, float]) – The parameter domain.
start (
Point
) – The point corresponding to the start of the parameter domain.end (
Point
) – The point corresponding to the end of the parameter domain.is_closed (bool) – True if the curve is closed.
is_periodic (bool) – True if the curve is periodic.
is_rational (bool) – True is the curve is rational.
length (float) – Length of the curve.
Methods
closest_point
(point[, distance])Compute the closest point on the curve to a given point.
copy
()Make an independent copy of the current curve.
curvature_at
(t)Compute the curvature at a point on the curve.
divide_by_count
(count)Divide the curve into a specific number of equal length segments.
divide_by_length
(length)Divide the curve into segments of specified length.
fair
()frame_at
(t)Compute the local frame at a point on the curve.
from_arc
(arc)from_circle
(circle)Construct a NURBS curve from a circle.
from_data
(data)Construct a NURBS curve from its data representation.
from_ellipse
(ellipse)Construct a NURBS curve from an ellipse.
from_interpolation
(points[, precision])Construct a NURBS curve by interpolating a set of points.
from_json
(filepath)Construct an object from serialized data contained in a JSON file.
from_jsonstring
(string)Construct an object from serialized data contained in a JSON string.
from_line
(line)Construct a NURBS curve from a line.
from_parameters
(points, weights, knots, ...)Construct a NURBS curve from explicit curve parameters.
from_points
(points[, degree])Construct a NURBS curve from control points.
from_step
(filepath)Load a NURBS curve from an STP file.
locus
([resolution])Compute the locus of all points on the curve.
point_at
(t)Compute a point on the curve.
space
([n])Compute evenly spaced parameters over the curve domain.
tangent_at
(t)Compute the tangent vector at a point on the curve.
to_data
()Convert an object to its native data representation.
to_json
(filepath[, pretty])Serialize the data representation of an object to a JSON file.
to_jsonstring
([pretty])Serialize the data representation of an object to a JSON string.
to_step
(filepath[, schema])Write the curve geometry to a STP file.
transform
(T)Transform this curve.
transformed
(T)Transform a copy of the curve.
Validate the object's data against its data schema (self.DATASCHEMA).
Validate the object's data against its json schema (self.JSONSCHEMA).
xyz
([n])Compute point locations corresponding to evenly spaced parameters over the curve domain.