00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef _OGR_SRS_API_H_INCLUDED
00031 #define _OGR_SRS_API_H_INCLUDED
00032
00033 #ifndef SWIG
00034 #include "ogr_core.h"
00035
00036 CPL_C_START
00037
00046
00047
00048
00049 typedef enum {
00050 OAO_Other=0,
00051 OAO_North=1,
00052 OAO_South=2,
00053 OAO_East=3,
00054 OAO_West=4,
00055 OAO_Up=5,
00056 OAO_Down=6
00057 } OGRAxisOrientation;
00058
00059 const char CPL_DLL *OSRAxisEnumToName( OGRAxisOrientation eOrientation );
00060
00061
00062
00063
00064
00065 typedef enum {
00066 ODT_HD_Min=1000,
00067 ODT_HD_Other=1000,
00068 ODT_HD_Classic=1001,
00069 ODT_HD_Geocentric=1002,
00070 ODT_HD_Max=1999,
00071 ODT_VD_Min=2000,
00072 ODT_VD_Other=2000,
00073 ODT_VD_Orthometric=2001,
00074 ODT_VD_Ellipsoidal=2002,
00075 ODT_VD_AltitudeBarometric=2003,
00076 ODT_VD_Normal=2004,
00077 ODT_VD_GeoidModelDerived=2005,
00078 ODT_VD_Depth=2006,
00079 ODT_VD_Max=2999,
00080 ODT_LD_Min=10000,
00081 ODT_LD_Max=32767
00082 } OGRDatumType;
00083
00084 #endif // ndef SWIG
00085
00086
00087
00088
00089
00090 #define SRS_WKT_WGS84 "GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9108\"]],AUTHORITY[\"EPSG\",\"4326\"]]"
00091
00092
00093
00094
00095
00096 #define SRS_PT_ALBERS_CONIC_EQUAL_AREA \
00097 "Albers_Conic_Equal_Area"
00098 #define SRS_PT_AZIMUTHAL_EQUIDISTANT "Azimuthal_Equidistant"
00099 #define SRS_PT_CASSINI_SOLDNER "Cassini_Soldner"
00100 #define SRS_PT_CYLINDRICAL_EQUAL_AREA "Cylindrical_Equal_Area"
00101 #define SRS_PT_BONNE "Bonne"
00102 #define SRS_PT_ECKERT_I "Eckert_I"
00103 #define SRS_PT_ECKERT_II "Eckert_II"
00104 #define SRS_PT_ECKERT_III "Eckert_III"
00105 #define SRS_PT_ECKERT_IV "Eckert_IV"
00106 #define SRS_PT_ECKERT_V "Eckert_V"
00107 #define SRS_PT_ECKERT_VI "Eckert_VI"
00108 #define SRS_PT_EQUIDISTANT_CONIC \
00109 "Equidistant_Conic"
00110 #define SRS_PT_EQUIRECTANGULAR "Equirectangular"
00111 #define SRS_PT_GALL_STEREOGRAPHIC \
00112 "Gall_Stereographic"
00113 #define SRS_PT_GAUSSSCHREIBERTMERCATOR \
00114 "Gauss_Schreiber_Transverse_Mercator"
00115 #define SRS_PT_GEOSTATIONARY_SATELLITE \
00116 "Geostationary_Satellite"
00117 #define SRS_PT_GOODE_HOMOLOSINE "Goode_Homolosine"
00118 #define SRS_PT_IGH "Interrupted_Goode_Homolosine"
00119 #define SRS_PT_GNOMONIC "Gnomonic"
00120 #define SRS_PT_HOTINE_OBLIQUE_MERCATOR \
00121 "Hotine_Oblique_Mercator"
00122 #define SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN \
00123 "Hotine_Oblique_Mercator_Two_Point_Natural_Origin"
00124 #define SRS_PT_LABORDE_OBLIQUE_MERCATOR \
00125 "Laborde_Oblique_Mercator"
00126 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP \
00127 "Lambert_Conformal_Conic_1SP"
00128 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP \
00129 "Lambert_Conformal_Conic_2SP"
00130 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP_BELGIUM \
00131 "Lambert_Conformal_Conic_2SP_Belgium"
00132 #define SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA \
00133 "Lambert_Azimuthal_Equal_Area"
00134 #define SRS_PT_MERCATOR_1SP "Mercator_1SP"
00135 #define SRS_PT_MERCATOR_2SP "Mercator_2SP"
00136 #define SRS_PT_MILLER_CYLINDRICAL "Miller_Cylindrical"
00137 #define SRS_PT_MOLLWEIDE "Mollweide"
00138 #define SRS_PT_NEW_ZEALAND_MAP_GRID \
00139 "New_Zealand_Map_Grid"
00140 #define SRS_PT_OBLIQUE_STEREOGRAPHIC \
00141 "Oblique_Stereographic"
00142 #define SRS_PT_ORTHOGRAPHIC "Orthographic"
00143 #define SRS_PT_POLAR_STEREOGRAPHIC \
00144 "Polar_Stereographic"
00145 #define SRS_PT_POLYCONIC "Polyconic"
00146 #define SRS_PT_ROBINSON "Robinson"
00147 #define SRS_PT_SINUSOIDAL "Sinusoidal"
00148 #define SRS_PT_STEREOGRAPHIC "Stereographic"
00149 #define SRS_PT_SWISS_OBLIQUE_CYLINDRICAL \
00150 "Swiss_Oblique_Cylindrical"
00151 #define SRS_PT_TRANSVERSE_MERCATOR \
00152 "Transverse_Mercator"
00153 #define SRS_PT_TRANSVERSE_MERCATOR_SOUTH_ORIENTED \
00154 "Transverse_Mercator_South_Orientated"
00155
00156
00157 #define SRS_PT_TRANSVERSE_MERCATOR_MI_21 \
00158 "Transverse_Mercator_MapInfo_21"
00159 #define SRS_PT_TRANSVERSE_MERCATOR_MI_22 \
00160 "Transverse_Mercator_MapInfo_22"
00161 #define SRS_PT_TRANSVERSE_MERCATOR_MI_23 \
00162 "Transverse_Mercator_MapInfo_23"
00163 #define SRS_PT_TRANSVERSE_MERCATOR_MI_24 \
00164 "Transverse_Mercator_MapInfo_24"
00165 #define SRS_PT_TRANSVERSE_MERCATOR_MI_25 \
00166 "Transverse_Mercator_MapInfo_25"
00167
00168 #define SRS_PT_TUNISIA_MINING_GRID \
00169 "Tunisia_Mining_Grid"
00170 #define SRS_PT_TWO_POINT_EQUIDISTANT \
00171 "Two_Point_Equidistant"
00172 #define SRS_PT_VANDERGRINTEN "VanDerGrinten"
00173 #define SRS_PT_KROVAK "Krovak"
00174 #define SRS_PT_IMW_POLYCONIC "International_Map_of_the_World_Polyconic"
00175 #define SRS_PT_WAGNER_I "Wagner_I"
00176 #define SRS_PT_WAGNER_II "Wagner_II"
00177 #define SRS_PT_WAGNER_III "Wagner_III"
00178 #define SRS_PT_WAGNER_IV "Wagner_IV"
00179 #define SRS_PT_WAGNER_V "Wagner_V"
00180 #define SRS_PT_WAGNER_VI "Wagner_VI"
00181 #define SRS_PT_WAGNER_VII "Wagner_VII"
00182
00183
00184 #define SRS_PP_CENTRAL_MERIDIAN "central_meridian"
00185 #define SRS_PP_SCALE_FACTOR "scale_factor"
00186 #define SRS_PP_STANDARD_PARALLEL_1 "standard_parallel_1"
00187 #define SRS_PP_STANDARD_PARALLEL_2 "standard_parallel_2"
00188 #define SRS_PP_PSEUDO_STD_PARALLEL_1 "pseudo_standard_parallel_1"
00189 #define SRS_PP_LONGITUDE_OF_CENTER "longitude_of_center"
00190 #define SRS_PP_LATITUDE_OF_CENTER "latitude_of_center"
00191 #define SRS_PP_LONGITUDE_OF_ORIGIN "longitude_of_origin"
00192 #define SRS_PP_LATITUDE_OF_ORIGIN "latitude_of_origin"
00193 #define SRS_PP_FALSE_EASTING "false_easting"
00194 #define SRS_PP_FALSE_NORTHING "false_northing"
00195 #define SRS_PP_AZIMUTH "azimuth"
00196 #define SRS_PP_LONGITUDE_OF_POINT_1 "longitude_of_point_1"
00197 #define SRS_PP_LATITUDE_OF_POINT_1 "latitude_of_point_1"
00198 #define SRS_PP_LONGITUDE_OF_POINT_2 "longitude_of_point_2"
00199 #define SRS_PP_LATITUDE_OF_POINT_2 "latitude_of_point_2"
00200 #define SRS_PP_LONGITUDE_OF_POINT_3 "longitude_of_point_3"
00201 #define SRS_PP_LATITUDE_OF_POINT_3 "latitude_of_point_3"
00202 #define SRS_PP_RECTIFIED_GRID_ANGLE "rectified_grid_angle"
00203 #define SRS_PP_LANDSAT_NUMBER "landsat_number"
00204 #define SRS_PP_PATH_NUMBER "path_number"
00205 #define SRS_PP_PERSPECTIVE_POINT_HEIGHT "perspective_point_height"
00206 #define SRS_PP_SATELLITE_HEIGHT "satellite_height"
00207 #define SRS_PP_FIPSZONE "fipszone"
00208 #define SRS_PP_ZONE "zone"
00209 #define SRS_PP_LATITUDE_OF_1ST_POINT "Latitude_Of_1st_Point"
00210 #define SRS_PP_LONGITUDE_OF_1ST_POINT "Longitude_Of_1st_Point"
00211 #define SRS_PP_LATITUDE_OF_2ND_POINT "Latitude_Of_2nd_Point"
00212 #define SRS_PP_LONGITUDE_OF_2ND_POINT "Longitude_Of_2nd_Point"
00213
00214 #define SRS_UL_METER "Meter"
00215 #define SRS_UL_FOOT "Foot (International)"
00216 #define SRS_UL_FOOT_CONV "0.3048"
00217 #define SRS_UL_US_FOOT "Foot_US"
00218 #define SRS_UL_US_FOOT_CONV "0.3048006096012192"
00219 #define SRS_UL_NAUTICAL_MILE "Nautical Mile"
00220 #define SRS_UL_NAUTICAL_MILE_CONV "1852.0"
00221 #define SRS_UL_LINK "Link"
00222 #define SRS_UL_LINK_CONV "0.20116684023368047"
00223 #define SRS_UL_CHAIN "Chain"
00224 #define SRS_UL_CHAIN_CONV "20.116684023368047"
00225 #define SRS_UL_ROD "Rod"
00226 #define SRS_UL_ROD_CONV "5.02921005842012"
00227 #define SRS_UL_LINK_Clarke "Link_Clarke"
00228 #define SRS_UL_LINK_Clarke_CONV "0.2011661949"
00229
00230 #define SRS_UA_DEGREE "degree"
00231 #define SRS_UA_DEGREE_CONV "0.0174532925199433"
00232 #define SRS_UA_RADIAN "radian"
00233
00234 #define SRS_PM_GREENWICH "Greenwich"
00235
00236 #define SRS_DN_NAD27 "North_American_Datum_1927"
00237 #define SRS_DN_NAD83 "North_American_Datum_1983"
00238 #define SRS_DN_WGS72 "WGS_1972"
00239 #define SRS_DN_WGS84 "WGS_1984"
00240
00241 #define SRS_WGS84_SEMIMAJOR 6378137.0
00242 #define SRS_WGS84_INVFLATTENING 298.257223563
00243
00244 #ifndef SWIG
00245
00246
00247
00248 #ifndef _DEFINED_OGRSpatialReferenceH
00249 #define _DEFINED_OGRSpatialReferenceH
00250
00251 #ifdef DEBUG
00252 typedef struct OGRSpatialReferenceHS *OGRSpatialReferenceH;
00253 typedef struct OGRCoordinateTransformationHS *OGRCoordinateTransformationH;
00254 #else
00255 typedef void *OGRSpatialReferenceH;
00256 typedef void *OGRCoordinateTransformationH;
00257 #endif
00258
00259 #endif
00260
00261
00262 OGRSpatialReferenceH CPL_DLL CPL_STDCALL
00263 OSRNewSpatialReference( const char * );
00264 OGRSpatialReferenceH CPL_DLL CPL_STDCALL OSRCloneGeogCS( OGRSpatialReferenceH );
00265 OGRSpatialReferenceH CPL_DLL CPL_STDCALL OSRClone( OGRSpatialReferenceH );
00266 void CPL_DLL CPL_STDCALL OSRDestroySpatialReference( OGRSpatialReferenceH );
00267
00268 int CPL_DLL OSRReference( OGRSpatialReferenceH );
00269 int CPL_DLL OSRDereference( OGRSpatialReferenceH );
00270 void CPL_DLL OSRRelease( OGRSpatialReferenceH );
00271
00272 OGRErr CPL_DLL OSRValidate( OGRSpatialReferenceH );
00273 OGRErr CPL_DLL OSRFixupOrdering( OGRSpatialReferenceH );
00274 OGRErr CPL_DLL OSRFixup( OGRSpatialReferenceH );
00275 OGRErr CPL_DLL OSRStripCTParms( OGRSpatialReferenceH );
00276
00277 OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSG( OGRSpatialReferenceH, int );
00278 OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSGA( OGRSpatialReferenceH, int );
00279 OGRErr CPL_DLL OSRImportFromWkt( OGRSpatialReferenceH, char ** );
00280 OGRErr CPL_DLL OSRImportFromProj4( OGRSpatialReferenceH, const char *);
00281 OGRErr CPL_DLL OSRImportFromESRI( OGRSpatialReferenceH, char **);
00282 OGRErr CPL_DLL OSRImportFromPCI( OGRSpatialReferenceH hSRS, const char *,
00283 const char *, double * );
00284 OGRErr CPL_DLL OSRImportFromUSGS( OGRSpatialReferenceH,
00285 long, long, double *, long);
00286 OGRErr CPL_DLL OSRImportFromXML( OGRSpatialReferenceH, const char * );
00287 OGRErr CPL_DLL OSRImportFromDict( OGRSpatialReferenceH, const char *,
00288 const char * );
00289 OGRErr CPL_DLL OSRImportFromPanorama( OGRSpatialReferenceH, long, long, long,
00290 double * );
00291 OGRErr CPL_DLL OSRImportFromOzi( OGRSpatialReferenceH , const char *, const char *,
00292 const char * );
00293 OGRErr CPL_DLL OSRImportFromMICoordSys( OGRSpatialReferenceH, const char *);
00294 OGRErr CPL_DLL OSRImportFromERM( OGRSpatialReferenceH,
00295 const char *, const char *, const char * );
00296 OGRErr CPL_DLL OSRImportFromUrl( OGRSpatialReferenceH, const char * );
00297
00298 OGRErr CPL_DLL CPL_STDCALL OSRExportToWkt( OGRSpatialReferenceH, char ** );
00299 OGRErr CPL_DLL CPL_STDCALL OSRExportToPrettyWkt( OGRSpatialReferenceH, char **, int);
00300 OGRErr CPL_DLL CPL_STDCALL OSRExportToProj4( OGRSpatialReferenceH, char **);
00301 OGRErr CPL_DLL OSRExportToPCI( OGRSpatialReferenceH, char **, char **,
00302 double ** );
00303 OGRErr CPL_DLL OSRExportToUSGS( OGRSpatialReferenceH, long *, long *,
00304 double **, long * );
00305 OGRErr CPL_DLL OSRExportToXML( OGRSpatialReferenceH, char **, const char * );
00306 OGRErr CPL_DLL OSRExportToPanorama( OGRSpatialReferenceH, long *, long *,
00307 long *, long *, double * );
00308 OGRErr CPL_DLL OSRExportToMICoordSys( OGRSpatialReferenceH, char ** );
00309 OGRErr CPL_DLL OSRExportToERM( OGRSpatialReferenceH, char *, char *, char * );
00310
00311 OGRErr CPL_DLL OSRMorphToESRI( OGRSpatialReferenceH );
00312 OGRErr CPL_DLL OSRMorphFromESRI( OGRSpatialReferenceH );
00313
00314 OGRErr CPL_DLL CPL_STDCALL OSRSetAttrValue( OGRSpatialReferenceH hSRS,
00315 const char * pszNodePath,
00316 const char * pszNewNodeValue );
00317 const char CPL_DLL * CPL_STDCALL OSRGetAttrValue( OGRSpatialReferenceH hSRS,
00318 const char * pszName, int iChild );
00319
00320 OGRErr CPL_DLL OSRSetAngularUnits( OGRSpatialReferenceH, const char *, double );
00321 double CPL_DLL OSRGetAngularUnits( OGRSpatialReferenceH, char ** );
00322 OGRErr CPL_DLL OSRSetLinearUnits( OGRSpatialReferenceH, const char *, double );
00323 OGRErr CPL_DLL OSRSetTargetLinearUnits( OGRSpatialReferenceH, const char *, const char *, double );
00324 OGRErr CPL_DLL OSRSetLinearUnitsAndUpdateParameters(
00325 OGRSpatialReferenceH, const char *, double );
00326 double CPL_DLL OSRGetLinearUnits( OGRSpatialReferenceH, char ** );
00327 double CPL_DLL OSRGetTargetLinearUnits( OGRSpatialReferenceH, const char *, char ** );
00328
00329 double CPL_DLL OSRGetPrimeMeridian( OGRSpatialReferenceH, char ** );
00330
00331 int CPL_DLL OSRIsGeographic( OGRSpatialReferenceH );
00332 int CPL_DLL OSRIsLocal( OGRSpatialReferenceH );
00333 int CPL_DLL OSRIsProjected( OGRSpatialReferenceH );
00334 int CPL_DLL OSRIsCompound( OGRSpatialReferenceH );
00335 int CPL_DLL OSRIsGeocentric( OGRSpatialReferenceH );
00336 int CPL_DLL OSRIsVertical( OGRSpatialReferenceH );
00337 int CPL_DLL OSRIsSameGeogCS( OGRSpatialReferenceH, OGRSpatialReferenceH );
00338 int CPL_DLL OSRIsSameVertCS( OGRSpatialReferenceH, OGRSpatialReferenceH );
00339 int CPL_DLL OSRIsSame( OGRSpatialReferenceH, OGRSpatialReferenceH );
00340
00341 OGRErr CPL_DLL OSRSetLocalCS( OGRSpatialReferenceH hSRS, const char *pszName );
00342 OGRErr CPL_DLL OSRSetProjCS( OGRSpatialReferenceH hSRS, const char * pszName );
00343 OGRErr CPL_DLL OSRSetGeocCS( OGRSpatialReferenceH hSRS, const char * pszName );
00344 OGRErr CPL_DLL OSRSetWellKnownGeogCS( OGRSpatialReferenceH hSRS,
00345 const char * pszName );
00346 OGRErr CPL_DLL CPL_STDCALL OSRSetFromUserInput( OGRSpatialReferenceH hSRS,
00347 const char * );
00348 OGRErr CPL_DLL OSRCopyGeogCSFrom( OGRSpatialReferenceH hSRS,
00349 OGRSpatialReferenceH hSrcSRS );
00350 OGRErr CPL_DLL OSRSetTOWGS84( OGRSpatialReferenceH hSRS,
00351 double, double, double,
00352 double, double, double, double );
00353 OGRErr CPL_DLL OSRGetTOWGS84( OGRSpatialReferenceH hSRS, double *, int );
00354
00355
00356 OGRErr CPL_DLL OSRSetCompoundCS( OGRSpatialReferenceH hSRS,
00357 const char *pszName,
00358 OGRSpatialReferenceH hHorizSRS,
00359 OGRSpatialReferenceH hVertSRS );
00360 OGRErr CPL_DLL OSRSetGeogCS( OGRSpatialReferenceH hSRS,
00361 const char * pszGeogName,
00362 const char * pszDatumName,
00363 const char * pszEllipsoidName,
00364 double dfSemiMajor, double dfInvFlattening,
00365 const char * pszPMName ,
00366 double dfPMOffset ,
00367 const char * pszUnits ,
00368 double dfConvertToRadians );
00369
00370 OGRErr CPL_DLL OSRSetVertCS( OGRSpatialReferenceH hSRS,
00371 const char * pszVertCSName,
00372 const char * pszVertDatumName,
00373 int nVertDatumType );
00374
00375 double CPL_DLL OSRGetSemiMajor( OGRSpatialReferenceH, OGRErr * );
00376 double CPL_DLL OSRGetSemiMinor( OGRSpatialReferenceH, OGRErr * );
00377 double CPL_DLL OSRGetInvFlattening( OGRSpatialReferenceH, OGRErr * );
00378
00379 OGRErr CPL_DLL OSRSetAuthority( OGRSpatialReferenceH hSRS,
00380 const char * pszTargetKey,
00381 const char * pszAuthority,
00382 int nCode );
00383 const char CPL_DLL *OSRGetAuthorityCode( OGRSpatialReferenceH hSRS,
00384 const char * pszTargetKey );
00385 const char CPL_DLL *OSRGetAuthorityName( OGRSpatialReferenceH hSRS,
00386 const char * pszTargetKey );
00387 OGRErr CPL_DLL OSRSetProjection( OGRSpatialReferenceH, const char * );
00388 OGRErr CPL_DLL OSRSetProjParm( OGRSpatialReferenceH, const char *, double );
00389 double CPL_DLL OSRGetProjParm( OGRSpatialReferenceH hSRS,
00390 const char * pszParmName,
00391 double dfDefault ,
00392 OGRErr * );
00393 OGRErr CPL_DLL OSRSetNormProjParm( OGRSpatialReferenceH, const char *, double);
00394 double CPL_DLL OSRGetNormProjParm( OGRSpatialReferenceH hSRS,
00395 const char * pszParmName,
00396 double dfDefault ,
00397 OGRErr * );
00398
00399 OGRErr CPL_DLL OSRSetUTM( OGRSpatialReferenceH hSRS, int nZone, int bNorth );
00400 int CPL_DLL OSRGetUTMZone( OGRSpatialReferenceH hSRS, int *pbNorth );
00401 OGRErr CPL_DLL OSRSetStatePlane( OGRSpatialReferenceH hSRS,
00402 int nZone, int bNAD83 );
00403 OGRErr CPL_DLL OSRSetStatePlaneWithUnits( OGRSpatialReferenceH hSRS,
00404 int nZone, int bNAD83,
00405 const char *pszOverrideUnitName,
00406 double dfOverrideUnit );
00407 OGRErr CPL_DLL OSRAutoIdentifyEPSG( OGRSpatialReferenceH hSRS );
00408
00409 int CPL_DLL OSREPSGTreatsAsLatLong( OGRSpatialReferenceH hSRS );
00410 const char CPL_DLL *OSRGetAxis( OGRSpatialReferenceH hSRS,
00411 const char *pszTargetKey, int iAxis,
00412 OGRAxisOrientation *peOrientation );
00413 OGRErr CPL_DLL OSRSetAxes( const char *pszTargetKey,
00414 const char *pszXAxisName,
00415 OGRAxisOrientation eXAxisOrientation,
00416 const char *pszYAxisName,
00417 OGRAxisOrientation eYAxisOrientation );
00419 OGRErr CPL_DLL OSRSetACEA( OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2,
00420 double dfCenterLat, double dfCenterLong,
00421 double dfFalseEasting, double dfFalseNorthing );
00422
00424 OGRErr CPL_DLL OSRSetAE( OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong,
00425 double dfFalseEasting, double dfFalseNorthing );
00426
00428 OGRErr CPL_DLL OSRSetBonne(OGRSpatialReferenceH hSRS,
00429 double dfStandardParallel, double dfCentralMeridian,
00430 double dfFalseEasting, double dfFalseNorthing );
00431
00433 OGRErr CPL_DLL OSRSetCEA( OGRSpatialReferenceH hSRS, double dfStdP1, double dfCentralMeridian,
00434 double dfFalseEasting, double dfFalseNorthing );
00435
00437 OGRErr CPL_DLL OSRSetCS( OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong,
00438 double dfFalseEasting, double dfFalseNorthing );
00439
00441 OGRErr CPL_DLL OSRSetEC( OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2,
00442 double dfCenterLat, double dfCenterLong,
00443 double dfFalseEasting, double dfFalseNorthing );
00444
00446 OGRErr CPL_DLL OSRSetEckert( OGRSpatialReferenceH hSRS, int nVariation,
00447 double dfCentralMeridian,
00448 double dfFalseEasting, double dfFalseNorthing );
00449
00451 OGRErr CPL_DLL OSRSetEckertIV( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
00452 double dfFalseEasting, double dfFalseNorthing );
00453
00455 OGRErr CPL_DLL OSRSetEckertVI( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
00456 double dfFalseEasting, double dfFalseNorthing );
00457
00459 OGRErr CPL_DLL OSRSetEquirectangular(OGRSpatialReferenceH hSRS,
00460 double dfCenterLat, double dfCenterLong,
00461 double dfFalseEasting, double dfFalseNorthing );
00462
00464 OGRErr CPL_DLL OSRSetEquirectangular2( OGRSpatialReferenceH hSRS,
00465 double dfCenterLat, double dfCenterLong,
00466 double dfPseudoStdParallel1,
00467 double dfFalseEasting,
00468 double dfFalseNorthing );
00469
00471 OGRErr CPL_DLL OSRSetGS( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
00472 double dfFalseEasting, double dfFalseNorthing );
00473
00475 OGRErr CPL_DLL OSRSetGH( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
00476 double dfFalseEasting, double dfFalseNorthing );
00477
00479 OGRErr CPL_DLL OSRSetIGH( OGRSpatialReferenceH hSRS );
00480
00482 OGRErr CPL_DLL OSRSetGEOS( OGRSpatialReferenceH hSRS,
00483 double dfCentralMeridian, double dfSatelliteHeight,
00484 double dfFalseEasting, double dfFalseNorthing );
00485
00487 OGRErr CPL_DLL OSRSetGaussSchreiberTMercator( OGRSpatialReferenceH hSRS,
00488 double dfCenterLat, double dfCenterLong,
00489 double dfScale,
00490 double dfFalseEasting,
00491 double dfFalseNorthing );
00493 OGRErr CPL_DLL OSRSetGnomonic(OGRSpatialReferenceH hSRS,
00494 double dfCenterLat, double dfCenterLong,
00495 double dfFalseEasting, double dfFalseNorthing );
00496
00498 OGRErr CPL_DLL OSRSetHOM( OGRSpatialReferenceH hSRS,
00499 double dfCenterLat, double dfCenterLong,
00500 double dfAzimuth, double dfRectToSkew,
00501 double dfScale,
00502 double dfFalseEasting, double dfFalseNorthing );
00503
00505 OGRErr CPL_DLL OSRSetHOM2PNO( OGRSpatialReferenceH hSRS, double dfCenterLat,
00506 double dfLat1, double dfLong1,
00507 double dfLat2, double dfLong2,
00508 double dfScale,
00509 double dfFalseEasting, double dfFalseNorthing );
00510
00512 OGRErr CPL_DLL OSRSetIWMPolyconic( OGRSpatialReferenceH hSRS,
00513 double dfLat1, double dfLat2,
00514 double dfCenterLong,
00515 double dfFalseEasting,
00516 double dfFalseNorthing );
00517
00519 OGRErr CPL_DLL OSRSetKrovak( OGRSpatialReferenceH hSRS,
00520 double dfCenterLat, double dfCenterLong,
00521 double dfAzimuth, double dfPseudoStdParallelLat,
00522 double dfScale,
00523 double dfFalseEasting, double dfFalseNorthing );
00524
00526 OGRErr CPL_DLL OSRSetLAEA( OGRSpatialReferenceH hSRS,
00527 double dfCenterLat, double dfCenterLong,
00528 double dfFalseEasting, double dfFalseNorthing );
00529
00531 OGRErr CPL_DLL OSRSetLCC( OGRSpatialReferenceH hSRS,
00532 double dfStdP1, double dfStdP2,
00533 double dfCenterLat, double dfCenterLong,
00534 double dfFalseEasting, double dfFalseNorthing );
00535
00537 OGRErr CPL_DLL OSRSetLCC1SP( OGRSpatialReferenceH hSRS,
00538 double dfCenterLat, double dfCenterLong,
00539 double dfScale,
00540 double dfFalseEasting, double dfFalseNorthing );
00541
00543 OGRErr CPL_DLL OSRSetLCCB( OGRSpatialReferenceH hSRS,
00544 double dfStdP1, double dfStdP2,
00545 double dfCenterLat, double dfCenterLong,
00546 double dfFalseEasting, double dfFalseNorthing );
00547
00549 OGRErr CPL_DLL OSRSetMC( OGRSpatialReferenceH hSRS,
00550 double dfCenterLat, double dfCenterLong,
00551 double dfFalseEasting, double dfFalseNorthing );
00552
00554 OGRErr CPL_DLL OSRSetMercator( OGRSpatialReferenceH hSRS,
00555 double dfCenterLat, double dfCenterLong,
00556 double dfScale,
00557 double dfFalseEasting, double dfFalseNorthing );
00558
00560 OGRErr CPL_DLL OSRSetMollweide( OGRSpatialReferenceH hSRS,
00561 double dfCentralMeridian,
00562 double dfFalseEasting,
00563 double dfFalseNorthing );
00564
00566 OGRErr CPL_DLL OSRSetNZMG( OGRSpatialReferenceH hSRS,
00567 double dfCenterLat, double dfCenterLong,
00568 double dfFalseEasting, double dfFalseNorthing );
00569
00571 OGRErr CPL_DLL OSRSetOS( OGRSpatialReferenceH hSRS,
00572 double dfOriginLat, double dfCMeridian,
00573 double dfScale,
00574 double dfFalseEasting,double dfFalseNorthing);
00575
00577 OGRErr CPL_DLL OSRSetOrthographic( OGRSpatialReferenceH hSRS,
00578 double dfCenterLat, double dfCenterLong,
00579 double dfFalseEasting,
00580 double dfFalseNorthing);
00581
00583 OGRErr CPL_DLL OSRSetPolyconic( OGRSpatialReferenceH hSRS,
00584 double dfCenterLat, double dfCenterLong,
00585 double dfFalseEasting, double dfFalseNorthing );
00586
00588 OGRErr CPL_DLL OSRSetPS( OGRSpatialReferenceH hSRS,
00589 double dfCenterLat, double dfCenterLong,
00590 double dfScale,
00591 double dfFalseEasting, double dfFalseNorthing);
00592
00594 OGRErr CPL_DLL OSRSetRobinson( OGRSpatialReferenceH hSRS,
00595 double dfCenterLong,
00596 double dfFalseEasting, double dfFalseNorthing );
00597
00599 OGRErr CPL_DLL OSRSetSinusoidal( OGRSpatialReferenceH hSRS,
00600 double dfCenterLong,
00601 double dfFalseEasting,
00602 double dfFalseNorthing );
00603
00605 OGRErr CPL_DLL OSRSetStereographic( OGRSpatialReferenceH hSRS,
00606 double dfCenterLat, double dfCenterLong,
00607 double dfScale,
00608 double dfFalseEasting,
00609 double dfFalseNorthing);
00610
00612 OGRErr CPL_DLL OSRSetSOC( OGRSpatialReferenceH hSRS,
00613 double dfLatitudeOfOrigin, double dfCentralMeridian,
00614 double dfFalseEasting, double dfFalseNorthing );
00615
00617 OGRErr CPL_DLL OSRSetTM( OGRSpatialReferenceH hSRS,
00618 double dfCenterLat, double dfCenterLong,
00619 double dfScale,
00620 double dfFalseEasting, double dfFalseNorthing );
00621
00623 OGRErr CPL_DLL OSRSetTMVariant(
00624 OGRSpatialReferenceH hSRS, const char *pszVariantName,
00625 double dfCenterLat, double dfCenterLong,
00626 double dfScale,
00627 double dfFalseEasting, double dfFalseNorthing );
00628
00630 OGRErr CPL_DLL OSRSetTMG( OGRSpatialReferenceH hSRS,
00631 double dfCenterLat, double dfCenterLong,
00632 double dfFalseEasting, double dfFalseNorthing );
00633
00635 OGRErr CPL_DLL OSRSetTMSO( OGRSpatialReferenceH hSRS,
00636 double dfCenterLat, double dfCenterLong,
00637 double dfScale,
00638 double dfFalseEasting, double dfFalseNorthing );
00639
00641 OGRErr CPL_DLL OSRSetVDG( OGRSpatialReferenceH hSRS,
00642 double dfCenterLong,
00643 double dfFalseEasting, double dfFalseNorthing );
00644
00646 OGRErr CPL_DLL OSRSetWagner( OGRSpatialReferenceH hSRS, int nVariation,
00647 double dfFalseEasting,
00648 double dfFalseNorthing );
00649
00650 void CPL_DLL OSRCleanup( void );
00651
00652
00653
00654
00655 OGRCoordinateTransformationH CPL_DLL CPL_STDCALL
00656 OCTNewCoordinateTransformation( OGRSpatialReferenceH hSourceSRS,
00657 OGRSpatialReferenceH hTargetSRS );
00658 void CPL_DLL CPL_STDCALL
00659 OCTDestroyCoordinateTransformation( OGRCoordinateTransformationH );
00660
00661 int CPL_DLL CPL_STDCALL
00662 OCTTransform( OGRCoordinateTransformationH hCT,
00663 int nCount, double *x, double *y, double *z );
00664
00665 int CPL_DLL CPL_STDCALL
00666 OCTTransformEx( OGRCoordinateTransformationH hCT,
00667 int nCount, double *x, double *y, double *z,
00668 int *pabSuccess );
00669
00670
00671 char *OCTProj4Normalize( const char *pszProj4Src );
00672
00673
00674
00675
00676
00677 char CPL_DLL ** OPTGetProjectionMethods();
00678 char CPL_DLL ** OPTGetParameterList( const char * pszProjectionMethod,
00679 char ** ppszUserName );
00680 int CPL_DLL OPTGetParameterInfo( const char * pszProjectionMethod,
00681 const char * pszParameterName,
00682 char ** ppszUserName,
00683 char ** ppszType,
00684 double *pdfDefaultValue );
00685
00686 CPL_C_END
00687
00688 #endif
00689
00690 #endif