Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
vpgl_nitf_rational_camera Class Reference

#include <vpgl_nitf_rational_camera.h>

Inheritance diagram for vpgl_nitf_rational_camera:
Inheritance graph
[legend]

List of all members.

Public Types

enum  geopt_coord { LAT, LON }
enum  coor_index
 enumeration for indexing coordinates. More...
enum  poly_index
 enumeration for indexing polynomials. More...

Public Member Functions

 vpgl_nitf_rational_camera ()
 vpgl_nitf_rational_camera (vcl_string const &nitf_image_path, bool verbose=false)
 Construct from a nitf image file.
 vpgl_nitf_rational_camera (vil_nitf2_image *nift_image, bool verbose=false)
 Construct from a nitf image.
vcl_string rational_extension_type () const
vcl_string image_id () const
vnl_double_2 upper_left () const
 Geographic coordinates of image corners.
vnl_double_2 upper_right () const
vnl_double_2 lower_left () const
vnl_double_2 lower_right () const
virtual vcl_string type_name () const
 class identity functions for casting.
virtual vpgl_rational_camera
< double > * 
clone (void) const
 Clone `this': creation of a new object and initialization.
bool operator== (vpgl_rational_camera< double > const &that) const
 Equality test.
void set_coefficients (vcl_vector< vcl_vector< double > > const &rational_coeffs)
 set rational polynomial coefficients.
void set_coefficients (vnl_matrix_fixed< double, 4, 20 > const &rational_coeffs)
void set_scale_offsets (vcl_vector< vpgl_scale_offset< double > > const &scale_offsets)
 set coordinate scale and offsets.
vnl_matrix_fixed< double, 4, 20 > coefficient_matrix () const
 get the rational polynomial coefficients in a vnl matrix.
vcl_vector< vcl_vector< double > > coefficients () const
 get the rational polynomial coefficients in a vcl array.
vcl_vector< vpgl_scale_offset
< double > > 
scale_offsets () const
 get the scale and offsets in a vector.
void set_scale (const coor_index coor_index, const doublescale)
 set a specific scale value.
void set_offset (const coor_index coor_index, const doubleoffset)
 set a specific scale value.
double scale (const coor_index coor_index) const
 get a specific scale value.
double offset (const coor_index coor_index) const
 get a specific offset value.
vpgl_scale_offset< double > scl_off (const coor_index coor_index) const
 get a specific scale_offset.
void set_image_offset (const doubleu_off, const doublev_off)
 set u-v translation offset.
void image_offset (double &u_off, double &v_off)
 get u-v translation offset.
void set_image_scale (const doubleu_scale, const doublev_scale)
 set u-v scale.
void image_scale (double &u_scale, double &v_scale)
 get u-v scale.
virtual void project (const doublex, const doubley, const doublez, double &u, double &v) const
 The generic camera interface. u represents image column, v image row.
virtual vnl_vector_fixed
< double, 2 > 
project (vnl_vector_fixed< double, 3 > const &world_point) const
 Project a world point onto the image.
virtual vgl_point_2d< double > project (vgl_point_3d< double > world_point) const
 Project a world point onto the image.
virtual void print (vcl_ostream &s=vcl_cout) const
 print the camera parameters.
virtual bool save (vcl_string cam_path)
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

vnl_vector_fixed< double, 20 > power_vector (const doublex, const doubley, const doublez) const

Protected Attributes

vnl_matrix_fixed< double, 4, 20 > rational_coeffs_
vcl_vector< vpgl_scale_offset
< double > > 
scale_offsets_

Private Member Functions

void set_order_b (int *)
bool init (vil_nitf2_image *nitf_image, bool verbose)

Private Attributes

vcl_string nitf_rational_type_
vcl_string image_id_
vcl_string image_igeolo_
vnl_double_2 ul_
 geo-coordinates of image corners.
vnl_double_2 ur_
vnl_double_2 ll_
vnl_double_2 lr_

Detailed Description

Definition at line 29 of file vpgl_nitf_rational_camera.h.


Member Enumeration Documentation

enumeration for indexing coordinates.

Definition at line 107 of file vpgl_rational_camera.h.

Enumerator:
LAT 
LON 

Definition at line 33 of file vpgl_nitf_rational_camera.h.

enumeration for indexing polynomials.

Definition at line 109 of file vpgl_rational_camera.h.


Constructor & Destructor Documentation

vpgl_nitf_rational_camera::vpgl_nitf_rational_camera ( )

Definition at line 331 of file vpgl_nitf_rational_camera.cxx.

vpgl_nitf_rational_camera::vpgl_nitf_rational_camera ( vcl_string const &  nitf_image_path,
bool  verbose = false 
)

Construct from a nitf image file.

Definition at line 336 of file vpgl_nitf_rational_camera.cxx.

vpgl_nitf_rational_camera::vpgl_nitf_rational_camera ( vil_nitf2_image *  nift_image,
bool  verbose = false 
)

Construct from a nitf image.

Definition at line 380 of file vpgl_nitf_rational_camera.cxx.


Member Function Documentation

virtual vpgl_rational_camera<double >* vpgl_rational_camera< double >::clone ( void  ) const [virtual, inherited]

Clone `this': creation of a new object and initialization.

