UNCLASSIFIED
GeographicTranslator
|
#include <ctype.h>
#include <math.h>
#include <string.h>
#include <stdio.h>
#include <string>
#include <sstream>
#include "UPS.h"
#include "UTM.h"
#include "MGRS.h"
#include "EllipsoidParameters.h"
#include "MGRSorUSNGCoordinates.h"
#include "GeodeticCoordinates.h"
#include "UPSCoordinates.h"
#include "UTMCoordinates.h"
#include "CoordinateConversionException.h"
#include "ErrorMessages.h"
#include "WarningMessages.h"
Go to the source code of this file.
Classes | |
struct | Latitude_Band |
struct | UPS_Constant |
Macros | |
#define | EPSILON 1.75e-7 /* approx 1.0e-5 degrees (~1 meter) in radians */ |
#define | LETTER_A 0 /* ARRAY INDEX FOR LETTER A */ |
#define | LETTER_B 1 /* ARRAY INDEX FOR LETTER B */ |
#define | LETTER_C 2 /* ARRAY INDEX FOR LETTER C */ |
#define | LETTER_D 3 /* ARRAY INDEX FOR LETTER D */ |
#define | LETTER_E 4 /* ARRAY INDEX FOR LETTER E */ |
#define | LETTER_F 5 /* ARRAY INDEX FOR LETTER F */ |
#define | LETTER_G 6 /* ARRAY INDEX FOR LETTER G */ |
#define | LETTER_H 7 /* ARRAY INDEX FOR LETTER H */ |
#define | LETTER_I 8 /* ARRAY INDEX FOR LETTER I */ |
#define | LETTER_J 9 /* ARRAY INDEX FOR LETTER J */ |
#define | LETTER_K 10 /* ARRAY INDEX FOR LETTER K */ |
#define | LETTER_L 11 /* ARRAY INDEX FOR LETTER L */ |
#define | LETTER_M 12 /* ARRAY INDEX FOR LETTER M */ |
#define | LETTER_N 13 /* ARRAY INDEX FOR LETTER N */ |
#define | LETTER_O 14 /* ARRAY INDEX FOR LETTER O */ |
#define | LETTER_P 15 /* ARRAY INDEX FOR LETTER P */ |
#define | LETTER_Q 16 /* ARRAY INDEX FOR LETTER Q */ |
#define | LETTER_R 17 /* ARRAY INDEX FOR LETTER R */ |
#define | LETTER_S 18 /* ARRAY INDEX FOR LETTER S */ |
#define | LETTER_T 19 /* ARRAY INDEX FOR LETTER T */ |
#define | LETTER_U 20 /* ARRAY INDEX FOR LETTER U */ |
#define | LETTER_V 21 /* ARRAY INDEX FOR LETTER V */ |
#define | LETTER_W 22 /* ARRAY INDEX FOR LETTER W */ |
#define | LETTER_X 23 /* ARRAY INDEX FOR LETTER X */ |
#define | LETTER_Y 24 /* ARRAY INDEX FOR LETTER Y */ |
#define | LETTER_Z 25 /* ARRAY INDEX FOR LETTER Z */ |
#define | ONEHT 100000.e0 /* ONE HUNDRED THOUSAND */ |
#define | TWOMIL 2000000.e0 /* TWO MILLION */ |
#define | TRUE 1 /* CONSTANT VALUE FOR TRUE VALUE */ |
#define | FALSE 0 /* CONSTANT VALUE FOR FALSE VALUE */ |
#define | PI 3.14159265358979323e0 |
#define | PI_OVER_2 (PI / 2.0e0) |
#define | PI_OVER_180 (PI / 180.0e0) |
#define | MIN_EASTING 100000.0 |
#define | MAX_EASTING 900000.0 |
#define | MIN_NORTHING 0.0 |
#define | MAX_NORTHING 10000000.0 |
#define | MAX_PRECISION 5 /* Maximum precision of easting & northing */ |
#define | MIN_MGRS_NON_POLAR_LAT (-80.0 * ( PI / 180.0 )) /* -80 deg in rad */ |
#define | MAX_MGRS_NON_POLAR_LAT ( 84.0 * ( PI / 180.0 )) /* 84 deg in rad */ |
#define | MIN_EAST_NORTH 0.0 |
#define | MAX_EAST_NORTH 3999999.0 |
#define | _6 (6.0 * (PI / 180.0)) |
#define | _8 (8.0 * (PI / 180.0)) |
#define | _72 (72.0 * (PI / 180.0)) |
#define | _80 (80.0 * (PI / 180.0)) |
#define | _80_5 (80.5 * (PI / 180.0)) |
#define | _84_5 (84.5 * (PI / 180.0)) |
#define | _500000 500000.0 |
#define | CLARKE_1866 "CC" |
#define | CLARKE_1880 "CD" |
#define | BESSEL_1841 "BR" |
#define | BESSEL_1841_NAMIBIA "BN" |
#define | EPSILON2 4.99e-4 |
Functions | |
double | computeScale (int prec) |
void | makeMGRSString (char *MGRSString, long zone, int letters[MGRS_LETTERS], double easting, double northing, long precision) |
void | breakMGRSString (char *MGRSString, long *zone, long letters[MGRS_LETTERS], double *easting, double *northing, long *precision) |
Variables | |
const Latitude_Band | Latitude_Band_Table [20] |
const UPS_Constant | UPS_Constant_Table [4] |
#define EPSILON 1.75e-7 /* approx 1.0e-5 degrees (~1 meter) in radians */ |
#define MAX_MGRS_NON_POLAR_LAT ( 84.0 * ( PI / 180.0 )) /* 84 deg in rad */ |
#define MAX_PRECISION 5 /* Maximum precision of easting & northing */ |
#define MIN_MGRS_NON_POLAR_LAT (-80.0 * ( PI / 180.0 )) /* -80 deg in rad */ |
void breakMGRSString | ( | char * | MGRSString, |
long * | zone, | ||
long | letters[MGRS_LETTERS], | ||
double * | easting, | ||
double * | northing, | ||
long * | precision | ||
) |
void makeMGRSString | ( | char * | MGRSString, |
long | zone, | ||
int | letters[MGRS_LETTERS], | ||
double | easting, | ||
double | northing, | ||
long | precision | ||
) |
const Latitude_Band Latitude_Band_Table[20] |
const UPS_Constant UPS_Constant_Table[4] |