Python Reprojector
Project description
Python Reprojector
This is a simple python library for coordinate transformations between different projections. It uses the pyproj library as a wrapper for proj.4. The goal is to make transformations as simple as possible.
Usage
Get transformation function
from pyreproj import Reprojector
rp = Reprojector()
transform = rp.get_transformation_function(from_srs=4326, to_srs='epsg:2056')
transform(47.46614, 7.80071)
# returns: (2627299.6594659993, 1257325.3550428299)
The arguments from_srs and to_srs can be one of the following:
Integer: value of the EPSG code, e.g. 2056
String: EPSG code with leading “epsg:”, e.g. ‘epsg:2056’
String: proj4 definition string
Object: instance of pyproj.Proj
The returned function is a functools.partial that can also be used as first argument for shapely.ops.transform.
Transform coordinates directly
from shapely.geometry import Point
from pyreproj import Reprojector
rp = Reprojector()
p1 = Point(47.46614, 7.80071)
p2 = rp.transform(p1, from_srs=4326, to_srs=2056)
p2.wkt
# returns: 'POINT (2627299.659465999 1257325.35504283)'
rp.transform([47.46614, 7.80071], from_srs=4326, to_srs=2056)
# returns: [2627299.6594659993, 1257325.3550428299]
rp.transform((47.46614, 7.80071), from_srs=4326, to_srs=2056)
# returns: (2627299.6594659993, 1257325.3550428299)
The arguments from_srs and to_srs can be one of the following:
Integer: value of the EPSG code, e.g. 2056
String: EPSG code with leading “epsg:”, e.g. ‘epsg:2056’
String: proj4 definition string
Object: instance of pyproj.Proj
Get projection from service
from pyreproj import Reprojector
rp = Reprojector()
proj = rp.get_projection_from_service(epsg=2056)
type(proj)
# returns: <class 'pyproj.Proj'>
Changelog
3.0.0
https://gitlab.com/geo-bl-ch/python-reprojector/milestones/3
Replace deprecated transform method https://pyproj4.github.io/pyproj/stable/gotchas.html#upgrading-to-pyproj-2-from-pyproj-1
Drop support for Pyhton 2.7, 3.5, 3.6 and 3.7
2.0.0
https://gitlab.com/geo-bl-ch/python-reprojector/milestones/2
Update used version of pyproj (>=2.2.0)
1.0.1
https://gitlab.com/geo-bl-ch/python-reprojector/milestones/1
Set up deployment
Lock version of pyproj<2.0.0
1.0.0
Initial version
- Features:
define projections by projection object, proj4 definition or EPSG code
get projection by service (e.g. http://spatialreference.org/)
get a transformation function from source to target projection
transform coordinates as list or tuple or a shapely geometry directly
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pyreproj-3.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f3ac8434275a6f0c5dd147136ad746f3fc5845d5590fc5659ba58711927f94b |
|
MD5 | f467b04842ebcbf00e448e008e8f1b7b |
|
BLAKE2b-256 | bce3913c1f174e5e3707b0291b6f46dea4ef297600fc2fbd69182ccbd6162b3c |