Eaagles::Terrain::DataFile Class Reference

Inherits Eaagles::Simulation::Terrain.

Inherited by Eaagles::Terrain::DedFile, and Eaagles::Terrain::DtedFile.

Inheritance diagram for Eaagles::Terrain::DataFile:

Inheritance graph
[legend]
Collaboration diagram for Eaagles::Terrain::DataFile:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 DataFile ()
unsigned int getNumLatPoints () const
unsigned int getNumLonPoints () const
double getLatSpacing () const
double getLonSpacing () const
bool computerRowIndex (unsigned int *const irow, const double lat) const
bool computeColumnIndex (unsigned int *const icol, const double lon) const
bool computeLatitude (double *const lat, const unsigned int irow) const
bool computeLongitude (double *const lon, const unsigned int icol) const
const short * getColumn (const unsigned int idx) const
virtual bool isDataLoaded () const
virtual unsigned int getElevations (LCreal *const elevations, bool *const validFlags, const unsigned int n, const double lat, const double lon, const LCreal direction, const LCreal maxRng, const bool interp=false) const
virtual bool getElevation (LCreal *const elev, const double lat, const double lon const bool interp=false) const

Protected Member Functions

virtual void clearData ()

Protected Attributes

short ** columns
double latSpacing
double lonSpacing
unsigned int nptlat
unsigned int nptlong
short voidValue

Detailed Description

Common terrain data file
    Form name: DataFile
    GUID: {AA1BB8E7-C422-4ab3-8850-431CAD6F5753}

    Notes:
       1) the first elevation point [0] of all arrays is at the reference point
       2) the final elevation point [n-1] is at the maximum range
       3) The size of all arrays, n, must contain at least 2 points (ref point & max range)
    


Constructor & Destructor Documentation

Eaagles::Terrain::DataFile::DataFile (  ) 


Member Function Documentation

unsigned int Eaagles::Terrain::DataFile::getNumLatPoints (  )  const

Number of latitude points (# of rows), or zero if the data isn't loaded.

unsigned int Eaagles::Terrain::DataFile::getNumLonPoints (  )  const

Number of longitude points (# of columns), or zero if the data isn't loaded.

double Eaagles::Terrain::DataFile::getLatSpacing (  )  const

Spacing between latitude points (degs), or zero if the data isn't loaded.

double Eaagles::Terrain::DataFile::getLonSpacing (  )  const

Spacing between longitude points (degs), or zero if the data isn't loaded.

bool Eaagles::Terrain::DataFile::computerRowIndex ( unsigned int *const  irow,
const double  lat 
) const

Computes the nearest row index for the latitude (degs) Returns true if the index is valid

bool Eaagles::Terrain::DataFile::computeColumnIndex ( unsigned int *const  icol,
const double  lon 
) const

Computes the nearest column index for the longitude (degs) Returns true if the index is valid

bool Eaagles::Terrain::DataFile::computeLatitude ( double *const   lat,
const unsigned int  irow 
) const

Computes the latitude (degs) for a given row index. Returns true if the latitude is valid

bool Eaagles::Terrain::DataFile::computeLongitude ( double *const   lon,
const unsigned int  icol 
) const

Computesthe longitude (degs) for a given column index. Returns true if the longitude is valid

const short * Eaagles::Terrain::DataFile::getColumn ( const unsigned int  idx  )  const

Returns the idx'th column of elevation data. There are getNumLonPoints() columns. Each columns contains getNumLatPoints() elevation points. Elevations are in meters

bool Eaagles::Terrain::DataFile::isDataLoaded (  )  const [virtual]

Has the data been loaded.

Implements Eaagles::Simulation::Terrain.

Reimplemented in Eaagles::Terrain::DedFile.

unsigned int Eaagles::Terrain::DataFile::getElevations ( LCreal *const   elevations,
bool *const   validFlags,
const unsigned int  n,
const double  lat,
const double  lon,
const LCreal  direction,
const LCreal  maxRng,
const bool  interp = false 
) const [virtual]

validFlags - Valid elevation flag array (true if elevation was found) n - size of elevation and validFlags arrays; lat - starting latitude (degs) lon - Starting longitude (degs); direction - True direction (heading) angle of the data (degs) maxRng - Range to last elevation point (meters) interp - Interpolate between elevation posts (default: false)

Implements Eaagles::Simulation::Terrain.

virtual bool Eaagles::Terrain::DataFile::getElevation ( LCreal *const   elev,
const double  lat,
const double lon const bool  interp = false 
) const [virtual]

Locates an elevation value (meters) for a given reference point and returns it in 'elev'. Function returns true if successfull, otherwise 'elev' is unchanged. lat - Reference latitude; lon - Reference longitude; interp - Interpolate between elevation posts (default: false)

void Eaagles::Terrain::DataFile::clearData (  )  [protected, virtual]

Terrain::Database protected interface.

Implements Eaagles::Simulation::Terrain.


Member Data Documentation

short** Eaagles::Terrain::DataFile::columns [protected]

Array of data columns (values in meters).

double Eaagles::Terrain::DataFile::latSpacing [protected]

Spacing between latitude points (degs).

double Eaagles::Terrain::DataFile::lonSpacing [protected]

Spacing between longitude points (degs).

unsigned int Eaagles::Terrain::DataFile::nptlat [protected]

Number of points in latitude (i.e., number of elevations per column).

unsigned int Eaagles::Terrain::DataFile::nptlong [protected]

Number of points in longitude (i.e., number of columns).

short Eaagles::Terrain::DataFile::voidValue [protected]

Value representing a void (missing) data point.


Generated on Tue Dec 19 16:28:45 2006 for Eaagles by  doxygen 1.5.0