#include <btol_edge_algs.h>
Public Member Functions | |
~btol_edge_algs () | |
Static Public Member Functions | |
static bool | split_edge_2d (vtol_vertex_2d_sptr const &v, vtol_edge_2d_sptr const &e, vtol_edge_2d_sptr &e1, vtol_edge_2d_sptr &e2) |
use static methods. | |
static bool | unlink_all_inferiors_twoway (vtol_edge_2d_sptr const &e) |
Removes e's inferiors from e and removes e from superiors of e's inferiors. | |
static bool | subst_vertex_on_edge (vtol_vertex_sptr const &va, vtol_vertex_sptr const &vb, vtol_edge_sptr const &e) |
Replace va on edge e by vb. | |
static void | edge_2d_erase (vcl_vector< vtol_edge_2d_sptr > &edges, vtol_edge_2d_sptr const &e) |
A convenient erase interface. | |
static vsol_box_2d | bounding_box (vcl_vector< vtol_edge_2d_sptr > &edges) |
Get the bounding box for a set of edges. | |
static vtol_vertex_2d_sptr | closest_vertex (vtol_edge_2d_sptr const &e, const double x, const double y) |
Find the vertex closest to the specified position. | |
Static Public Attributes | |
static BTOL_DLL_DATA const double | tol = 1e-6 |
Private Member Functions | |
btol_edge_algs () |
Definition at line 21 of file btol_edge_algs.h.
btol_edge_algs::~btol_edge_algs | ( | ) |
Definition at line 16 of file btol_edge_algs.cxx.
btol_edge_algs::btol_edge_algs | ( | ) | [private] |
vsol_box_2d btol_edge_algs::bounding_box | ( | vcl_vector< vtol_edge_2d_sptr > & | edges | ) | [static] |
Get the bounding box for a set of edges.
Computes the bounding box for a set of edges.
Definition at line 93 of file btol_edge_algs.cxx.
vtol_vertex_2d_sptr btol_edge_algs::closest_vertex | ( | vtol_edge_2d_sptr const & | e, |
const double | x, | ||
const double | y | ||
) | [static] |
Find the vertex closest to the specified position.
find the vertex closest to the given position and return it.
Definition at line 127 of file btol_edge_algs.cxx.
void btol_edge_algs::edge_2d_erase | ( | vcl_vector< vtol_edge_2d_sptr > & | edges, |
vtol_edge_2d_sptr const & | e | ||
) | [static] |
A convenient erase interface.
a bit more convenient interface for finding edges than messing with iterators.
Definition at line 116 of file btol_edge_algs.cxx.
bool btol_edge_algs::split_edge_2d | ( | vtol_vertex_2d_sptr const & | v, |
vtol_edge_2d_sptr const & | e, | ||
vtol_edge_2d_sptr & | e1, | ||
vtol_edge_2d_sptr & | e2 | ||
) | [static] |
use static methods.
Splits e at v and returns the two edges e1, e2, which are incident at v.
If v is not within btol_edge_algs::tol (user-settable) of a point on edge e then false is returned, and e is not split
Definition at line 24 of file btol_edge_algs.cxx.
bool btol_edge_algs::subst_vertex_on_edge | ( | vtol_vertex_sptr const & | va, |
vtol_vertex_sptr const & | vb, | ||
vtol_edge_sptr const & | e | ||
) | [static] |
Replace va on edge e by vb.
Replaces va by vb on edge e.
Definition at line 68 of file btol_edge_algs.cxx.
bool btol_edge_algs::unlink_all_inferiors_twoway | ( | vtol_edge_2d_sptr const & | e | ) | [static] |
Removes e's inferiors from e and removes e from superiors of e's inferiors.
Definition at line 33 of file btol_edge_algs.cxx.
const double btol_edge_algs::tol = 1e-6 [static] |
Definition at line 24 of file btol_edge_algs.h.