Defines | Functions
core/vgl/algo/vgl_homg_operators_3d.txx File Reference
#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.

Detailed Description

Definition in file vgl_homg_operators_3d.txx.


Define Documentation

#define dot (   p,
 
)    p.a()*q.x()+p.b()*q.y()+p.c()*q.z()+p.d()*q.w()
#define VGL_HOMG_OPERATORS_3D_INSTANTIATE (   T)
Value:
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.


Function Documentation

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.

Definition at line 503 of file vgl_homg_operators_3d.txx.

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.

Definition at line 514 of file vgl_homg_operators_3d.txx.

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.

Definition at line 525 of file vgl_homg_operators_3d.txx.

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 at line 535 of file vgl_homg_operators_3d.txx.