SPATREF::ELLIPSOID Class Reference

Ellipsoid specification. More...

#include <mi32/spatref.h>

List of all members.

Public Types

enum  FORM { FORM_Undefined = 0, FORM_Sphere = 1, FORM_SemiMinorAxis = 2, FORM_InverseFlattening = 3 }
enum  IDNUM {
  IDNUM_Undefined = -1, IDNUM_UnitSphere = 1300, IDNUM_Clarke_1866 = 1302, IDNUM_GRS_1980 = 1301,
  IDNUM_WGS_1984 = 1351
}

Public Member Functions

 ELLIPSOID (const ELLIPSOID &rhs)
 ELLIPSOID ()
 ~ELLIPSOID ()
ERRVALUE Assign (IDNUM IdNum)
ERRVALUE Assign (const IDENTIFIER &Id)
ERRVALUE ComputeDistance (const DPOINT2D &point1, const DPOINT2D &point2, double &distance, const UOM::UNIT &PointUnit, const UOM::UNIT &LengthUnit) const
double ComputeEccentricity () const
double ComputeFlattening () const
ERRVALUE ComputeLength (const POLYLINE &polyline, double &length, const UOM::UNIT &PointUnit, const UOM::UNIT &LengthUnit) const
void ComputeLinearScale (double GeodeticLatitude, DPOINT2D &scale, const UOM::UNIT &LatitudeUnit, const UOM::UNIT &LinearUnit) const
void ComputeLinearScale (double GeodeticLatitude, DPOINT2D &scale, UOM::IDNUM LatitudeUnitIdNum=UOM::IDNUM_PlaneAngle_Degree, UOM::IDNUM LinearUnitIdNum=UOM::IDNUM_Length_Meter) const
void GetDisplay (MISTRING &string, int indent, GETDISPLAY flags=GETDISPLAY_None) const
FORM GetForm () const
const IDENTIFIERLISTGetIdList () const
IDNUM GetIdNum () const
double GetInverseFlattening () const
const MISTRINGGetName () const
double GetSemiMajorAxis () const
double GetSemiMinorAxis () const
ELLIPSOIDoperator= (const ELLIPSOID &rhs)

Static Public Member Functions

static IDNUM LookupIdNum (double SemiMajorAxis, double SemiMinorAxis, double InverseFlattening=0)

Detailed Description

Ellipsoid specification.


Member Enumeration Documentation

Ellipsoid definition form.

Enumerator:
FORM_Undefined 
FORM_Sphere 

Defined as sphere, semi-minor axis equal to semi-major.

FORM_SemiMinorAxis 

Defined using value for semi-minor axis.

FORM_InverseFlattening 

Defined using inverse flattening.

Ellipsoid ID numbers.

Note, not all IDs in database are listed.

Enumerator:
IDNUM_Undefined 
IDNUM_UnitSphere 
IDNUM_Clarke_1866 
IDNUM_GRS_1980 
IDNUM_WGS_1984 

Constructor & Destructor Documentation

SPATREF::ELLIPSOID::ELLIPSOID (  ) 

Default constructor.

SPATREF::ELLIPSOID::ELLIPSOID ( const ELLIPSOID rhs  ) 

Copy constructor.

SPATREF::ELLIPSOID::~ELLIPSOID (  ) 

Destructor.


Member Function Documentation

ERRVALUE SPATREF::ELLIPSOID::Assign ( IDNUM  IdNum  ) 

Assign by MicroImages ID number.

ERRVALUE SPATREF::ELLIPSOID::Assign ( const IDENTIFIER Id  ) 

Assign by IDENTIFIER.

ERRVALUE SPATREF::ELLIPSOID::ComputeDistance ( const DPOINT2D point1,
const DPOINT2D point2,
double &  distance,
const UOM::UNIT PointUnit,
const UOM::UNIT LengthUnit 
) const

Compute geodesic distance over ellipsoid between specified points.

double SPATREF::ELLIPSOID::ComputeEccentricity (  )  const

Compute eccentricity.

Returns:
Eccentricity.
double SPATREF::ELLIPSOID::ComputeFlattening (  )  const

Compute flattening.

Returns:
Flattening, 0 if sphere.
ERRVALUE SPATREF::ELLIPSOID::ComputeLength ( const POLYLINE polyline,
double &  length,
const UOM::UNIT PointUnit,
const UOM::UNIT LengthUnit 
) const

Compute geodesic length over ellipsoid for polyline.

void SPATREF::ELLIPSOID::ComputeLinearScale ( double  GeodeticLatitude,
DPOINT2D scale,
const UOM::UNIT LatitudeUnit,
const UOM::UNIT LinearUnit 
) const

Compute scale from angular to linear units at specified latitude.

Parameters:
GeodeticLatitude Latitude at which to compute scale
scale Scale from angular to linear unit on ellipsoid returned
LatitudeUnit Unit for latitude
LinearUnit Linear unit
void SPATREF::ELLIPSOID::ComputeLinearScale ( double  GeodeticLatitude,
DPOINT2D scale,
UOM::IDNUM  LatitudeUnitIdNum = UOM::IDNUM_PlaneAngle_Degree,
UOM::IDNUM  LinearUnitIdNum = UOM::IDNUM_Length_Meter 
) const

Compute scale from angular to linear units at specified latitude.

Parameters:
GeodeticLatitude Latitude at which to compute scale
scale Scale from angular to linear unit on ellipsoid returned
void SPATREF::ELLIPSOID::GetDisplay ( MISTRING string,
int  indent,
GETDISPLAY  flags = GETDISPLAY_None 
) const

Get multiline string suitable for display.

Parameters:
string String returned, will be initially cleared if indent is 0
indent Indent level
flags Flags for extra items to display
FORM SPATREF::ELLIPSOID::GetForm (  )  const

Get ellipsoid definition form.

const IDENTIFIERLIST& SPATREF::ELLIPSOID::GetIdList (  )  const

Get identifer list.

IDNUM SPATREF::ELLIPSOID::GetIdNum (  )  const

Get MicroImages identification number.

double SPATREF::ELLIPSOID::GetInverseFlattening (  )  const

Get inverse flatting value.

Returns:
Inverse flattening, infinity if sphere.
const MISTRING& SPATREF::ELLIPSOID::GetName (  )  const

Get name.

double SPATREF::ELLIPSOID::GetSemiMajorAxis (  )  const

Get semi-major axis in meters.

double SPATREF::ELLIPSOID::GetSemiMinorAxis (  )  const

Get semi-minor axis in meters.

static IDNUM SPATREF::ELLIPSOID::LookupIdNum ( double  SemiMajorAxis,
double  SemiMinorAxis,
double  InverseFlattening = 0 
) [static]

Lookup IDNUM using axis values.

Parameters:
SemiMajorAxis Semi-major axis (meters)
SemiMinorAxis Semi-minor axis (meters), 0 to use InverseFlattening
InverseFlattening Inverse flattening, 0 to use semi-minor axis
ELLIPSOID& SPATREF::ELLIPSOID::operator= ( const ELLIPSOID rhs  ) 

Assignment.


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

Generated on Sun Oct 7 21:40:29 2012 for TNTsdk 2012 by  doxygen 1.6.1