See Prototype pattern

vnl_matrix_fixed<double , 4, 20> vpgl_rational_camera< double >::coefficient_matrix ( ) const [inline, inherited]

get the rational polynomial coefficients in a vnl matrix.

Definition at line 170 of file vpgl_rational_camera.h.

vcl_vector<vcl_vector<double > > vpgl_rational_camera< double >::coefficients ( ) const [inherited]

get the rational polynomial coefficients in a vcl array.

vcl_string vpgl_nitf_rational_camera::image_id ( ) const [inline]

Definition at line 46 of file vpgl_nitf_rational_camera.h.

void vpgl_rational_camera< double >::image_offset ( double &  u_off,
double &  v_off 
) [inline, inherited]

get u-v translation offset.

Definition at line 201 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::image_scale ( double &  u_scale,
double &  v_scale 
) [inline, inherited]

get u-v scale.

Definition at line 210 of file vpgl_rational_camera.h.

bool vpgl_nitf_rational_camera::init ( vil_nitf2_image *  nitf_image,
bool  verbose 
) [private]

Definition at line 241 of file vpgl_nitf_rational_camera.cxx.

vcl_string vpgl_camera< double >::is_a ( ) const [inline, inherited]

Reimplemented in vpgl_geo_camera.

Definition at line 37 of file vpgl_camera.h.

bool vpgl_camera< double >::is_class ( vcl_string const &  name) const [inline, inherited]

Reimplemented in vpgl_geo_camera.

Definition at line 38 of file vpgl_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::lower_left ( ) const [inline]

Definition at line 51 of file vpgl_nitf_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::lower_right ( ) const [inline]

Definition at line 52 of file vpgl_nitf_rational_camera.h.

double vpgl_rational_camera< double >::offset ( const coor_index  coor_index) const [inline, inherited]

get a specific offset value.

Definition at line 187 of file vpgl_rational_camera.h.

bool vpgl_rational_camera< double >::operator== ( vpgl_rational_camera< double > const &  that) const [inline, inherited]

Equality test.

Definition at line 156 of file vpgl_rational_camera.h.

vnl_vector_fixed<double , 20> vpgl_rational_camera< double >::power_vector ( const double  x,
const double  y,
const double  z 
) const [protected, inherited]

Create a vector with the standard order of monomial terms.

virtual void vpgl_rational_camera< double >::print ( vcl_ostream &  s = vcl_cout) const [virtual, inherited]

print the camera parameters.

virtual void vpgl_rational_camera< double >::project ( const double  x,
const double  y,
const double  z,
double &  u,
double &  v 
) const [virtual, inherited]

The generic camera interface. u represents image column, v image row.

Implements vpgl_camera< double >.

