CGAL 6.1 - Poisson Surface Reconstruction
Loading...
Searching...
No Matches
CGAL::Poisson_mesh_domain_3< BGT > Class Template Reference

#include <CGAL/Poisson_mesh_domain_3.h>

Definition

template<class BGT>
class CGAL::Poisson_mesh_domain_3< BGT >

The class Poisson_mesh_domain_3 derives from Labeled_mesh_domain_3 for the handling of Poisson_reconstruction_function.

This class has a constructor taking a labeling function. It has also a static template member function that acts as named constructor:

Template Parameters
BGTis 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.
Is model of
MeshDomain_3
See also
CGAL::Labeled_mesh_domain_3
CGAL::make_mesh_3()
Examples
Poisson_surface_reconstruction_3/poisson_reconstruction_example.cpp.

Public Types

using Base = Labeled_mesh_domain_3< BGT >
 
typedef Base::Subdomain Subdomain
 
typedef Base::Subdomain_index Subdomain_index
 
typedef Base::Surface_patch_index Surface_patch_index
 
typedef Base::Intersection Intersection
 
typedef std::optional< Surface_patch_index > Surface_patch
 
typedef CGAL::Mesh_3::internal::Index_generator< Subdomain_index, Surface_patch_index >::Index Index
 

Public Member Functions

Construct_intersection construct_intersection_object () const
 

Public Attributes

Function poisson_function
 

Types imported from the geometric traits class

typedef Geom_traits::Point_3 Point_3
 
typedef Geom_traits::Sphere_3 Sphere_3
 The sphere type of the geometric traits class.
 
typedef Geom_traits::Iso_cuboid_3 Iso_cuboid_3
 The iso-cuboid type of the geometric traits class.
 
typedef CGAL::Bbox_3 Bbox_3
 The bounding box type.
 
typedef Geom_traits::FT FT
 The number type (a field type) of the geometric traits class.
 
typedef Geom_traits::Ray_3 Ray_3
 The ray type of the geometric traits class.
 
typedef Geom_traits::Line_3 Line_3
 The line type of the geometric traits class.
 
typedef Geom_traits::Segment_3 Segment_3
 The segment type of the geometric traits class.
 
typedef CGAL::Poisson_reconstruction_function< Geom_traits > Function
 The Poisson function type.
 

Creation

template<typename Bounding_object , typename NamedParameters = CGAL::parameters::Default_named_parameters>
 Poisson_mesh_domain_3 (const Function &function, const Bounding_object &bounding_object, const NamedParameters &np=parameters::default_values())
 Construction from a function, a bounding object and a relative error bound.
 
template<typename NamedParameters = CGAL::parameters::Default_named_parameters>
 Poisson_mesh_domain_3 (const Function &function, const NamedParameters &np=parameters::default_values())
 Construction from a function, a bounding object and a relative error bound.
 

Creation of domains from Poisson implicit functions

template<typename Bounding_object , typename NamedParameters = CGAL::parameters::Default_named_parameters>
static Poisson_mesh_domain_3 create_Poisson_mesh_domain (const Function &function, const Bounding_object &bounding_object, const NamedParameters &np=parameters::default_values())
 Construction from a Poisson implicit function.
 

Member Typedef Documentation

◆ Point_3

template<class BGT >
typedef Geom_traits::Point_3 CGAL::Poisson_mesh_domain_3< BGT >::Point_3

The point type of the geometric traits class

Constructor & Destructor Documentation

◆ Poisson_mesh_domain_3() [1/2]

template<class BGT >
template<typename Bounding_object , typename NamedParameters = CGAL::parameters::Default_named_parameters>
CGAL::Poisson_mesh_domain_3< BGT >::Poisson_mesh_domain_3 ( const Function function,
const Bounding_object &  bounding_object,
const NamedParameters &  np = parameters::default_values() 
)

Construction from a function, a bounding object and a relative error bound.

Template Parameters
Bounding_objecteither a bounding sphere (of type Sphere_3), a bounding box (type Bbox_3), or a bounding Iso_cuboid_3
NamedParametersa sequence of Named Parameters
Parameters
functionthe Poisson reconstruction function
bounding_objectthe bounding object bounding the meshable space.
npan optional sequence of Named Parameters among the ones listed below:
Optional Named Parameters
  • 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 diameter of the bounding object.
  • Default: FT(1e-3)

◆ Poisson_mesh_domain_3() [2/2]

template<class BGT >
template<typename NamedParameters = CGAL::parameters::Default_named_parameters>
CGAL::Poisson_mesh_domain_3< BGT >::Poisson_mesh_domain_3 ( const Function function,
const NamedParameters &  np = parameters::default_values() 
)

Construction from a function, a bounding object and a relative error bound.

Template Parameters
NamedParametersa sequence of Named Parameters
Parameters
functionthe Poisson reconstruction function
npan optional sequence of Named Parameters among the ones listed below:
Optional Named Parameters
  • 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 diameter of the bounding object.
  • Default: FT(1e-3)

Member Function Documentation

◆ create_Poisson_mesh_domain()

template<class BGT >
template<typename Bounding_object , typename NamedParameters = CGAL::parameters::Default_named_parameters>
static Poisson_mesh_domain_3 CGAL::Poisson_mesh_domain_3< BGT >::create_Poisson_mesh_domain ( const Function function,
const Bounding_object &  bounding_object,
const NamedParameters &  np = parameters::default_values() 
)
static

Construction from a Poisson implicit function.

This static method is a named constructor. It constructs a domain whose bounding surface is described implicitly as the zero level set of a function. The domain to be discretized is assumed to be the domain where the function has negative values.

Template Parameters
NamedParametersa sequence of Named Parameters
Bounding_objecteither a bounding sphere (of type Sphere_3), a bounding box (type Bbox_3), or a bounding Iso_cuboid_3 which is required to circumscribe the surface and to have its center inside the domain.
Parameters
functionthe Poisson reconstruction function
bounding_objectobject bounding the meshable domain and its center is inside the domain.
npan optional sequence of Named Parameters among the ones listed below:
Optional Named Parameters
  • is the relative error bound, relative to the diameter of the box of the image.
  • Default: FT(1e-3)