-
If set to
true, the input mesh is allowed to have boundaries. - Type: Boolean
-
Default:
false
|
CGAL 6.2 - Boolean Operations on Meshes
|
Functions to compute kernel of polyhedra.
Functions | |
| template<typename FaceRange , typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters, typename NamedParametersOut = parameters::Default_named_parameters> | |
| void | CGAL::Polygon_mesh_processing::kernel (const FaceRange &face_range, const PolygonMesh &pm, PolygonMesh &out, const NamedParameters &np=parameters::default_values(), const NamedParametersOut &np_out=parameters::default_values()) |
| computes the kernel of the given faces of a polygon mesh. | |
| template<typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters, typename NamedParametersOut = parameters::Default_named_parameters> | |
| void | CGAL::Polygon_mesh_processing::kernel (const PolygonMesh &pm, PolygonMesh &out, const NamedParameters &np=parameters::default_values(), const NamedParametersOut &np_out=parameters::default_values()) |
| computes the kernel of the given polygon mesh. | |
| template<typename FaceRange , typename PolygonMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
| bool | CGAL::Polygon_mesh_processing::has_empty_kernel (const FaceRange &face_range, const PolygonMesh &pm, const NamedParameters &np=parameters::default_values()) |
| indicates whether the kernel of the given faces of a polygon mesh is empty. | |
| template<typename PolygonMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
| bool | CGAL::Polygon_mesh_processing::has_empty_kernel (const PolygonMesh &pm, const NamedParameters &np=parameters::default_values()) |
| indicates whether the kernel of the given polygon mesh is empty. | |
| template<typename FaceRange , typename PolygonMesh , typename NamedParameters = parameters::Default_named_parameters> | |
| std::optional< Point_3 > | CGAL::Polygon_mesh_processing::kernel_point (const FaceRange &face_range, const PolygonMesh &pm, const NamedParameters &np=parameters::default_values()) |
| returns a point inside the kernel of the given faces of a polygon mesh. | |
| template<typename PolygonMesh , typename NamedParameters = CGAL::parameters::Default_named_parameters> | |
| std::optional< Point_3 > | CGAL::Polygon_mesh_processing::kernel_point (const PolygonMesh &pm, const NamedParameters &np=parameters::default_values()) |
| returns a point inside the kernel of the given polygon mesh. | |
| bool CGAL::Polygon_mesh_processing::has_empty_kernel | ( | const FaceRange & | face_range, |
| const PolygonMesh & | pm, | ||
| const NamedParameters & | np = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
indicates whether the kernel of the given faces of a polygon mesh is empty.
The kernel is defined as the convex polyhedron that is the intersection of all the halfspaces on the negative side of the oriented planes defined by a range of faces of the input mesh.
See CGAL::Polygon_mesh_processing::kernel() for a comprehensive description of the parameters.
| bool CGAL::Polygon_mesh_processing::has_empty_kernel | ( | const PolygonMesh & | pm, |
| const NamedParameters & | np = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
indicates whether the kernel of the given polygon mesh is empty.
The kernel is defined as the convex polyhedron that is the intersection of all the halfspaces on the negative side of the oriented planes defined by a range of faces of the input mesh.
See CGAL::Polygon_mesh_processing::kernel() for a comprehensive description of the parameters.
| void CGAL::Polygon_mesh_processing::kernel | ( | const FaceRange & | face_range, |
| const PolygonMesh & | pm, | ||
| PolygonMesh & | out, | ||
| const NamedParameters & | np = parameters::default_values(), |
||
| const NamedParametersOut & | np_out = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
computes the kernel of the given faces of a polygon mesh.
The kernel is defined as the convex polyhedron that is the intersection of all the halfspaces on the negative side of the oriented planes defined by a range of faces of the input mesh. The kernel may be empty or degenerate to a lower-dimensional convex shape.
In the implementation, a starting shape is iteratively clipped by the faces. By default, the bounding box of the input mesh is used as starting shape. However, the parameter out may be non-empty: In this case, it must be a convex polyhedron and will be used as starting shape.
The algorithm assumes that the faces of the input range form a closed surface as to perform a quick exit if the genus is non-zero. This precondition can be relaxed using the named parameter allow_open_input. In that case, the resulting kernel may contain faces of the starting shape.
In case of a degenerate kernel:
2 (i.e., the kernel is a convex polygon in 3D), the output mesh consists of a single face. 1 (i.e., the kernel is a line segment), the output mesh consists two isolated vertices. 0 (i.e., the kernel is a single point), the output mesh contains one isolated vertex. | FaceRange | a model of ConstRange with boost::graph_traits<PolygonMesh>::face_descriptor as value type |
| PolygonMesh | a model of VertexListGraph, HalfedgeListGraph and FaceListGraph |
| PolygonMeshOut | a model of MutableFaceGraph, VertexListGraph and FaceListGraph |
| NamedParameters | a sequence of Named Parameters |
| NamedParametersOut | a sequence of Named Parameters |
| face_range | the range of faces used |
| pm | input surface mesh |
| out | output surface mesh |
| np | an optional sequence of Named Parameters among the ones listed below |
| |
| |
| |
|
| np_out | an optional sequence of Named Parameters among the ones listed below |
| |
|
| void CGAL::Polygon_mesh_processing::kernel | ( | const PolygonMesh & | pm, |
| PolygonMesh & | out, | ||
| const NamedParameters & | np = parameters::default_values(), |
||
| const NamedParametersOut & | np_out = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
computes the kernel of the given polygon mesh.
This is a convenience overload that calls the overload above on all faces of the mesh.
| std::optional< Point_3 > CGAL::Polygon_mesh_processing::kernel_point | ( | const FaceRange & | face_range, |
| const PolygonMesh & | pm, | ||
| const NamedParameters & | np = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
returns a point inside the kernel of the given faces of a polygon mesh.
The kernel is defined as the convex polyhedron that is the intersection of all the halfspaces on the negative side of the oriented planes defined by a range of faces of the input mesh.
See CGAL::Polygon_mesh_processing::kernel() for a comprehensive description of the parameters.
std::nullopt if and only if the kernel is empty. | std::optional< Point_3 > CGAL::Polygon_mesh_processing::kernel_point | ( | const PolygonMesh & | pm, |
| const NamedParameters & | np = parameters::default_values() |
||
| ) |
#include <CGAL/Polygon_mesh_processing/kernel.h>
returns a point inside the kernel of the given polygon mesh.
The kernel is defined as the convex polyhedron that is the intersection of all the halfspaces on the negative side of the oriented planes defined by a range of faces of the input mesh.
See CGAL::Polygon_mesh_processing::kernel() for a comprehensive description of the parameters.
std::nullopt if and only if the kernel is empty.