#include <vpgl_generic_camera.h>

Public Member Functions | |
| vpgl_generic_camera () | |
| vpgl_generic_camera (vbl_array_2d< vgl_ray_3d< T > > const &rays) | |
| virtual | ~vpgl_generic_camera () |
| virtual vcl_string | type_name () const |
| class identity functions for casting. | |
| virtual void | project (const T x, const T y, const T z, T &u, T &v) const |
| The generic camera interface. u represents image column, v image row. Finds projection using a pyramid search over the rays and so not particularly efficient. | |
| unsigned | cols (int level) const |
| the number of columns (u coordinate) in the ray image. | |
| unsigned | cols () const |
| unsigned | rows (int level) const |
| the number of rows (v coordinate) in the ray image. | |
| unsigned | rows () const |
| unsigned | n_levels () |
| the number of pyramid levels. | |
| vgl_ray_3d< T > | ray (const T u, const T v) const |
| the ray corresponding to a given pixel. | |
| vgl_ray_3d< T > | ray (vgl_point_3d< T > const &p) const |
| a ray passing through a given 3-d point. | |
| vbl_array_2d< vgl_ray_3d< T > > & | rays (int level) |
| the ray index at a given level. | |
| vgl_point_3d< T > | min_ray_origin () |
| the nearest ray origin to the coordinate origin. | |
| vgl_vector_3d< T > | min_ray_direction () |
| vgl_point_3d< T > | max_ray_origin () |
| the furthest ray origin from the coordinate origin. | |
| vgl_vector_3d< T > | max_ray_direction () |
| void | print_orig (int level) |
| debug function. | |
| void | print_to_vrml (int level, vcl_ostream &os) |
| visualization. | |
| vcl_string | is_a () const |
| bool | is_class (vcl_string const &name) const |
| void | ref () |
| void | unref () |
| int | get_references () const |
| bool | is_referenced () const |
Protected Member Functions | |
| void | nearest_ray_to_point (vgl_point_3d< T > const &p, int &nearest_r, int &nearest_c) const |
| void | nearest_ray (int level, vgl_point_3d< T > const &p, int start_r, int end_r, int start_c, int end_c, int &nearest_r, int &nearest_c) const |
| nearest ray at level. | |
| void | refine_projection (int nearest_c, int nearest_r, vgl_point_3d< T > const &p, T &u, T &v) const |
| refine the projection to sub pixel. | |
| void | refine_ray_at_point (int nearest_c, int nearest_r, vgl_point_3d< T > const &p, vgl_ray_3d< T > &ray) const |
| refine ray. | |
Protected Attributes | |
| vgl_point_3d< T > | min_ray_origin_ |
| ray origin bound to support occlusion reasoning. | |
| vgl_vector_3d< T > | min_ray_direction_ |
| vgl_point_3d< T > | max_ray_origin_ |
| ray origin bound to support occlusion reasoning. | |
| vgl_vector_3d< T > | max_ray_direction_ |
| int | n_levels_ |
| a pyramid data structure for the rays to support efficient projection. | |
| vcl_vector< int > | nr_ |
| num rows at each resolution level. | |
| vcl_vector< int > | nc_ |
| num cols at each resolution level. | |
| vcl_vector< vbl_array_2d < vgl_ray_3d< T > > > | rays_ |
| the pyramid. | |
Definition at line 33 of file vpgl_generic_camera.h.
| vpgl_generic_camera< T >::vpgl_generic_camera | ( | ) |
Definition at line 20 of file vpgl_generic_camera.txx.
| vpgl_generic_camera< T >::vpgl_generic_camera | ( | vbl_array_2d< vgl_ray_3d< T > > const & | rays | ) |
Definition at line 28 of file vpgl_generic_camera.txx.
| virtual vpgl_generic_camera< T >::~vpgl_generic_camera | ( | ) | [inline, virtual] |
Definition at line 40 of file vpgl_generic_camera.h.
| unsigned vpgl_generic_camera< T >::cols | ( | int | level | ) | const [inline] |
the number of columns (u coordinate) in the ray image.
Definition at line 48 of file vpgl_generic_camera.h.
| unsigned vpgl_generic_camera< T >::cols | ( | ) | const [inline] |
Definition at line 49 of file vpgl_generic_camera.h.
| vcl_string vpgl_camera< T >::is_a | ( | ) | const [inline, inherited] |
Reimplemented in vpgl_geo_camera.
Definition at line 37 of file vpgl_camera.h.
| bool vpgl_camera< T >::is_class | ( | vcl_string const & | name | ) | const [inline, inherited] |
Reimplemented in vpgl_geo_camera.
Definition at line 38 of file vpgl_camera.h.
| vgl_vector_3d<T> vpgl_generic_camera< T >::max_ray_direction | ( | ) | [inline] |
Definition at line 73 of file vpgl_generic_camera.h.
| vgl_point_3d<T> vpgl_generic_camera< T >::max_ray_origin | ( | ) | [inline] |
the furthest ray origin from the coordinate origin.
Definition at line 72 of file vpgl_generic_camera.h.
| vgl_vector_3d<T> vpgl_generic_camera< T >::min_ray_direction | ( | ) | [inline] |
Definition at line 69 of file vpgl_generic_camera.h.
| vgl_point_3d<T> vpgl_generic_camera< T >::min_ray_origin | ( | ) | [inline] |
the nearest ray origin to the coordinate origin.
Definition at line 68 of file vpgl_generic_camera.h.
| unsigned vpgl_generic_camera< T >::n_levels | ( | ) | [inline] |
the number of pyramid levels.
Definition at line 56 of file vpgl_generic_camera.h.
| void vpgl_generic_camera< T >::nearest_ray | ( | int | level, |
| vgl_point_3d< T > const & | p, | ||
| int | start_r, | ||
| int | end_r, | ||
| int | start_c, | ||
| int | end_c, | ||
| int & | nearest_r, | ||
| int & | nearest_c | ||
| ) | const [protected] |
nearest ray at level.
Definition at line 82 of file vpgl_generic_camera.txx.
| void vpgl_generic_camera< T >::nearest_ray_to_point | ( | vgl_point_3d< T > const & | p, |
| int & | nearest_r, | ||
| int & | nearest_c | ||
| ) | const [protected] |
Definition at line 106 of file vpgl_generic_camera.txx.
| void vpgl_generic_camera< T >::print_orig | ( | int | level | ) |
debug function.
Definition at line 321 of file vpgl_generic_camera.txx.
| void vpgl_generic_camera< T >::print_to_vrml | ( | int | level, |
| vcl_ostream & | os | ||
| ) |
visualization.
Definition at line 333 of file vpgl_generic_camera.txx.
| void vpgl_generic_camera< T >::project | ( | const T | x, |
| const T | y, | ||
| const T | z, | ||
| T & | u, | ||
| T & | v | ||
| ) | const [virtual] |
The generic camera interface. u represents image column, v image row. Finds projection using a pyramid search over the rays and so not particularly efficient.
Implements vpgl_camera< T >.
Definition at line 231 of file vpgl_generic_camera.txx.
| vgl_ray_3d< T > vpgl_generic_camera< T >::ray | ( | const T | u, |
| const T | v | ||
| ) | const |
the ray corresponding to a given pixel.
Definition at line 243 of file vpgl_generic_camera.txx.
| vgl_ray_3d< T > vpgl_generic_camera< T >::ray | ( | vgl_point_3d< T > const & | p | ) | const |
a ray passing through a given 3-d point.
Definition at line 146 of file vpgl_generic_camera.txx.
| vbl_array_2d<vgl_ray_3d<T> >& vpgl_generic_camera< T >::rays | ( | int | level | ) | [inline] |
the ray index at a given level.
Definition at line 65 of file vpgl_generic_camera.h.
| void vpgl_generic_camera< T >::refine_projection | ( | int | nearest_c, |
| int | nearest_r, | ||
| vgl_point_3d< T > const & | p, | ||
| T & | u, | ||
| T & | v | ||
| ) | const [protected] |
refine the projection to sub pixel.
Definition at line 161 of file vpgl_generic_camera.txx.
| void vpgl_generic_camera< T >::refine_ray_at_point | ( | int | nearest_c, |
| int | nearest_r, | ||
| vgl_point_3d< T > const & | p, | ||
| vgl_ray_3d< T > & | ray | ||
| ) | const [protected] |
refine ray.
Definition at line 130 of file vpgl_generic_camera.txx.
| unsigned vpgl_generic_camera< T >::rows | ( | int | level | ) | const [inline] |
the number of rows (v coordinate) in the ray image.
Definition at line 52 of file vpgl_generic_camera.h.
| unsigned vpgl_generic_camera< T >::rows | ( | ) | const [inline] |
Definition at line 53 of file vpgl_generic_camera.h.
| virtual vcl_string vpgl_generic_camera< T >::type_name | ( | ) | const [inline, virtual] |
class identity functions for casting.
Reimplemented from vpgl_camera< T >.
Definition at line 42 of file vpgl_generic_camera.h.
vgl_vector_3d<T> vpgl_generic_camera< T >::max_ray_direction_ [protected] |
Definition at line 105 of file vpgl_generic_camera.h.
vgl_point_3d<T> vpgl_generic_camera< T >::max_ray_origin_ [protected] |
ray origin bound to support occlusion reasoning.
Definition at line 104 of file vpgl_generic_camera.h.
vgl_vector_3d<T> vpgl_generic_camera< T >::min_ray_direction_ [protected] |
Definition at line 102 of file vpgl_generic_camera.h.
vgl_point_3d<T> vpgl_generic_camera< T >::min_ray_origin_ [protected] |
ray origin bound to support occlusion reasoning.
Definition at line 101 of file vpgl_generic_camera.h.
int vpgl_generic_camera< T >::n_levels_ [protected] |
a pyramid data structure for the rays to support efficient projection.
(level == 0 is the highest resolution)
Definition at line 109 of file vpgl_generic_camera.h.
vcl_vector<int> vpgl_generic_camera< T >::nc_ [protected] |
num cols at each resolution level.
Definition at line 113 of file vpgl_generic_camera.h.
vcl_vector<int> vpgl_generic_camera< T >::nr_ [protected] |
num rows at each resolution level.
Definition at line 111 of file vpgl_generic_camera.h.
vcl_vector<vbl_array_2d<vgl_ray_3d<T> > > vpgl_generic_camera< T >::rays_ [protected] |
the pyramid.
Definition at line 115 of file vpgl_generic_camera.h.
1.7.5.1