#include <vifa_coll_lines.h>
Public Member Functions | |
vifa_coll_lines (vtol_edge_2d_sptr e, double angle_cutoff_deg=5.0, double endpt_distance=3.0, bool src_from_discard=false) | |
~vifa_coll_lines (void) | |
bool | get_discard_flag (void) const |
int | get_id (void) const |
double | get_measure (const vtol_edge_2d &e) const |
double | get_projected_length (const vtol_edge_2d &e) const |
edge_2d_list & | get_contributors (void) |
face_list * | get_contributor_faces (void) |
void | add_and_update (vtol_edge_2d_sptr e) |
double | spanning_length (void) |
double | spanning_length (vgl_point_2d< double > &p1, vgl_point_2d< double > &p2) |
double | support_length (void) |
bool | contains (const vtol_edge &e) |
float | midpt_distance () const |
Distance of midpoint of qualified edge segment to projected line. | |
float | angle_tolerance () const |
Maximum angular difference (in degrees). | |
float | discard_threshold () const |
Minimum of supported to spanning length. | |
float | endpt_distance () const |
Endpoints within this distance are accepted no matter what the angular difference is. | |
void | print_info (void) |
Output contents. | |
virtual bool | SanityCheck () |
bool | Valid () const |
const char * | GetErrorMsg () const |
void | SetErrorMsg (const char *msg) |
void | touch () |
unsigned long | get_time_stamp () const |
bool | older (vul_timestamp const &t) const |
bool | older (vul_timestamp const *t) const |
void | ref () |
void | unref () |
int | get_references () const |
bool | is_referenced () const |
Static Public Member Functions | |
static void | lms_fit (const vcl_vector< double > &x, const vcl_vector< double > &y, double &A, double &B, double &C) |
Protected Attributes | |
unsigned long | timestamp_ |
Private Member Functions | |
double | get_measure (const vtol_edge_2d &e, const imp_line &hyp_line) const |
void | fit_line (void) |
Static Private Member Functions | |
static double | get_projected_length (const vtol_edge_2d &e, const imp_line &hyp_line, double &v1_dist, double &v2_dist) |
static double | get_midpt_dist (const vtol_edge_2d &e, const imp_line &hyp_line) |
Private Attributes | |
bool | discard_flag_ |
int | id_ |
imp_line_sptr | hypothesized_line_ |
edge_2d_list | contributors_ |
double | projected_length_cutoff_ |
double | endpt_distance_ |
Static Private Attributes | |
static int | serial_num_ = 0 |
Definition at line 26 of file vifa_coll_lines.h.
vifa_coll_lines::vifa_coll_lines | ( | vtol_edge_2d_sptr | e, |
double | angle_cutoff_deg = 5.0 , |
||
double | endpt_distance = 3.0 , |
||
bool | src_from_discard = false |
||
) |
Definition at line 11 of file vifa_coll_lines.cxx.
vifa_coll_lines::~vifa_coll_lines | ( | void | ) |
Definition at line 27 of file vifa_coll_lines.cxx.
void vifa_coll_lines::add_and_update | ( | vtol_edge_2d_sptr | e | ) |
Definition at line 133 of file vifa_coll_lines.cxx.
float vifa_coll_lines_params::angle_tolerance | ( | ) | const [inline, inherited] |
Maximum angular difference (in degrees).
Definition at line 40 of file vifa_coll_lines_params.h.
bool vifa_coll_lines::contains | ( | const vtol_edge & | e | ) |
Definition at line 235 of file vifa_coll_lines.cxx.
float vifa_coll_lines_params::discard_threshold | ( | ) | const [inline, inherited] |
Minimum of supported to spanning length.
Definition at line 43 of file vifa_coll_lines_params.h.
float vifa_coll_lines_params::endpt_distance | ( | ) | const [inline, inherited] |
Endpoints within this distance are accepted no matter what the angular difference is.
Definition at line 46 of file vifa_coll_lines_params.h.
void vifa_coll_lines::fit_line | ( | void | ) | [private] |
Definition at line 324 of file vifa_coll_lines.cxx.
face_list * vifa_coll_lines::get_contributor_faces | ( | void | ) |
Definition at line 63 of file vifa_coll_lines.cxx.
edge_2d_list & vifa_coll_lines::get_contributors | ( | void | ) |
Definition at line 58 of file vifa_coll_lines.cxx.
bool vifa_coll_lines::get_discard_flag | ( | void | ) | const |
Definition at line 32 of file vifa_coll_lines.cxx.
int vifa_coll_lines::get_id | ( | void | ) | const |
Definition at line 37 of file vifa_coll_lines.cxx.
double vifa_coll_lines::get_measure | ( | const vtol_edge_2d & | e | ) | const |
Definition at line 42 of file vifa_coll_lines.cxx.
double vifa_coll_lines::get_measure | ( | const vtol_edge_2d & | e, |
const imp_line & | hyp_line | ||
) | const [private] |
Definition at line 301 of file vifa_coll_lines.cxx.
double vifa_coll_lines::get_midpt_dist | ( | const vtol_edge_2d & | e, |
const imp_line & | hyp_line | ||
) | [static, private] |
Definition at line 283 of file vifa_coll_lines.cxx.
double vifa_coll_lines::get_projected_length | ( | const vtol_edge_2d & | e | ) | const |
Definition at line 47 of file vifa_coll_lines.cxx.
double vifa_coll_lines::get_projected_length | ( | const vtol_edge_2d & | e, |
const imp_line & | hyp_line, | ||
double & | v1_dist, | ||
double & | v2_dist | ||
) | [static, private] |
Definition at line 253 of file vifa_coll_lines.cxx.
void vifa_coll_lines::lms_fit | ( | const vcl_vector< double > & | x, |
const vcl_vector< double > & | y, | ||
double & | A, | ||
double & | B, | ||
double & | C | ||
) | [static] |
Definition at line 100 of file vifa_coll_lines.cxx.
float vifa_coll_lines_params::midpt_distance | ( | ) | const [inline, inherited] |
Distance of midpoint of qualified edge segment to projected line.
Definition at line 37 of file vifa_coll_lines_params.h.
void vifa_coll_lines_params::print_info | ( | void | ) | [inherited] |
Output contents.
Definition at line 32 of file vifa_coll_lines_params.cxx.
double vifa_coll_lines::spanning_length | ( | void | ) |
Definition at line 139 of file vifa_coll_lines.cxx.
double vifa_coll_lines::spanning_length | ( | vgl_point_2d< double > & | p1, |
vgl_point_2d< double > & | p2 | ||
) |
Definition at line 147 of file vifa_coll_lines.cxx.
double vifa_coll_lines::support_length | ( | void | ) |
Definition at line 223 of file vifa_coll_lines.cxx.
edge_2d_list vifa_coll_lines::contributors_ [private] |
Definition at line 33 of file vifa_coll_lines.h.
bool vifa_coll_lines::discard_flag_ [private] |
Definition at line 29 of file vifa_coll_lines.h.
double vifa_coll_lines::endpt_distance_ [private] |
Reimplemented from vifa_coll_lines_params.
Definition at line 35 of file vifa_coll_lines.h.
Definition at line 32 of file vifa_coll_lines.h.
int vifa_coll_lines::id_ [private] |
Definition at line 31 of file vifa_coll_lines.h.
double vifa_coll_lines::projected_length_cutoff_ [private] |
Definition at line 34 of file vifa_coll_lines.h.
int vifa_coll_lines::serial_num_ = 0 [static, private] |
Definition at line 30 of file vifa_coll_lines.h.