#include <bvgl_articulated_poly.h>
Public Member Functions | |
bvgl_articulated_poly (const unsigned n_joints) | |
bvgl_articulated_poly (const unsigned n_joints, vcl_vector< double > const &link_lengths) | |
bvgl_articulated_poly (const bvgl_articulated_poly &poly) | |
~bvgl_articulated_poly () | |
vgl_h_matrix_2d< double > | joint_transform (unsigned joint) const |
double | joint_angle (unsigned joint) const |
angle between joint and joint+1. | |
double | link_length (unsigned joint) const |
link from joint to joint+1. | |
vsol_point_2d_sptr | joint_position (const unsigned joint) const |
void | transform (vcl_vector< double > const &delta_joint_angle) |
Transform the articulation. | |
void | sub_manifold_transform (const double t, vcl_vector< double > const &basis_angles) |
void | print () |
debug support. | |
void | print_xforms () |
Static Public Member Functions | |
static double | lie_distance (bvgl_articulated_poly const &ap1, bvgl_articulated_poly const &ap2) |
Compute the Lie distance between two articulations. | |
static bvgl_articulated_poly_sptr | projection (bvgl_articulated_poly_sptr const &target, vcl_vector< double > const &manifold_basis) |
Projection onto the sub manifold. | |
Private Member Functions | |
void | update () |
called when the state of the polygon changes. | |
bvgl_articulated_poly () | |
Private Attributes | |
vcl_vector< vgl_h_matrix_2d < double > > | joint_transforms_ |
the inverse joint transforms for the current state of the articulation. |
Definition at line 18 of file bvgl_articulated_poly.h.
bvgl_articulated_poly::bvgl_articulated_poly | ( | const unsigned | n_joints | ) |
Definition at line 15 of file bvgl_articulated_poly.cxx.
bvgl_articulated_poly::bvgl_articulated_poly | ( | const unsigned | n_joints, |
vcl_vector< double > const & | link_lengths | ||
) |
Definition at line 34 of file bvgl_articulated_poly.cxx.
bvgl_articulated_poly::bvgl_articulated_poly | ( | const bvgl_articulated_poly & | poly | ) |
Definition at line 54 of file bvgl_articulated_poly.cxx.
bvgl_articulated_poly::~bvgl_articulated_poly | ( | ) | [inline] |
Definition at line 24 of file bvgl_articulated_poly.h.
bvgl_articulated_poly::bvgl_articulated_poly | ( | ) | [inline, private] |
Definition at line 60 of file bvgl_articulated_poly.h.
double bvgl_articulated_poly::joint_angle | ( | unsigned | joint | ) | const |
angle between joint and joint+1.
Definition at line 135 of file bvgl_articulated_poly.cxx.
vsol_point_2d_sptr bvgl_articulated_poly::joint_position | ( | const unsigned | joint | ) | const |
Definition at line 68 of file bvgl_articulated_poly.cxx.
vgl_h_matrix_2d<double> bvgl_articulated_poly::joint_transform | ( | unsigned | joint | ) | const [inline] |
Definition at line 26 of file bvgl_articulated_poly.h.
double bvgl_articulated_poly::lie_distance | ( | bvgl_articulated_poly const & | ap1, |
bvgl_articulated_poly const & | ap2 | ||
) | [static] |
Compute the Lie distance between two articulations.
Definition at line 153 of file bvgl_articulated_poly.cxx.
double bvgl_articulated_poly::link_length | ( | unsigned | joint | ) | const |
link from joint to joint+1.
Definition at line 140 of file bvgl_articulated_poly.cxx.
void bvgl_articulated_poly::print | ( | ) |
debug support.
Definition at line 172 of file bvgl_articulated_poly.cxx.
void bvgl_articulated_poly::print_xforms | ( | ) |
Definition at line 183 of file bvgl_articulated_poly.cxx.
bvgl_articulated_poly_sptr bvgl_articulated_poly::projection | ( | bvgl_articulated_poly_sptr const & | target, |
vcl_vector< double > const & | manifold_basis | ||
) | [static] |
Projection onto the sub manifold.
Definition at line 190 of file bvgl_articulated_poly.cxx.
void bvgl_articulated_poly::sub_manifold_transform | ( | const double | t, |
vcl_vector< double > const & | basis_angles | ||
) |
Definition at line 113 of file bvgl_articulated_poly.cxx.
void bvgl_articulated_poly::transform | ( | vcl_vector< double > const & | delta_joint_angle | ) |
Transform the articulation.
Definition at line 98 of file bvgl_articulated_poly.cxx.
void bvgl_articulated_poly::update | ( | ) | [private] |
called when the state of the polygon changes.
Definition at line 86 of file bvgl_articulated_poly.cxx.
vcl_vector<vgl_h_matrix_2d<double> > bvgl_articulated_poly::joint_transforms_ [private] |
the inverse joint transforms for the current state of the articulation.
Definition at line 62 of file bvgl_articulated_poly.h.