storage for 3 collinear points to serve as 1-D projective basis More...
#include <vgl/vgl_fwd.h>#include <vgl/vgl_homg_point_1d.h>#include <vcl_iosfwd.h>#include <vcl_cassert.h>Go to the source code of this file.
Classes | |
| class | vgl_1d_basis< T > |
| Storage for 3 collinear points to serve as 1-D projective basis. More... | |
Defines | |
| #define | VGL_1D_BASIS_INSTANTIATE(T) extern "please include vgl/vgl_1d_basis.txx first" |
Functions | |
| template<class T > | |
| vcl_ostream & | operator<< (vcl_ostream &s, vgl_1d_basis< T > const &) |
| Write "<vgl_1d_basis o u i> " to stream. | |
storage for 3 collinear points to serve as 1-D projective basis
vgl_1d_basis<T> is a class templated on the point type that will be stored. Typically, T will be vgl_point_2d<double> or vgl_homg_point_2d<int> or even vgl_line_2d<float> or vgl_point_3d<T>.
This class stores three unequal collinear points and will use these to define a projection from e.g. 2d points on a line to a 1-dimensional projective space: the first point receives coordinates (0,1), the second one (1,0), and the third one (the unit point) coordinates (1,1).
Note that this class can also be used for ``projecting'' from e.g. vgl_homg_point_1d<float> or vgl_point_1d<int> to vgl_homg_point_1d<double>, i.e., a kind of type casting operation, by passing it the homogeneous points (0,1), (1,0) and (1,1). Note that the destination space is always vgl_homg_point_1d<double>.
The only conditions on template type T are the following:
These conditions are satisfied for the vgl_point_[23]d<Type> and vgl_homg_point_[123]d<Type> classes. For concurrent vgl_line_2d's the method project() has to be specialised (which is easily done by taking its intersection with the line at infinity!)
Modifications
Feb.2002 - Peter Vanroose - brief doxygen comment placed on single line
Definition in file vgl_1d_basis.h.
| #define VGL_1D_BASIS_INSTANTIATE | ( | T | ) | extern "please include vgl/vgl_1d_basis.txx first" |
Definition at line 139 of file vgl_1d_basis.h.
| vcl_ostream & operator<< | ( | vcl_ostream & | s, |
| vgl_1d_basis< T > const & | |||
| ) |
Write "<vgl_1d_basis o u i> " to stream.
Definition at line 40 of file vgl_1d_basis.txx.
1.7.5.1