code::DLLH Class Reference

List of all members.

Detailed Description

DLLH Delta lat/lon/height class.

Displacement uses straight cartesian vectors for lengths which can causes problems with doing lat/lon/height math. DLLH has only deltas which must add to a PARTICULAR LOCATION in order to have a length meaning. lat/lon/height is not a linear vector space, yet we can still work in the space as long as we realize the norm and length are not linear. In other words, Displacement maps to points in the coordinate system, then uses the points to get lengths, when all you might want to do is keep track of changes in lat/lon/height.

You should use these instead of Displacement when you can in order to make your code coordinate system independent (independent of the projected view).

Author:
REST


Public Member Functions

 DLLH ()
 Zero DDLH.
 DLLH (const Angle &angle1, const Angle &angle2, const Length &length)
 Create a default DLLH from angle, angle, length.
 DLLH (const Location &l1, const Location &l2)
 Create from two locations.
DLLH operator/ (float r) const
 Scalar division (divide such that DLLH/r = X ==> DLLH = r*K).
DLLH operator * (float r) const
 Scalar multiply (such that DLLH*r = X ==> DLLH = X/r).
DLLH operator+ (const DLLH &w) const
 Add.
bool operator== (const DLLH &w) const
 Comparison.
bool operator!= (const DLLH &w) const
Displacement displacement (const Location &l) const
 Create a displacement object from a particular location.
Length getHeight () const
 Get height of this (change in height we represent).
Angle getLatitude () const
 Get angle1 of this (latitude).
Angle getLongitude () const
 Get angle2 of this (longitude).
void setHeight (const Length &h)
 Set our height change.

Protected Attributes

Angle myAngle1
Angle myAngle2
Length myLength

Friends

std::ostream & operator<< (std::ostream &, const DLLH &)
 Print out DLLH.


Constructor & Destructor Documentation

code::DLLH::DLLH (  )  [inline]

Zero DDLH.

Satisfies Location+(O DLLH) = Location

code::DLLH::DLLH ( const Angle angle1,
const Angle angle2,
const Length length 
) [inline]

Create a default DLLH from angle, angle, length.

code::DLLH::DLLH ( const Location l1,
const Location l2 
) [inline]

Create from two locations.

Basically l1+DLLH = l2;


Member Function Documentation

Displacement code::DLLH::displacement ( const Location l  )  const [inline]

Create a displacement object from a particular location.

Length code::DLLH::getHeight (  )  const [inline]

Get height of this (change in height we represent).

Angle code::DLLH::getLatitude (  )  const [inline]

Get angle1 of this (latitude).

Angle code::DLLH::getLongitude (  )  const [inline]

Get angle2 of this (longitude).

DLLH code::DLLH::operator * ( float  r  )  const [inline]

Scalar multiply (such that DLLH*r = X ==> DLLH = X/r).

bool code::DLLH::operator!= ( const DLLH w  )  const [inline]

DLLH code::DLLH::operator+ ( const DLLH w  )  const [inline]

Add.

DLLH code::DLLH::operator/ ( float  r  )  const [inline]

Scalar division (divide such that DLLH/r = X ==> DLLH = r*K).

bool code::DLLH::operator== ( const DLLH w  )  const [inline]

Comparison.

void code::DLLH::setHeight ( const Length h  )  [inline]

Set our height change.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  ,
const DLLH  
) [friend]

Print out DLLH.


Member Data Documentation

Angle code::DLLH::myAngle1 [protected]

Angle code::DLLH::myAngle2 [protected]

Length code::DLLH::myLength [protected]


Generated on Fri May 4 13:40:12 2012 for WDSS-IIw2 by  doxygen 1.4.7