\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 5.0.2 - Poisson Surface Reconstruction
CGAL::Surface_mesher::Poisson_implicit_surface_oracle_3< GT, Surface, Transform_functor_, Surface_identifiers_generator_, Point_creator, Visitor > Class Template Reference

#include <CGAL/Surface_mesher/Poisson_implicit_surface_oracle_3.h>

Definition

template<class GT, class Surface, class Transform_functor_ = typename Real_embeddable_traits<typename Surface::FT>::Sgn, class Surface_identifiers_generator_ = Return_min<typename Transform_functor_::result_type>, class Point_creator = Creator_uniform_3<typename GT::FT, typename GT::Point_3>, class Visitor = Null_oracle_visitor>
class CGAL::Surface_mesher::Poisson_implicit_surface_oracle_3< GT, Surface, Transform_functor_, Surface_identifiers_generator_, Point_creator, Visitor >

Type and functions required in GT:

  • Compute_scalar_product_3 (from rev. 29646)
  • Compute_squared_distance_3
  • Compute_squared_radius_3
  • Construct_center_3
  • Construct_midpoint_3
  • Construct_point_on_3 (from rev. 29646)
  • Construct_scaled_vector_3
  • Construct_segment_3 (from rev. 29646)
  • Construct_translated_point_3
  • Construct_vector_3
  • FT
  • Has_on_bounded_side_3 (from rev. 29646)
  • Line_3
  • Point_3
  • Ray_3
  • Segment_3
  • Sphere_3
  • Vector_3 (from rev. 29646)
  • compute_scalar_product_3_object (from rev. 29646)
  • compute_squared_distance_3_object
  • compute_squared_radius_3_object
  • construct_center_3_object
  • construct_line_3_object (no longer, since rev. 29646)
  • construct_midpoint_3_object
  • construct_point_on_3_object (from rev. 29646)
  • construct_scaled_vector_3_object
  • construct_segment_3_object (from rev. 29646)
  • construct_translated_point_3_object
  • construct_vector_3_object
  • has_on_bounded_side_3_object (from rev. 29646) (Computed by use of: perl -ne '/GT().([a-zA-Z_0-9]+)/ && print "$1\n";' {implicit_surface_oracle_3.h,Sphere_oracle_3.h} | sort -u perl -ne '/GT::([a-zA-Z_0-9]+)/ && print "$1\n";' {implicit_surface_oracle_3.h,Sphere_oracle_3.h} | sort -u )

Public Types

typedef GT Geom_traits
 
typedef GT::Point_3 Point_3
 
typedef GT::Segment_3 Segment_3
 
typedef GT::Ray_3 Ray_3
 
typedef GT::Line_3 Line_3
 
typedef Transform_functor_ Transform_functor
 
typedef Surface_identifiers_generator_ Surface_identifiers_generator
 
typedef Point_3 Intersection_point
 
typedef Surface Surface_3
 
typedef Surface::FT Surface_value_type
 
typedef Transform_functor::result_type result_type
 

Public Member Functions

 Poisson_implicit_surface_oracle_3 (Transform_functor transform_functor=Transform_functor(), Surface_identifiers_generator surface_identifiers_generator=Surface_identifiers_generator(), Visitor visitor_=Visitor())
 
Construct_initial_points construct_initial_points_object () const
 
Intersect_3 intersect_3_object () const
 
bool is_in_volume (const Surface_3 &surface, const Point &p) const