Static Public Member Functions | Private Member Functions | Static Private Member Functions
vpgl_generic_camera_convert Class Reference

Various methods for converting to a generic camera. More...

#include <vpgl_camera_convert.h>

List of all members.

Static Public Member Functions

static bool convert (vpgl_local_rational_camera< double > const &rat_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 Convert a local rational camera to a generic camera.
static bool convert (vpgl_local_rational_camera< double > const &rat_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, double local_z_min, double local_z_max, unsigned level=0)
 Convert a local rational camera to a generic camera, using user-specified z bounds.
static bool convert (vpgl_proj_camera< double > const &prj_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 Convert a proj_camera to a generic camera.
static bool convert (vpgl_perspective_camera< double > const &per_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 Convert a perspective_camera to a generic camera.
static bool convert_with_margin (vpgl_perspective_camera< double > const &per_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, int margin, unsigned level=0)
static bool convert (vpgl_affine_camera< double > const &aff_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 Convert an affine_camera to a generic camera.
static bool convert (vpgl_camera_double_sptr const &camera, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 :convert an abstract camera to generic camera.
static bool convert (vpgl_geo_camera &geocam, int ni, int nj, double height, vpgl_generic_camera< double > &gen_cam, unsigned level=0)
 Convert a geocam (transformtaion matrix read from a geotiff header + an lvcs) to a generic camera.

Private Member Functions

 vpgl_generic_camera_convert ()

Static Private Member Functions

static bool upsample_rays (vcl_vector< vgl_ray_3d< double > > const &ray_nbrs, vgl_ray_3d< double > const &ray, vcl_vector< vgl_ray_3d< double > > &interp_rays)
 interpolate rays to fill next higher resolution pyramid layer.
static vgl_ray_3d< double > interp_pair (vgl_ray_3d< double > const &r0, vgl_ray_3d< double > const &r1, double n_grid)
 interpolate a span of rays base on a linear interpolation. n_grid is the step distance from r1. r0 and r1 are one unit apart.

Detailed Description

Various methods for converting to a generic camera.

Definition at line 71 of file vpgl_camera_convert.h.


Constructor & Destructor Documentation

vpgl_generic_camera_convert::vpgl_generic_camera_convert ( ) [private]

Member Function Documentation

bool vpgl_generic_camera_convert::convert ( vpgl_local_rational_camera< double > const &  rat_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

Convert a local rational camera to a generic camera.

Definition at line 781 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_local_rational_camera< double > const &  rat_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
double  local_z_min,
double  local_z_max,
unsigned  level = 0 
) [static]

Convert a local rational camera to a generic camera, using user-specified z bounds.

Note that the z values are relative to the local coordinate system

Definition at line 814 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_proj_camera< double > const &  prj_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

Convert a proj_camera to a generic camera.

Definition at line 975 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_perspective_camera< double > const &  per_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

Convert a perspective_camera to a generic camera.

Definition at line 993 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_affine_camera< double > const &  aff_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

Convert an affine_camera to a generic camera.

Definition at line 1034 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_camera_double_sptr const &  camera,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

:convert an abstract camera to generic camera.

Definition at line 1059 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert ( vpgl_geo_camera geocam,
int  ni,
int  nj,
double  height,
vpgl_generic_camera< double > &  gen_cam,
unsigned  level = 0 
) [static]

Convert a geocam (transformtaion matrix read from a geotiff header + an lvcs) to a generic camera.

all rays have the same direction.

Definition at line 1084 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::convert_with_margin ( vpgl_perspective_camera< double > const &  per_cam,
int  ni,
int  nj,
vpgl_generic_camera< double > &  gen_cam,
int  margin,
unsigned  level = 0 
) [static]

Definition at line 1011 of file vpgl_camera_convert.cxx.

vgl_ray_3d< double > vpgl_generic_camera_convert::interp_pair ( vgl_ray_3d< double > const &  r0,
vgl_ray_3d< double > const &  r1,
double  n_grid 
) [static, private]

interpolate a span of rays base on a linear interpolation. n_grid is the step distance from r1. r0 and r1 are one unit apart.

Definition at line 760 of file vpgl_camera_convert.cxx.

bool vpgl_generic_camera_convert::upsample_rays ( vcl_vector< vgl_ray_3d< double > > const &  ray_nbrs,
vgl_ray_3d< double > const &  ray,
vcl_vector< vgl_ray_3d< double > > &  interp_rays 
) [static, private]

interpolate rays to fill next higher resolution pyramid layer.

Definition at line 717 of file vpgl_camera_convert.cxx.


The documentation for this class was generated from the following files: