Skip to content

compas_cgal.triangulation ¤

Functions¤

conforming_delaunay_triangulation ¤

conforming_delaunay_triangulation(
    boundary, points=None, holes=None, curves=None
) -> VerticesFacesNumpy

Construct a Conforming Delaunay triangulation.

Parameters:

Name Type Description Default
boundary :class:`compas.geometry.Polygon`

The boundary of the triangulation.

required
points list[:class:`compas.geometry.Point`]

Additional internal points.

None
holes list[:class:`compas.geometry.Polygon`]

Internal boundary polygons.

None
curves list[:class:`compas.geometry.Polyline`]

Internal constraint curves.

None

Returns:

Type Description
attr:`compas_cgal.types.VerticesFacesNumpy`

constrained_delaunay_triangulation ¤

constrained_delaunay_triangulation(
    boundary: list[Point], points=None, holes=None, curves=None
) -> VerticesFacesNumpy

Construct a Constrained Delaunay triangulation.

Parameters:

Name Type Description Default
boundary list[Point]

The boundary of the triangulation.

required
points

Additional internal points.

None
holes

Internal boundary polygons.

None
curves

Internal constraint curves.

None

Returns:

Type Description
VerticesFacesNumpy

delaunay_triangulation ¤

delaunay_triangulation(points: list[Point]) -> FacesNumpy

Construct a Delaunay triangulation from a set of points.

Parameters:

Name Type Description Default
points list[Point]

Points of the triangulation.

required

Returns:

Type Description
FacesNumpy

The faces of the triangulation.

Examples:

>>> from compas.geometry import Pointcloud
>>> from compas.datastructures import Mesh
>>> from compas_cgal.triangulation import delaunay_triangulation
>>> points = Pointcloud.from_bounds(8, 5, 0, 17)
>>> triangles = delaunay_triangulation(points)
>>> mesh = Mesh.from_vertices_and_faces(points, triangles)

refined_delaunay_mesh ¤

refined_delaunay_mesh(
    boundary, points=None, holes=None, curves=None, maxlength=None, is_optimized=False
) -> VerticesFacesNumpy

Construct a refined Delaunay mesh.

Parameters:

Name Type Description Default
boundary :class:`compas.geometry.Polygon`

The boundary of the triangulation.

required
points list[:class:`compas.geometry.Point`]

Additional internal points.

None
holes list[:class:`compas.geometry.Polygon`]

Internal boundary polygons.

None
curves list[:class:`compas.geometry.Polyline`]

Internal constraint curves.

None
maxlength float

The maximum length of the triangle edges.

None
is_optimized bool

Apply LLoyd's optimisation [1]_.

False

Returns:

Type Description
attr:`compas_cgal.types.VerticesFacesNumpy`
References

.. [1] https://doc.cgal.org/latest/Mesh_2/index.html#secMesh_2_meshes