Static Public Member Functions | Private Member Functions
btol_face_algs Class Reference

#include <btol_face_algs.h>

List of all members.

Static Public Member Functions

static bool vtol_to_vgl (vtol_face_2d_sptr const &face, vgl_polygon< double > &poly)
 convert a face to a vgl_polygon.
static bool vgl_to_vtol (vgl_polygon< double >const &poly, vtol_face_2d_sptr &face)
 convert a vgl_polygon to a vtol_face_2d. Works for multiply-connected polys.
static bool vsol_to_vtol (vsol_polygon_2d_sptr const &poly, vtol_face_2d_sptr &face)
static bool edge_intersects (vtol_face_2d_sptr const &face, vtol_edge_2d_sptr const &edge)
 currently only works for a digital edge (not a line segment).
static bool intersecting_edges (vtol_face_2d_sptr const &face, vcl_vector< vtol_edge_2d_sptr > const &edges, vcl_vector< vtol_edge_2d_sptr > &inter_edges)
 takes an input set of edges and constructs the intersecting set.
static vsol_point_2d_sptr centroid (vtol_face_2d_sptr const &face)
 only valid for face with straight line edges.
static vtol_face_2d_sptr box (const double x0, const double y0, const double width, const double height)
 create an axis-aligned box face.
static vtol_one_chain_sptr one_chain (vcl_vector< vtol_vertex_sptr > const &verts)
 create a one chain from a set of vertices.
static vtol_face_2d_sptr transform (vtol_face_2d_sptr const &face, vnl_matrix_fixed< double, 3, 3 > const &T)
 transform the face with a general 3x3 planar mapping.

Private Member Functions

 btol_face_algs ()
 ~btol_face_algs ()

Detailed Description

Definition at line 23 of file btol_face_algs.h.


Constructor & Destructor Documentation

btol_face_algs::btol_face_algs ( ) [inline, private]

Definition at line 58 of file btol_face_algs.h.

btol_face_algs::~btol_face_algs ( ) [inline, private]

Definition at line 59 of file btol_face_algs.h.


Member Function Documentation

vtol_face_2d_sptr btol_face_algs::box ( const double  x0,
const double  y0,
const double  width,
const double  height 
) [static]

create an axis-aligned box face.

Definition at line 206 of file btol_face_algs.cxx.

vsol_point_2d_sptr btol_face_algs::centroid ( vtol_face_2d_sptr const &  face) [static]

only valid for face with straight line edges.

only works if the edges are straight lines.

Definition at line 184 of file btol_face_algs.cxx.

bool btol_face_algs::edge_intersects ( vtol_face_2d_sptr const &  face,
vtol_edge_2d_sptr const &  edge 
) [static]

currently only works for a digital edge (not a line segment).

Definition at line 131 of file btol_face_algs.cxx.

bool btol_face_algs::intersecting_edges ( vtol_face_2d_sptr const &  face,
vcl_vector< vtol_edge_2d_sptr > const &  edges,
vcl_vector< vtol_edge_2d_sptr > &  inter_edges 
) [static]

takes an input set of edges and constructs the intersecting set.

Returns false if the intersecting set is empty.

Definition at line 165 of file btol_face_algs.cxx.

vtol_one_chain_sptr btol_face_algs::one_chain ( vcl_vector< vtol_vertex_sptr > const &  verts) [static]

create a one chain from a set of vertices.

create a simply-connected one_chain from a set of vertices.

dir=true corresponds to +.

Definition at line 224 of file btol_face_algs.cxx.

vtol_face_2d_sptr btol_face_algs::transform ( vtol_face_2d_sptr const &  face,
vnl_matrix_fixed< double, 3, 3 > const &  T 
) [static]

transform the face with a general 3x3 planar mapping.

create a new face by transforming the input face.

Only valid for faces with linear (straight line) geometry

Definition at line 250 of file btol_face_algs.cxx.

bool btol_face_algs::vgl_to_vtol ( vgl_polygon< double >const &  poly,
vtol_face_2d_sptr face 
) [static]

convert a vgl_polygon to a vtol_face_2d. Works for multiply-connected polys.

Definition at line 96 of file btol_face_algs.cxx.

bool btol_face_algs::vsol_to_vtol ( vsol_polygon_2d_sptr const &  poly,
vtol_face_2d_sptr face 
) [static]

Definition at line 308 of file btol_face_algs.cxx.

bool btol_face_algs::vtol_to_vgl ( vtol_face_2d_sptr const &  face,
vgl_polygon< double > &  poly 
) [static]

convert a face to a vgl_polygon.

Definition at line 37 of file btol_face_algs.cxx.


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