0,0 → 1,102 |
/************************************************************************ |
* |
* File: utm.h |
* RCS: $Header: /cvsroot/stelvio/stelvio/NavStar/Utm.h,v 1.2 2002/04/23 05:02:00 steve_l Exp $ |
* Author: Steve Loughran |
* Created: 2001 |
* Language: C++ |
* Package: |
* Status: Experimental |
* @doc |
* |
************************************************************************/ |
#pragma once |
|
//======================================================================= |
/** |
* UTM support goes here |
*/ |
//======================================================================= |
class CUtmPoint |
{ |
protected: |
double m_easting; |
double m_northing; |
int m_xzone; |
char m_yzone; |
public: |
|
//======================================================================= |
//======================================================================= |
CUtmPoint() |
{Clear();} |
|
//======================================================================= |
//======================================================================= |
CUtmPoint(const CPosition &p) |
{ |
FromPosition(p); |
} |
|
//======================================================================= |
//======================================================================= |
CUtmPoint(const CUtmPoint& that) |
{ |
m_easting=that.m_easting; |
m_northing=that.m_northing; |
m_xzone=that.m_xzone; |
m_yzone=that.m_yzone; |
} |
|
//======================================================================= |
//======================================================================= |
void Clear() |
{ |
m_easting=m_northing=0; |
m_xzone=0; |
m_yzone=0; |
} |
|
//======================================================================= |
/** |
@func Build a position string |
@parm target. must be 30 characters or longer. |
*/ |
//======================================================================= |
|
void GetString(TCHAR *position) const; |
|
//======================================================================= |
/** |
@func get the position of a UTM point |
@parm point out |
*/ |
//======================================================================= |
|
void ToPosition(CPosition &pos) const; |
|
//======================================================================= |
/** |
@func turn a position into a UTM point |
@parm position |
@rdesc true if it was in range |
*/ |
//======================================================================= |
|
bool FromPosition(const CPosition &pos); |
|
//======================================================================= |
/** |
range test |
*/ |
//======================================================================= |
|
static bool IsPositionInUtmSpace(const CPosition &pos) |
{ return pos.GetLatitude()<=84 && pos.GetLatitude()>=-80;} |
|
|
|
}; |
|
|
|