OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Macros | Typedefs | Enumerations | Functions
datum.h File Reference

Go to the source code of this file.

Macros

#define DATUM_NO_ERROR   0x0000
 
#define DATUM_NOT_INITIALIZED_ERROR   0x0001
 
#define DATUM_7PARAM_FILE_OPEN_ERROR   0x0002
 
#define DATUM_7PARAM_FILE_PARSING_ERROR   0x0004
 
#define DATUM_7PARAM_OVERFLOW_ERROR   0x0008
 
#define DATUM_3PARAM_FILE_OPEN_ERROR   0x0010
 
#define DATUM_3PARAM_FILE_PARSING_ERROR   0x0020
 
#define DATUM_3PARAM_OVERFLOW_ERROR   0x0040
 
#define DATUM_INVALID_INDEX_ERROR   0x0080
 
#define DATUM_INVALID_SRC_INDEX_ERROR   0x0100
 
#define DATUM_INVALID_DEST_INDEX_ERROR   0x0200
 
#define DATUM_INVALID_CODE_ERROR   0x0400
 
#define DATUM_LAT_ERROR   0x0800
 
#define DATUM_LON_ERROR   0x1000
 
#define DATUM_SIGMA_ERROR   0x2000
 
#define DATUM_DOMAIN_ERROR   0x4000
 
#define DATUM_ELLIPSE_ERROR   0x8000
 

Typedefs

typedef enum Datum_Types Datum_Type
 

Enumerations

enum  Datum_Types { Three_Param_Datum, Seven_Param_Datum, WGS84_Datum, WGS72_Datum }
 

Functions

long Initialize_Datums (void)
 
long Create_Datum (const char *Code, const char *Name, const char *Ellipsoid_Code, double Delta_X, double Delta_Y, double Delta_Z, double Sigma_X, double Sigma_Y, double Sigma_Z, double South_latitude, double North_latitude, double West_longitude, double East_longitude)
 
long Datum_Count (long *Count)
 
long Datum_Index (const char *Code, long *Index)
 
long Datum_Code (const long Index, char *Code)
 
long Datum_Name (const long Index, char *Name)
 
long Datum_Ellipsoid_Code (const long Index, char *Code)
 
long Get_Datum_Type (const long Index, Datum_Type *Type)
 
long Datum_Seven_Parameters (const long Index, double *Delta_X, double *Delta_Y, double *Delta_Z, double *Rx, double *Ry, double *Rz, double *Scale_Factor)
 
long Datum_Three_Parameters (const long Index, double *Delta_X, double *Delta_Y, double *Delta_Z)
 
long Datum_Errors (const long Index, double *Sigma_X, double *Sigma_Y, double *Sigma_Z)
 
long Datum_Valid_Rectangle (const long Index, double *South_latitude, double *North_latitude, double *West_longitude, double *East_longitude)
 
long Valid_Datum (const long Index, double latitude, double longitude, long *result)
 
long Geocentric_Shift_To_WGS84 (const long Index, const double X, const double Y, const double Z, double *X_WGS84, double *Y_WGS84, double *Z_WGS84)
 
long Geocentric_Shift_From_WGS84 (const double X_WGS84, const double Y_WGS84, const double Z_WGS84, const long Index, double *X, double *Y, double *Z)
 
long Geocentric_Datum_Shift (const long Index_in, const double X_in, const double Y_in, const double Z_in, const long Index_out, double *X_out, double *Y_out, double *Z_out)
 
long Geodetic_Shift_To_WGS84 (const long Index, const double Lat_in, const double Lon_in, const double Hgt_in, double *WGS84_Lat, double *WGS84_Lon, double *WGS84_Hgt)
 
long Geodetic_Shift_From_WGS84 (const double WGS84_Lat, const double WGS84_Lon, const double WGS84_Hgt, const long Index, double *Lat_out, double *Lon_out, double *Hgt_out)
 
long Geodetic_Datum_Shift (const long Index_in, const double Lat_in, const double Lon_in, const double Hgt_in, const long Index_out, double *Lat_out, double *Lon_out, double *Hgt_out)
 
long Datum_Shift_Error (const long Index_in, const long Index_out, double latitude, double longitude, double *ce90, double *le90, double *se90)
 

Macro Definition Documentation

◆ DATUM_3PARAM_FILE_OPEN_ERROR

#define DATUM_3PARAM_FILE_OPEN_ERROR   0x0010

Definition at line 129 of file datum.h.

◆ DATUM_3PARAM_FILE_PARSING_ERROR

#define DATUM_3PARAM_FILE_PARSING_ERROR   0x0020

Definition at line 130 of file datum.h.

◆ DATUM_3PARAM_OVERFLOW_ERROR

#define DATUM_3PARAM_OVERFLOW_ERROR   0x0040

Definition at line 131 of file datum.h.

◆ DATUM_7PARAM_FILE_OPEN_ERROR

#define DATUM_7PARAM_FILE_OPEN_ERROR   0x0002

Definition at line 126 of file datum.h.

◆ DATUM_7PARAM_FILE_PARSING_ERROR

#define DATUM_7PARAM_FILE_PARSING_ERROR   0x0004

Definition at line 127 of file datum.h.

◆ DATUM_7PARAM_OVERFLOW_ERROR

#define DATUM_7PARAM_OVERFLOW_ERROR   0x0008

Definition at line 128 of file datum.h.

◆ DATUM_DOMAIN_ERROR

#define DATUM_DOMAIN_ERROR   0x4000

Definition at line 139 of file datum.h.

◆ DATUM_ELLIPSE_ERROR

#define DATUM_ELLIPSE_ERROR   0x8000

Definition at line 140 of file datum.h.

◆ DATUM_INVALID_CODE_ERROR

