BRep

class compas_occ.brep.BRep[source]

Bases: object

Class for Boundary Representation of geometric entities.

Attributes
  • vertices (list[BRepVertex], read-only) – The vertices of the BRep.

  • edges (list[BRepEdge], read-only) – The edges of the BRep.

  • loops (list[BRepLoop], read-only) – The loops of the BRep.

  • faces (list[BRepFace], read-only) – The faces of the BRep.

  • frame (Frame, read-only) – The local coordinate system of the BRep.

  • area (float, read-only) – The surface area of the BRep.

  • volume (float, read-only) – The volume of the regions contained by the BRep.

Other Attributes
  • shape (TopoDS_Shape) – The underlying OCC shape of the BRep.

  • type (TopAbs_ShapeEnum, read-only) – The type of BRep shape.

  • orientation (TopAbs_Orientation, read-only) – Orientation of the shape.

Examples

Constructors

>>> brep = BRep.from_corners([0, 0, 0], [1, 0, 0], [1, 1, 1], [1, 1, 0])
>>> from compas.geometry import Box
>>> box = Box.from_width_height_depth(1, 1, 1)
>>> vertices, faces = box.to_vertices_and_faces()
>>> polygons = [[vertices[index] for index in face] for face in faces]
>>> brep = BRep.from_polygons(polygons)
>>> from compas.geometry import Box
>>> box = Box.from_width_height_depth(1, 1, 1)
>>> brep = BRep.from_box(box)
>>> from compas.geometry import Box, Sphere
>>> box = Box.from_width_height_depth(1, 1, 1)
>>> sphere = Sphere([1, 1, 1], 0.5)
>>> A = BRep.from_box(box)
>>> B = BRep.from_sphere(sphere)
>>> brep = BRep.from_boolean_union(A, B)

Booleans

>>> from compas.geometry import Box, Sphere
>>> box = Box.from_width_height_depth(1, 1, 1)
>>> sphere = Sphere([1, 1, 1], 0.5)
>>> A = BRep.from_box(box)
>>> B = BRep.from_sphere(sphere)
>>> C = A + B
>>> D = A - B
>>> E = A & B

Methods

contours

Generate contour lines by slicing the BRep shape with a series of planes.

cull_unused_edges

Remove all unused edges.

cull_unused_faces

Remove all unused faces.

cull_unused_loops

Remove all unused loops.

cull_unused_vertices

Remove all unused vertices.

from_boolean_difference

Construct a BRep from the boolean difference of two other BReps.

from_boolean_intersection

Construct a BRep from the boolean intersection of two other BReps.

from_boolean_union

Construct a BRep from the boolean union of two other BReps.

from_box

Construct a BRep from a COMPAS box.

from_cone

Construct a BRep from a COMPAS cone.

from_corners

Construct a BRep from 3 or 4 corner points.

from_curves

Construct a BRep from a set of curves.

from_cylinder

Construct a BRep from a COMPAS cylinder.

from_mesh

Construct a BRep from a COMPAS mesh.

from_polygons

Construct a BRep from a set of polygons.

from_sphere

Construct a BRep from a COMPAS sphere.

from_torus

Construct a BRep from a COMPAS torus.

is_closed

Check if the shape is closed.

is_convex

Check if the shape is convex.

is_infinite

Check if the shape is infinite.

is_manifold

Check if the shape is manifold.

is_orientable

Check if the shape is orientable.

is_solid

Check if the shape is a solid.

is_surface

Check if the shape is a surface.

make_solid

Convert the current shape to a solid.

to_json

Export the BRep to a JSON file.

to_meshes

Convert the faces of the BRep shape to meshes.

to_step

Write the BRep shape to a STEP file.

to_tesselation

Create a tesselation of the shape for visualisation.