NurbsSurface
- class compas.geometry.NurbsSurface(*args, **kwargs)[source]
Bases:
compas.geometry.surfaces.surface.Surface
Class representing a NURBS surface.
- Attributes
points (List[List[Point]]) – The control points of the surface.
weights (List[List[float]]) – The weights of the control points.
u_knots (List[float]) – The knot vector, in the U direction, without duplicates.
v_knots (List[float]) – The knot vector, in the V direction, without duplicates.
u_mults (List[int]) – The multiplicities of the knots in the knot vector of the U direction.
v_mults (List[int]) – The multiplicities of the knots in the knot vector of the V direction.
u_degree (int) – The degree of the polynomials in the U direction.
v_degree (int) – The degree of the polynomials in the V direction.
u_domain (Tuple[float, float]) – The parameter domain in the U direction.
v_domain (Tuple[float, float]) – The parameter domain in the V direction.
is_u_periodic (bool) – True if the curve is periodic in the U direction.
is_v_periodic (bool) – True if the curve is periodic in the V direction.
Attributes
DATASCHEMA
The schema of the data of this object.
JSONSCHEMANAME
data
The representation of the object as native Python data.
dtype
The type of the object in the form of a '2-level' import and a class name.
is_u_periodic
is_v_periodic
points
u_degree
u_domain
u_knots
u_mults
v_degree
v_domain
v_knots
v_mults
weights
Inherited Attributes
JSONSCHEMA
The schema of the JSON representation of the data of this object.
guid
The globally unique identifier of the object.
jsondefinitions
Reusable schema definitions.
jsonstring
The representation of the object data in JSON format.
jsonvalidator
JSON schema validator for draft 7.
name
The name of the object.
Methods
Compute the axis aligned bounding box of the surface.
Compute the boundary curves of the surface.
Compute the closest point on the curve to a given point.
Make an independent copy of the surface.
Compute the curvature at a point on the surface.
Compute the local frame at a point on the curve.
Construct a BSpline surface from its data representation.
Construct a NURBS surface from the infill between two NURBS curves.
Construct a NURBS surface from a mesh grid.
Construct a NURBS surface from explicit parameters.
Construct a NURBS surface from control points.
Load a NURBS surface from a STP file.
Compute the intersections with a line.
Compute the oriented bounding box of the surface.
Compute a point on the surface.
Convert the surface to a quad mesh.
Write the surface geometry to a STP file.
Convert the surface to a list of triangles.
Transform this surface.
Transform an independent copy of this surface.
Compute the isoparametric curve at parameter u.
Compute evenly spaced parameters over the surface domain in the U direction.
Compute the isoparametric curve at parameter v.
Compute evenly spaced parameters over the surface domain in the V direction.
Compute point locations corresponding to evenly spaced parameters over the surface domain.
Inherited Methods
Construct an object from serialized data contained in a JSON file.
Construct an object from serialized data contained in a JSON string.
Convert an object to its native data representation.
Serialize the data representation of an object to a JSON file.
Serialize the data representation of an object to a JSON string.
Validate the object's data against its data schema (self.DATASCHEMA).
Validate the object's data against its json schema (self.JSONSCHEMA).