GDAL
ogr_srs_api.h
Go to the documentation of this file.
1 /******************************************************************************
2  * $Id: ogr_srs_api.h 35912 2016-10-24 16:41:45Z goatbar $
3  *
4  * Project: OpenGIS Simple Features Reference Implementation
5  * Purpose: C API and constant declarations for OGR Spatial References.
6  * Author: Frank Warmerdam, warmerdam@pobox.com
7  *
8  ******************************************************************************
9  * Copyright (c) 2000, Frank Warmerdam
10  * Copyright (c) 2008-2013, Even Rouault <even dot rouault at mines-paris dot org>
11  *
12  * Permission is hereby granted, free of charge, to any person obtaining a
13  * copy of this software and associated documentation files (the "Software"),
14  * to deal in the Software without restriction, including without limitation
15  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16  * and/or sell copies of the Software, and to permit persons to whom the
17  * Software is furnished to do so, subject to the following conditions:
18  *
19  * The above copyright notice and this permission notice shall be included
20  * in all copies or substantial portions of the Software.
21  *
22  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28  * DEALINGS IN THE SOFTWARE.
29  ****************************************************************************/
30 
31 #ifndef OGR_SRS_API_H_INCLUDED
32 #define OGR_SRS_API_H_INCLUDED
33 
34 #ifndef SWIG
35 #include "ogr_core.h"
36 
38 
48 typedef enum {
54  OAO_Up=5,
57 
58 const char CPL_DLL *OSRAxisEnumToName( OGRAxisOrientation eOrientation );
59 
60 /* -------------------------------------------------------------------- */
61 /* Datum types (corresponds to CS_DatumType). */
62 /* -------------------------------------------------------------------- */
63 
65 // Unused in the code base. TODO: remove
66 typedef enum {
67  ODT_HD_Min=1000,
68  ODT_HD_Other=1000,
69  ODT_HD_Classic=1001,
70  ODT_HD_Geocentric=1002,
71  ODT_HD_Max=1999,
72  ODT_VD_Min=2000,
73  ODT_VD_Other=2000,
74  ODT_VD_Orthometric=2001,
75  ODT_VD_Ellipsoidal=2002,
76  ODT_VD_AltitudeBarometric=2003,
77  ODT_VD_Normal=2004,
78  ODT_VD_GeoidModelDerived=2005,
79  ODT_VD_Depth=2006,
80  ODT_VD_Max=2999,
81  ODT_LD_Min=10000,
82  ODT_LD_Max=32767
83 } OGRDatumType;
86 #endif // ndef SWIG
87 
88 /* ==================================================================== */
89 /* Some standard WKT geographic coordinate systems. */
90 /* ==================================================================== */
91 
93 #define SRS_WKT_WGS84 "GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]]"
94 
95 /* ==================================================================== */
96 /* Some "standard" strings. */
97 /* ==================================================================== */
98 
100 #define SRS_PT_ALBERS_CONIC_EQUAL_AREA \
101  "Albers_Conic_Equal_Area"
102 
103 #define SRS_PT_AZIMUTHAL_EQUIDISTANT "Azimuthal_Equidistant"
104 
105 #define SRS_PT_CASSINI_SOLDNER "Cassini_Soldner"
106 
107 #define SRS_PT_CYLINDRICAL_EQUAL_AREA "Cylindrical_Equal_Area"
108 
109 #define SRS_PT_BONNE "Bonne"
110 
111 #define SRS_PT_ECKERT_I "Eckert_I"
112 
113 #define SRS_PT_ECKERT_II "Eckert_II"
114 
115 #define SRS_PT_ECKERT_III "Eckert_III"
116 
117 #define SRS_PT_ECKERT_IV "Eckert_IV"
118 
119 #define SRS_PT_ECKERT_V "Eckert_V"
120 
121 #define SRS_PT_ECKERT_VI "Eckert_VI"
122 
123 #define SRS_PT_EQUIDISTANT_CONIC \
124  "Equidistant_Conic"
125 
126 #define SRS_PT_EQUIRECTANGULAR "Equirectangular"
127 
128 #define SRS_PT_GALL_STEREOGRAPHIC \
129  "Gall_Stereographic"
130 
131 #define SRS_PT_GAUSSSCHREIBERTMERCATOR \
132  "Gauss_Schreiber_Transverse_Mercator"
133 
134 #define SRS_PT_GEOSTATIONARY_SATELLITE \
135  "Geostationary_Satellite"
136 
137 #define SRS_PT_GOODE_HOMOLOSINE "Goode_Homolosine"
138 
139 #define SRS_PT_IGH "Interrupted_Goode_Homolosine"
140 
141 #define SRS_PT_GNOMONIC "Gnomonic"
142 
143 #define SRS_PT_HOTINE_OBLIQUE_MERCATOR_AZIMUTH_CENTER \
144  "Hotine_Oblique_Mercator_Azimuth_Center"
145 
146 #define SRS_PT_HOTINE_OBLIQUE_MERCATOR \
147  "Hotine_Oblique_Mercator"
148 
149 #define SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN \
150  "Hotine_Oblique_Mercator_Two_Point_Natural_Origin"
151 
152 #define SRS_PT_LABORDE_OBLIQUE_MERCATOR \
153  "Laborde_Oblique_Mercator"
154 
155 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP \
156  "Lambert_Conformal_Conic_1SP"
157 
158 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP \
159  "Lambert_Conformal_Conic_2SP"
160 
161 #define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP_BELGIUM \
162  "Lambert_Conformal_Conic_2SP_Belgium"
163 
164 #define SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA \
165  "Lambert_Azimuthal_Equal_Area"
166 
167 #define SRS_PT_MERCATOR_1SP "Mercator_1SP"
168 
169 #define SRS_PT_MERCATOR_2SP "Mercator_2SP"
170 
171 #define SRS_PT_MERCATOR_AUXILIARY_SPHERE \
172  "Mercator_Auxiliary_Sphere"
173 
174 #define SRS_PT_MILLER_CYLINDRICAL "Miller_Cylindrical"
175 
176 #define SRS_PT_MOLLWEIDE "Mollweide"
177 
178 #define SRS_PT_NEW_ZEALAND_MAP_GRID \
179  "New_Zealand_Map_Grid"
180 
181 #define SRS_PT_OBLIQUE_STEREOGRAPHIC \
182  "Oblique_Stereographic"
183 
184 #define SRS_PT_ORTHOGRAPHIC "Orthographic"
185 
186 #define SRS_PT_POLAR_STEREOGRAPHIC \
187  "Polar_Stereographic"
188 
189 #define SRS_PT_POLYCONIC "Polyconic"
190 
191 #define SRS_PT_ROBINSON "Robinson"
192 
193 #define SRS_PT_SINUSOIDAL "Sinusoidal"
194 
195 #define SRS_PT_STEREOGRAPHIC "Stereographic"
196 
197 #define SRS_PT_SWISS_OBLIQUE_CYLINDRICAL \
198  "Swiss_Oblique_Cylindrical"
199 
200 #define SRS_PT_TRANSVERSE_MERCATOR \
201  "Transverse_Mercator"
202 
203 #define SRS_PT_TRANSVERSE_MERCATOR_SOUTH_ORIENTED \
204  "Transverse_Mercator_South_Orientated"
205 
206 /* special mapinfo variants on Transverse Mercator */
208 #define SRS_PT_TRANSVERSE_MERCATOR_MI_21 \
209  "Transverse_Mercator_MapInfo_21"
210 
211 #define SRS_PT_TRANSVERSE_MERCATOR_MI_22 \
212  "Transverse_Mercator_MapInfo_22"
213 
214 #define SRS_PT_TRANSVERSE_MERCATOR_MI_23 \
215  "Transverse_Mercator_MapInfo_23"
216 
217 #define SRS_PT_TRANSVERSE_MERCATOR_MI_24 \
218  "Transverse_Mercator_MapInfo_24"
219 
220 #define SRS_PT_TRANSVERSE_MERCATOR_MI_25 \
221  "Transverse_Mercator_MapInfo_25"
222 
224 #define SRS_PT_TUNISIA_MINING_GRID \
225  "Tunisia_Mining_Grid"
226 
227 #define SRS_PT_TWO_POINT_EQUIDISTANT \
228  "Two_Point_Equidistant"
229 
230 #define SRS_PT_VANDERGRINTEN "VanDerGrinten"
231 
232 #define SRS_PT_KROVAK "Krovak"
233 
234 #define SRS_PT_IMW_POLYCONIC "International_Map_of_the_World_Polyconic"
235 
236 #define SRS_PT_WAGNER_I "Wagner_I"
237 
238 #define SRS_PT_WAGNER_II "Wagner_II"
239 
240 #define SRS_PT_WAGNER_III "Wagner_III"
241 
242 #define SRS_PT_WAGNER_IV "Wagner_IV"
243 
244 #define SRS_PT_WAGNER_V "Wagner_V"
245 
246 #define SRS_PT_WAGNER_VI "Wagner_VI"
247 
248 #define SRS_PT_WAGNER_VII "Wagner_VII"
249 
250 #define SRS_PT_QSC "Quadrilateralized_Spherical_Cube"
251 
252 #define SRS_PT_AITOFF "Aitoff"
253 
254 #define SRS_PT_WINKEL_I "Winkel_I"
255 
256 #define SRS_PT_WINKEL_II "Winkel_II"
257 
258 #define SRS_PT_WINKEL_TRIPEL "Winkel_Tripel"
259 
260 #define SRS_PT_CRASTER_PARABOLIC "Craster_Parabolic"
261 
262 #define SRS_PT_LOXIMUTHAL "Loximuthal"
263 
264 #define SRS_PT_QUARTIC_AUTHALIC "Quartic_Authalic"
265 
266 #define SRS_PT_SCH "Spherical_Cross_Track_Height"
267 
269 #define SRS_PP_CENTRAL_MERIDIAN "central_meridian"
270 
271 #define SRS_PP_SCALE_FACTOR "scale_factor"
272 
273 #define SRS_PP_STANDARD_PARALLEL_1 "standard_parallel_1"
274 
275 #define SRS_PP_STANDARD_PARALLEL_2 "standard_parallel_2"
276 
277 #define SRS_PP_PSEUDO_STD_PARALLEL_1 "pseudo_standard_parallel_1"
278 
279 #define SRS_PP_LONGITUDE_OF_CENTER "longitude_of_center"
280 
281 #define SRS_PP_LATITUDE_OF_CENTER "latitude_of_center"
282 
283 #define SRS_PP_LONGITUDE_OF_ORIGIN "longitude_of_origin"
284 
285 #define SRS_PP_LATITUDE_OF_ORIGIN "latitude_of_origin"
286 
287 #define SRS_PP_FALSE_EASTING "false_easting"
288 
289 #define SRS_PP_FALSE_NORTHING "false_northing"
290 
291 #define SRS_PP_AZIMUTH "azimuth"
292 
293 #define SRS_PP_LONGITUDE_OF_POINT_1 "longitude_of_point_1"
294 
295 #define SRS_PP_LATITUDE_OF_POINT_1 "latitude_of_point_1"
296 
297 #define SRS_PP_LONGITUDE_OF_POINT_2 "longitude_of_point_2"
298 
299 #define SRS_PP_LATITUDE_OF_POINT_2 "latitude_of_point_2"
300 
301 #define SRS_PP_LONGITUDE_OF_POINT_3 "longitude_of_point_3"
302 
303 #define SRS_PP_LATITUDE_OF_POINT_3 "latitude_of_point_3"
304 
305 #define SRS_PP_RECTIFIED_GRID_ANGLE "rectified_grid_angle"
306 
307 #define SRS_PP_LANDSAT_NUMBER "landsat_number"
308 
309 #define SRS_PP_PATH_NUMBER "path_number"
310 
311 #define SRS_PP_PERSPECTIVE_POINT_HEIGHT "perspective_point_height"
312 
313 #define SRS_PP_SATELLITE_HEIGHT "satellite_height"
314 
315 #define SRS_PP_FIPSZONE "fipszone"
316 
317 #define SRS_PP_ZONE "zone"
318 
319 #define SRS_PP_LATITUDE_OF_1ST_POINT "Latitude_Of_1st_Point"
320 
321 #define SRS_PP_LONGITUDE_OF_1ST_POINT "Longitude_Of_1st_Point"
322 
323 #define SRS_PP_LATITUDE_OF_2ND_POINT "Latitude_Of_2nd_Point"
324 
325 #define SRS_PP_LONGITUDE_OF_2ND_POINT "Longitude_Of_2nd_Point"
326 
327 #define SRS_PP_PEG_POINT_LATITUDE "peg_point_latitude"
328 
329 #define SRS_PP_PEG_POINT_LONGITUDE "peg_point_longitude"
330 
331 #define SRS_PP_PEG_POINT_HEADING "peg_point_heading"
332 
333 #define SRS_PP_PEG_POINT_HEIGHT "peg_point_height"
334 
336 #define SRS_UL_METER "Meter"
337 
338 #define SRS_UL_FOOT "Foot (International)" /* or just "FOOT"? */
339 
340 #define SRS_UL_FOOT_CONV "0.3048"
341 
342 #define SRS_UL_US_FOOT "Foot_US" /* or "US survey foot" from EPSG */
343 
344 #define SRS_UL_US_FOOT_CONV "0.3048006096012192"
345 
346 #define SRS_UL_NAUTICAL_MILE "Nautical Mile"
347 
348 #define SRS_UL_NAUTICAL_MILE_CONV "1852.0"
349 
350 #define SRS_UL_LINK "Link" /* Based on US Foot */
351 
352 #define SRS_UL_LINK_CONV "0.20116684023368047"
353 
354 #define SRS_UL_CHAIN "Chain" /* based on US Foot */
355 
356 #define SRS_UL_CHAIN_CONV "20.116684023368047"
357 
358 #define SRS_UL_ROD "Rod" /* based on US Foot */
359 
360 #define SRS_UL_ROD_CONV "5.02921005842012"
361 
362 #define SRS_UL_LINK_Clarke "Link_Clarke"
363 
364 #define SRS_UL_LINK_Clarke_CONV "0.2011661949"
365 
367 #define SRS_UL_KILOMETER "Kilometer"
368 
369 #define SRS_UL_KILOMETER_CONV "1000."
370 
371 #define SRS_UL_DECIMETER "Decimeter"
372 
373 #define SRS_UL_DECIMETER_CONV "0.1"
374 
375 #define SRS_UL_CENTIMETER "Centimeter"
376 
377 #define SRS_UL_CENTIMETER_CONV "0.01"
378 
379 #define SRS_UL_MILLIMETER "Millimeter"
380 
381 #define SRS_UL_MILLIMETER_CONV "0.001"
382 
383 #define SRS_UL_INTL_NAUT_MILE "Nautical_Mile_International"
384 
385 #define SRS_UL_INTL_NAUT_MILE_CONV "1852.0"
386 
387 #define SRS_UL_INTL_INCH "Inch_International"
388 
389 #define SRS_UL_INTL_INCH_CONV "0.0254"
390 
391 #define SRS_UL_INTL_FOOT "Foot_International"
392 
393 #define SRS_UL_INTL_FOOT_CONV "0.3048"
394 
395 #define SRS_UL_INTL_YARD "Yard_International"
396 
397 #define SRS_UL_INTL_YARD_CONV "0.9144"
398 
399 #define SRS_UL_INTL_STAT_MILE "Statute_Mile_International"
400 
401 #define SRS_UL_INTL_STAT_MILE_CONV "1609.344"
402 
403 #define SRS_UL_INTL_FATHOM "Fathom_International"
404 
405 #define SRS_UL_INTL_FATHOM_CONV "1.8288"
406 
407 #define SRS_UL_INTL_CHAIN "Chain_International"
408 
409 #define SRS_UL_INTL_CHAIN_CONV "20.1168"
410 
411 #define SRS_UL_INTL_LINK "Link_International"
412 
413 #define SRS_UL_INTL_LINK_CONV "0.201168"
414 
415 #define SRS_UL_US_INCH "Inch_US_Surveyor"
416 
417 #define SRS_UL_US_INCH_CONV "0.025400050800101603"
418 
419 #define SRS_UL_US_YARD "Yard_US_Surveyor"
420 
421 #define SRS_UL_US_YARD_CONV "0.914401828803658"
422 
423 #define SRS_UL_US_CHAIN "Chain_US_Surveyor"
424 
425 #define SRS_UL_US_CHAIN_CONV "20.11684023368047"
426 
427 #define SRS_UL_US_STAT_MILE "Statute_Mile_US_Surveyor"
428 
429 #define SRS_UL_US_STAT_MILE_CONV "1609.347218694437"
430 
431 #define SRS_UL_INDIAN_YARD "Yard_Indian"
432 
433 #define SRS_UL_INDIAN_YARD_CONV "0.91439523"
434 
435 #define SRS_UL_INDIAN_FOOT "Foot_Indian"
436 
437 #define SRS_UL_INDIAN_FOOT_CONV "0.30479841"
438 
439 #define SRS_UL_INDIAN_CHAIN "Chain_Indian"
440 
441 #define SRS_UL_INDIAN_CHAIN_CONV "20.11669506"
442 
444 #define SRS_UA_DEGREE "degree"
445 
446 #define SRS_UA_DEGREE_CONV "0.0174532925199433"
447 
448 #define SRS_UA_RADIAN "radian"
449 
451 #define SRS_PM_GREENWICH "Greenwich"
452 
454 #define SRS_DN_NAD27 "North_American_Datum_1927"
455 
456 #define SRS_DN_NAD83 "North_American_Datum_1983"
457 
458 #define SRS_DN_WGS72 "WGS_1972"
459 
460 #define SRS_DN_WGS84 "WGS_1984"
461 
463 #define SRS_WGS84_SEMIMAJOR 6378137.0
464 
465 #define SRS_WGS84_INVFLATTENING 298.257223563
466 
467 #ifndef SWIG
468 /* -------------------------------------------------------------------- */
469 /* C Wrappers for C++ objects and methods. */
470 /* -------------------------------------------------------------------- */
471 #ifndef DEFINED_OGRSpatialReferenceH
472 
473 #define DEFINED_OGRSpatialReferenceH
474 
476 #ifdef DEBUG
477 typedef struct OGRSpatialReferenceHS *OGRSpatialReferenceH;
478 typedef struct OGRCoordinateTransformationHS *OGRCoordinateTransformationH;
479 #else
480 
481 typedef void *OGRSpatialReferenceH;
484 #endif
485 
486 #endif
487 
488 OGRSpatialReferenceH CPL_DLL CPL_STDCALL
489  OSRNewSpatialReference( const char * /* = NULL */);
491 OGRSpatialReferenceH CPL_DLL CPL_STDCALL OSRClone( OGRSpatialReferenceH );
492 void CPL_DLL CPL_STDCALL OSRDestroySpatialReference( OGRSpatialReferenceH );
493 
494 int CPL_DLL OSRReference( OGRSpatialReferenceH );
495 int CPL_DLL OSRDereference( OGRSpatialReferenceH );
496 void CPL_DLL OSRRelease( OGRSpatialReferenceH );
497 
502 
503 OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSG( OGRSpatialReferenceH, int );
504 OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSGA( OGRSpatialReferenceH, int );
505 OGRErr CPL_DLL OSRImportFromWkt( OGRSpatialReferenceH, char ** );
506 OGRErr CPL_DLL OSRImportFromProj4( OGRSpatialReferenceH, const char *);
508 OGRErr CPL_DLL OSRImportFromPCI( OGRSpatialReferenceH hSRS, const char *,
509  const char *, double * );
511  long, long, double *, long);
512 OGRErr CPL_DLL OSRImportFromXML( OGRSpatialReferenceH, const char * );
513 OGRErr CPL_DLL OSRImportFromDict( OGRSpatialReferenceH, const char *,
514  const char * );
515 OGRErr CPL_DLL OSRImportFromPanorama( OGRSpatialReferenceH, long, long, long,
516  double * );
517 OGRErr CPL_DLL OSRImportFromOzi( OGRSpatialReferenceH , const char * const *);
518 OGRErr CPL_DLL OSRImportFromMICoordSys( OGRSpatialReferenceH, const char *);
520  const char *, const char *, const char * );
521 OGRErr CPL_DLL OSRImportFromUrl( OGRSpatialReferenceH, const char * );
522 
523 OGRErr CPL_DLL CPL_STDCALL OSRExportToWkt( OGRSpatialReferenceH, char ** );
524 OGRErr CPL_DLL CPL_STDCALL OSRExportToPrettyWkt( OGRSpatialReferenceH, char **, int);
525 OGRErr CPL_DLL CPL_STDCALL OSRExportToProj4( OGRSpatialReferenceH, char **);
526 OGRErr CPL_DLL OSRExportToPCI( OGRSpatialReferenceH, char **, char **,
527  double ** );
528 OGRErr CPL_DLL OSRExportToUSGS( OGRSpatialReferenceH, long *, long *,
529  double **, long * );
530 OGRErr CPL_DLL OSRExportToXML( OGRSpatialReferenceH, char **, const char * );
531 OGRErr CPL_DLL OSRExportToPanorama( OGRSpatialReferenceH, long *, long *,
532  long *, long *, double * );
534 OGRErr CPL_DLL OSRExportToERM( OGRSpatialReferenceH, char *, char *, char * );
535 
538 
539 OGRErr CPL_DLL CPL_STDCALL OSRSetAttrValue( OGRSpatialReferenceH hSRS,
540  const char * pszNodePath,
541  const char * pszNewNodeValue );
542 const char CPL_DLL * CPL_STDCALL OSRGetAttrValue( OGRSpatialReferenceH hSRS,
543  const char * pszName, int iChild /* = 0 */ );
544 
545 OGRErr CPL_DLL OSRSetAngularUnits( OGRSpatialReferenceH, const char *, double );
546 double CPL_DLL OSRGetAngularUnits( OGRSpatialReferenceH, char ** );
547 OGRErr CPL_DLL OSRSetLinearUnits( OGRSpatialReferenceH, const char *, double );
548 OGRErr CPL_DLL OSRSetTargetLinearUnits( OGRSpatialReferenceH, const char *, const char *, double );
550  OGRSpatialReferenceH, const char *, double );
551 double CPL_DLL OSRGetLinearUnits( OGRSpatialReferenceH, char ** );
552 double CPL_DLL OSRGetTargetLinearUnits( OGRSpatialReferenceH, const char *, char ** );
553 
554 double CPL_DLL OSRGetPrimeMeridian( OGRSpatialReferenceH, char ** );
555 
557 int CPL_DLL OSRIsLocal( OGRSpatialReferenceH );
558 int CPL_DLL OSRIsProjected( OGRSpatialReferenceH );
559 int CPL_DLL OSRIsCompound( OGRSpatialReferenceH );
561 int CPL_DLL OSRIsVertical( OGRSpatialReferenceH );
565 
566 OGRErr CPL_DLL OSRSetLocalCS( OGRSpatialReferenceH hSRS, const char *pszName );
567 OGRErr CPL_DLL OSRSetProjCS( OGRSpatialReferenceH hSRS, const char * pszName );
568 OGRErr CPL_DLL OSRSetGeocCS( OGRSpatialReferenceH hSRS, const char * pszName );
570  const char * pszName );
571 OGRErr CPL_DLL CPL_STDCALL OSRSetFromUserInput( OGRSpatialReferenceH hSRS,
572  const char * );
574  const OGRSpatialReferenceH hSrcSRS );
576  double, double, double,
577  double, double, double, double );
578 OGRErr CPL_DLL OSRGetTOWGS84( OGRSpatialReferenceH hSRS, double *, int );
579 
581  const char *pszName,
582  OGRSpatialReferenceH hHorizSRS,
583  OGRSpatialReferenceH hVertSRS );
585  const char * pszGeogName,
586  const char * pszDatumName,
587  const char * pszEllipsoidName,
588  double dfSemiMajor, double dfInvFlattening,
589  const char * pszPMName /* = NULL */,
590  double dfPMOffset /* = 0.0 */,
591  const char * pszUnits /* = NULL */,
592  double dfConvertToRadians /* = 0.0 */ );
593 
595  const char * pszVertCSName,
596  const char * pszVertDatumName,
597  int nVertDatumType );
598 
599 double CPL_DLL OSRGetSemiMajor( OGRSpatialReferenceH, OGRErr * /* = NULL */ );
600 double CPL_DLL OSRGetSemiMinor( OGRSpatialReferenceH, OGRErr * /* = NULL */ );
601 double CPL_DLL OSRGetInvFlattening( OGRSpatialReferenceH, OGRErr * /*=NULL*/);
602 
604  const char * pszTargetKey,
605  const char * pszAuthority,
606  int nCode );
607 const char CPL_DLL *OSRGetAuthorityCode( OGRSpatialReferenceH hSRS,
608  const char * pszTargetKey );
609 const char CPL_DLL *OSRGetAuthorityName( OGRSpatialReferenceH hSRS,
610  const char * pszTargetKey );
611 OGRErr CPL_DLL OSRSetProjection( OGRSpatialReferenceH, const char * );
612 OGRErr CPL_DLL OSRSetProjParm( OGRSpatialReferenceH, const char *, double );
613 double CPL_DLL OSRGetProjParm( OGRSpatialReferenceH hSRS,
614  const char * pszParmName,
615  double dfDefault /* = 0.0 */,
616  OGRErr * /* = NULL */ );
617 OGRErr CPL_DLL OSRSetNormProjParm( OGRSpatialReferenceH, const char *, double);
618 double CPL_DLL OSRGetNormProjParm( OGRSpatialReferenceH hSRS,
619  const char * pszParmName,
620  double dfDefault /* = 0.0 */,
621  OGRErr * /* = NULL */ );
622 
623 OGRErr CPL_DLL OSRSetUTM( OGRSpatialReferenceH hSRS, int nZone, int bNorth );
624 int CPL_DLL OSRGetUTMZone( OGRSpatialReferenceH hSRS, int *pbNorth );
626  int nZone, int bNAD83 );
628  int nZone, int bNAD83,
629  const char *pszOverrideUnitName,
630  double dfOverrideUnit );
632 
633 int CPL_DLL OSREPSGTreatsAsLatLong( OGRSpatialReferenceH hSRS );
635 const char CPL_DLL *OSRGetAxis( OGRSpatialReferenceH hSRS,
636  const char *pszTargetKey, int iAxis,
637  OGRAxisOrientation *peOrientation );
639  const char *pszTargetKey,
640  const char *pszXAxisName,
641  OGRAxisOrientation eXAxisOrientation,
642  const char *pszYAxisName,
643  OGRAxisOrientation eYAxisOrientation );
645 OGRErr CPL_DLL OSRSetACEA( OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2,
646  double dfCenterLat, double dfCenterLong,
647  double dfFalseEasting, double dfFalseNorthing );
648 
650 OGRErr CPL_DLL OSRSetAE( OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong,
651  double dfFalseEasting, double dfFalseNorthing );
652 
655  double dfStandardParallel, double dfCentralMeridian,
656  double dfFalseEasting, double dfFalseNorthing );
657 
659 OGRErr CPL_DLL OSRSetCEA( OGRSpatialReferenceH hSRS, double dfStdP1, double dfCentralMeridian,
660  double dfFalseEasting, double dfFalseNorthing );
661 
663 OGRErr CPL_DLL OSRSetCS( OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong,
664  double dfFalseEasting, double dfFalseNorthing );
665 
667 OGRErr CPL_DLL OSRSetEC( OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2,
668  double dfCenterLat, double dfCenterLong,
669  double dfFalseEasting, double dfFalseNorthing );
670 
672 OGRErr CPL_DLL OSRSetEckert( OGRSpatialReferenceH hSRS, int nVariation,
673  double dfCentralMeridian,
674  double dfFalseEasting, double dfFalseNorthing );
675 
677 OGRErr CPL_DLL OSRSetEckertIV( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
678  double dfFalseEasting, double dfFalseNorthing );
679 
681 OGRErr CPL_DLL OSRSetEckertVI( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
682  double dfFalseEasting, double dfFalseNorthing );
683 
686  double dfCenterLat, double dfCenterLong,
687  double dfFalseEasting, double dfFalseNorthing );
688 
691  double dfCenterLat, double dfCenterLong,
692  double dfPseudoStdParallel1,
693  double dfFalseEasting,
694  double dfFalseNorthing );
695 
697 OGRErr CPL_DLL OSRSetGS( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
698  double dfFalseEasting, double dfFalseNorthing );
699 
701 OGRErr CPL_DLL OSRSetGH( OGRSpatialReferenceH hSRS, double dfCentralMeridian,
702  double dfFalseEasting, double dfFalseNorthing );
703 
705 OGRErr CPL_DLL OSRSetIGH( OGRSpatialReferenceH hSRS );
706 
709  double dfCentralMeridian, double dfSatelliteHeight,
710  double dfFalseEasting, double dfFalseNorthing );
711 
714  double dfCenterLat, double dfCenterLong,
715  double dfScale,
716  double dfFalseEasting,
717  double dfFalseNorthing );
720  double dfCenterLat, double dfCenterLong,
721  double dfFalseEasting, double dfFalseNorthing );
722 
724 OGRErr CPL_DLL OSRSetOM( OGRSpatialReferenceH hSRS,
725  double dfCenterLat, double dfCenterLong,
726  double dfAzimuth, double dfRectToSkew,
727  double dfScale,
728  double dfFalseEasting, double dfFalseNorthing );
729 
732  double dfCenterLat, double dfCenterLong,
733  double dfAzimuth, double dfRectToSkew,
734  double dfScale,
735  double dfFalseEasting, double dfFalseNorthing );
736 
738  double dfCenterLat, double dfCenterLong,
739  double dfAzimuth, double dfRectToSkew,
740  double dfScale,
741  double dfFalseEasting,
742  double dfFalseNorthing );
743 
745 OGRErr CPL_DLL OSRSetHOM2PNO( OGRSpatialReferenceH hSRS, double dfCenterLat,
746  double dfLat1, double dfLong1,
747  double dfLat2, double dfLong2,
748  double dfScale,
749  double dfFalseEasting, double dfFalseNorthing );
750 
753  double dfLat1, double dfLat2,
754  double dfCenterLong,
755  double dfFalseEasting,
756  double dfFalseNorthing );
757 
760  double dfCenterLat, double dfCenterLong,
761  double dfAzimuth, double dfPseudoStdParallelLat,
762  double dfScale,
763  double dfFalseEasting, double dfFalseNorthing );
764 
767  double dfCenterLat, double dfCenterLong,
768  double dfFalseEasting, double dfFalseNorthing );
769 
772  double dfStdP1, double dfStdP2,
773  double dfCenterLat, double dfCenterLong,
774  double dfFalseEasting, double dfFalseNorthing );
775 
778  double dfCenterLat, double dfCenterLong,
779  double dfScale,
780  double dfFalseEasting, double dfFalseNorthing );
781 
784  double dfStdP1, double dfStdP2,
785  double dfCenterLat, double dfCenterLong,
786  double dfFalseEasting, double dfFalseNorthing );
787 
789 OGRErr CPL_DLL OSRSetMC( OGRSpatialReferenceH hSRS,
790  double dfCenterLat, double dfCenterLong,
791  double dfFalseEasting, double dfFalseNorthing );
792 
795  double dfCenterLat, double dfCenterLong,
796  double dfScale,
797  double dfFalseEasting, double dfFalseNorthing );
798 
801  double dfStdP1,
802  double dfCenterLat, double dfCenterLong,
803  double dfFalseEasting, double dfFalseNorthing );
804 
807  double dfCentralMeridian,
808  double dfFalseEasting,
809  double dfFalseNorthing );
810 
813  double dfCenterLat, double dfCenterLong,
814  double dfFalseEasting, double dfFalseNorthing );
815 
817 OGRErr CPL_DLL OSRSetOS( OGRSpatialReferenceH hSRS,
818  double dfOriginLat, double dfCMeridian,
819  double dfScale,
820  double dfFalseEasting,double dfFalseNorthing);
821 
824  double dfCenterLat, double dfCenterLong,
825  double dfFalseEasting,
826  double dfFalseNorthing);
827 
830  double dfCenterLat, double dfCenterLong,
831  double dfFalseEasting, double dfFalseNorthing );
832 
834 OGRErr CPL_DLL OSRSetPS( OGRSpatialReferenceH hSRS,
835  double dfCenterLat, double dfCenterLong,
836  double dfScale,
837  double dfFalseEasting, double dfFalseNorthing);
838 
841  double dfCenterLong,
842  double dfFalseEasting, double dfFalseNorthing );
843 
846  double dfCenterLong,
847  double dfFalseEasting,
848  double dfFalseNorthing );
849 
852  double dfCenterLat, double dfCenterLong,
853  double dfScale,
854  double dfFalseEasting,
855  double dfFalseNorthing);
856 
859  double dfLatitudeOfOrigin, double dfCentralMeridian,
860  double dfFalseEasting, double dfFalseNorthing );
861 
868 OGRErr CPL_DLL OSRSetTM( OGRSpatialReferenceH hSRS,
869  double dfCenterLat, double dfCenterLong,
870  double dfScale,
871  double dfFalseEasting, double dfFalseNorthing );
872 
874 OGRErr CPL_DLL OSRSetTMVariant(
875  OGRSpatialReferenceH hSRS, const char *pszVariantName,
876  double dfCenterLat, double dfCenterLong,
877  double dfScale,
878  double dfFalseEasting, double dfFalseNorthing );
879 
882  double dfCenterLat, double dfCenterLong,
883  double dfFalseEasting, double dfFalseNorthing );
884 
887  double dfCenterLat, double dfCenterLong,
888  double dfScale,
889  double dfFalseEasting, double dfFalseNorthing );
890 
893  double dfLat1, double dfLong1,
894  double dfLat2, double dfLong2,
895  double dfFalseEasting, double dfFalseNorthing );
896 
899  double dfCenterLong,
900  double dfFalseEasting, double dfFalseNorthing );
901 
903 OGRErr CPL_DLL OSRSetWagner( OGRSpatialReferenceH hSRS, int nVariation,
904  double dfCenterLat,
905  double dfFalseEasting,
906  double dfFalseNorthing );
907 
910  double dfCenterLat, double dfCenterLong );
911 
914  double dfPegLat, double dfPegLong,
915  double dfPegHeading, double dfPegHgt);
916 
917 double CPL_DLL OSRCalcInvFlattening( double dfSemiMajor, double dfSemiMinor );
918 double CPL_DLL OSRCalcSemiMinorFromInvFlattening( double dfSemiMajor, double dfInvFlattening );
919 
920 void CPL_DLL OSRCleanup( void );
921 
922 /* -------------------------------------------------------------------- */
923 /* OGRCoordinateTransform C API. */
924 /* -------------------------------------------------------------------- */
925 OGRCoordinateTransformationH CPL_DLL CPL_STDCALL
927  OGRSpatialReferenceH hTargetSRS );
928 void CPL_DLL CPL_STDCALL
930 
931 int CPL_DLL CPL_STDCALL
933  int nCount, double *x, double *y, double *z );
934 
935 int CPL_DLL CPL_STDCALL
937  int nCount, double *x, double *y, double *z,
938  int *pabSuccess );
939 
941 /* this is really private to OGR. */
942 char *OCTProj4Normalize( const char *pszProj4Src );
943 
944 void OCTCleanupProjMutex( void );
947 /* -------------------------------------------------------------------- */
948 /* Projection transform dictionary query. */
949 /* -------------------------------------------------------------------- */
950 
951 char CPL_DLL ** OPTGetProjectionMethods( void );
952 char CPL_DLL ** OPTGetParameterList( const char * pszProjectionMethod,
953  char ** ppszUserName );
954 int CPL_DLL OPTGetParameterInfo( const char * pszProjectionMethod,
955  const char * pszParameterName,
956  char ** ppszUserName,
957  char ** ppszType,
958  double *pdfDefaultValue );
959 
960 CPL_C_END
961 
962 #endif /* ndef SWIG */
963 
964 #endif /* ndef OGR_SRS_API_H_INCLUDED */
double OSRGetNormProjParm(OGRSpatialReferenceH hSRS, const char *pszParmName, double dfDefault, OGRErr *)
This function is the same as OGRSpatialReference::
Definition: ogrspatialreference.cpp:3703
void OSRDestroySpatialReference(OGRSpatialReferenceH)
OGRSpatialReference destructor.
Definition: ogrspatialreference.cpp:223
OGRErr OSRSetMercator2SP(OGRSpatialReferenceH hSRS, double dfStdP1, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Mercator 2SP.
Definition: ogrspatialreference.cpp:5139
int OCTTransformEx(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z, int *pabSuccess)
Transform an array of points.
Definition: ogrct.cpp:1302
OGRSpatialReferenceH OSRClone(OGRSpatialReferenceH)
Make a duplicate of this OGRSpatialReference.
Definition: ogrspatialreference.cpp:588
OGRErr OSRSetEquirectangular2(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfPseudoStdParallel1, double dfFalseEasting, double dfFalseNorthing)
Equirectangular generalized form.
Definition: ogrspatialreference.cpp:4377
OGRErr OSRSetIWMPolyconic(OGRSpatialReferenceH hSRS, double dfLat1, double dfLat2, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
International Map of the World Polyconic.
Definition: ogrspatialreference.cpp:4828
OGRErr OSRSetLocalCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible LOCAL_CS name.
Definition: ogrspatialreference.cpp:3020
OGRErr OSRMorphFromESRI(OGRSpatialReferenceH)
Convert in place from ESRI WKT format.
Definition: ogr_srs_esri.cpp:2375
OGRErr OSRFixup(OGRSpatialReferenceH)
Fixup as needed.
Definition: ogrspatialreference.cpp:7088
int OSRIsCompound(OGRSpatialReferenceH)
Check if the coordinate system is compound.
Definition: ogrspatialreference.cpp:6168
OGRErr OSRSetUTM(OGRSpatialReferenceH hSRS, int nZone, int bNorth)
Set UTM projection definition.
Definition: ogrspatialreference.cpp:5615
int OPTGetParameterInfo(const char *pszProjectionMethod, const char *pszParameterName, char **ppszUserName, char **ppszType, double *pdfDefaultValue)
Fetch information about a single parameter of a projection method.
Definition: ogr_opt.cpp:603
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:352
OGRErr OSRSetNZMG(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
New Zealand Map Grid.
Definition: ogrspatialreference.cpp:5208
OGRErr OSRFixupOrdering(OGRSpatialReferenceH)
Correct parameter ordering to match CT Specification.
Definition: ogrspatialreference.cpp:7015
OGRErr OSRSetMercator(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Mercator.
Definition: ogrspatialreference.cpp:5097
OGRErr OSRImportFromEPSG(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2157
OGRErr OSRImportFromEPSGA(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2314
OGRErr OSRSetOrthographic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Orthographic.
Definition: ogrspatialreference.cpp:5280
OGRErr OSRSetTPED(OGRSpatialReferenceH hSRS, double dfLat1, double dfLong1, double dfLat2, double dfLong2, double dfFalseEasting, double dfFalseNorthing)
TPED (Two Point Equi Distant)
Definition: ogrspatialreference.cpp:3903
OGRErr OSRSetTMG(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Tunesia Mining Grid.
Definition: ogrspatialreference.cpp:3957
OGRErr OSRSetLinearUnits(OGRSpatialReferenceH, const char *, double)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:1206
int OSRIsLocal(OGRSpatialReferenceH)
Check if local coordinate system.
Definition: ogrspatialreference.cpp:6340
South.
Definition: ogr_srs_api.h:51
OGRErr OSRSetHOM2PNO(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfLat1, double dfLong1, double dfLat2, double dfLong2, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Hotine Oblique Mercator using two points on centerline.
Definition: ogrspatialreference.cpp:4786
int OSRReference(OGRSpatialReferenceH)
Increments the reference count by one.
Definition: ogrspatialreference.cpp:311
OGRErr OSRSetGaussSchreiberTMercator(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Gauss Schreiber Transverse Mercator.
Definition: ogrspatialreference.cpp:4546
OGRErr OSRSetProjCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible PROJCS name.
Definition: ogrspatialreference.cpp:3360
OGRErr OSRImportFromPanorama(OGRSpatialReferenceH, long, long, long, double *)
Import coordinate system from "Panorama" GIS projection definition.
Definition: ogr_srs_panorama.cpp:159
OGRErr OSRAutoIdentifyEPSG(OGRSpatialReferenceH hSRS)
Set EPSG authority info if possible.
Definition: ogr_fromepsg.cpp:2709
OGRErr OSRSetHOMAC(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfRectToSkew, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Set an Oblique Mercator projection using azimuth angle.
Definition: ogrspatialreference.cpp:4649
OGRErr OSRSetOM(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfRectToSkew, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Oblique Mercator (aka HOM (variant B)
void * OGRSpatialReferenceH
Opaque type for a Spatial Reference object.
Definition: ogr_srs_api.h:481
double OSRGetTargetLinearUnits(OGRSpatialReferenceH, const char *, char **)
Fetch linear projection units.
Definition: ogrspatialreference.cpp:1445
OGRErr OSRSetLAEA(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Azimuthal Equal-Area.
Definition: ogrspatialreference.cpp:4908
const char * OSRGetAxis(OGRSpatialReferenceH hSRS, const char *pszTargetKey, int iAxis, OGRAxisOrientation *peOrientation)
Fetch the orientation of one axis.
Definition: ogrspatialreference.cpp:7346
West.
Definition: ogr_srs_api.h:53
OGRErr OSRSetVDG(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
VanDerGrinten.
Definition: ogrspatialreference.cpp:5534
char ** OPTGetProjectionMethods(void)
Fetch list of possible projection methods.
Definition: ogr_opt.cpp:506
OGRErr OSRSetProjection(OGRSpatialReferenceH, const char *)
Set a projection name.
Definition: ogrspatialreference.cpp:3418
const char * OSRGetAuthorityName(OGRSpatialReferenceH hSRS, const char *pszTargetKey)
Get the authority name for a node.
Definition: ogrspatialreference.cpp:6033
OGRErr OSRSetLinearUnitsAndUpdateParameters(OGRSpatialReferenceH, const char *, double)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:1155
OGRErr OSRSetGnomonic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Gnomonic.
Definition: ogrspatialreference.cpp:4583
OGRErr OSRSetGEOS(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfSatelliteHeight, double dfFalseEasting, double dfFalseNorthing)
GEOS - Geostationary Satellite View.
Definition: ogrspatialreference.cpp:4507
OGRErr OSRImportFromProj4(OGRSpatialReferenceH, const char *)
Import PROJ.4 coordinate string.
Definition: ogr_srs_proj4.cpp:362
OGRErr OSRSetEquirectangular(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Equirectangular.
Definition: ogrspatialreference.cpp:4338
OGRErr OSRSetAuthority(OGRSpatialReferenceH hSRS, const char *pszTargetKey, const char *pszAuthority, int nCode)
Set the authority for a node.
Definition: ogrspatialreference.cpp:5881
OGRErr OSRSetTMSO(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator (South Oriented)
Definition: ogrspatialreference.cpp:3920
OGRErr OSRSetEckertIV(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert IV.
Definition: ogrspatialreference.cpp:4266
OGRErr OSRSetMC(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Miller Cylindrical.
Definition: ogrspatialreference.cpp:5058
OGRErr OSRExportToPCI(OGRSpatialReferenceH, char **, char **, double **)
Export coordinate system in PCI projection definition.
Definition: ogr_srs_pci.cpp:731
OGRErr OSRSetAngularUnits(OGRSpatialReferenceH, const char *, double)
Set the angular units for the geographic coordinate system.
Definition: ogrspatialreference.cpp:1005
OGRSpatialReferenceH OSRNewSpatialReference(const char *)
Constructor.
Definition: ogrspatialreference.cpp:131
OGRErr OSRImportFromPCI(OGRSpatialReferenceH hSRS, const char *, const char *, double *)
Import coordinate system from PCI projection definition.
Definition: ogr_srs_pci.cpp:147
OGRErr OSRGetTOWGS84(OGRSpatialReferenceH hSRS, double *, int)
Fetch TOWGS84 parameters, if available.
Definition: ogrspatialreference.cpp:6880
double OSRGetSemiMinor(OGRSpatialReferenceH, OGRErr *)
Get spheroid semi minor axis.
Definition: ogrspatialreference.cpp:2968
void OSRCleanup(void)
Cleanup cached SRS related memory.
Definition: ogrspatialreference.cpp:7226
double OSRGetLinearUnits(OGRSpatialReferenceH, char **)
Fetch linear projection units.
Definition: ogrspatialreference.cpp:1358
OGRErr OSRSetKrovak(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfPseudoStdParallelLat, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Krovak Oblique Conic Conformal.
Definition: ogrspatialreference.cpp:4869
Down (to Earth center)
Definition: ogr_srs_api.h:55
OGRErr OSRSetCompoundCS(OGRSpatialReferenceH hSRS, const char *pszName, OGRSpatialReferenceH hHorizSRS, OGRSpatialReferenceH hVertSRS)
Setup a compound coordinate system.
Definition: ogrspatialreference.cpp:3288
OGRErr OSRSetEckert(OGRSpatialReferenceH hSRS, int nVariation, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert I-VI.
Definition: ogrspatialreference.cpp:4229
void * OGRCoordinateTransformationH
Opaque type for a coordinate transformation object.
Definition: ogr_api.h:71
double OSRCalcSemiMinorFromInvFlattening(double dfSemiMajor, double dfInvFlattening)
Compute semi-minor axis from semi-major axis and inverse flattening.
Definition: ogrspatialreference.cpp:7639
OGRErr OSRSetTM(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator.
Definition: ogrspatialreference.cpp:3800
OGRErr OSRSetSOC(OGRSpatialReferenceH hSRS, double dfLatitudeOfOrigin, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Swiss Oblique Cylindrical.
Definition: ogrspatialreference.cpp:5501
OGRErr OSRImportFromDict(OGRSpatialReferenceH, const char *, const char *)
Read SRS from WKT dictionary.
Definition: ogr_srs_dict.cpp:154
int OSRDereference(OGRSpatialReferenceH)
Decrements the reference count by one.
Definition: ogrspatialreference.cpp:351
void OCTDestroyCoordinateTransformation(OGRCoordinateTransformationH)
OGRCoordinateTransformation destructor.
Definition: ogrct.cpp:378
int OSRIsGeocentric(OGRSpatialReferenceH)
Check if geocentric coordinate system.
Definition: ogrspatialreference.cpp:6257
Up (to space)
Definition: ogr_srs_api.h:54
OGRErr OSRStripCTParms(OGRSpatialReferenceH)
Strip OGC CT Parameters.
Definition: ogrspatialreference.cpp:6130
North.
Definition: ogr_srs_api.h:50
int OSRIsSame(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do these two spatial references describe the same system ?
Definition: ogrspatialreference.cpp:6732
OGRErr OSRSetTOWGS84(OGRSpatialReferenceH hSRS, double, double, double, double, double, double, double)
Set the Bursa-Wolf conversion to WGS84.
Definition: ogrspatialreference.cpp:6826
OGRSpatialReferenceH OSRCloneGeogCS(OGRSpatialReferenceH)
Make a duplicate of the GEOGCS node of this OGRSpatialReference object.
Definition: ogrspatialreference.cpp:6457
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:69
OGRErr OSRSetPolyconic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Polyconic.
Definition: ogrspatialreference.cpp:5317
OGRErr OSRSetPS(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Polar Stereographic.
Definition: ogrspatialreference.cpp:5353
OGRErr OSRSetMollweide(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Mollweide.
Definition: ogrspatialreference.cpp:5174
OGRErr OSRSetFromUserInput(OGRSpatialReferenceH hSRS, const char *)
Set spatial reference from various text formats.
Definition: ogrspatialreference.cpp:2206
OGRErr OSRSetGeocCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible PROJCS name.
Definition: ogrspatialreference.cpp:3098
const char * OSRAxisEnumToName(OGRAxisOrientation eOrientation)
Return the string representation for the OGRAxisOrientation enumeration.
Definition: ogrspatialreference.cpp:7368
OGRErr OSRExportToUSGS(OGRSpatialReferenceH, long *, long *, double **, long *)
Export coordinate system in USGS GCTP projection definition.
Definition: ogr_srs_usgs.cpp:798
OGRErr OSRSetHOM(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfRectToSkew, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Hotine Oblique Mercator using azimuth angle.
Definition: ogrspatialreference.cpp:4717
OGRErr OSRSetIGH(OGRSpatialReferenceH hSRS)
Interrupted Goode Homolosine.
Definition: ogrspatialreference.cpp:4476
double OSRGetAngularUnits(OGRSpatialReferenceH, char **)
Fetch angular geographic coordinate system units.
Definition: ogrspatialreference.cpp:1075
Core portability services for cross-platform OGR code.
OGRErr OSRSetGeogCS(OGRSpatialReferenceH hSRS, const char *pszGeogName, const char *pszDatumName, const char *pszEllipsoidName, double dfSemiMajor, double dfInvFlattening, const char *pszPMName, double dfPMOffset, const char *pszUnits, double dfConvertToRadians)
Set geographic coordinate system.
Definition: ogrspatialreference.cpp:1705
OGRErr OSRSetWagner(OGRSpatialReferenceH hSRS, int nVariation, double dfCenterLat, double dfFalseEasting, double dfFalseNorthing)
Wagner I – VII.
Definition: ogrspatialreference.cpp:5744
double OSRCalcInvFlattening(double dfSemiMajor, double dfSemiMinor)
Compute inverse flattening from semi-major and semi-minor axis.
Definition: ogrspatialreference.cpp:7611
OGRErr OSRSetACEA(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Albers Conic Equal Area.
Definition: ogrspatialreference.cpp:3995
OGRErr OSRValidate(OGRSpatialReferenceH)
Validate SRS tokens.
Definition: ogr_srs_validate.cpp:1152
OGRErr OSRExportToProj4(OGRSpatialReferenceH, char **)
Export coordinate system in PROJ.4 format.
Definition: ogr_srs_proj4.cpp:1405
OGRAxisOrientation
Axis orientations (corresponds to CS_AxisOrientationEnum).
Definition: ogr_srs_api.h:48
OGRErr OSRSetLCCB(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic (Belgium)
Definition: ogrspatialreference.cpp:5022
OGRErr OSRExportToXML(OGRSpatialReferenceH, char **, const char *)
Export coordinate system in XML format.
Definition: ogr_srs_xml.cpp:739
int OSRIsSameVertCS(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do the VertCS'es match?
Definition: ogrspatialreference.cpp:6630
OGRErr OSRImportFromOzi(OGRSpatialReferenceH, const char *const *)
Import coordinate system from OziExplorer projection definition.
Definition: ogr_srs_ozi.cpp:68
int OSRIsGeographic(OGRSpatialReferenceH)
Check if geographic coordinate system.
Definition: ogrspatialreference.cpp:6302
OGRErr OSRExportToWkt(OGRSpatialReferenceH, char **)
Convert this SRS into WKT format.
Definition: ogrspatialreference.cpp:722
double OSRGetProjParm(OGRSpatialReferenceH hSRS, const char *pszParmName, double dfDefault, OGRErr *)
Fetch a projection parameter value.
Definition: ogrspatialreference.cpp:3632
OGRErr OSRExportToERM(OGRSpatialReferenceH, char *, char *, char *)
Convert coordinate system to ERMapper format.
Definition: ogr_srs_erm.cpp:147
OGRErr OSRSetBonne(OGRSpatialReferenceH hSRS, double dfStandardParallel, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Bonne.
Definition: ogrspatialreference.cpp:4067
OGRErr OSRExportToMICoordSys(OGRSpatialReferenceH, char **)
Export coordinate system in Mapinfo style CoordSys format.
Definition: ogrspatialreference.cpp:7495
OGRErr OSRSetQSC(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong)
Quadrilateralized Spherical Cube.
Definition: ogrspatialreference.cpp:5774
OGRErr OSRImportFromESRI(OGRSpatialReferenceH, char **)
Import coordinate system from ESRI .prj format(s).
Definition: ogr_srs_esri.cpp:508
const char * OSRGetAuthorityCode(OGRSpatialReferenceH hSRS, const char *pszTargetKey)
Get the authority code for a node.
Definition: ogrspatialreference.cpp:5957
OGRErr OSRSetAxes(OGRSpatialReferenceH hSRS, const char *pszTargetKey, const char *pszXAxisName, OGRAxisOrientation eXAxisOrientation, const char *pszYAxisName, OGRAxisOrientation eYAxisOrientation)
Set the axes for a coordinate system.
Definition: ogrspatialreference.cpp:7466
OGRErr OSRImportFromERM(OGRSpatialReferenceH, const char *, const char *, const char *)
Create OGR WKT from ERMapper projection definitions.
Definition: ogr_srs_erm.cpp:55
int OSRGetUTMZone(OGRSpatialReferenceH hSRS, int *pbNorth)
Get utm zone information.
Definition: ogrspatialreference.cpp:5692
OGRErr OSRCopyGeogCSFrom(OGRSpatialReferenceH hSRS, const OGRSpatialReferenceH hSrcSRS)
Copy GEOGCS from another OGRSpatialReference.
Definition: ogrspatialreference.cpp:1947
OGRErr OSRExportToPanorama(OGRSpatialReferenceH, long *, long *, long *, long *, double *)
Export coordinate system in "Panorama" GIS projection definition.
Definition: ogr_srs_panorama.cpp:504
int OSREPSGTreatsAsLatLong(OGRSpatialReferenceH hSRS)
This function returns TRUE if EPSG feels this geographic coordinate system should be treated as havin...
Definition: ogr_fromepsg.cpp:2772
OGRErr OSRSetNormProjParm(OGRSpatialReferenceH, const char *, double)
Set a projection parameter with a normalized value.
Definition: ogrspatialreference.cpp:3766
OGRCoordinateTransformationH OCTNewCoordinateTransformation(OGRSpatialReferenceH hSourceSRS, OGRSpatialReferenceH hTargetSRS)
Create transformation object.
Definition: ogrct.cpp:480
double OSRGetPrimeMeridian(OGRSpatialReferenceH, char **)
Fetch prime meridian info.
Definition: ogrspatialreference.cpp:1509
OGRErr OSRSetWellKnownGeogCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set a GeogCS based on well known name.
Definition: ogrspatialreference.cpp:1849
OGRErr OSRSetGH(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Goode Homolosine.
Definition: ogrspatialreference.cpp:4447
OGRErr OSRSetSCH(OGRSpatialReferenceH hSRS, double dfPegLat, double dfPegLong, double dfPegHeading, double dfPegHgt)
Spherical, Cross-track, Height.
Definition: ogrspatialreference.cpp:5805
OGRErr OSRSetVertCS(OGRSpatialReferenceH hSRS, const char *pszVertCSName, const char *pszVertDatumName, int nVertDatumType)
Setup the vertical coordinate system.
Definition: ogrspatialreference.cpp:3209
int OSRIsSameGeogCS(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do the GeogCS'es match?
Definition: ogrspatialreference.cpp:6567
int OSREPSGTreatsAsNorthingEasting(OGRSpatialReferenceH hSRS)
This function returns TRUE if EPSG feels this geographic coordinate system should be treated as havin...
Definition: ogr_fromepsg.cpp:2838
OGRErr OSRSetTargetLinearUnits(OGRSpatialReferenceH, const char *, const char *, double)
Set the linear units for the target node.
Definition: ogrspatialreference.cpp:1310
int OSRIsVertical(OGRSpatialReferenceH)
Check if vertical coordinate system.
Definition: ogrspatialreference.cpp:6388
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:354
OGRErr OSRSetStatePlaneWithUnits(OGRSpatialReferenceH hSRS, int nZone, int bNAD83, const char *pszOverrideUnitName, double dfOverrideUnit)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:2477
OGRErr OSRSetEC(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Equidistant Conic.
Definition: ogrspatialreference.cpp:4173
char ** OPTGetParameterList(const char *pszProjectionMethod, char **ppszUserName)
Fetch the parameters for a given projection method.
Definition: ogr_opt.cpp:540
OGRErr OSRSetSinusoidal(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Sinusoidal.
Definition: ogrspatialreference.cpp:5421
East.
Definition: ogr_srs_api.h:52
OGRErr OSRSetEckertVI(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert VI.
Definition: ogrspatialreference.cpp:4302
void OSRRelease(OGRSpatialReferenceH)
Decrements the reference count by one, and destroy if zero.
Definition: ogrspatialreference.cpp:399
OGRErr OSRSetRobinson(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Robinson.
Definition: ogrspatialreference.cpp:5388
OGRErr OSRSetAE(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Azimuthal Equidistant.
Definition: ogrspatialreference.cpp:4032
OGRErr OSRImportFromUrl(OGRSpatialReferenceH, const char *)
Set spatial reference from a URL.
Definition: ogrspatialreference.cpp:2313
OGRErr OSRSetGS(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Gall Stereograpic.
Definition: ogrspatialreference.cpp:4413
int OGRErr
Simple container for a bounding region.
Definition: ogr_core.h:311
OGRErr OSRSetStatePlane(OGRSpatialReferenceH hSRS, int nZone, int bNAD83)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:2458
OGRErr OSRImportFromXML(OGRSpatialReferenceH, const char *)
Import coordinate system from XML format (GML only currently).
Definition: ogr_srs_xml.cpp:1306
OGRErr OSRSetTMVariant(OGRSpatialReferenceH hSRS, const char *pszVariantName, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator variant.
Definition: ogrspatialreference.cpp:3841
double OSRGetInvFlattening(OGRSpatialReferenceH, OGRErr *)
Get spheroid inverse flattening.
Definition: ogrspatialreference.cpp:2927
OGRErr OSRExportToPrettyWkt(OGRSpatialReferenceH, char **, int)
Convert this SRS into a nicely formatted WKT string for display to a person.
Definition: ogrspatialreference.cpp:670
const char * OSRGetAttrValue(OGRSpatialReferenceH hSRS, const char *pszName, int iChild)
Fetch indicated attribute of named node.
Definition: ogrspatialreference.cpp:546
OGRErr OSRSetStereographic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Stereographic.
Definition: ogrspatialreference.cpp:5458
OGRErr OSRSetAttrValue(OGRSpatialReferenceH hSRS, const char *pszNodePath, const char *pszNewNodeValue)
Set attribute value in spatial reference.
Definition: ogrspatialreference.cpp:894
void * OGRCoordinateTransformationH
Opaque type for a coordinate transformation object.
Definition: ogr_srs_api.h:483
int OCTTransform(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z)
Transform an array of points.
Definition: ogrct.cpp:966
OGRErr OSRSetCS(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Cassini-Soldner.
Definition: ogrspatialreference.cpp:4135
OGRErr OSRSetLCC(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic.
Definition: ogrspatialreference.cpp:4945
int OSRIsProjected(OGRSpatialReferenceH)
Check if projected coordinate system.
Definition: ogrspatialreference.cpp:6212
OGRErr OSRSetOS(OGRSpatialReferenceH hSRS, double dfOriginLat, double dfCMeridian, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Oblique Stereographic.
Definition: ogrspatialreference.cpp:5244
OGRErr OSRMorphToESRI(OGRSpatialReferenceH)
Convert in place to ESRI WKT format.
Definition: ogr_srs_esri.cpp:1855
OGRErr OSRImportFromMICoordSys(OGRSpatialReferenceH, const char *)
Import Mapinfo style CoordSys definition.
Definition: ogrspatialreference.cpp:7550
OGRErr OSRImportFromWkt(OGRSpatialReferenceH, char **)
Import from WKT string.
Definition: ogrspatialreference.cpp:798
OGRErr OSRImportFromUSGS(OGRSpatialReferenceH, long, long, double *, long)
Import coordinate system from USGS projection definition.
Definition: ogr_srs_usgs.cpp:165
OGRErr OSRSetCEA(OGRSpatialReferenceH hSRS, double dfStdP1, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Cylindrical Equal Area.
Definition: ogrspatialreference.cpp:4101
Other.
Definition: ogr_srs_api.h:49
OGRErr OSRSetLCC1SP(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic 1SP.
Definition: ogrspatialreference.cpp:4983
OGRErr OSRSetProjParm(OGRSpatialReferenceH, const char *, double)
Set a projection parameter value.
Definition: ogrspatialreference.cpp:3501
double OSRGetSemiMajor(OGRSpatialReferenceH, OGRErr *)
Get spheroid semi major axis.
Definition: ogrspatialreference.cpp:2876

Generated for GDAL by doxygen 1.8.8.