CGAL 4.5 - 3D Mesh Generation
|
#include <CGAL/Labeled_mesh_domain_3.h>
The class Labeled_mesh_domain_3
implements indexed domains.
This class is a model of concept MeshDomain_3
.
Any boundary facet is labeled <a,b>, a<b, where a and b are the tags of its incident subdomain. Thus, a boundary facet of the domain is labeled <0,b>, where b!=0.
This class includes a function that provides, the subdomain index of any query point. An intersection between a segment and bounding surfaces is detected when both segment endpoints are associated with different values of subdomain indices. The intersection is then constructed by bisection. The bisection stops when the query segment is shorter than an error bound e
given by the product of the length of the diagonal of the bounding box (in world coordinates), or the radius of the bounding sphere, and a relative error bound passed as argument to the constructor of Labeled_mesh_domain_3
.
Implicit_mesh_domain_3 is a heir of Labeled_mesh_domain_3. It uses a satisfying labeling function if there is only one component to mesh.
LabelingFunction | is the type of the input function. This parameter stands for a model of the concept ImplicitFunction described in the surface mesh generation package. Labeling function f must return 0 if the point isn't located in any subdomain. Usually, the return type of labeling functions are integer. Let p be a Point.
|
BGT | is a geometric traits class that provides the basic operations to implement intersection tests and intersection computations through a bisection method. This parameter must be instantiated with a model of the concept BisectionGeometricTraits_3 . |
Creation | |
Labeled_mesh_domain_3 (const LabelingFunction &f, const Sphere_3 &bounding_sphere, const FT &relative_error_bound=FT(1e-3)) | |
Construction from a labeling function, a bounding Sphere and a relative error bound. More... | |
Labeled_mesh_domain_3 (const LabelingFunction &f, const Bbox_3 &bbox, const FT &relative_error_bound=FT(1e-3)) | |
Construction from a labeling function, a bounding box and a relative error bound. More... | |
Labeled_mesh_domain_3 (const LabelingFunction &f, const Iso_cuboid_3 &bbox, const FT &relative_error_bound=FT(1e-3)) | |
Construction from a function, a bounding Iso_cuboid_3 and a relative error bound. More... | |
CGAL::Labeled_mesh_domain_3< LabelingFunction, BGT >::Labeled_mesh_domain_3 | ( | const LabelingFunction & | f, |
const Sphere_3 & | bounding_sphere, | ||
const FT & | relative_error_bound = FT(1e-3) |
||
) |
Construction from a labeling function, a bounding Sphere and a relative error bound.
f | the labeling function. |
bounding_sphere | the bounding sphere of the meshable space. |
relative_error_bound | is the relative error bound used to compute intersection points between the implicit surface and query segments. The bisection is stopped when the length of the intersected segment is less than the product of relative_error_bound by the radius of bounding_sphere . |
CGAL::Labeled_mesh_domain_3< LabelingFunction, BGT >::Labeled_mesh_domain_3 | ( | const LabelingFunction & | f, |
const Bbox_3 & | bbox, | ||
const FT & | relative_error_bound = FT(1e-3) |
||
) |
Construction from a labeling function, a bounding box and a relative error bound.
f | the labeling function. |
bbox | the bounding box of the meshable space. |
relative_error_bound | is the relative error bound used to compute intersection points between the implicit surface and query segments. The bisection is stopped when the length of the intersected segment is less than the product of relative_error_bound by the diagonal of bounding_box . |
CGAL::Labeled_mesh_domain_3< LabelingFunction, BGT >::Labeled_mesh_domain_3 | ( | const LabelingFunction & | f, |
const Iso_cuboid_3 & | bbox, | ||
const FT & | relative_error_bound = FT(1e-3) |
||
) |
Construction from a function, a bounding Iso_cuboid_3 and a relative error bound.
f | the function. |
bbox | the bounding box of the meshable space. |
relative_error_bound | is the relative error bound used to compute intersection points between the implicit surface and query segments. The bisection is stopped when the length of the intersected segment is less than the product of relative_error_bound by the diagonal of bounding_box . |