Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vgl_fit_lines_2d< T > Class Template Reference

#include <vgl_algo_fwd.h>

Public Member Functions

 vgl_fit_lines_2d (unsigned int min_length=10, T tol=0.15)
 Constructor. More...
 
 ~vgl_fit_lines_2d ()=default
 
void set_verbose (bool verbose)
 
void set_min_fit_length (unsigned int min_fit_length)
 set parameters. More...
 
void set_rms_error_tol (T rms_error_tol)
 
void add_point (vgl_point_2d< T > const &p)
 add a point to the curve. More...
 
void add_point (T x, T y)
 add point. More...
 
void add_curve (std::vector< vgl_point_2d< T > > const &curve)
 add an entire curve. More...
 
void clear ()
 clear internal data. More...
 
bool fit ()
 the fitting method. More...
 
std::vector< vgl_point_2d< T > > & get_points ()
 
std::vector< vgl_line_segment_2d< T > > & get_line_segs ()
 
std::vector< int > & get_indices ()
 This vector provides an index mapping each curve point to the line it belongs to. More...
 

Protected Member Functions

void output (unsigned int start_index, unsigned int end_index)
 output a line that fits from start to end. More...
 

Protected Attributes

bool verbose_
 
std::vector< vgl_point_2d< T > > curve_
 
std::vector< vgl_line_segment_2d< T > > segs_
 
std::vector< int > curve_indices_
 
unsigned int min_length_
 
tol_
 

Detailed Description

template<class T>
class vgl_fit_lines_2d< T >

Definition at line 5 of file vgl_algo_fwd.h.

Constructor & Destructor Documentation

◆ vgl_fit_lines_2d()

template<class T >
vgl_fit_lines_2d< T >::vgl_fit_lines_2d ( unsigned int  min_length = 10,
tol = 0.15 
)

Constructor.

Definition at line 18 of file vgl_fit_lines_2d.hxx.

◆ ~vgl_fit_lines_2d()

template<class T >
vgl_fit_lines_2d< T >::~vgl_fit_lines_2d ( )
default

Member Function Documentation

◆ add_curve()

template<class T >
void vgl_fit_lines_2d< T >::add_curve ( std::vector< vgl_point_2d< T > > const &  curve)
inline

add an entire curve.

Definition at line 58 of file vgl_fit_lines_2d.h.

◆ add_point() [1/2]

template<class T >
void vgl_fit_lines_2d< T >::add_point ( vgl_point_2d< T > const &  p)

add a point to the curve.

add point.

Definition at line 29 of file vgl_fit_lines_2d.hxx.

◆ add_point() [2/2]

template<class T >
void vgl_fit_lines_2d< T >::add_point ( x,
y 
)

add point.

Definition at line 39 of file vgl_fit_lines_2d.hxx.

◆ clear()

template<class T >
void vgl_fit_lines_2d< T >::clear ( )

clear internal data.

clear.

Definition at line 46 of file vgl_fit_lines_2d.hxx.

◆ fit()

template<class T >
bool vgl_fit_lines_2d< T >::fit ( )

the fitting method.

Definition at line 67 of file vgl_fit_lines_2d.hxx.

◆ get_indices()

template<class T >
std::vector<int>& vgl_fit_lines_2d< T >::get_indices ( )
inline

This vector provides an index mapping each curve point to the line it belongs to.

An index of -1 indicates the curve point was not used in any line estimate

Definition at line 71 of file vgl_fit_lines_2d.h.

◆ get_line_segs()

template<class T >
std::vector<vgl_line_segment_2d<T> >& vgl_fit_lines_2d< T >::get_line_segs ( )
inline

Definition at line 68 of file vgl_fit_lines_2d.h.

◆ get_points()

template<class T >
std::vector<vgl_point_2d<T> >& vgl_fit_lines_2d< T >::get_points ( )
inline

Definition at line 67 of file vgl_fit_lines_2d.h.

◆ output()

template<class T >
void vgl_fit_lines_2d< T >::output ( unsigned int  start_index,
unsigned int  end_index 
)
protected

output a line that fits from start to end.

Definition at line 54 of file vgl_fit_lines_2d.hxx.

◆ set_min_fit_length()

template<class T >
void vgl_fit_lines_2d< T >::set_min_fit_length ( unsigned int  min_fit_length)
inline

set parameters.

Definition at line 50 of file vgl_fit_lines_2d.h.

◆ set_rms_error_tol()

template<class T >
void vgl_fit_lines_2d< T >::set_rms_error_tol ( rms_error_tol)
inline

Definition at line 51 of file vgl_fit_lines_2d.h.

◆ set_verbose()

template<class T >
void vgl_fit_lines_2d< T >::set_verbose ( bool  verbose)
inline

Definition at line 48 of file vgl_fit_lines_2d.h.

Member Data Documentation

◆ curve_

template<class T >
std::vector<vgl_point_2d<T> > vgl_fit_lines_2d< T >::curve_
protected

Definition at line 34 of file vgl_fit_lines_2d.h.

◆ curve_indices_

template<class T >
std::vector<int> vgl_fit_lines_2d< T >::curve_indices_
protected

Definition at line 36 of file vgl_fit_lines_2d.h.

◆ min_length_

template<class T >
unsigned int vgl_fit_lines_2d< T >::min_length_
protected

Definition at line 37 of file vgl_fit_lines_2d.h.

◆ segs_

template<class T >
std::vector<vgl_line_segment_2d<T> > vgl_fit_lines_2d< T >::segs_
protected

Definition at line 35 of file vgl_fit_lines_2d.h.

◆ tol_

template<class T >
T vgl_fit_lines_2d< T >::tol_
protected

Definition at line 38 of file vgl_fit_lines_2d.h.

◆ verbose_

template<class T >
bool vgl_fit_lines_2d< T >::verbose_
protected

Definition at line 33 of file vgl_fit_lines_2d.h.


The documentation for this class was generated from the following files: