GDAL
ogr_srs_api.h
Go to the documentation of this file.
1/******************************************************************************
2 * $Id$
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 spatialys.com>
11 *
12 * SPDX-License-Identifier: MIT
13 ****************************************************************************/
14
15#ifndef OGR_SRS_API_H_INCLUDED
16#define OGR_SRS_API_H_INCLUDED
17
18#include <stdbool.h>
19
20#ifndef SWIG
21#include "ogr_core.h"
22
24
44
45const char CPL_DLL *OSRAxisEnumToName(OGRAxisOrientation eOrientation);
46
47#endif // ndef SWIG
48
49/* ==================================================================== */
50/* Some standard WKT geographic coordinate systems. */
51/* ==================================================================== */
52
53#ifdef USE_DEPRECATED_SRS_WKT_WGS84
54#define SRS_WKT_WGS84 \
55 "GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS " \
56 "84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[" \
57 "\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]]" \
58 ",UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]]," \
59 "AUTHORITY[\"EPSG\",\"4326\"]]"
60#endif
61
63#define SRS_WKT_WGS84_LAT_LONG \
64 "GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS " \
65 "84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[" \
66 "\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]]" \
67 ",UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AXIS[" \
68 "\"Latitude\",NORTH],AXIS[\"Longitude\",EAST],AUTHORITY[\"EPSG\"," \
69 "\"4326\"]]"
70
71/* ==================================================================== */
72/* Some "standard" strings. */
73/* ==================================================================== */
74
76#define SRS_PT_ALBERS_CONIC_EQUAL_AREA "Albers_Conic_Equal_Area"
78#define SRS_PT_AZIMUTHAL_EQUIDISTANT "Azimuthal_Equidistant"
80#define SRS_PT_CASSINI_SOLDNER "Cassini_Soldner"
82#define SRS_PT_CYLINDRICAL_EQUAL_AREA "Cylindrical_Equal_Area"
84#define SRS_PT_BONNE "Bonne"
86#define SRS_PT_ECKERT_I "Eckert_I"
88#define SRS_PT_ECKERT_II "Eckert_II"
90#define SRS_PT_ECKERT_III "Eckert_III"
92#define SRS_PT_ECKERT_IV "Eckert_IV"
94#define SRS_PT_ECKERT_V "Eckert_V"
96#define SRS_PT_ECKERT_VI "Eckert_VI"
98#define SRS_PT_EQUIDISTANT_CONIC "Equidistant_Conic"
100#define SRS_PT_EQUIRECTANGULAR "Equirectangular"
102#define SRS_PT_GALL_STEREOGRAPHIC "Gall_Stereographic"
104#define SRS_PT_GAUSSSCHREIBERTMERCATOR "Gauss_Schreiber_Transverse_Mercator"
106#define SRS_PT_GEOSTATIONARY_SATELLITE "Geostationary_Satellite"
108#define SRS_PT_GOODE_HOMOLOSINE "Goode_Homolosine"
110#define SRS_PT_IGH "Interrupted_Goode_Homolosine"
112#define SRS_PT_GNOMONIC "Gnomonic"
114#define SRS_PT_HOTINE_OBLIQUE_MERCATOR_AZIMUTH_CENTER \
115 "Hotine_Oblique_Mercator_Azimuth_Center"
117#define SRS_PT_HOTINE_OBLIQUE_MERCATOR "Hotine_Oblique_Mercator"
119#define SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN \
120 "Hotine_Oblique_Mercator_Two_Point_Natural_Origin"
122#define SRS_PT_LABORDE_OBLIQUE_MERCATOR "Laborde_Oblique_Mercator"
124#define SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP "Lambert_Conformal_Conic_1SP"
126#define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP "Lambert_Conformal_Conic_2SP"
128#define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP_BELGIUM \
129 "Lambert_Conformal_Conic_2SP_Belgium"
131#define SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA "Lambert_Azimuthal_Equal_Area"
133#define SRS_PT_MERCATOR_1SP "Mercator_1SP"
135#define SRS_PT_MERCATOR_2SP "Mercator_2SP"
137#define SRS_PT_MERCATOR_AUXILIARY_SPHERE "Mercator_Auxiliary_Sphere"
139#define SRS_PT_MILLER_CYLINDRICAL "Miller_Cylindrical"
141#define SRS_PT_MOLLWEIDE "Mollweide"
143#define SRS_PT_NEW_ZEALAND_MAP_GRID "New_Zealand_Map_Grid"
145#define SRS_PT_OBLIQUE_STEREOGRAPHIC "Oblique_Stereographic"
147#define SRS_PT_ORTHOGRAPHIC "Orthographic"
149#define SRS_PT_POLAR_STEREOGRAPHIC "Polar_Stereographic"
151#define SRS_PT_POLYCONIC "Polyconic"
153#define SRS_PT_ROBINSON "Robinson"
155#define SRS_PT_SINUSOIDAL "Sinusoidal"
157#define SRS_PT_STEREOGRAPHIC "Stereographic"
159#define SRS_PT_SWISS_OBLIQUE_CYLINDRICAL "Swiss_Oblique_Cylindrical"
161#define SRS_PT_TRANSVERSE_MERCATOR "Transverse_Mercator"
163#define SRS_PT_TRANSVERSE_MERCATOR_SOUTH_ORIENTED \
164 "Transverse_Mercator_South_Orientated"
165
166/* special mapinfo variants on Transverse Mercator */
168#define SRS_PT_TRANSVERSE_MERCATOR_MI_21 "Transverse_Mercator_MapInfo_21"
170#define SRS_PT_TRANSVERSE_MERCATOR_MI_22 "Transverse_Mercator_MapInfo_22"
172#define SRS_PT_TRANSVERSE_MERCATOR_MI_23 "Transverse_Mercator_MapInfo_23"
174#define SRS_PT_TRANSVERSE_MERCATOR_MI_24 "Transverse_Mercator_MapInfo_24"
176#define SRS_PT_TRANSVERSE_MERCATOR_MI_25 "Transverse_Mercator_MapInfo_25"
177
179#define SRS_PT_TUNISIA_MINING_GRID "Tunisia_Mining_Grid"
181#define SRS_PT_TWO_POINT_EQUIDISTANT "Two_Point_Equidistant"
183#define SRS_PT_VANDERGRINTEN "VanDerGrinten"
185#define SRS_PT_KROVAK "Krovak"
187#define SRS_PT_IMW_POLYCONIC "International_Map_of_the_World_Polyconic"
189#define SRS_PT_WAGNER_I "Wagner_I"
191#define SRS_PT_WAGNER_II "Wagner_II"
193#define SRS_PT_WAGNER_III "Wagner_III"
195#define SRS_PT_WAGNER_IV "Wagner_IV"
197#define SRS_PT_WAGNER_V "Wagner_V"
199#define SRS_PT_WAGNER_VI "Wagner_VI"
201#define SRS_PT_WAGNER_VII "Wagner_VII"
203#define SRS_PT_QSC "Quadrilateralized_Spherical_Cube"
205#define SRS_PT_AITOFF "Aitoff"
207#define SRS_PT_WINKEL_I "Winkel_I"
209#define SRS_PT_WINKEL_II "Winkel_II"
211#define SRS_PT_WINKEL_TRIPEL "Winkel_Tripel"
213#define SRS_PT_CRASTER_PARABOLIC "Craster_Parabolic"
215#define SRS_PT_LOXIMUTHAL "Loximuthal"
217#define SRS_PT_QUARTIC_AUTHALIC "Quartic_Authalic"
219#define SRS_PT_SCH "Spherical_Cross_Track_Height"
220
222#define SRS_PP_CENTRAL_MERIDIAN "central_meridian"
224#define SRS_PP_SCALE_FACTOR "scale_factor"
226#define SRS_PP_STANDARD_PARALLEL_1 "standard_parallel_1"
228#define SRS_PP_STANDARD_PARALLEL_2 "standard_parallel_2"
230#define SRS_PP_PSEUDO_STD_PARALLEL_1 "pseudo_standard_parallel_1"
232#define SRS_PP_LONGITUDE_OF_CENTER "longitude_of_center"
234#define SRS_PP_LATITUDE_OF_CENTER "latitude_of_center"
236#define SRS_PP_LONGITUDE_OF_ORIGIN "longitude_of_origin"
238#define SRS_PP_LATITUDE_OF_ORIGIN "latitude_of_origin"
240#define SRS_PP_FALSE_EASTING "false_easting"
242#define SRS_PP_FALSE_NORTHING "false_northing"
244#define SRS_PP_AZIMUTH "azimuth"
246#define SRS_PP_LONGITUDE_OF_POINT_1 "longitude_of_point_1"
248#define SRS_PP_LATITUDE_OF_POINT_1 "latitude_of_point_1"
250#define SRS_PP_LONGITUDE_OF_POINT_2 "longitude_of_point_2"
252#define SRS_PP_LATITUDE_OF_POINT_2 "latitude_of_point_2"
254#define SRS_PP_LONGITUDE_OF_POINT_3 "longitude_of_point_3"
256#define SRS_PP_LATITUDE_OF_POINT_3 "latitude_of_point_3"
258#define SRS_PP_RECTIFIED_GRID_ANGLE "rectified_grid_angle"
260#define SRS_PP_LANDSAT_NUMBER "landsat_number"
262#define SRS_PP_PATH_NUMBER "path_number"
264#define SRS_PP_PERSPECTIVE_POINT_HEIGHT "perspective_point_height"
266#define SRS_PP_SATELLITE_HEIGHT "satellite_height"
268#define SRS_PP_FIPSZONE "fipszone"
270#define SRS_PP_ZONE "zone"
272#define SRS_PP_LATITUDE_OF_1ST_POINT "Latitude_Of_1st_Point"
274#define SRS_PP_LONGITUDE_OF_1ST_POINT "Longitude_Of_1st_Point"
276#define SRS_PP_LATITUDE_OF_2ND_POINT "Latitude_Of_2nd_Point"
278#define SRS_PP_LONGITUDE_OF_2ND_POINT "Longitude_Of_2nd_Point"
280#define SRS_PP_PEG_POINT_LATITUDE "peg_point_latitude"
282#define SRS_PP_PEG_POINT_LONGITUDE "peg_point_longitude"
284#define SRS_PP_PEG_POINT_HEADING "peg_point_heading"
286#define SRS_PP_PEG_POINT_HEIGHT "peg_point_height"
287
289#define SRS_UL_METER "Meter"
291#define SRS_UL_FOOT "Foot (International)" /* or just "FOOT"? */
293#define SRS_UL_FOOT_CONV "0.3048"
295#define SRS_UL_US_FOOT "Foot_US" /* or "US survey foot" from EPSG */
297#define SRS_UL_US_FOOT_CONV "0.3048006096012192"
299#define SRS_UL_NAUTICAL_MILE "Nautical Mile"
301#define SRS_UL_NAUTICAL_MILE_CONV "1852.0"
303#define SRS_UL_LINK "Link" /* Based on US Foot */
305#define SRS_UL_LINK_CONV "0.20116684023368047"
307#define SRS_UL_CHAIN "Chain" /* based on US Foot */
309#define SRS_UL_CHAIN_CONV "20.116684023368047"
311#define SRS_UL_ROD "Rod" /* based on US Foot */
313#define SRS_UL_ROD_CONV "5.02921005842012"
315#define SRS_UL_LINK_Clarke "Link_Clarke"
317#define SRS_UL_LINK_Clarke_CONV "0.2011661949"
318
320#define SRS_UL_KILOMETER "Kilometer"
322#define SRS_UL_KILOMETER_CONV "1000."
324#define SRS_UL_DECIMETER "Decimeter"
326#define SRS_UL_DECIMETER_CONV "0.1"
328#define SRS_UL_CENTIMETER "Centimeter"
330#define SRS_UL_CENTIMETER_CONV "0.01"
332#define SRS_UL_MILLIMETER "Millimeter"
334#define SRS_UL_MILLIMETER_CONV "0.001"
336#define SRS_UL_INTL_NAUT_MILE "Nautical_Mile_International"
338#define SRS_UL_INTL_NAUT_MILE_CONV "1852.0"
340#define SRS_UL_INTL_INCH "Inch_International"
342#define SRS_UL_INTL_INCH_CONV "0.0254"
344#define SRS_UL_INTL_FOOT "Foot_International"
346#define SRS_UL_INTL_FOOT_CONV "0.3048"
348#define SRS_UL_INTL_YARD "Yard_International"
350#define SRS_UL_INTL_YARD_CONV "0.9144"
352#define SRS_UL_INTL_STAT_MILE "Statute_Mile_International"
354#define SRS_UL_INTL_STAT_MILE_CONV "1609.344"
356#define SRS_UL_INTL_FATHOM "Fathom_International"
358#define SRS_UL_INTL_FATHOM_CONV "1.8288"
360#define SRS_UL_INTL_CHAIN "Chain_International"
362#define SRS_UL_INTL_CHAIN_CONV "20.1168"
364#define SRS_UL_INTL_LINK "Link_International"
366#define SRS_UL_INTL_LINK_CONV "0.201168"
368#define SRS_UL_US_INCH "Inch_US_Surveyor"
370#define SRS_UL_US_INCH_CONV "0.025400050800101603"
372#define SRS_UL_US_YARD "Yard_US_Surveyor"
374#define SRS_UL_US_YARD_CONV "0.914401828803658"
376#define SRS_UL_US_CHAIN "Chain_US_Surveyor"
378#define SRS_UL_US_CHAIN_CONV "20.11684023368047"
380#define SRS_UL_US_STAT_MILE "Statute_Mile_US_Surveyor"
382#define SRS_UL_US_STAT_MILE_CONV "1609.347218694437"
384#define SRS_UL_INDIAN_YARD "Yard_Indian"
386#define SRS_UL_INDIAN_YARD_CONV "0.91439523"
388#define SRS_UL_INDIAN_FOOT "Foot_Indian"
390#define SRS_UL_INDIAN_FOOT_CONV "0.30479841"
392#define SRS_UL_INDIAN_CHAIN "Chain_Indian"
394#define SRS_UL_INDIAN_CHAIN_CONV "20.11669506"
395
397#define SRS_UA_DEGREE "degree"
399#define SRS_UA_DEGREE_CONV "0.0174532925199433"
401#define SRS_UA_RADIAN "radian"
402
404#define SRS_PM_GREENWICH "Greenwich"
405
407#define SRS_DN_NAD27 "North_American_Datum_1927"
409#define SRS_DN_NAD83 "North_American_Datum_1983"
411#define SRS_DN_WGS72 "WGS_1972"
413#define SRS_DN_WGS84 "WGS_1984"
414
416#define SRS_WGS84_SEMIMAJOR 6378137.0
418#define SRS_WGS84_INVFLATTENING 298.257223563
419
420#ifndef SWIG
421/* -------------------------------------------------------------------- */
422/* C Wrappers for C++ objects and methods. */
423/* -------------------------------------------------------------------- */
424#ifndef DEFINED_OGRSpatialReferenceH
426#define DEFINED_OGRSpatialReferenceH
429#ifdef DEBUG
430typedef struct OGRSpatialReferenceHS *OGRSpatialReferenceH;
431typedef struct OGRCoordinateTransformationHS *OGRCoordinateTransformationH;
432#else
437#endif
438
439#endif
440
441void CPL_DLL OSRSetPROJSearchPaths(const char *const *papszPaths);
442char CPL_DLL **OSRGetPROJSearchPaths(void);
443void CPL_DLL OSRSetPROJAuxDbPaths(const char *const *papszPaths);
444char CPL_DLL **OSRGetPROJAuxDbPaths(void);
445void CPL_DLL OSRSetPROJEnableNetwork(int enabled);
446int CPL_DLL OSRGetPROJEnableNetwork(void);
447void CPL_DLL OSRGetPROJVersion(int *pnMajor, int *pnMinor, int *pnPatch);
448
449OGRSpatialReferenceH CPL_DLL CPL_STDCALL
450OSRNewSpatialReference(const char * /* = NULL */);
453void CPL_DLL CPL_STDCALL OSRDestroySpatialReference(OGRSpatialReferenceH);
454
457void CPL_DLL OSRRelease(OGRSpatialReferenceH);
458
460
461OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSG(OGRSpatialReferenceH, int);
462OGRErr CPL_DLL CPL_STDCALL OSRImportFromEPSGA(OGRSpatialReferenceH, int);
464OGRErr CPL_DLL OSRImportFromProj4(OGRSpatialReferenceH, const char *);
466OGRErr CPL_DLL OSRImportFromPCI(OGRSpatialReferenceH hSRS, const char *,
467 const char *, double *);
468OGRErr CPL_DLL OSRImportFromUSGS(OGRSpatialReferenceH, long, long, double *,
469 long);
470OGRErr CPL_DLL OSRImportFromXML(OGRSpatialReferenceH, const char *);
471OGRErr CPL_DLL OSRImportFromDict(OGRSpatialReferenceH, const char *,
472 const char *);
473OGRErr CPL_DLL OSRImportFromPanorama(OGRSpatialReferenceH, long, long, long,
474 double *);
475OGRErr CPL_DLL OSRImportFromOzi(OGRSpatialReferenceH, const char *const *);
477OGRErr CPL_DLL OSRImportFromERM(OGRSpatialReferenceH, const char *,
478 const char *, const char *);
479OGRErr CPL_DLL OSRImportFromUrl(OGRSpatialReferenceH, const char *);
481 CSLConstList papszKeyValues,
482 const char *pszUnits);
483
484OGRErr CPL_DLL CPL_STDCALL OSRExportToWkt(OGRSpatialReferenceH, char **);
485OGRErr CPL_DLL OSRExportToWktEx(OGRSpatialReferenceH, char **ppszResult,
486 const char *const *papszOptions);
487OGRErr CPL_DLL CPL_STDCALL OSRExportToPrettyWkt(OGRSpatialReferenceH, char **,
488 int);
489OGRErr CPL_DLL OSRExportToPROJJSON(OGRSpatialReferenceH hSRS, char **ppszReturn,
490 const char *const *papszOptions);
491OGRErr CPL_DLL CPL_STDCALL OSRExportToProj4(OGRSpatialReferenceH, char **);
492OGRErr CPL_DLL OSRExportToPCI(OGRSpatialReferenceH, char **, char **,
493 double **);
494OGRErr CPL_DLL OSRExportToUSGS(OGRSpatialReferenceH, long *, long *, double **,
495 long *);
496OGRErr CPL_DLL OSRExportToXML(OGRSpatialReferenceH, char **, const char *);
497OGRErr CPL_DLL OSRExportToPanorama(OGRSpatialReferenceH, long *, long *, long *,
498 long *, double *);
500OGRErr CPL_DLL OSRExportToERM(OGRSpatialReferenceH, char *, char *, char *);
501OGRErr CPL_DLL OSRExportToCF1(OGRSpatialReferenceH, char **ppszGridMappingName,
502 char ***ppapszKeyValues, char **ppszUnits,
503 CSLConstList papszOptions);
504
507
509
511 OGRSpatialReferenceH hSRS, const char *pszTargetProjection,
512 const char *const *papszOptions);
513
514const char CPL_DLL *OSRGetName(OGRSpatialReferenceH hSRS);
515
516OGRErr CPL_DLL CPL_STDCALL OSRSetAttrValue(OGRSpatialReferenceH hSRS,
517 const char *pszNodePath,
518 const char *pszNewNodeValue);
519const char CPL_DLL *CPL_STDCALL OSRGetAttrValue(OGRSpatialReferenceH hSRS,
520 const char *pszName,
521 int iChild /* = 0 */);
522
523OGRErr CPL_DLL OSRSetAngularUnits(OGRSpatialReferenceH, const char *, double);
524double CPL_DLL OSRGetAngularUnits(OGRSpatialReferenceH, char **);
525OGRErr CPL_DLL OSRSetLinearUnits(OGRSpatialReferenceH, const char *, double);
527 const char *, double);
529 const char *, double);
530double CPL_DLL OSRGetLinearUnits(OGRSpatialReferenceH, char **);
531double CPL_DLL OSRGetTargetLinearUnits(OGRSpatialReferenceH, const char *,
532 char **);
533
534double CPL_DLL OSRGetPrimeMeridian(OGRSpatialReferenceH, char **);
535
550 const char *const *papszOptions);
551
553 double dfCoordinateEpoch);
555
556OGRErr CPL_DLL OSRSetLocalCS(OGRSpatialReferenceH hSRS, const char *pszName);
557OGRErr CPL_DLL OSRSetProjCS(OGRSpatialReferenceH hSRS, const char *pszName);
558OGRErr CPL_DLL OSRSetGeocCS(OGRSpatialReferenceH hSRS, const char *pszName);
560 const char *pszName);
561OGRErr CPL_DLL CPL_STDCALL OSRSetFromUserInput(OGRSpatialReferenceH hSRS,
562 const char *);
563OGRErr CPL_DLL OSRSetFromUserInputEx(OGRSpatialReferenceH hSRS, const char *,
564 CSLConstList papszOptions);
566 const OGRSpatialReferenceH hSrcSRS);
567OGRErr CPL_DLL OSRSetTOWGS84(OGRSpatialReferenceH hSRS, double, double, double,
568 double, double, double, double);
569OGRErr CPL_DLL OSRGetTOWGS84(OGRSpatialReferenceH hSRS, double *, int);
571
572OGRErr CPL_DLL OSRSetCompoundCS(OGRSpatialReferenceH hSRS, const char *pszName,
573 OGRSpatialReferenceH hHorizSRS,
574 OGRSpatialReferenceH hVertSRS);
575OGRErr CPL_DLL OSRPromoteTo3D(OGRSpatialReferenceH hSRS, const char *pszName);
576OGRErr CPL_DLL OSRDemoteTo2D(OGRSpatialReferenceH hSRS, const char *pszName);
577
578OGRErr CPL_DLL OSRSetGeogCS(OGRSpatialReferenceH hSRS, const char *pszGeogName,
579 const char *pszDatumName,
580 const char *pszEllipsoidName, double dfSemiMajor,
581 double dfInvFlattening,
582 const char *pszPMName /* = NULL */,
583 double dfPMOffset /* = 0.0 */,
584 const char *pszUnits /* = NULL */,
585 double dfConvertToRadians /* = 0.0 */);
586
588 const char *pszVertCSName,
589 const char *pszVertDatumName, int nVertDatumType);
590
591double CPL_DLL OSRGetSemiMajor(OGRSpatialReferenceH, OGRErr * /* = NULL */);
592double CPL_DLL OSRGetSemiMinor(OGRSpatialReferenceH, OGRErr * /* = NULL */);
593double CPL_DLL OSRGetInvFlattening(OGRSpatialReferenceH, OGRErr * /*=NULL*/);
594
596 const char *pszTargetKey,
597 const char *pszAuthority, int nCode);
598const char CPL_DLL *OSRGetAuthorityCode(OGRSpatialReferenceH hSRS,
599 const char *pszTargetKey);
600const char CPL_DLL *OSRGetAuthorityName(OGRSpatialReferenceH hSRS,
601 const char *pszTargetKey);
602
604 double *pdfWestLongitudeDeg,
605 double *pdfSouthLatitudeDeg,
606 double *pdfEastLongitudeDeg,
607 double *pdfNorthLatitudeDeg,
608 const char **ppszAreaName);
609
610OGRErr CPL_DLL OSRSetProjection(OGRSpatialReferenceH, const char *);
611OGRErr CPL_DLL OSRSetProjParm(OGRSpatialReferenceH, const char *, double);
612double CPL_DLL OSRGetProjParm(OGRSpatialReferenceH hSRS,
613 const char *pszParamName,
614 double dfDefault /* = 0.0 */,
615 OGRErr * /* = NULL */);
616OGRErr CPL_DLL OSRSetNormProjParm(OGRSpatialReferenceH, const char *, double);
617double CPL_DLL OSRGetNormProjParm(OGRSpatialReferenceH hSRS,
618 const char *pszParamName,
619 double dfDefault /* = 0.0 */,
620 OGRErr * /* = NULL */);
621
622OGRErr CPL_DLL OSRSetUTM(OGRSpatialReferenceH hSRS, int nZone, int bNorth);
623int CPL_DLL OSRGetUTMZone(OGRSpatialReferenceH hSRS, int *pbNorth);
624OGRErr CPL_DLL OSRSetStatePlane(OGRSpatialReferenceH hSRS, int nZone,
625 int bNAD83);
627 int bNAD83,
628 const char *pszOverrideUnitName,
629 double dfOverrideUnit);
631
633 char **papszOptions,
634 int *pnEntries,
635 int **ppanMatchConfidence);
636void CPL_DLL OSRFreeSRSArray(OGRSpatialReferenceH *pahSRS);
637
640const char CPL_DLL *OSRGetAxis(OGRSpatialReferenceH hSRS,
641 const char *pszTargetKey, int iAxis,
642 OGRAxisOrientation *peOrientation);
643int CPL_DLL OSRGetAxesCount(OGRSpatialReferenceH hSRS);
644OGRErr CPL_DLL OSRSetAxes(OGRSpatialReferenceH hSRS, const char *pszTargetKey,
645 const char *pszXAxisName,
646 OGRAxisOrientation eXAxisOrientation,
647 const char *pszYAxisName,
648 OGRAxisOrientation eYAxisOrientation);
649
658
661
663 OSRAxisMappingStrategy strategy);
664
666 int *pnCount);
667
669 int nMappingSize,
670 const int *panMapping);
671
673OGRErr CPL_DLL OSRSetACEA(OGRSpatialReferenceH hSRS, double dfStdP1,
674 double dfStdP2, double dfCenterLat,
675 double dfCenterLong, double dfFalseEasting,
676 double dfFalseNorthing);
677
679OGRErr CPL_DLL OSRSetAE(OGRSpatialReferenceH hSRS, double dfCenterLat,
680 double dfCenterLong, double dfFalseEasting,
681 double dfFalseNorthing);
682
684OGRErr CPL_DLL OSRSetBonne(OGRSpatialReferenceH hSRS, double dfStandardParallel,
685 double dfCentralMeridian, double dfFalseEasting,
686 double dfFalseNorthing);
687
689OGRErr CPL_DLL OSRSetCEA(OGRSpatialReferenceH hSRS, double dfStdP1,
690 double dfCentralMeridian, double dfFalseEasting,
691 double dfFalseNorthing);
692
694OGRErr CPL_DLL OSRSetCS(OGRSpatialReferenceH hSRS, double dfCenterLat,
695 double dfCenterLong, double dfFalseEasting,
696 double dfFalseNorthing);
697
699OGRErr CPL_DLL OSRSetEC(OGRSpatialReferenceH hSRS, double dfStdP1,
700 double dfStdP2, double dfCenterLat, double dfCenterLong,
701 double dfFalseEasting, double dfFalseNorthing);
702
704OGRErr CPL_DLL OSRSetEckert(OGRSpatialReferenceH hSRS, int nVariation,
705 double dfCentralMeridian, double dfFalseEasting,
706 double dfFalseNorthing);
707
710 double dfCentralMeridian, double dfFalseEasting,
711 double dfFalseNorthing);
712
715 double dfCentralMeridian, double dfFalseEasting,
716 double dfFalseNorthing);
717
720 double dfCenterLat, double dfCenterLong,
721 double dfFalseEasting,
722 double dfFalseNorthing);
723
726 double dfCenterLat, double dfCenterLong,
727 double dfPseudoStdParallel1,
728 double dfFalseEasting,
729 double dfFalseNorthing);
730
732OGRErr CPL_DLL OSRSetGS(OGRSpatialReferenceH hSRS, double dfCentralMeridian,
733 double dfFalseEasting, double dfFalseNorthing);
734
736OGRErr CPL_DLL OSRSetGH(OGRSpatialReferenceH hSRS, double dfCentralMeridian,
737 double dfFalseEasting, double dfFalseNorthing);
738
741
743OGRErr CPL_DLL OSRSetGEOS(OGRSpatialReferenceH hSRS, double dfCentralMeridian,
744 double dfSatelliteHeight, double dfFalseEasting,
745 double dfFalseNorthing);
746
749 OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong,
750 double dfScale, double dfFalseEasting, double dfFalseNorthing);
752OGRErr CPL_DLL OSRSetGnomonic(OGRSpatialReferenceH hSRS, double dfCenterLat,
753 double dfCenterLong, double dfFalseEasting,
754 double dfFalseNorthing);
755
756#ifdef undef
758OGRErr CPL_DLL OSRSetOM(OGRSpatialReferenceH hSRS, double dfCenterLat,
759 double dfCenterLong, double dfAzimuth,
760 double dfRectToSkew, double dfScale,
761 double dfFalseEasting, double dfFalseNorthing);
762#endif
763
765OGRErr CPL_DLL OSRSetHOM(OGRSpatialReferenceH hSRS, double dfCenterLat,
766 double dfCenterLong, double dfAzimuth,
767 double dfRectToSkew, double dfScale,
768 double dfFalseEasting, double dfFalseNorthing);
769
770OGRErr CPL_DLL OSRSetHOMAC(OGRSpatialReferenceH hSRS, double dfCenterLat,
771 double dfCenterLong, double dfAzimuth,
772 double dfRectToSkew, double dfScale,
773 double dfFalseEasting, double dfFalseNorthing);
774
776OGRErr CPL_DLL OSRSetHOM2PNO(OGRSpatialReferenceH hSRS, double dfCenterLat,
777 double dfLat1, double dfLong1, double dfLat2,
778 double dfLong2, double dfScale,
779 double dfFalseEasting, double dfFalseNorthing);
780
782OGRErr CPL_DLL OSRSetIWMPolyconic(OGRSpatialReferenceH hSRS, double dfLat1,
783 double dfLat2, double dfCenterLong,
784 double dfFalseEasting,
785 double dfFalseNorthing);
786
788OGRErr CPL_DLL OSRSetKrovak(OGRSpatialReferenceH hSRS, double dfCenterLat,
789 double dfCenterLong, double dfAzimuth,
790 double dfPseudoStdParallelLat, double dfScale,
791 double dfFalseEasting, double dfFalseNorthing);
792
794OGRErr CPL_DLL OSRSetLAEA(OGRSpatialReferenceH hSRS, double dfCenterLat,
795 double dfCenterLong, double dfFalseEasting,
796 double dfFalseNorthing);
797
799OGRErr CPL_DLL OSRSetLCC(OGRSpatialReferenceH hSRS, double dfStdP1,
800 double dfStdP2, double dfCenterLat,
801 double dfCenterLong, double dfFalseEasting,
802 double dfFalseNorthing);
803
805OGRErr CPL_DLL OSRSetLCC1SP(OGRSpatialReferenceH hSRS, double dfCenterLat,
806 double dfCenterLong, double dfScale,
807 double dfFalseEasting, double dfFalseNorthing);
808
810OGRErr CPL_DLL OSRSetLCCB(OGRSpatialReferenceH hSRS, double dfStdP1,
811 double dfStdP2, double dfCenterLat,
812 double dfCenterLong, double dfFalseEasting,
813 double dfFalseNorthing);
814
816OGRErr CPL_DLL OSRSetMC(OGRSpatialReferenceH hSRS, double dfCenterLat,
817 double dfCenterLong, double dfFalseEasting,
818 double dfFalseNorthing);
819
821OGRErr CPL_DLL OSRSetMercator(OGRSpatialReferenceH hSRS, double dfCenterLat,
822 double dfCenterLong, double dfScale,
823 double dfFalseEasting, double dfFalseNorthing);
824
826OGRErr CPL_DLL OSRSetMercator2SP(OGRSpatialReferenceH hSRS, double dfStdP1,
827 double dfCenterLat, double dfCenterLong,
828 double dfFalseEasting, double dfFalseNorthing);
829
832 double dfCentralMeridian, double dfFalseEasting,
833 double dfFalseNorthing);
834
836OGRErr CPL_DLL OSRSetNZMG(OGRSpatialReferenceH hSRS, double dfCenterLat,
837 double dfCenterLong, double dfFalseEasting,
838 double dfFalseNorthing);
839
841OGRErr CPL_DLL OSRSetOS(OGRSpatialReferenceH hSRS, double dfOriginLat,
842 double dfCMeridian, double dfScale,
843 double dfFalseEasting, double dfFalseNorthing);
844
846OGRErr CPL_DLL OSRSetOrthographic(OGRSpatialReferenceH hSRS, double dfCenterLat,
847 double dfCenterLong, double dfFalseEasting,
848 double dfFalseNorthing);
849
851OGRErr CPL_DLL OSRSetPolyconic(OGRSpatialReferenceH hSRS, double dfCenterLat,
852 double dfCenterLong, double dfFalseEasting,
853 double dfFalseNorthing);
854
856OGRErr CPL_DLL OSRSetPS(OGRSpatialReferenceH hSRS, double dfCenterLat,
857 double dfCenterLong, double dfScale,
858 double dfFalseEasting, double dfFalseNorthing);
859
861OGRErr CPL_DLL OSRSetRobinson(OGRSpatialReferenceH hSRS, double dfCenterLong,
862 double dfFalseEasting, double dfFalseNorthing);
863
865OGRErr CPL_DLL OSRSetSinusoidal(OGRSpatialReferenceH hSRS, double dfCenterLong,
866 double dfFalseEasting, double dfFalseNorthing);
867
870 double dfCenterLat, double dfCenterLong,
871 double dfScale, double dfFalseEasting,
872 double dfFalseNorthing);
873
875OGRErr CPL_DLL OSRSetSOC(OGRSpatialReferenceH hSRS, double dfLatitudeOfOrigin,
876 double dfCentralMeridian, double dfFalseEasting,
877 double dfFalseNorthing);
878
885OGRErr CPL_DLL OSRSetTM(OGRSpatialReferenceH hSRS, double dfCenterLat,
886 double dfCenterLong, double dfScale,
887 double dfFalseEasting, double dfFalseNorthing);
888
891 const char *pszVariantName, double dfCenterLat,
892 double dfCenterLong, double dfScale,
893 double dfFalseEasting, double dfFalseNorthing);
894
896OGRErr CPL_DLL OSRSetTMG(OGRSpatialReferenceH hSRS, double dfCenterLat,
897 double dfCenterLong, double dfFalseEasting,
898 double dfFalseNorthing);
899
901OGRErr CPL_DLL OSRSetTMSO(OGRSpatialReferenceH hSRS, double dfCenterLat,
902 double dfCenterLong, double dfScale,
903 double dfFalseEasting, double dfFalseNorthing);
904
906OGRErr CPL_DLL OSRSetTPED(OGRSpatialReferenceH hSRS, double dfLat1,
907 double dfLong1, double dfLat2, double dfLong2,
908 double dfFalseEasting, double dfFalseNorthing);
909
911OGRErr CPL_DLL OSRSetVDG(OGRSpatialReferenceH hSRS, double dfCenterLong,
912 double dfFalseEasting, double dfFalseNorthing);
913
915OGRErr CPL_DLL OSRSetWagner(OGRSpatialReferenceH hSRS, int nVariation,
916 double dfCenterLat, double dfFalseEasting,
917 double dfFalseNorthing);
918
920OGRErr CPL_DLL OSRSetQSC(OGRSpatialReferenceH hSRS, double dfCenterLat,
921 double dfCenterLong);
922
924OGRErr CPL_DLL OSRSetSCH(OGRSpatialReferenceH hSRS, double dfPegLat,
925 double dfPegLong, double dfPegHeading,
926 double dfPegHgt);
927
930 OGRSpatialReferenceH hSRS, double dfTopoOriginLat, double dfTopoOriginLon,
931 double dfTopoOriginHeight, double dfViewPointHeight, double dfFalseEasting,
932 double dfFalseNorthing);
933
934double CPL_DLL OSRCalcInvFlattening(double dfSemiMajor, double dfSemiMinor);
935double CPL_DLL OSRCalcSemiMinorFromInvFlattening(double dfSemiMajor,
936 double dfInvFlattening);
937
938void CPL_DLL OSRCleanup(void);
939
958
993
1000
1001OSRCRSInfo CPL_DLL **
1002OSRGetCRSInfoListFromDatabase(const char *pszAuthName,
1003 const OSRCRSListParameters *params,
1004 int *pnOutResultCount);
1005
1006void CPL_DLL OSRDestroyCRSInfoList(OSRCRSInfo **list);
1007
1008char CPL_DLL **OSRGetAuthorityListFromDatabase(void);
1009
1010/* -------------------------------------------------------------------- */
1011/* OGRCoordinateTransform C API. */
1012/* -------------------------------------------------------------------- */
1014 OGRSpatialReferenceH hSourceSRS, OGRSpatialReferenceH hTargetSRS);
1015
1019
1022
1024 OGRCoordinateTransformationOptionsH hOptions, const char *pszCO,
1025 int bReverseCO);
1026
1028 OGRCoordinateTransformationOptionsH hOptions, double dfWestLongitudeDeg,
1029 double dfSouthLatitudeDeg, double dfEastLongitudeDeg,
1030 double dfNorthLatitudeDeg);
1031
1033 OGRCoordinateTransformationOptionsH hOptions, double dfAccuracy);
1034
1036 OGRCoordinateTransformationOptionsH hOptions, int bAllowBallpark);
1037
1039 OGRCoordinateTransformationOptionsH hOptions, bool bOnlyBest);
1040
1043
1045 OGRSpatialReferenceH hSourceSRS, OGRSpatialReferenceH hTargetSRS,
1047
1056
1057void CPL_DLL CPL_STDCALL
1059
1060int CPL_DLL CPL_STDCALL OCTTransform(OGRCoordinateTransformationH hCT,
1061 int nCount, double *x, double *y,
1062 double *z);
1063
1064int CPL_DLL CPL_STDCALL OCTTransformEx(OGRCoordinateTransformationH hCT,
1065 int nCount, double *x, double *y,
1066 double *z, int *pabSuccess);
1067
1068int CPL_DLL OCTTransform4D(OGRCoordinateTransformationH hCT, int nCount,
1069 double *x, double *y, double *z, double *t,
1070 int *pabSuccess);
1071
1073 int nCount, double *x, double *y,
1074 double *z, double *t,
1075 int *panErrorCodes);
1076
1077int CPL_DLL CPL_STDCALL OCTTransformBounds(OGRCoordinateTransformationH hCT,
1078 const double xmin, const double ymin,
1079 const double xmax, const double ymax,
1080 double *out_xmin, double *out_ymin,
1081 double *out_xmax, double *out_ymax,
1082 const int densify_pts);
1083
1085
1086#endif /* ndef SWIG */
1087
1088#endif /* ndef OGR_SRS_API_H_INCLUDED */
#define CPL_C_END
Macro to end a block of C symbols.
Definition cpl_port.h:283
#define CPL_C_START
Macro to start a block of C symbols.
Definition cpl_port.h:279
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition cpl_port.h:1179
void * OGRCoordinateTransformationH
Opaque type for a coordinate transformation object.
Definition ogr_api.h:67
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition ogr_api.h:65
Core portability services for cross-platform OGR code.
int OGRErr
Type for a OGR error.
Definition ogr_core.h:371
int OSREPSGTreatsAsLatLong(OGRSpatialReferenceH hSRS)
This function returns TRUE if this geographic coordinate system should be treated as having lat/long ...
Definition ogrspatialreference.cpp:12269
OGRErr OSRSetTM(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator.
Definition ogrspatialreference.cpp:6216
OGRErr OSRImportFromEPSG(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG geographic, projected or vertical CRS code.
Definition ogrspatialreference.cpp:12161
double OSRGetNormProjParm(OGRSpatialReferenceH hSRS, const char *pszParamName, double dfDefault, OGRErr *)
This function is the same as OGRSpatialReference::
Definition ogrspatialreference.cpp:6126
OGRErr OSRSetNZMG(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
New Zealand Map Grid.
Definition ogrspatialreference.cpp:7598
void * OGRCoordinateTransformationH
Opaque type for a coordinate transformation object.
Definition ogr_srs_api.h:436
OGRErr OSRSetEC(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Equidistant Conic.
Definition ogrspatialreference.cpp:6566
const char * OSRAxisEnumToName(OGRAxisOrientation eOrientation)
Return the string representation for the OGRAxisOrientation enumeration.
Definition ogrspatialreference.cpp:11093
OGRErr OSRSetQSC(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong)
Quadrilateralized Spherical Cube.
Definition ogrspatialreference.cpp:8191
char ** OSRGetPROJAuxDbPaths(void)
Get PROJ auxiliary database filenames.
Definition ogr_proj_p.cpp:460
OGRErr OSRGetTOWGS84(OGRSpatialReferenceH hSRS, double *, int)
Fetch TOWGS84 parameters, if available.
Definition ogrspatialreference.cpp:10519
int OCTTransformBounds(OGRCoordinateTransformationH hCT, const double xmin, const double ymin, const double xmax, const double ymax, double *out_xmin, double *out_ymin, double *out_xmax, double *out_ymax, const int densify_pts)
Transform boundary.
Definition ogrct.cpp:3856
void OSRFreeSRSArray(OGRSpatialReferenceH *pahSRS)
Free return of OSRIdentifyMatches()
Definition ogrspatialreference.cpp:10149
OGRErr OSRImportFromERM(OGRSpatialReferenceH, const char *, const char *, const char *)
Create OGR WKT from ERMapper projection definitions.
Definition ogr_srs_erm.cpp:37
OGRErr OSRSetTMG(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Tunesia Mining Grid
Definition ogrspatialreference.cpp:6374
const int * OSRGetDataAxisToSRSAxisMapping(OGRSpatialReferenceH hSRS, int *pnCount)
Return the data axis to SRS axis mapping.
Definition ogrspatialreference.cpp:12630
void OSRSetPROJAuxDbPaths(const char *const *papszPaths)
Set list of PROJ auxiliary database filenames.
Definition ogr_proj_p.cpp:441
int OSRIsDynamic(OGRSpatialReferenceH)
Check if a CRS is a dynamic CRS.
Definition ogrspatialreference.cpp:9511
OGRErr OSRExportToPROJJSON(OGRSpatialReferenceH hSRS, char **ppszReturn, const char *const *papszOptions)
Convert this SRS into PROJJSON format.
Definition ogrspatialreference.cpp:2110
OGRErr OSRImportFromMICoordSys(OGRSpatialReferenceH, const char *)
Import Mapinfo style CoordSys definition.
Definition ogrspatialreference.cpp:11262
OGRCoordinateTransformationH OCTGetInverse(OGRCoordinateTransformationH hTransform)
Inverse transformation object.
Definition ogrct.cpp:1224
OGRErr OSRSetGEOS(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfSatelliteHeight, double dfFalseEasting, double dfFalseNorthing)
GEOS - Geostationary Satellite View.
Definition ogrspatialreference.cpp:6905
int OCTTransform4DWithErrorCodes(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z, double *t, int *panErrorCodes)
Transform an array of points.
Definition ogrct.cpp:3811
int OSRIsSame(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do these two spatial references describe the same system ?
Definition ogrspatialreference.cpp:9932
OGRErr OSRSetIGH(OGRSpatialReferenceH hSRS)
Interrupted Goode Homolosine.
Definition ogrspatialreference.cpp:6875
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:3547
int OSRGetAxesCount(OGRSpatialReferenceH hSRS)
Return the number of axis of the coordinate system of the CRS.
Definition ogrspatialreference.cpp:10837
OGRErr OSRImportFromXML(OGRSpatialReferenceH, const char *)
Import coordinate system from XML format (GML only currently).
Definition ogr_srs_xml.cpp:1246
void * OGRSpatialReferenceH
Opaque type for a Spatial Reference object.
Definition ogr_srs_api.h:434
OGRErr OSRSetWellKnownGeogCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set a GeogCS based on well known name.
Definition ogrspatialreference.cpp:3713
OGRErr OSRExportToPrettyWkt(OGRSpatialReferenceH, char **, int)
Convert this SRS into a nicely formatted WKT 1 string for display to a person.
Definition ogrspatialreference.cpp:1538
OGRErr OSRSetVertCS(OGRSpatialReferenceH hSRS, const char *pszVertCSName, const char *pszVertDatumName, int nVertDatumType)
Setup the vertical coordinate system.
Definition ogrspatialreference.cpp:5539
OGRErr OSRExportToMICoordSys(OGRSpatialReferenceH, char **)
Export coordinate system in Mapinfo style CoordSys format.
Definition ogrspatialreference.cpp:11213
int OSRIsDerivedGeographic(OGRSpatialReferenceH)
Check if the CRS is a derived geographic coordinate system.
Definition ogrspatialreference.cpp:9254
OGRErr OSRSetPS(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Polar Stereographic.
Definition ogrspatialreference.cpp:7772
void OCTDestroyCoordinateTransformationOptions(OGRCoordinateTransformationOptionsH)
Destroy coordinate transformation options.
Definition ogrct.cpp:353
char ** OSRGetAuthorityListFromDatabase(void)
Return the list of CRS authorities used in the PROJ database.
Definition ogrspatialreference.cpp:12923
OGRErr OSRSetTargetLinearUnits(OGRSpatialReferenceH, const char *, const char *, double)
Set the linear units for the target node.
Definition ogrspatialreference.cpp:3004
OGRErr OSRSetBonne(OGRSpatialReferenceH hSRS, double dfStandardParallel, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Bonne.
Definition ogrspatialreference.cpp:6471
int OSRIsVertical(OGRSpatialReferenceH)
Check if vertical coordinate system.
Definition ogrspatialreference.cpp:9402
OGRErr OSRImportFromPCI(OGRSpatialReferenceH hSRS, const char *, const char *, double *)
Import coordinate system from PCI projection definition.
Definition ogr_srs_pci.cpp:126
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:11191
OGRErr OSRSetIWMPolyconic(OGRSpatialReferenceH hSRS, double dfLat1, double dfLat2, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
International Map of the World Polyconic.
Definition ogrspatialreference.cpp:7217
OGRCoordinateTransformationH OCTNewCoordinateTransformationEx(OGRSpatialReferenceH hSourceSRS, OGRSpatialReferenceH hTargetSRS, OGRCoordinateTransformationOptionsH hOptions)
Create transformation object.
Definition ogrct.cpp:1118
OGRErr OSRImportFromWkt(OGRSpatialReferenceH, char **)
Import from WKT string.
Definition ogrspatialreference.cpp:2409
void OCTDestroyCoordinateTransformation(OGRCoordinateTransformationH)
OGRCoordinateTransformation destructor.
Definition ogrct.cpp:873
OSRAxisMappingStrategy OSRGetAxisMappingStrategy(OGRSpatialReferenceH hSRS)
Return the data axis to CRS axis mapping strategy.
Definition ogrspatialreference.cpp:12550
double OSRGetAngularUnits(OGRSpatialReferenceH, char **)
Fetch angular geographic coordinate system units.
Definition ogrspatialreference.cpp:2749
OGRErr OSRMorphFromESRI(OGRSpatialReferenceH)
Convert in place from ESRI WKT format.
Definition ogrspatialreference.cpp:11725
OGRErr OSRImportFromProj4(OGRSpatialReferenceH, const char *)
Import PROJ coordinate string.
Definition ogrspatialreference.cpp:11414
int OSRIsSameEx(OGRSpatialReferenceH, OGRSpatialReferenceH, const char *const *papszOptions)
Do these two spatial references describe the same system ?
Definition ogrspatialreference.cpp:9950
double OSRGetSemiMinor(OGRSpatialReferenceH, OGRErr *)
Get spheroid semi minor axis.
Definition ogrspatialreference.cpp:5308
double OSRGetPrimeMeridian(OGRSpatialReferenceH, char **)
Fetch prime meridian info.
Definition ogrspatialreference.cpp:3424
OGRErr OSRCopyGeogCSFrom(OGRSpatialReferenceH hSRS, const OGRSpatialReferenceH hSrcSRS)
Copy GEOGCS from another OGRSpatialReference.
Definition ogrspatialreference.cpp:3831
OGRErr OSRSetAttrValue(OGRSpatialReferenceH hSRS, const char *pszNodePath, const char *pszNewNodeValue)
Set attribute value in spatial reference.
Definition ogrspatialreference.cpp:2514
OGRErr OSRSetSCH(OGRSpatialReferenceH hSRS, double dfPegLat, double dfPegLong, double dfPegHeading, double dfPegHgt)
Spherical, Cross-track, Height.
Definition ogrspatialreference.cpp:8220
double OSRGetLinearUnits(OGRSpatialReferenceH, char **)
Fetch linear projection units.
Definition ogrspatialreference.cpp:3079
void OSRCleanup(void)
Cleanup cached SRS related memory.
Definition ogrspatialreference.cpp:10756
OGRErr OSRSetProjParm(OGRSpatialReferenceH, const char *, double)
Set a projection parameter value.
Definition ogrspatialreference.cpp:5884
int OCTTransformEx(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z, int *pabSuccess)
Transform an array of points.
Definition ogrct.cpp:3753
int OCTTransform(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z)
Transform an array of points.
Definition ogrct.cpp:3728
OGRErr OSRSetFromUserInputEx(OGRSpatialReferenceH hSRS, const char *, CSLConstList papszOptions)
Set spatial reference from various text formats.
Definition ogrspatialreference.cpp:4330
OGRErr OSRSetCEA(OGRSpatialReferenceH hSRS, double dfStdP1, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Cylindrical Equal Area.
Definition ogrspatialreference.cpp:6503
void OSRSetPROJSearchPaths(const char *const *papszPaths)
Set the search path(s) for PROJ resource files.
Definition ogr_proj_p.cpp:394
OGRErr OSRImportFromUSGS(OGRSpatialReferenceH, long, long, double *, long)
Import coordinate system from USGS projection definition.
Definition ogr_srs_usgs.cpp:146
void OSRDestroyCRSInfoList(OSRCRSInfo **list)
Destroy the result returned by OSRGetCRSInfoListFromDatabase().
Definition ogrspatialreference.cpp:12892
OGRErr OSRSetProjection(OGRSpatialReferenceH, const char *)
Set a projection name.
Definition ogrspatialreference.cpp:5747
OGRErr OSRSetStatePlane(OGRSpatialReferenceH hSRS, int nZone, int bNAD83)
Set State Plane projection definition.
Definition ogr_fromepsg.cpp:229
int OSRGetAreaOfUse(OGRSpatialReferenceH hSRS, double *pdfWestLongitudeDeg, double *pdfSouthLatitudeDeg, double *pdfEastLongitudeDeg, double *pdfNorthLatitudeDeg, const char **ppszAreaName)
Return the area of use of the CRS.
Definition ogrspatialreference.cpp:12785
int OCTCoordinateTransformationOptionsSetBallparkAllowed(OGRCoordinateTransformationOptionsH hOptions, int bAllowBallpark)
Sets whether ballpark transformations are allowed.
Definition ogrct.cpp:588
int OCTCoordinateTransformationOptionsSetOperation(OGRCoordinateTransformationOptionsH hOptions, const char *pszCO, int bReverseCO)
Sets a coordinate operation.
Definition ogrct.cpp:501
int OCTTransform4D(OGRCoordinateTransformationH hCT, int nCount, double *x, double *y, double *z, double *t, int *pabSuccess)
Transform an array of points.
Definition ogrct.cpp:3782
OGRErr OSRSetACEA(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Albers Conic Equal Area.
Definition ogrspatialreference.cpp:6409
OGRErr OSRExportToUSGS(OGRSpatialReferenceH, long *, long *, double **, long *)
Export coordinate system in USGS GCTP projection definition.
Definition ogr_srs_usgs.cpp:788
OSRCRSType
Type of Coordinate Reference System (CRS).
Definition ogr_srs_api.h:942
@ OSR_CRS_TYPE_COMPOUND
Compound CRS.
Definition ogr_srs_api.h:954
@ OSR_CRS_TYPE_GEOGRAPHIC_2D
Geographic 2D CRS.
Definition ogr_srs_api.h:944
@ OSR_CRS_TYPE_PROJECTED
Projected CRS.
Definition ogr_srs_api.h:950
@ OSR_CRS_TYPE_GEOCENTRIC
Geocentric CRS.
Definition ogr_srs_api.h:948
@ OSR_CRS_TYPE_OTHER
Other.
Definition ogr_srs_api.h:956
@ OSR_CRS_TYPE_GEOGRAPHIC_3D
Geographic 3D CRS.
Definition ogr_srs_api.h:946
@ OSR_CRS_TYPE_VERTICAL
Vertical CRS.
Definition ogr_srs_api.h:952
const char * OSRGetName(OGRSpatialReferenceH hSRS)
Return the CRS name.
Definition ogrspatialreference.cpp:1409
struct OGRCoordinateTransformationOptions * OGRCoordinateTransformationOptionsH
Coordinate transformation options.
Definition ogr_srs_api.h:1017
int OSRIsProjected(OGRSpatialReferenceH)
Check if projected coordinate system.
Definition ogrspatialreference.cpp:9082
OGRErr OSRSetLAEA(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Azimuthal Equal-Area.
Definition ogrspatialreference.cpp:7318
double OSRGetProjParm(OGRSpatialReferenceH hSRS, const char *pszParamName, double dfDefault, OGRErr *)
Fetch a projection parameter value.
Definition ogrspatialreference.cpp:6058
OGRErr OSRStripVertical(OGRSpatialReferenceH)
Convert a compound cs into a horizontal CS.
Definition ogrspatialreference.cpp:8857
double OSRGetInvFlattening(OGRSpatialReferenceH, OGRErr *)
Get spheroid inverse flattening.
Definition ogrspatialreference.cpp:5212
OGRErr OSRSetEckertVI(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert VI.
Definition ogrspatialreference.cpp:6697
OGRErr OSRSetProjCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible PROJCS name.
Definition ogrspatialreference.cpp:5687
OGRErr OSRPromoteTo3D(OGRSpatialReferenceH hSRS, const char *pszName)
"Promotes" a 2D CRS to a 3D CRS one.
Definition ogrspatialreference.cpp:13069
OGRErr OSRSetLCCB(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic (Belgium)
Definition ogrspatialreference.cpp:7416
OGRErr OSRSetGaussSchreiberTMercator(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Gauss Schreiber Transverse Mercator.
Definition ogrspatialreference.cpp:6939
OGRSpatialReferenceH OSRNewSpatialReference(const char *)
Constructor.
Definition ogrspatialreference.cpp:844
char ** OSRGetPROJSearchPaths(void)
Get the search path(s) for PROJ resource files.
Definition ogr_proj_p.cpp:412
int OSRReference(OGRSpatialReferenceH)
Increments the reference count by one.
Definition ogrspatialreference.cpp:1069
OGRErr OSRSetMercator2SP(OGRSpatialReferenceH hSRS, double dfStdP1, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Mercator 2SP.
Definition ogrspatialreference.cpp:7536
OGRErr OSRImportFromPanorama(OGRSpatialReferenceH, long, long, long, double *)
Import coordinate system from "Panorama" GIS projection definition.
Definition ogr_srs_panorama.cpp:219
OGRErr OSRSetOS(OGRSpatialReferenceH hSRS, double dfOriginLat, double dfCMeridian, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Oblique Stereographic.
Definition ogrspatialreference.cpp:7630
OGRErr OSRAutoIdentifyEPSG(OGRSpatialReferenceH hSRS)
Set EPSG authority info if possible.
Definition ogr_fromepsg.cpp:410
OGRErr OSRSetLCC1SP(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic 1SP.
Definition ogrspatialreference.cpp:7383
OGRErr OSRSetGeocCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible PROJCS name.
Definition ogrspatialreference.cpp:5462
int OCTCoordinateTransformationOptionsSetAreaOfInterest(OGRCoordinateTransformationOptionsH hOptions, double dfWestLongitudeDeg, double dfSouthLatitudeDeg, double dfEastLongitudeDeg, double dfNorthLatitudeDeg)
Sets an area of interest.
Definition ogrct.cpp:424
int OSRIsCompound(OGRSpatialReferenceH)
Check if the coordinate system is compound.
Definition ogrspatialreference.cpp:9020
OGRErr OSRSetAE(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Azimuthal Equidistant.
Definition ogrspatialreference.cpp:6440
int OSRIsSameGeogCS(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do the GeogCS'es match?
Definition ogrspatialreference.cpp:9752
int OSRIsGeocentric(OGRSpatialReferenceH)
Check if geocentric coordinate system.
Definition ogrspatialreference.cpp:9127
OSRCRSInfo ** OSRGetCRSInfoListFromDatabase(const char *pszAuthName, const OSRCRSListParameters *params, int *pnOutResultCount)
Enumerate CRS objects from the database.
Definition ogrspatialreference.cpp:12816
OGRErr OSRSetNormProjParm(OGRSpatialReferenceH, const char *, double)
Set a projection parameter with a normalized value.
Definition ogrspatialreference.cpp:6186
OGRErr OSRSetFromUserInput(OGRSpatialReferenceH hSRS, const char *)
Set spatial reference from various text formats.
Definition ogrspatialreference.cpp:4310
const char * OSRGetAttrValue(OGRSpatialReferenceH hSRS, const char *pszName, int iChild)
Fetch indicated attribute of named node.
Definition ogrspatialreference.cpp:1350
OGRSpatialReferenceH OCTGetSourceCS(OGRCoordinateTransformationH hTransform)
Transformation's source coordinate system reference.
Definition ogrct.cpp:1172
void OSRSetAxisMappingStrategy(OGRSpatialReferenceH hSRS, OSRAxisMappingStrategy strategy)
Set the data axis to CRS axis mapping strategy.
Definition ogrspatialreference.cpp:12591
int OSRHasPointMotionOperation(OGRSpatialReferenceH)
Check if a CRS has at least an associated point motion operation.
Definition ogrspatialreference.cpp:9570
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:7031
double OSRGetTargetLinearUnits(OGRSpatialReferenceH, const char *, char **)
Fetch linear projection units.
Definition ogrspatialreference.cpp:3308
int OCTCoordinateTransformationOptionsSetDesiredAccuracy(OGRCoordinateTransformationOptionsH hOptions, double dfAccuracy)
Sets the desired accuracy for coordinate operations.
Definition ogrct.cpp:547
OGRErr OSRSetTMSO(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator (South Oriented)
Definition ogrspatialreference.cpp:6309
OGRErr OSRValidate(OGRSpatialReferenceH)
Validate SRS tokens.
Definition ogrspatialreference.cpp:2388
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:7091
OGRErr OSRSetMC(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Miller Cylindrical.
Definition ogrspatialreference.cpp:7449
OGRSpatialReferenceH * OSRFindMatches(OGRSpatialReferenceH hSRS, char **papszOptions, int *pnEntries, int **ppanMatchConfidence)
Try to identify a match between the passed SRS and a related SRS in a catalog.
Definition ogrspatialreference.cpp:10125
void OSRDestroySpatialReference(OGRSpatialReferenceH)
OGRSpatialReference destructor.
Definition ogrspatialreference.cpp:940
OGRErr OSRSetEckert(OGRSpatialReferenceH hSRS, int nVariation, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert I-VI.
Definition ogrspatialreference.cpp:6640
OGRErr OSRSetEckertIV(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Eckert IV.
Definition ogrspatialreference.cpp:6669
const char * OSRGetAxis(OGRSpatialReferenceH hSRS, const char *pszTargetKey, int iAxis, OGRAxisOrientation *peOrientation)
Fetch the orientation of one axis.
Definition ogrspatialreference.cpp:11072
OGRErr OSRExportToWkt(OGRSpatialReferenceH, char **)
Convert this SRS into WKT 1 format.
Definition ogrspatialreference.cpp:1946
OGRSpatialReferenceH OCTGetTargetCS(OGRCoordinateTransformationH hTransform)
Transformation's target coordinate system reference.
Definition ogrct.cpp:1199
double OSRGetSemiMajor(OGRSpatialReferenceH, OGRErr *)
Get spheroid semi major axis.
Definition ogrspatialreference.cpp:5149
OGRErr OSRSetTOWGS84(OGRSpatialReferenceH hSRS, double, double, double, double, double, double, double)
Set the Bursa-Wolf conversion to WGS84.
Definition ogrspatialreference.cpp:10463
OGRErr OSRSetPolyconic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Polyconic.
Definition ogrspatialreference.cpp:7697
const char * OSRGetAuthorityCode(OGRSpatialReferenceH hSRS, const char *pszTargetKey)
Get the authority code for a node.
Definition ogrspatialreference.cpp:8589
int OSRIsSameVertCS(OGRSpatialReferenceH, OGRSpatialReferenceH)
Do the VertCS'es match?
Definition ogrspatialreference.cpp:9816
OGRErr OSRExportToPCI(OGRSpatialReferenceH, char **, char **, double **)
Export coordinate system in PCI projection definition.
Definition ogr_srs_pci.cpp:694
OGRErr OSRSetLocalCS(OGRSpatialReferenceH hSRS, const char *pszName)
Set the user visible LOCAL_CS name.
Definition ogrspatialreference.cpp:5364
OGRSpatialReferenceH OSRConvertToOtherProjection(OGRSpatialReferenceH hSRS, const char *pszTargetProjection, const char *const *papszOptions)
Convert to another equivalent projection.
Definition ogrspatialreference.cpp:10086
int OSRDereference(OGRSpatialReferenceH)
Decrements the reference count by one.
Definition ogrspatialreference.cpp:1109
OGRErr OSRSetEquirectangular2(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfPseudoStdParallel1, double dfFalseEasting, double dfFalseNorthing)
Equirectangular generalized form.
Definition ogrspatialreference.cpp:6789
OGRErr OSRSetCS(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Cassini-Soldner.
Definition ogrspatialreference.cpp:6533
OGRErr OSRSetGH(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Goode Homolosine.
Definition ogrspatialreference.cpp:6847
OGRErr OSRSetGnomonic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Gnomonic.
Definition ogrspatialreference.cpp:6971
OGRErr OSRSetTMVariant(OGRSpatialReferenceH hSRS, const char *pszVariantName, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Transverse Mercator variant.
Definition ogrspatialreference.cpp:6254
struct OSRCRSListParameters OSRCRSListParameters
Structure to describe optional parameters to OSRGetCRSInfoListFromDatabase()
Definition ogr_srs_api.h:999
int OSRIsLocal(OGRSpatialReferenceH)
Check if local coordinate system.
Definition ogrspatialreference.cpp:9337
OGRErr OSRSetVDG(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
VanDerGrinten.
Definition ogrspatialreference.cpp:7943
OGRErr OSRSetVerticalPerspective(OGRSpatialReferenceH hSRS, double dfTopoOriginLat, double dfTopoOriginLon, double dfTopoOriginHeight, double dfViewPointHeight, double dfFalseEasting, double dfFalseNorthing)
Vertical Perspective / Near-sided Perspective.
Definition ogrspatialreference.cpp:8250
int OSREPSGTreatsAsNorthingEasting(OGRSpatialReferenceH hSRS)
This function returns TRUE if this projected coordinate system should be treated as having northing/e...
Definition ogrspatialreference.cpp:12360
OGRErr OSRSetGS(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Gall Stereograpic.
Definition ogrspatialreference.cpp:6818
const char * OSRGetAuthorityName(OGRSpatialReferenceH hSRS, const char *pszTargetKey)
Get the authority name for a node.
Definition ogrspatialreference.cpp:8725
OGRErr OSRSetSOC(OGRSpatialReferenceH hSRS, double dfLatitudeOfOrigin, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Swiss Oblique Cylindrical.
Definition ogrspatialreference.cpp:7913
OGRErr OSRImportFromEPSGA(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG geographic, projected or vertical CRS code.
Definition ogrspatialreference.cpp:12112
OGRErr OSRSetAuthority(OGRSpatialReferenceH hSRS, const char *pszTargetKey, const char *pszAuthority, int nCode)
Set the authority for a node.
Definition ogrspatialreference.cpp:8452
OGRErr OSRSetCompoundCS(OGRSpatialReferenceH hSRS, const char *pszName, OGRSpatialReferenceH hHorizSRS, OGRSpatialReferenceH hVertSRS)
Setup a compound coordinate system.
Definition ogrspatialreference.cpp:5617
double OSRCalcSemiMinorFromInvFlattening(double dfSemiMajor, double dfInvFlattening)
Compute semi-minor axis from semi-major axis and inverse flattening.
Definition ogrspatialreference.cpp:11345
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:7257
OGRErr OSRSetLinearUnits(OGRSpatialReferenceH, const char *, double)
Set the linear units for the projection.
Definition ogrspatialreference.cpp:2879
double OSRCalcInvFlattening(double dfSemiMajor, double dfSemiMinor)
Compute inverse flattening from semi-major and semi-minor axis.
Definition ogrspatialreference.cpp:11317
OGRErr OSRImportFromDict(OGRSpatialReferenceH, const char *, const char *)
Read SRS from WKT dictionary.
Definition ogr_srs_dict.cpp:157
OGRErr OSRSetRobinson(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Robinson.
Definition ogrspatialreference.cpp:7803
OGRErr OSRExportToCF1(OGRSpatialReferenceH, char **ppszGridMappingName, char ***ppapszKeyValues, char **ppszUnits, CSLConstList papszOptions)
Export a CRS to netCDF CF-1 definitions.
Definition ogr_srs_cf1.cpp:1726
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:7150
OGRErr OSRImportFromESRI(OGRSpatialReferenceH, char **)
Import coordinate system from ESRI .prj format(s).
Definition ogr_srs_esri.cpp:102
OGRErr OSRSetAngularUnits(OGRSpatialReferenceH, const char *, double)
Set the angular units for the geographic coordinate system.
Definition ogrspatialreference.cpp:2615
double OSRGetCoordinateEpoch(OGRSpatialReferenceH hSRS)
Get the coordinate epoch, as decimal year.
Definition ogrspatialreference.cpp:13353
OGRErr OSRSetUTM(OGRSpatialReferenceH hSRS, int nZone, int bNorth)
Set UTM projection definition.
Definition ogrspatialreference.cpp:7999
int OSRGetUTMZone(OGRSpatialReferenceH hSRS, int *pbNorth)
Get utm zone information.
Definition ogrspatialreference.cpp:8086
OGRErr OSRSetOrthographic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Orthographic.
Definition ogrspatialreference.cpp:7662
OGRErr OSRDemoteTo2D(OGRSpatialReferenceH hSRS, const char *pszName)
"Demote" a 3D CRS to a 2D CRS one.
Definition ogrspatialreference.cpp:13112
OGRErr OSRExportToPanorama(OGRSpatialReferenceH, long *, long *, long *, long *, double *)
Export coordinate system in "Panorama" GIS projection definition.
Definition ogr_srs_panorama.cpp:797
OGRCoordinateTransformationOptionsH OCTNewCoordinateTransformationOptions(void)
Create coordinate transformation options.
Definition ogrct.cpp:340
OGRErr OSRSetLCC(OGRSpatialReferenceH hSRS, double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Lambert Conformal Conic.
Definition ogrspatialreference.cpp:7351
int OSRGetPROJEnableNetwork(void)
Get whether PROJ networking capabilities are enabled.
Definition ogr_proj_p.cpp:508
OGRCoordinateTransformationH OCTNewCoordinateTransformation(OGRSpatialReferenceH hSourceSRS, OGRSpatialReferenceH hTargetSRS)
Create transformation object.
Definition ogrct.cpp:1065
OGRErr OSRExportToXML(OGRSpatialReferenceH, char **, const char *)
Export coordinate system in XML format.
Definition ogr_srs_xml.cpp:700
OGRErr OSRImportFromOzi(OGRSpatialReferenceH, const char *const *)
Import coordinate system from OziExplorer projection definition.
Definition ogr_srs_ozi.cpp:50
OSRAxisMappingStrategy
Data axis to CRS axis mapping strategy.
Definition ogr_srs_api.h:652
@ OAMS_AUTHORITY_COMPLIANT
Compliant with the order mandated by the CRS authority.
Definition ogr_srs_api.h:654
@ OAMS_TRADITIONAL_GIS_ORDER
Traditional GIS order.
Definition ogr_srs_api.h:653
@ OAMS_CUSTOM
Custom.
Definition ogr_srs_api.h:656
OGRErr OSRSetMercator(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Mercator.
Definition ogrspatialreference.cpp:7490
void OSRSetCoordinateEpoch(OGRSpatialReferenceH hSRS, double dfCoordinateEpoch)
Set the coordinate epoch, as decimal year.
Definition ogrspatialreference.cpp:13307
int OSRIsDerivedProjected(OGRSpatialReferenceH)
Check if the CRS is a derived projected coordinate system.
Definition ogrspatialreference.cpp:9300
void OSRRelease(OGRSpatialReferenceH)
Decrements the reference count by one, and destroy if zero.
Definition ogrspatialreference.cpp:1157
OGRErr OSRAddGuessedTOWGS84(OGRSpatialReferenceH hSRS)
Try to add a a 3-parameter or 7-parameter Helmert transformation to WGS84.
Definition ogrspatialreference.cpp:12093
OGRCoordinateTransformationH OCTClone(OGRCoordinateTransformationH hTransform)
Clone transformation object.
Definition ogrct.cpp:1145
OGRErr OSRSetSinusoidal(OGRSpatialReferenceH hSRS, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Sinusoidal.
Definition ogrspatialreference.cpp:7833
void OSRSetPROJEnableNetwork(int enabled)
Enable or disable PROJ networking capabilities.
Definition ogr_proj_p.cpp:479
int OSRIsGeographic(OGRSpatialReferenceH)
Check if geographic coordinate system.
Definition ogrspatialreference.cpp:9209
OGRAxisOrientation
Axis orientations (corresponds to CS_AxisOrientationEnum).
Definition ogr_srs_api.h:35
@ OAO_Up
Up (to space)
Definition ogr_srs_api.h:41
@ OAO_West
West.
Definition ogr_srs_api.h:40
@ OAO_South
South.
Definition ogr_srs_api.h:38
@ OAO_East
East.
Definition ogr_srs_api.h:39
@ OAO_Down
Down (to Earth center)
Definition ogr_srs_api.h:42
@ OAO_Other
Other.
Definition ogr_srs_api.h:36
@ OAO_North
North.
Definition ogr_srs_api.h:37
OGRErr OSRExportToERM(OGRSpatialReferenceH, char *, char *, char *)
Convert coordinate system to ERMapper format.
Definition ogr_srs_erm.cpp:145
OGRErr OSRExportToProj4(OGRSpatialReferenceH, char **)
Export coordinate system in PROJ.4 legacy format.
Definition ogrspatialreference.cpp:11502
OGRErr OSRExportToWktEx(OGRSpatialReferenceH, char **ppszResult, const char *const *papszOptions)
Convert this SRS into WKT format.
Definition ogrspatialreference.cpp:1969
OGRErr OSRSetDataAxisToSRSAxisMapping(OGRSpatialReferenceH hSRS, int nMappingSize, const int *panMapping)
Set a custom data axis to CRS axis mapping.
Definition ogrspatialreference.cpp:12706
OGRErr OSRImportFromCF1(OGRSpatialReferenceH, CSLConstList papszKeyValues, const char *pszUnits)
Import a CRS from netCDF CF-1 definitions.
Definition ogr_srs_cf1.cpp:29
OGRErr OSRSetEquirectangular(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Equirectangular.
Definition ogrspatialreference.cpp:6741
OGRErr OSRMorphToESRI(OGRSpatialReferenceH)
Convert in place to ESRI WKT format.
Definition ogrspatialreference.cpp:11673
OGRErr OSRSetStereographic(OGRSpatialReferenceH hSRS, double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Stereographic.
Definition ogrspatialreference.cpp:7864
OGRSpatialReferenceH OSRCloneGeogCS(OGRSpatialReferenceH)
Make a duplicate of the GEOGCS node of this OGRSpatialReference object.
Definition ogrspatialreference.cpp:9666
OGRSpatialReferenceH OSRClone(OGRSpatialReferenceH)
Make a duplicate of this OGRSpatialReference.
Definition ogrspatialreference.cpp:1458
OGRErr OSRSetWagner(OGRSpatialReferenceH hSRS, int nVariation, double dfCenterLat, double dfFalseEasting, double dfFalseNorthing)
Wagner I – VII.
Definition ogrspatialreference.cpp:8162
OGRErr OSRSetLinearUnitsAndUpdateParameters(OGRSpatialReferenceH, const char *, double)
Set the linear units for the projection.
Definition ogrspatialreference.cpp:2827
OGRErr OSRSetStatePlaneWithUnits(OGRSpatialReferenceH hSRS, int nZone, int bNAD83, const char *pszOverrideUnitName, double dfOverrideUnit)
Set State Plane projection definition.
Definition ogr_fromepsg.cpp:248
OGRErr OSRSetTPED(OGRSpatialReferenceH hSRS, double dfLat1, double dfLong1, double dfLat2, double dfLong2, double dfFalseEasting, double dfFalseNorthing)
TPED (Two Point Equi Distant)
Definition ogrspatialreference.cpp:6342
OGRErr OSRImportFromUrl(OGRSpatialReferenceH, const char *)
Set spatial reference from a URL.
Definition ogrspatialreference.cpp:4462
void OSRGetPROJVersion(int *pnMajor, int *pnMinor, int *pnPatch)
Get the PROJ version.
Definition ogr_proj_p.cpp:536
OGRErr OSRSetMollweide(OGRSpatialReferenceH hSRS, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Mollweide.
Definition ogrspatialreference.cpp:7567
int OCTCoordinateTransformationOptionsSetOnlyBest(OGRCoordinateTransformationOptionsH hOptions, bool bOnlyBest)
Sets whether only the "best" operation(s) should be used.
Definition ogrct.cpp:642
Context for coordinate transformation.
Definition ogr_spatialref.h:973
Structure given overall description of a CRS.
Definition ogr_srs_api.h:965
double dfEastLongitudeDeg
Eastern-most longitude of the area of use, in degrees.
Definition ogr_srs_api.h:984
double dfNorthLatitudeDeg
Northern-most latitude of the area of use, in degrees.
Definition ogr_srs_api.h:986
int bDeprecated
Whether the object is deprecated.
Definition ogr_srs_api.h:975
double dfWestLongitudeDeg
Western-most longitude of the area of use, in degrees.
Definition ogr_srs_api.h:980
int bBboxValid
Whereas the west_lon_degree, south_lat_degree, east_lon_degree and north_lat_degree fields are valid.
Definition ogr_srs_api.h:978
char * pszName
Object name.
Definition ogr_srs_api.h:971
char * pszProjectionMethod
Name of the projection method for a projected CRS.
Definition ogr_srs_api.h:991
double dfSouthLatitudeDeg
Southern-most latitude of the area of use, in degrees.
Definition ogr_srs_api.h:982
char * pszCode
Object code.
Definition ogr_srs_api.h:969
char * pszAreaName
Name of the area of use.
Definition ogr_srs_api.h:988
char * pszAuthName
Authority name.
Definition ogr_srs_api.h:967
OSRCRSType eType
Object type.
Definition ogr_srs_api.h:973