#define DATUM_INVALID_CODE_ERROR   0x0400

Definition at line 135 of file datum.h.

◆ DATUM_INVALID_DEST_INDEX_ERROR

#define DATUM_INVALID_DEST_INDEX_ERROR   0x0200

Definition at line 134 of file datum.h.

◆ DATUM_INVALID_INDEX_ERROR

#define DATUM_INVALID_INDEX_ERROR   0x0080

Definition at line 132 of file datum.h.

◆ DATUM_INVALID_SRC_INDEX_ERROR

#define DATUM_INVALID_SRC_INDEX_ERROR   0x0100

Definition at line 133 of file datum.h.

◆ DATUM_LAT_ERROR

#define DATUM_LAT_ERROR   0x0800

Definition at line 136 of file datum.h.

◆ DATUM_LON_ERROR

#define DATUM_LON_ERROR   0x1000

Definition at line 137 of file datum.h.

◆ DATUM_NO_ERROR

#define DATUM_NO_ERROR   0x0000

Definition at line 124 of file datum.h.

◆ DATUM_NOT_INITIALIZED_ERROR

#define DATUM_NOT_INITIALIZED_ERROR   0x0001

Definition at line 125 of file datum.h.

◆ DATUM_SIGMA_ERROR

#define DATUM_SIGMA_ERROR   0x2000

Definition at line 138 of file datum.h.

Typedef Documentation

◆ Datum_Type

typedef enum Datum_Types Datum_Type

Enumeration Type Documentation

◆ Datum_Types

Enumerator
Three_Param_Datum 
Seven_Param_Datum 
WGS84_Datum 
WGS72_Datum 

Definition at line 147 of file datum.h.

148 {
151  WGS84_Datum,
153 } Datum_Type; /* different types of datums */
enum Datum_Types Datum_Type

Function Documentation

◆ Create_Datum()

long Create_Datum ( const char *  Code,
const char *  Name,
const char *  Ellipsoid_Code,
double  Delta_X,
double  Delta_Y,
double  Delta_Z,
double  Sigma_X,
double  Sigma_Y,
double  Sigma_Z,
double  South_latitude,
double  North_latitude,
double  West_longitude,
double  East_longitude 
)

◆ Datum_Code()

long Datum_Code ( const long  Index,
char *  Code 
)

◆ Datum_Count()

long Datum_Count ( long *  Count)

◆ Datum_Ellipsoid_Code()

long Datum_Ellipsoid_Code ( const long  Index,
char *  Code 
)

◆ Datum_Errors()

long Datum_Errors ( const long  Index,
double *  Sigma_X,
double *  Sigma_Y,
double *  Sigma_Z 
)

◆ Datum_Index()

long Datum_Index ( const char *  Code,
long *  Index 
)

◆ Datum_Name()

long Datum_Name ( const long  Index,
char *  Name 
)

◆ Datum_Seven_Parameters()

long Datum_Seven_Parameters ( const long  Index,
double *  Delta_X,
double *  Delta_Y,
double *  Delta_Z,
double *  Rx,
double *  Ry,
double *  Rz,
double *  Scale_Factor 
)

◆ Datum_Shift_Error()

long Datum_Shift_Error ( const long  Index_in,
const long  Index_out,
double  latitude,
double  longitude,
double *  ce90,
double *  le90,
double *  se90 
)

◆ Datum_Three_Parameters()

long Datum_Three_Parameters ( const long  Index,
double *  Delta_X,
double *  Delta_Y,
double *  Delta_Z 
)

◆ Datum_Valid_Rectangle()

long Datum_Valid_Rectangle ( const long  Index,
double *  South_latitude,
double *  North_latitude,
double *  West_longitude,
double *  East_longitude 
)

◆ Geocentric_Datum_Shift()

long Geocentric_Datum_Shift ( const long  Index_in,
const double  X_in,
const double  Y_in,
const double  Z_in,
const long  Index_out,
double *  X_out,
double *  Y_out,
double *  Z_out 
)

◆ Geocentric_Shift_From_WGS84()

long Geocentric_Shift_From_WGS84 ( const double  X_WGS84,
const double  Y_WGS84,
const double  Z_WGS84,
const long  Index,
double *  X,
double *  Y,
double *  Z 
)

◆ Geocentric_Shift_To_WGS84()

long Geocentric_Shift_To_WGS84 ( const long  Index,
const double  X,
const double  Y,
const double  Z,
double *  X_WGS84,
double *  Y_WGS84,
double *  Z_WGS84 
)

◆ Geodetic_Datum_Shift()

long Geodetic_Datum_Shift ( const long  Index_in,
const double  Lat_in,
const double  Lon_in,
const double  Hgt_in,
const long  Index_out,
double *  Lat_out,
double *  Lon_out,
double *  Hgt_out 
)

◆ Geodetic_Shift_From_WGS84()

long Geodetic_Shift_From_WGS84 ( const double  WGS84_Lat,
const double  WGS84_Lon,
const double  WGS84_Hgt,
const long  Index,
double *  Lat_out,
double *  Lon_out,
double *  Hgt_out 
)

◆ Geodetic_Shift_To_WGS84()

long Geodetic_Shift_To_WGS84 ( const long  Index,
const double  Lat_in,
const double  Lon_in,
const double  Hgt_in,
double *  WGS84_Lat,
double *  WGS84_Lon,
double *  WGS84_Hgt 
)

◆ Get_Datum_Type()

long Get_Datum_Type ( const long  Index,
Datum_Type Type 
)

◆ Initialize_Datums()

long Initialize_Datums ( void  )

◆ Valid_Datum()

long Valid_Datum ( const long  Index,
double  latitude,
double  longitude,
long *  result 
)