proj4-hs-bindings: Haskell bindings for the Proj4 C dynamic library.
Haskell bindings for the Proj.4 map projection C library.
You need to have Proj.4 already installed as a shared library.
Example transformations (from http://www.mysqludf.org/lib_mysqludf_fPROJ4/):
import Geo.Proj4 lon0 = 22.350 * pi / 180 -- Test longitude in radians. lat0 = 40.084 * pi / 180 -- Test latitude in radians. alt0 = 2843 -- Test altitude in meters. -- | Test projection: pj = newProjection "+proj=utm +zone=34" -- | Another test (null, e.g. cylindrical) projction: pj0 = newProjection "+proj=latlong +ellps=clrk66" -- | A projection of our test longitude & latitude, using @pj: (x, y) = pjFwd pj (lon0, lat0) -- | An inverse projection from (x, y) to (longitude, latitude): (lon, lat) = pjInv pj (x, y) -- | Convert our test position from one projection to another (pj0 -> pj): (x2, y2, z2) = pjTransformPt pj0 pj (lon0, lat0, alt0) main :: IO () main = do putStrLn $ "(x, y): " ++ (show (x, y)) putStrLn $ "(lon, lat): " ++ (show (lon * 180 / pi, lat * 180 / pi)) putStrLn $ "(x, y, z): " ++ (show $ (x2, y2, z2)) return ()
You should see the following when you compile and run the above:
(x, y): (615096.1096381239,4437953.6592040695) (lon, lat): (22.350000000000662,40.083999999999584) (x, y, z): (615096.1096381239,4437953.6592040695,2843.0)
Modules
- Geo
- Geo.Proj4
- Geo.Proj4.Internal
- Geo.Proj4
Downloads
- proj4-hs-bindings-0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1 |
---|---|
Dependencies | base (<5), ghc-prim [details] |
License | LicenseRef-GPL |
Copyright | (C) 2012–2013 Pavel M. Penev, LaRouche Policy Institute |
Author | Pavel M. Penev <pavpen@gmail.com> |
Maintainer | Pavel M. Penev <pavpen@gmail.com> |
Category | Data |
Uploaded | by PavelPenev at 2013-09-22T06:09:10Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 1232 total (4 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2016-12-20 [all 9 reports] |