\( \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 4.14 - Point Set Shape Detection
CGAL::Shape_detection_3::Plane< Traits > Class Template Reference

#include <CGAL/Shape_detection_3/Plane.h>

Inherits from

CGAL::Shape_detection_3::Shape_base< Traits >.

Definition

Plane implements Shape_base.

The plane is represented by the normal vector and the distance to the origin.

Template Parameters
Traitsa model of EfficientRANSACTraits with the additional requirement for planes (see EfficientRANSACTraits documentation).
Examples:
Point_set_shape_detection_3/efficient_RANSAC_parameters.cpp, Point_set_shape_detection_3/efficient_RANSAC_point_access.cpp, Point_set_shape_detection_3/plane_regularization.cpp, Point_set_shape_detection_3/shape_detection_basic.cpp, and Point_set_shape_detection_3/shape_detection_with_callback.cpp.

Public Types

typedef Traits::Plane_3 Plane_3
 plane type for conversion operator.
 
- Public Types inherited from CGAL::Shape_detection_3::Shape_base< Traits >
typedef Traits::FT FT
 number type.
 
typedef Traits::Point_3 Point_3
 point type.
 
typedef Traits::Vector_3 Vector_3
 vector type.
 

Public Member Functions

 operator Plane_3 () const
 Conversion operator to Plane_3 type.
 
Vector_3 plane_normal () const
 Normal vector of the plane.
 
FT d () const
 Signed distance from the origin.
 
- Public Member Functions inherited from CGAL::Shape_detection_3::Shape_base< Traits >
const std::vector< std::size_t > & indices_of_assigned_points () const
 returns the indices of the points in the input range assigned to this shape.
 
virtual std::string info () const
 returns a string containing the shape type and the numerical parameters.
 
virtual FT squared_distance (const Point_3 &p) const =0
 Computes the squared Euclidean distance from the query point p to the shape.
 

Additional Inherited Members

- Protected Member Functions inherited from CGAL::Shape_detection_3::Shape_base< Traits >
virtual void create_shape (const std::vector< std::size_t > &indices)=0
 Constructs the shape based on a minimal set of samples from the input data.
 
virtual std::size_t connected_component (std::vector< std::size_t > &indices, FT cluster_epsilon)
 Determines the largest cluster of inlier points. More...
 
std::size_t connected_component_kdTree (std::vector< std::size_t > &indices, FT cluster_epsilon)
 Determines the largest cluster with a point-to-point distance not larger than cluster_epsilon. More...
 
virtual void squared_distance (const std::vector< std::size_t > &indices, std::vector< FT > &distances) const =0
 Computes the squared Euclidean distance from a set of points to the shape. More...
 
virtual void cos_to_normal (const std::vector< std::size_t > &indices, std::vector< FT > &angles) const =0
 Computes the deviation of the point normal from the surface normal at the projected point in form of the dot product and writes the result into the provided angles vector.
 
virtual std::size_t minimum_sample_size () const =0
 Returns minimal number of sample points required for construction.
 
boost::property_traits< typename Traits::Point_map >::reference point (std::size_t i) const
 Retrieves the point location from its index.
 
boost::property_traits< typename Traits::Normal_map >::reference normal (std::size_t i) const
 Retrieves the normal vector from its index.
 
const Traits & traits () const
 Retrieves the traits class.