virtual vnl_vector_fixed<double , 2> vpgl_rational_camera< double >::project ( vnl_vector_fixed< double , 3 > const &  world_point) const [virtual, inherited]

Project a world point onto the image.

virtual vgl_point_2d<double > vpgl_rational_camera< double >::project ( vgl_point_3d< double >  world_point) const [virtual, inherited]

Project a world point onto the image.

vcl_string vpgl_nitf_rational_camera::rational_extension_type ( ) const [inline]

Definition at line 44 of file vpgl_nitf_rational_camera.h.

virtual bool vpgl_rational_camera< double >::save ( vcl_string  cam_path) [virtual, inherited]
double vpgl_rational_camera< double >::scale ( const coor_index  coor_index) const [inline, inherited]

get a specific scale value.

Definition at line 184 of file vpgl_rational_camera.h.

vcl_vector<vpgl_scale_offset<double > > vpgl_rational_camera< double >::scale_offsets ( ) const [inline, inherited]

get the scale and offsets in a vector.

Definition at line 175 of file vpgl_rational_camera.h.

vpgl_scale_offset<double > vpgl_rational_camera< double >::scl_off ( const coor_index  coor_index) const [inline, inherited]

get a specific scale_offset.

Definition at line 190 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::set_coefficients ( vcl_vector< vcl_vector< double > > const &  rational_coeffs) [inherited]

set rational polynomial coefficients.

void vpgl_rational_camera< double >::set_coefficients ( vnl_matrix_fixed< double , 4, 20 > const &  rational_coeffs) [inline, inherited]

Definition at line 165 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::set_image_offset ( const double  u_off,
const double  v_off 
) [inline, inherited]

set u-v translation offset.

Definition at line 196 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::set_image_scale ( const double  u_scale,
const double  v_scale 
) [inline, inherited]

set u-v scale.

Definition at line 205 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::set_offset ( const coor_index  coor_index,
const double  offset 
) [inline, inherited]

set a specific scale value.

Definition at line 181 of file vpgl_rational_camera.h.

void vpgl_nitf_rational_camera::set_order_b ( int *  ord) [private]

Definition at line 216 of file vpgl_nitf_rational_camera.cxx.

void vpgl_rational_camera< double >::set_scale ( const coor_index  coor_index,
const double  scale 
) [inline, inherited]

set a specific scale value.

Definition at line 178 of file vpgl_rational_camera.h.

void vpgl_rational_camera< double >::set_scale_offsets ( vcl_vector< vpgl_scale_offset< double > > const &  scale_offsets) [inherited]

set coordinate scale and offsets.

virtual vcl_string vpgl_rational_camera< double >::type_name ( ) const [inline, virtual, inherited]

class identity functions for casting.

Reimplemented from vpgl_camera< double >.

Definition at line 149 of file vpgl_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::upper_left ( ) const [inline]

Geographic coordinates of image corners.

Definition at line 49 of file vpgl_nitf_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::upper_right ( ) const [inline]

Definition at line 50 of file vpgl_nitf_rational_camera.h.


Member Data Documentation

Definition at line 61 of file vpgl_nitf_rational_camera.h.

Definition at line 62 of file vpgl_nitf_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::ll_ [private]

Definition at line 66 of file vpgl_nitf_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::lr_ [private]

Definition at line 67 of file vpgl_nitf_rational_camera.h.

Definition at line 60 of file vpgl_nitf_rational_camera.h.

vnl_matrix_fixed<double , 4, 20> vpgl_rational_camera< double >::rational_coeffs_ [protected, inherited]

Definition at line 235 of file vpgl_rational_camera.h.

vcl_vector<vpgl_scale_offset<double > > vpgl_rational_camera< double >::scale_offsets_ [protected, inherited]

Definition at line 236 of file vpgl_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::ul_ [private]

geo-coordinates of image corners.

Definition at line 64 of file vpgl_nitf_rational_camera.h.

vnl_double_2 vpgl_nitf_rational_camera::ur_ [private]

Definition at line 65 of file vpgl_nitf_rational_camera.h.


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