9 #ifndef DtUtmCoordinateConverter_H_
10 #define DtUtmCoordinateConverter_H_
40 virtual void init(
double lat,
double lon,
long zone = 0,
int useStandardOffsets = 0,
char hemisphere =
'N',
double falseNorthingCrossover = std::numeric_limits<double>::max());
46 virtual void init(
double lat,
double lon,
double z,
long zone = 0,
int useStandardOffsets = 0,
char hemisphere =
'N',
double falseNorthingCrossover = std::numeric_limits<double>::max());
51 virtual void init(
const DtGeodeticCoord&
origin,
long zone = 0,
int useStandardOffsets = 0,
double falseNorthingCrossover = std::numeric_limits<double>::max());
56 virtual void init(
const DtDegMinSec& lat,
const DtDegMinSec& lon,
long zone = 0,
int useStandardOffsets = 0,
double falseNorthingCrossover = std::numeric_limits<double>::max());
61 virtual void init(
const DtDegMinSec& lat,
const DtDegMinSec& lon,
double z,
long zone = 0,
int useStandardOffsets = 0,
double falseNorthingCrossover = std::numeric_limits<double>::max());
66 virtual void init(
long zone,
char hemisphere =
'N',
bool useMpiDefaultOrigin =
true,
double falseNorthingCrossover = std::numeric_limits<double>::max());
71 virtual void init(
double falseOriginX,
double falseOriginY,
double falseOriginZ,
72 long zone,
char hemisphere =
'N',
bool useMpiDefaultOrigin =
true,
double falseNorthingCrossover = std::numeric_limits<double>::max());
79 virtual bool init(
const std::string& originstring)
override;
82 virtual std::string stringRep()
override;
86 virtual const DtGeodeticCoord&
origin()
const;
89 virtual bool useStandardOffsets()
const;
92 virtual long zone()
const;
93 virtual void setZone(
long zone);
96 virtual DtDegMinSec latRef()
const;
97 virtual DtDegMinSec longRef()
const;
101 virtual void geocToCig(
const DtVector& geoc, DtVector& out)
const override;
104 virtual void cigToGeoc(
const DtVector& in, DtVector& geoc)
const override;
106 virtual void setupTopoFrame(
const DtVector& truth)
override;
108 virtual DtUtmReferencePoint* referencePoint()
const;
115 std::string parseUtm(
const DtDegMinSec& lat,
const DtDegMinSec& lng,
bool bUseStandardOffsets,
long zone);
120 static double calculateUtmLongitudeOrigin(
double zone,
bool useMpiDefaultOrigin =
true);
122 static void calculateUtmLatLonOrigin(
double zone,
double falseOriginX,
double falseOriginY,
123 double& latitude,
double& longitude,
bool useMpiDefaultOrigin =
true);
125 static int utmGridZoneFromLatLon(
double latitudeInDegrees,
double longitudeInDegrees );
129 static void initUtmReferencePointForZone(
double longitude,
bool standardOffsets,
130 const DtMapDatum& datum, DtUtmReferencePoint& refToInitialized );
133 static double utmZoneToCentralMeridian(
int zone );
Instances of DtUtmCoordSystem provide transformations and utilities for converting between network an...
Definition: DtUtmCoordinateConverter.h:21
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
#define DT_DLL_VRVUTIL
Definition: vrvUtil.h:34
DtCoordinateConverter is the base class for 'local (cig) to geocentric' converters.
Definition: DtCoordinateConverter.h:25
voidpf uLong int origin
Definition: ioapi.h:42
DtUtmReferencePoint myReferencePoint
Definition: DtUtmCoordinateConverter.h:145
bool myUseStandardOffsets
Definition: DtUtmCoordinateConverter.h:147