#include <ctype.h>
#include <math.h>
#include <string.h>
#include "UPS.h"
#include "UTM.h"
#include "USNG.h"
#include "CoordinateSystem.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 |
Defines | |
#define | EPSILON 1.75e-7 |
#define | _500000 500000.0 |
Functions | |
void | makeUSNGString (char *USNGString, long zone, int letters[USNG_LETTERS], double easting, double northing, long precision) |
void | breakUSNGString (char *USNGString, long *zone, long letters[USNG_LETTERS], double *easting, double *northing, long *precision) |
Variables | |
const int | LETTER_A = 0 |
const int | LETTER_B = 1 |
const int | LETTER_C = 2 |
const int | LETTER_D = 3 |
const int | LETTER_E = 4 |
const int | LETTER_F = 5 |
const int | LETTER_G = 6 |
const int | LETTER_H = 7 |
const int | LETTER_I = 8 |
const int | LETTER_J = 9 |
const int | LETTER_K = 10 |
const int | LETTER_L = 11 |
const int | LETTER_M = 12 |
const int | LETTER_N = 13 |
const int | LETTER_O = 14 |
const int | LETTER_P = 15 |
const int | LETTER_Q = 16 |
const int | LETTER_R = 17 |
const int | LETTER_S = 18 |
const int | LETTER_T = 19 |
const int | LETTER_U = 20 |
const int | LETTER_V = 21 |
const int | LETTER_W = 22 |
const int | LETTER_X = 23 |
const int | LETTER_Y = 24 |
const int | LETTER_Z = 25 |
const double | ONEHT = 100000.e0 |
const double | TWOMIL = 2000000.e0 |
const double | PI = 3.14159265358979323e0 |
const double | PI_OVER_2 = (PI / 2.0e0) |
const double | PI_OVER_180 = (PI / 180.0e0) |
const double | MIN_EASTING = 100000.0 |
const double | MAX_EASTING = 900000.0 |
const double | MIN_NORTHING = 0.0 |
const double | MAX_NORTHING = 10000000.0 |
const int | MAX_PRECISION = 5 |
const double | MIN_USNG_NON_POLAR_LAT = -80.0 * ( PI / 180.0 ) |
const double | MAX_USNG_NON_POLAR_LAT = 84.0 * ( PI / 180.0 ) |
const double | MIN_EAST_NORTH = 0.0 |
const double | MAX_EAST_NORTH = 3999999.0 |
const double | _6 = (6.0 * (PI / 180.0)) |
const double | _8 = (8.0 * (PI / 180.0)) |
const double | _72 = (72.0 * (PI / 180.0)) |
const double | _80 = (80.0 * (PI / 180.0)) |
const double | _80_5 = (80.5 * (PI / 180.0)) |
const double | _84_5 = (84.5 * (PI / 180.0)) |
const Latitude_Band | Latitude_Band_Table [20] |
const UPS_Constant | UPS_Constant_Table [4] |
void breakUSNGString | ( | char * | USNGString, | |
long * | zone, | |||
long | letters[USNG_LETTERS], | |||
double * | easting, | |||
double * | northing, | |||
long * | precision | |||
) |
void makeUSNGString | ( | char * | USNGString, | |
long | zone, | |||
int | letters[USNG_LETTERS], | |||
double | easting, | |||
double | northing, | |||
long | precision | |||
) |
const Latitude_Band Latitude_Band_Table[20] |
{{LETTER_C, 1100000.0, -72.0, -80.5, 0.0}, {LETTER_D, 2000000.0, -64.0, -72.0, 2000000.0}, {LETTER_E, 2800000.0, -56.0, -64.0, 2000000.0}, {LETTER_F, 3700000.0, -48.0, -56.0, 2000000.0}, {LETTER_G, 4600000.0, -40.0, -48.0, 4000000.0}, {LETTER_H, 5500000.0, -32.0, -40.0, 4000000.0}, {LETTER_J, 6400000.0, -24.0, -32.0, 6000000.0}, {LETTER_K, 7300000.0, -16.0, -24.0, 6000000.0}, {LETTER_L, 8200000.0, -8.0, -16.0, 8000000.0}, {LETTER_M, 9100000.0, 0.0, -8.0, 8000000.0}, {LETTER_N, 0.0, 8.0, 0.0, 0.0}, {LETTER_P, 800000.0, 16.0, 8.0, 0.0}, {LETTER_Q, 1700000.0, 24.0, 16.0, 0.0}, {LETTER_R, 2600000.0, 32.0, 24.0, 2000000.0}, {LETTER_S, 3500000.0, 40.0, 32.0, 2000000.0}, {LETTER_T, 4400000.0, 48.0, 40.0, 4000000.0}, {LETTER_U, 5300000.0, 56.0, 48.0, 4000000.0}, {LETTER_V, 6200000.0, 64.0, 56.0, 6000000.0}, {LETTER_W, 7000000.0, 72.0, 64.0, 6000000.0}, {LETTER_X, 7900000.0, 84.5, 72.0, 6000000.0}}
const double MAX_EAST_NORTH = 3999999.0 |
const double MAX_EASTING = 900000.0 |
const double MAX_NORTHING = 10000000.0 |
const int MAX_PRECISION = 5 |
const double MAX_USNG_NON_POLAR_LAT = 84.0 * ( PI / 180.0 ) |
const double MIN_EAST_NORTH = 0.0 |
const double MIN_EASTING = 100000.0 |
const double MIN_NORTHING = 0.0 |
const double MIN_USNG_NON_POLAR_LAT = -80.0 * ( PI / 180.0 ) |
const double PI_OVER_180 = (PI / 180.0e0) |
const UPS_Constant UPS_Constant_Table[4] |