NurbsSurface
- class compas.geometry.NurbsSurface(*args, **kwargs)[source]
Bases:
compas.geometry.surfaces.surface.SurfaceClass 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
DATASCHEMAThe schema of the data of this object.
JSONSCHEMANAMEdataThe representation of the object as native Python data.
dtypeThe type of the object in the form of a '2-level' import and a class name.
is_u_periodicis_v_periodicpointsu_degreeu_domainu_knotsu_multsv_degreev_domainv_knotsv_multsweightsInherited Attributes
JSONSCHEMAThe schema of the JSON representation of the data of this object.
guidThe globally unique identifier of the object.
jsondefinitionsReusable schema definitions.
jsonstringThe representation of the object data in JSON format.
jsonvalidatorJSON schema validator for draft 7.
nameThe 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).