Surface

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

Bases: Geometry

Class representing a general surface object.

Parameters

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

Attributes
  • u_domain (tuple[float, float], read-only) – The parameter domain of the surface in the U direction.

  • v_domain (tuple[float, float], read-only) – The parameter domain of the surface in the V direction.

  • is_u_periodic (bool, read-only) – Flag indicating if the surface is periodic in the U direction.

  • is_v_periodic (bool, read-only) – Flag indicating if the surface is periodic in the V direction.

Methods

aabb

Compute the axis aligned bounding box of the surface.

boundary

Compute the boundary curves of the surface.

closest_point

Compute the closest point on the curve to a given point.

curvature_at

Compute the curvature at a point on the surface.

frame_at

Compute the local frame at a point on the curve.

from_obj

Load a surface from an OBJ file.

from_plane

Construct a surface from a plane.

from_step

Load a surface from a STP file.

intersections_with_curve

Compute the intersections with a curve.

intersections_with_line

Compute the intersections with a line.

obb

Compute the oriented bounding box of the surface.

point_at

Compute a point on the surface.

to_mesh

Convert the surface to a quad mesh.

to_step

Write the surface geometry to a STP file.

to_tesselation

Convert the surface to a triangle mesh.

to_triangles

Convert the surface to a list of triangles.

u_isocurve

Compute the isoparametric curve at parameter u.

u_space

Compute evenly spaced parameters over the surface domain in the U direction.

v_isocurve

Compute the isoparametric curve at parameter v.

v_space

Compute evenly spaced parameters over the surface domain in the V direction.

xyz

Compute point locations corresponding to evenly spaced parameters over the surface domain.

Inherited Methods

ToString

Converts the instance to a string.

copy

Make an independent copy of the data object.

from_data

Construct an object of this type from the provided data.

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.

sha256

Compute a hash of the data for comparison during version control using the sha256 algorithm.

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.

transform

Transform the geometry.

transformed

Returns a transformed copy of this geometry.

validate_data

Validate the object's data against its data schema.

validate_json

Validate the object's data against its json schema.