-
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.
This is a convenience overload that calls the overload above on all faces of the mesh.
| 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.
In addition to the parameters available in CGAL::Polygon_mesh_processing::kernel(), the following parameter is also available:
|
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.
This is a convenience overload that calls the overload above on all faces of the mesh.