PROJ.4 - Cartographic Projections Library
Clone or download
rouault Assorted set of fixes for PROJString to ISO19111 model:
- createFromPROJString(): take into account axisswap step for Krovak and Transverse Mercator (South Orientated)
- Geocentric export to PROJ4: use datum when possible, and add explicit units=m
- ESRI WKT parser: make it case insensitive to parameter and projection names, and more tolerant about possible parameter name aliases
- import from WKT1 for Polar_Stereographic: don't be case sensitive
- importFromPROJString: allow pm to override datum
- Equidistant cylindrical: add support for non-standard latitude of natural origin, used in a GDAL test case
- tmerc export to PROJString: use 'k' instead of 'k_0'
- pj_ellps: use official value from EPSG for reverse flattening of Airy ellipsoid
- GDAL compatibility: add support for importing odd formulations of Mercator as WKT1, but rejecting them when exporting to PROJ
- Add export of 'Geostationary Satellite (Sweep X)' to WKT1_GDAL via EXTENSION.PROJ4 node
- importFromPROJString: add support for +f
- WKT1 / PROJ4: add support for EXTENSION.PROJ4 nodes and +wktext
- exportToWKT: change way we deal with AXIS by default for WKT1_GDAL
- Improve etmerc handling
- Fix WKT import of peg_point_heading for Spherical_Cross_Track_Height
- International Map of the World Polyconic: change parameter mapping
- exportToPROJ: add alpha parameter
- Hotine_Oblique_Mercator_Two_Point_Natural_Origin: GDAL_WKT1 related fix
- GDAL compatibility improvements in import from PROJ4 / WKT1 for polar stereographic
- Add support for +towgs84 when importing a +proj=geocent
- import from WKT1: add support for an odd Mercator_1SP formulation handled by GDAL
- export to proj4 strings: add +units=m to projected CRS for better GDAL compatibility
- export to proj4 strings: add +no_defs to CRS for better GDAL compatibility
Latest commit cf54b0b Nov 19, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmake Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
data Database: add mapping to GEOID12B height models added per OSGeo/proj-… Nov 19, 2018
docs Doc: fix geos projection explanation about the appropriate value for … Nov 19, 2018
examples pj_obs_api_mini_demo.c: fix typo: en -> enu for PJ_COORD May 6, 2018
include Assorted set of fixes for PROJString to ISO19111 model: Nov 19, 2018
jniwrap Upgrade http:// to https:// where feasible Jun 2, 2018
m4 use shortened URL from StackExchange websites Jun 2, 2018
man Update man-pages from Sphinx-docs Sep 10, 2018
scripts Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
src Assorted set of fixes for PROJString to ISO19111 model: Nov 19, 2018
test Assorted set of fixes for PROJString to ISO19111 model: Nov 19, 2018
travis autoconf / cmake: build test/ only if needed Nov 15, 2018
.gitignore Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
.travis.yml Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
AUTHORS Add myself to AUTHORS Aug 29, 2017
CITATION Upgrade http:// to https:// where feasible Jun 2, 2018
CMakeLists.txt autoconf / cmake: build test/ only if needed Nov 15, 2018
CONTRIBUTING.md Upgrade http:// to https:// where feasible Jun 2, 2018
COPYING put under MIT license Mar 27, 2000
ChangeLog Add a scripts/fix_typos.sh script and correct reported errors Dec 12, 2016
Dockerfile base osgeo/proj automated Docker image on Ubuntu 18.04 Aug 13, 2018
Doxyfile Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
HOWTO-RELEASE Build docs from most recent maintenance branch Sep 19, 2018
INSTALL New Jul 21, 2008
Makefile.am autoconf / cmake: build test/ only if needed Nov 15, 2018
NEWS Update NEWS for 5.2 Sep 10, 2018
README.md Remove nmake build system Oct 3, 2018
appveyor.yml appveyor.yml: test --target install Nov 15, 2018
autogen.sh BLD: Remove proj_config.h.in. Sep 10, 2015
configure.ac Implement RFC 2: Initial integration of "GDAL SRS barn" work Nov 14, 2018
proj.pc.in added pkg-config support (#3) Jul 23, 2011

README.md

PROJ

Travis Status AppVeyor Status Coveralls Status Gitter Mailing List

PROJ is a generic coordinate transformation software, that transforms coordinates from one coordinate reference system (CRS) to another. This includes cartographic projections as well as geodetic transformations.

For more information on the PROJ.4 project please see the web page at:

https://proj4.org/

The PROJ.4 mailing list can be found at:

http://lists.maptools.org/mailman/listinfo/proj

See the NEWS file for changes between versions.

The following command line utilities are included in the PROJ package:

  • proj, for cartographic projection of geodetic coordinates
  • cs2cs, for transformation from one CRS to another CRS.
  • geod, for geodesic (great circle) computations.
  • cct, for generic Coordinate Conversions and Transformations.
  • gie, the Geospatial Integrity Investigation Environment.

Installation

Building with CMake

cd proj
mkdir build
cd build
cmake ..
cmake --build .

On Windows, one may need to specify generator:

cmake -G "Visual Studio 15 2017" ..

Tests are run with

ctest

The test suite requires that the proj-datumgrid package is installed in PROJ_LIB.

Building on Unix/Linux

FSF's configuration procedure is used to ease installation of the PROJ system.

The default destination path prefix for installed files is /usr/local. Results from the installation script will be placed into subdirectories bin, include, lib, man/man1 and man/man3. If this default path prefix is proper, then execute:

./configure

See the note below if you are building PROJ directly from the git repository.

If another path prefix is required, then execute:

./configure --prefix=/my/path

In either case, the directory of the prefix path must exist and be writable by the installer. After executing configure, execute:

make
make install

The install target will create, if necessary, all required sub-directories.

Tests are run with

make check

The test suite requires that the proj-datumgrid package is installed in PROJ_LIB.

Building from the git repository

If you are building from the git repository you have to first run

./autogen.sh

which will generate a configure script that can be used as described above.

Distribution files and format

Sources are distributed in one or more files. The principle elements of the system are in a compress tar file named proj-x.y.z.tar.gz where "x" will indicate major release number, "y" indicates minor release number and "z" indicates the patch number of the release.

In addition to the PROJ software package, distributions of datum conversion grid files and PROJ parameter files are also available. The grid package is distributed under the name proj-datumgrid-x.y.zip, where "x" is the major release version and "y" the minor release version numbers. Similarly regional packages are distributed. The regional packages contain resources that are not essential to the functionality of PROJ but still of value to users in the region specific to the package. All grids that were in proj-datumgrids-1.6 remain in proj-datumgrids-1.7; the regional datumgrid files contain grids for datums not previously supported (prior to PROJ 5.0.0).

The resource packages can be downloaded from the PROJ.4 website.

More info on the contents of the various resource packages can be found at the proj-datumgrid GitHub repository.

The resource file packages should be extracted to PROJ_LIB where PROJ will find them after installation. The default location of PROJ_LIB on UNIX-based systems is /usr/local/share/proj but it may be changed to a different directory. On Windows you have to define PROJ_LIB yourself.

Citing PROJ in publications

See CITATION