/usr/include/ossim/projection/ossimUpsProjection.h is in libossim-dev 2.2.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | //*******************************************************************
//
// License: See top level LICENSE.txt file.
//
// Author: Garrett Potts (gpotts@imagelinks.com)
//
// Description:
//
//*******************************************************************
// $Id: ossimUpsProjection.h 17815 2010-08-03 13:23:14Z dburken $
#ifndef ossimUpsProjection_HEADER
#define ossimUpsProjection_HEADER
#include <ossim/projection/ossimMapProjection.h>
class OSSIMDLLEXPORT ossimUpsProjection : public ossimMapProjection
{
public:
ossimUpsProjection(const ossimEllipsoid& ellipsoid = ossimEllipsoid(),
const ossimGpt& origin = ossimGpt());
virtual ossimObject *dup()const{return new ossimUpsProjection(*this);}
void setDefaults();
virtual ossimGpt inverse(const ossimDpt &eastingNorthing)const;
virtual ossimDpt forward(const ossimGpt &latLon)const;
virtual void update();
/*!
* Method to save the state of an object to a keyword list.
* Return true if ok or false on error.
*/
virtual bool saveState(ossimKeywordlist& kwl,
const char* prefix=0)const;
/*!
* Method to the load (recreate) the state of an object from a keyword
* list. Return true if ok or false on error.
*/
virtual bool loadState(const ossimKeywordlist& kwl,
const char* prefix=0);
double getFalseEasting()const{return UPS_False_Easting;}
double getFalseNorthing()const{return UPS_False_Northing;}
void setHemisphere(char hemisphere);
//! Returns TRUE if principal parameters are within epsilon tolerance.
virtual bool operator==(const ossimProjection& projection) const;
protected:
mutable char theHemisphere;
//___________________GEOTRANS__________________
//
mutable double UPS_a; /* Semi-major axis of ellipsoid in meters */
mutable double UPS_f; /* Flattening of ellipsoid */
mutable double UPS_Origin_Latitude; /*set default = North Hemisphere */
mutable double UPS_Origin_Longitude;
mutable double false_easting;
mutable double false_northing;
mutable double UPS_Easting;
mutable double UPS_Northing;
double UPS_False_Easting;
double UPS_False_Northing;
/*!
* The function SET_UPS_PARAMETERS receives the ellipsoid parameters and sets
* the corresponding state variables. If any errors occur, the error code(s)
* are returned by the function, otherwise UPS_NO_ERROR is returned.
*
* a : Semi-major axis of ellipsoid in meters (input)
* f : Flattening of ellipsoid (input)
*/
long Set_UPS_Parameters( double a,
double f);
/*!
* The function Get_UPS_Parameters returns the current ellipsoid parameters.
*
* a : Semi-major axis of ellipsoid, in meters (output)
* f : Flattening of ellipsoid (output)
*/
void Get_UPS_Parameters( double *a,
double *f)const;
/*!
* The function Convert_Geodetic_To_UPS converts geodetic (latitude and
* longitude) coordinates to UPS (hemisphere, easting, and northing)
* coordinates, according to the current ellipsoid parameters. If any
* errors occur, the error code(s) are returned by the function,
* otherwide UPS_NO_ERROR is returned.
*
* Latitude : Latitude in radians (input)
* Longitude : Longitude in radians (input)
* Hemisphere : Hemisphere either 'N' or 'S' (output)
* Easting : Easting/X in meters (output)
* Northing : Northing/Y in meters (output)
*/
long Convert_Geodetic_To_UPS ( double Latitude,
double Longitude,
char *Hemisphere,
double *Easting,
double *Northing)const;
/*!
* The function Convert_UPS_To_Geodetic converts UPS (hemisphere, easting,
* and northing) coordinates to geodetic (latitude and longitude) coordinates
* according to the current ellipsoid parameters. If any errors occur, the
* error code(s) are returned by the function, otherwise UPS_NO_ERROR is
* returned.
*
* Hemisphere : Hemisphere either 'N' or 'S' (input)
* Easting : Easting/X in meters (input)
* Northing : Northing/Y in meters (input)
* Latitude : Latitude in radians (output)
* Longitude : Longitude in radians (output)
*/
long Convert_UPS_To_Geodetic(char Hemisphere,
double Easting,
double Northing,
double *Latitude,
double *Longitude)const;
TYPE_DATA
};
#endif
|