\( \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.8 - Point Set Shape Detection

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members | Public Member Functions
CGAL::Shape_detection_3::Torus< Traits > Class Template Reference
Shapes

`#include <CGAL/Shape_detection_3/Torus.h>`

## Inherits from

CGAL::Shape_detection_3::Shape_base< Traits >.

## Definition

Torus implements Shape_base.

The torus is represented by the symmetry axis, its center on the axis and the major and minor radii.

Template Parameters

  Traits | a model of `EfficientRANSACTraits` with the additional requirement for tori (see `EfficientRANSACTraits` documentation).

Examples:
  Point_set_shape_detection_3/efficient_RANSAC_parameters.cpp.

## Public Member Functions
Vector_3 | axis () const
| Direction of symmetry axis.
Point_3 | center () const
| Center point on symmetry axis.
FT | major_radius () const
| Major radius of the torus.
FT | minor_radius () const
| Minor radius of the torus.
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
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.
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.