#include "vgl_homg_operators_3d.h"
#include <vcl_iostream.h>
#include <vcl_vector.h>
#include <vcl_cmath.h>
#include <vcl_cassert.h>
#include <vnl/vnl_vector_fixed.h>
#include <vnl/vnl_matrix_fixed.h>
#include <vnl/vnl_matrix.h>
#include <vnl/algo/vnl_svd.h>
#include <vgl/vgl_homg_point_3d.h>
#include <vgl/vgl_homg_plane_3d.h>
#include <vgl/vgl_homg_line_2d.h>
#include <vgl/vgl_homg_point_2d.h>
Go to the source code of this file.
Defines | |
#define | vgl_homg_operators_3d_txx_ |
#define | dot(p, q) p.a()*q.x()+p.b()*q.y()+p.c()*q.z()+p.d()*q.w() |
#define | VGL_HOMG_OPERATORS_3D_INSTANTIATE(T) |
Functions | |
template<class T > | |
vgl_homg_point_3d< T > | operator* (vnl_matrix_fixed< T, 4, 4 > const &m, vgl_homg_point_3d< T > const &p) |
Homographic transformation of a 3D point through a 4x4 projective transformation matrix. | |
template<class T > | |
vgl_homg_plane_3d< T > | operator* (vnl_matrix_fixed< T, 4, 4 > const &m, vgl_homg_plane_3d< T > const &p) |
Homographic transformation of a 3D plane through a 4x4 projective transformation matrix. | |
template<class T > | |
vgl_homg_point_2d< T > | operator* (vnl_matrix_fixed< T, 3, 4 > const &m, vgl_homg_point_3d< T > const &p) |
Project a 3D point to 2D through a 3x4 projective transformation matrix. | |
template<class T > | |
vgl_homg_plane_3d< T > | operator* (vnl_matrix_fixed< T, 4, 3 > const &m, vgl_homg_line_2d< T > const &l) |
Backproject a 2D line through a 4x3 projective transformation matrix. |
Definition in file vgl_homg_operators_3d.txx.
#define dot | ( | p, | |
q | |||
) | p.a()*q.x()+p.b()*q.y()+p.c()*q.z()+p.d()*q.w() |
#define VGL_HOMG_OPERATORS_3D_INSTANTIATE | ( | T | ) |
template class vgl_homg_operators_3d<T >; \ template vgl_homg_point_3d<T > operator*(vnl_matrix_fixed<T,4,4> const&,\ vgl_homg_point_3d<T > const&); \ template vgl_homg_plane_3d<T > operator*(vnl_matrix_fixed<T,4,4> const&,\ vgl_homg_plane_3d<T > const&); \ template vgl_homg_point_2d<T > operator*(vnl_matrix_fixed<T,3,4> const&,\ vgl_homg_point_3d<T > const&); \ template vgl_homg_plane_3d<T > operator*(vnl_matrix_fixed<T,4,3> const&,\ vgl_homg_line_2d<T > const&)
Definition at line 545 of file vgl_homg_operators_3d.txx.
#define vgl_homg_operators_3d_txx_ |
Definition at line 3 of file vgl_homg_operators_3d.txx.
vgl_homg_point_3d<T> operator* | ( | vnl_matrix_fixed< T, 4, 4 > const & | m, |
vgl_homg_point_3d< T > const & | p | ||
) |
Homographic transformation of a 3D point through a 4x4 projective transformation matrix.
Definition at line 503 of file vgl_homg_operators_3d.txx.
vgl_homg_plane_3d<T> operator* | ( | vnl_matrix_fixed< T, 4, 4 > const & | m, |
vgl_homg_plane_3d< T > const & | p | ||
) |
Homographic transformation of a 3D plane through a 4x4 projective transformation matrix.
Definition at line 514 of file vgl_homg_operators_3d.txx.
vgl_homg_point_2d<T> operator* | ( | vnl_matrix_fixed< T, 3, 4 > const & | m, |
vgl_homg_point_3d< T > const & | p | ||
) |
Project a 3D point to 2D through a 3x4 projective transformation matrix.
Definition at line 525 of file vgl_homg_operators_3d.txx.
vgl_homg_plane_3d<T> operator* | ( | vnl_matrix_fixed< T, 4, 3 > const & | m, |
vgl_homg_line_2d< T > const & | l | ||
) |
Backproject a 2D line through a 4x3 projective transformation matrix.
Definition at line 535 of file vgl_homg_operators_3d.txx.