Compare commits

...
121 Commits
Author SHA1 Message Date
Martin Desruisseaux 36ce9c9987 JNI: Replaced usages of NAN C/C++ constant by the java.lang.Double.NaN constant.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2211 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-05-31 14:15:10 +00:00
Frank Warmerdam d120af82e2 add missing org_proj4_PJ.h (#153)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2199 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-26 01:54:03 +00:00
Frank Warmerdam 46729372e6 add missing org_proj4_PJ.h (#153)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2198 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-26 01:51:29 +00:00
Frank Warmerdam 4c8d48d626 avoid using macro expansion directly in #include to simplify code
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2196 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-14 01:27:57 +00:00
Frank Warmerdam 13690064a9 add some missing items of 4.8.0 news
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2195 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-13 22:47:22 +00:00
Frank Warmerdam 29b2078820 prepare for 4.8.0 release
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2188 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-07 06:01:42 +00:00
Frank Warmerdam 06896c5dd4 add no_uoff for HOM in epsg init file (#104)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2187 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-07 05:07:56 +00:00
Frank Warmerdam 3ea87ae29c fix pconic forward to use P->sig (#148)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2186 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-07 04:16:11 +00:00
Frank Warmerdam 5229741fe5 added the Natural Earth projection
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2182 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-04 00:15:57 +00:00
Frank Warmerdam c4652f8885 Add support for no_uoff and no_off for omerc (#128)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2181 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-03 21:50:46 +00:00
Frank Warmerdam b75f02e24f cleanup odd code construct in PJ_stere and extend stere testing a bit (#147)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2180 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-03-03 18:38:07 +00:00
Frank Warmerdam 9e84c05067 include CH in dist (#145)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2179 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-29 05:16:47 +00:00
Frank Warmerdam d33de1c5bb added +sweep for +proj=geos (#146)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2176 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-27 07:56:32 +00:00
Frank Warmerdam 33077073a4 added CH init file (#145)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2175 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-27 07:16:14 +00:00
Frank Warmerdam 4a90e9eaf0 added optional multistresstest target, slightly extended multistresstest
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2174 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-27 07:13:50 +00:00
Frank Warmerdam 5fae87a9c7 Removed some unused code in an effort to get a clean build.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2173 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-26 01:43:12 +00:00
Frank Warmerdam d0c1fe6005 regenerate epsg init file with +datum (#122)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2172 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-26 01:38:33 +00:00
Frank Warmerdam 211319f2be back out accidental PROJ_LIB_DIR_ESCAPED change
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2170 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 18:03:24 +00:00
Frank Warmerdam 438aa9711e try again to fix M_PI for MSVC
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2169 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 17:59:01 +00:00
Frank Warmerdam 504f68f451 updated
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2168 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 05:57:32 +00:00
Frank Warmerdam a7caf9b4c2 prepare for 4.8.0 beta1
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2167 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 05:56:52 +00:00
Frank Warmerdam d7ec98fae8 fix up M_PI handling for MSVC (#111)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2166 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 05:25:21 +00:00
Frank Warmerdam c5c96ad223 preliminary addition of Icosahedral Snyder Equal Area projection (#111)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2165 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 05:21:55 +00:00
Frank Warmerdam 7c9400fd1e removed nad2nad.c source as part of the ctable2 refactoring
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2164 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 03:36:05 +00:00
Frank Warmerdam d98ff55499 Use parenthesis around assignments in if statements (#123).
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2163 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 01:53:19 +00:00
Frank Warmerdam 5dfb1d5301 improve error checking (#140)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2162 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-21 01:44:05 +00:00
Frank Warmerdam 850f843975 fix windows build issues (#133)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2161 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-20 21:23:52 +00:00
Frank Warmerdam b52b9b9cf9 added pj_get_spheroid_defn() (#142)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2160 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-15 23:51:45 +00:00
Frank Warmerdam d082775204 reformat comment
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2154 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-09 21:25:41 +00:00
Frank Warmerdam 02ac4443cd do not let one point falling out of the datum shift grid area to cause the remainder to not be transformed (#45)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2153 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-09 04:24:45 +00:00
Frank Warmerdam faffa62c54 ensure pj_apply_gridshift() supports points up to epsilon outside mesh (#141)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2152 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-01 23:03:34 +00:00
Frank Warmerdam dde549f375 fix strcmp for -f flag in nad2bin (#139)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2151 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-01-31 16:54:55 +00:00
Frank Warmerdam 76f0100ddb minor formatting improvements
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2142 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-01-25 19:23:31 +00:00
Frank Warmerdam 6a350a8b49 only split keywords on pluses following spaces (#132)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2131 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-12-23 02:11:46 +00:00
Frank Warmerdam 33f73be495 ensure we check errno before logging messages (#131)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2130 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-12-15 01:20:23 +00:00
Frank Warmerdam df31356ed8 regenerate
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2129 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-12-14 16:37:38 +00:00
Frank Warmerdam a168bb38a0 added Healpix projection
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2125 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-12-14 01:35:20 +00:00
Didier Richard 4c97d903b3 Update IGNF projections definitions for CRS identified as being equivalent to WGS84 (+towgs84 equals 0,0,0 or 0,0,0,0,0,0) : addition of +nadgrids=@null +wktext for such CRS and set +towgs84=0,0,0.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2122 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-27 17:40:08 +00:00
Frank Warmerdam cf37b02b55 implement support for ctable2 format (read/write)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2121 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-22 22:51:47 +00:00
Frank Warmerdam d2d560d04c preliminary addition of ctable output support too, untested
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2120 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-19 01:34:21 +00:00
Frank Warmerdam 57508fe823 Avoid unused warnings
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2119 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-18 23:53:41 +00:00
Frank Warmerdam 99b713ae9b nad2bin products NTv2, nad2nad removed
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2118 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-14 01:54:43 +00:00
Frank Warmerdam 37b28fc8f1 avoid casting warning with old_locale
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2117 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-11-14 00:22:03 +00:00
Frank Warmerdam 7558dcc37c upgrade to EPSG 7.9
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2104 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-09-29 07:00:57 +00:00
Martin Desruisseaux 460ad67065 Updated the doxygen configuration for JNI bindings. Note that the output still not quite right; I would rather recomand the standard javadoc tools.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2096 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-09-03 17:25:06 +00:00
Martin Desruisseaux 8672734b8b Avoid C++ style comments.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2095 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-09-02 08:44:02 +00:00
Martin Desruisseaux 8d26bb7e11 Updated the Ant build file for JNI bindings, the jniwrap/README and the ChangeLog.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2094 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-09-01 17:25:48 +00:00
Martin Desruisseaux bcada9c040 Documentation updates and first configuration changes:
- Added @deprecated tags to the old bindings, with test pointing to their replacement.
  - Added a note in the header of the new bindings suggesting to keep the classes synchronized with GeoAPI (if possible).
  - Edited the README file for the new bindings, but did not yet edited the example.
  - Added the new files to the list of files declared in Makefile.in, and ran automake to regenerate Makefile.am.
  - Edited build.xml to generate the header file of PJ.h instead than Projections.h.


git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2092 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-27 20:30:36 +00:00
Martin Desruisseaux b3c870ee6c Initial commit of the new Java Native Interface (JNI) bindings.
The new binding defines all native methods in org.proj4.PJ class.
The previous binding (org.proj4.Projections) is still present.
A next commit will update the Ant build file, the documentation and maybe the code of the previous bindings.


git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2091 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-27 18:46:06 +00:00
Frank Warmerdam 906c75ab4d documentation typo fixes from Martin
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2090 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-27 16:40:23 +00:00
Martin Desruisseaux fe3747377b Applied the easiest fix for memory leak, and documented the remaining issues.
The easy fix was to replace the JNI_COMMIT argument by 0 in calls to ReleaseDoubleArrayElement()
See http://download.oracle.com/javase/7/docs/technotes/guides/jni/spec/functions.html#wp17440
The remaining issues would require more work. This commit has been done mostly for the record.
A replacement for those functions has been proposed on the mailing list.


git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2089 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-27 16:11:38 +00:00
Frank Warmerdam 3fd5db7424 updated Potsdam (DHDN) datum parameters to match EPSG:4314 (#115)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2085 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-07 22:17:18 +00:00
Frank Warmerdam 21ad5627da rename core_lock to avoid conflict on AIX (#55)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2082 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-08-07 21:02:32 +00:00
Frank Warmerdam 2f0f94de07 added pkg-config support (#3)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2072 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-07-23 17:22:37 +00:00
Frank Warmerdam 520eb0f115 upgrade to automake 1.11.1 from automake 1.11
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2071 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-07-23 17:20:32 +00:00
Frank Warmerdam 9ca4c109ae adjust error handling for missing grid shift files (#116)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2067 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-07-06 01:41:00 +00:00
Didier Richard feb5f32df0 Entry log for r2050
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2052 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-06-13 16:31:24 +00:00
Frank Warmerdam 42abd11f53 fix robinson projection constant (#113)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2051 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-06-09 21:49:33 +00:00
Didier Richard 67e58252e9 In reply to http://trac.osgeo.org/proj/ticket/88 : the updated IGNF catalogue
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2050 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-06-09 17:46:55 +00:00
Frank Warmerdam 812c666a90 fix for +axis validation (#87)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2049 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-06-09 14:25:33 +00:00
Frank Warmerdam 2104d06a5a include string.h as memset is widely used now
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2048 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31 14:42:10 +00:00
Frank Warmerdam a32d0afac1 fix up free logic per patch provided with ticket (#112)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2047 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31 14:41:33 +00:00
Frank Warmerdam 4f86e502dc use pj_dalloc() instead of free in FREEUP for IGH (#112)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2046 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31 14:36:47 +00:00
Frank Warmerdam 284daac671 ensure PJ structure always initialized to zero after malloc (#112)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2045 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-31 14:36:25 +00:00
Frank Warmerdam 8aee7e3a57 adjust commentary on 900913 a bit.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2039 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-24 01:58:18 +00:00
Frank Warmerdam f163f7cf20 move 900913 definition from esri.extra to other.extra - more appropriate
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2038 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-24 01:55:15 +00:00
Frank Warmerdam a7d17d5e8e updated to EPSG 7.6
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2035 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-23 21:15:51 +00:00
Frank Warmerdam 705693e334 updated to EPSG 7.6
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2034 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-23 21:15:24 +00:00
Frank Warmerdam 77aac6881f ensure P->en is properly initialized (#109)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2022 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-20 13:04:08 +00:00
Frank Warmerdam 37a7f883f5 default vertical units to horizontal units
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2001 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-10 17:44:36 +00:00
Frank Warmerdam 67dc958368 add support for vunits/vto_meter parameters to specify vertical units
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2000 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-10 17:06:33 +00:00
Frank Warmerdam 6d16e577e7 fix up builds on windows
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1999 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-10 01:32:08 +00:00
Frank Warmerdam f7bb18dd65 added goodes interrupted homolosine (#106)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1997 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-04 19:06:43 +00:00
Frank Warmerdam 6977053e8c avoid warnings
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1996 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-05-04 19:06:06 +00:00
Frank Warmerdam 75fd44db02 avoid possible buffer overflow processing nadgrids directive (meego #14963)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1990 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-03-28 18:06:43 +00:00
Frank Warmerdam ba0403ec4e fix reversed memcpy that triggers crash on 16th cached item (#100)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1988 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-03-23 14:14:30 +00:00
Frank Warmerdam 7327ac23c3 fix up a few items for windows
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1985 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-03-15 18:16:10 +00:00
Frank Warmerdam c174749873 fix locale handling, we need to copy the old locale. Avoid too much altering of locale.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1977 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-21 22:40:05 +00:00
Frank Warmerdam 818f6a9c15 added extended transverse mercator implementation (#97)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1976 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-21 16:24:03 +00:00
Frank Warmerdam 8e64ca8ac7 upgrade automake, autoconf, and libtool versions to current stable
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1975 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-21 15:58:05 +00:00
Frank Warmerdam 9d0a66132f correct gtx bounds reported by debug (#95)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1969 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-10 22:09:16 +00:00
Frank Warmerdam 565f820c27 fix particular problem with CEA (#94)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1967 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-08 23:35:42 +00:00
Frank Warmerdam 5c012e674b adjust precision of constants (#93)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1966 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-08 23:27:54 +00:00
Frank Warmerdam 98ea774575 avoid cplusplus comments (#92)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1965 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-02-08 23:22:01 +00:00
Frank Warmerdam 4294bc272c ensure es and ctx get applied to moll and sinu subprojections of goodes
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1956 4e78687f-474d-0410-85f9-8d5e500ac6b2
2011-01-11 19:05:01 +00:00
Frank Warmerdam 1b31e9bc2d migrate pj_clear_initcache() to public api, and set pj_version to 4.8.0
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1925 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-10-19 16:22:55 +00:00
Frank Warmerdam ab034ef9b3 ensure any old error is cleared at the start
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1914 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-10-04 02:13:14 +00:00
Frank Warmerdam ec9c4401ee fix vgrid inverse and error handling
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1904 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-09-20 19:55:09 +00:00
Frank Warmerdam 7830430346 use pj_log, fix bug with apply_vgridshift
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1903 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-09-20 19:10:11 +00:00
Frank Warmerdam f6fd69c305 ensure geoidgrids is marked as used
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1902 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-09-20 14:45:33 +00:00
Frank Warmerdam 79a9457f54 Move vertical datum grids in 180 to 360 to -180 to 0. Improve debug and
error logging to use pj_log().


git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1888 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-08-31 20:47:14 +00:00
Frank Warmerdam c74f088a4d fix comment
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1887 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-08-31 20:46:06 +00:00
Frank Warmerdam 5ac3e3b558 use ../src/cs2cs for testing by default
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1884 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-08-21 17:34:17 +00:00
Frank Warmerdam 195e3f3d3d epsg update from GDAL - add TMSO and change of named datums to defined form (#18)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1874 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-07-31 14:37:59 +00:00
Frank Warmerdam 3bc4ab4cf9 fix F_ERROR and E_ERROR macros to use ctx errno function
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1865 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-07-06 03:18:31 +00:00
Frank Warmerdam 3c5efb3499 I_ERROR must set context errno
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1864 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-07-06 03:04:30 +00:00
Frank Warmerdam 64565bdc98 avoid numerical sensitive about signed zeros in tests
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1858 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11 15:22:28 +00:00
Frank Warmerdam dbe75e2724 avoid type warning.
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1857 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11 15:13:34 +00:00
Frank Warmerdam cf5c8cd32e roll projCtx through various other low level functions
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1856 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11 03:26:04 +00:00
Frank Warmerdam 02b4b8db7f update to build with vgrid and ctx changes
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1855 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11 02:29:04 +00:00
Frank Warmerdam ec678c07c2 preliminary implementation of projCtx API
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1854 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11 01:51:24 +00:00
Frank Warmerdam a729083611 avoid comparison warning
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1849 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-01 20:15:18 +00:00
Frank Warmerdam 6ce177c84c rework indentation
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1848 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-01 18:00:18 +00:00
Frank Warmerdam dee2be7f50 missing changelog for vertical datums
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1841 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-05-11 04:06:21 +00:00
Frank Warmerdam 51edfaba53 rerun autogen with newer version
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1840 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-05-11 04:05:45 +00:00
Frank Warmerdam b08809dfed preliminary addition of vertical datum shifting capability
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1839 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-05-11 04:05:04 +00:00
Frank Warmerdam e4f028223c Rework the translation of nadgrids parameters into a list of gridshift files
to avoid use of static "lastnadgrids" information which screws up 
multithreading.   Changes the PJ structure.


git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1831 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-16 12:44:36 +00:00
Frank Warmerdam 4ea16fcba0 added multistresstest
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1830 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-16 12:37:28 +00:00
Frank Warmerdam 8313a5f3e2 various improvements to error handling so corrupt grids are reported (#66)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1828 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-03 05:52:37 +00:00
Frank Warmerdam aa00a53a0f avoid warnings
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1827 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-03 05:44:20 +00:00
Frank Warmerdam 3405bf76e7 added preliminary support for +axis (#18)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1825 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-01 04:32:18 +00:00
Frank Warmerdam d3753ed6d0 Regenerated epsg init file from EPSG 7.4.1 with big datum upgrade
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1824 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-01 01:32:26 +00:00
Frank Warmerdam 00d894d442 add omerc gamma / RSO Borneo test (#62)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1818 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-02-20 17:14:11 +00:00
Frank Warmerdam 3f7d51644a wholesale upgrade of omerc from Gerald's libproj4 (#62)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1817 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-02-20 16:51:33 +00:00
Frank Warmerdam 4e01bab2ff avoid win32/pthread mutex conflict on unixlike builds for win32 (#56)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1790 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-01-24 23:19:26 +00:00
Frank Warmerdam e525ab9ff2 fix seriously broken lon_wrap support (#62)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1789 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-01-24 22:53:33 +00:00
Frank Warmerdam a32477f71a correction mutex creation on win32 to be in unlocked state (#63)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1788 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-01-24 22:20:36 +00:00
Frank Warmerdam a14e285dfe update with new ntf_r93 grid shift file from IGN (#53)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1674 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-10-19 15:16:17 +00:00
Didier Richard d97f97a524 Addition of a test according to ticket 52 (http://trac.osgeo.org/proj/ticket/52)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1672 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-10-11 13:37:38 +00:00
Frank Warmerdam 0bb9f58d36 Update so that various items can be overridden externall (#54)
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1656 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-09-30 03:37:41 +00:00
Frank Warmerdam 4e8443b0a0 update for svn branching and tagging
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1644 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-09-24 19:55:50 +00:00
169 changed files with 51911 additions and 33619 deletions
+390 -86
View File
@@ -1,3 +1,307 @@
2012-05-31 Martin Desruisseaux <martin.desruisseaux@geomatys.fr>
* Replaced usages of NAN C/C++ constant by the java.lang.Double.NaN constant.
This was done because not all C/C++ compilers define the NAN constant, and for
making sure that the bits pattern is exactly the one expected by Java.
2012-03-25 Frank Warmerdam <warmerdam@pobox.com>
* src/Makefile.am: Add org_proj4_PJ.h to files to distribute.
2012-03-13 Frank Warmerdam <warmerdam@google.com>
* src/projects.h, src/pj_list.c: avoid using #include directly on a
macro expansion - it is unnecessary and makes for problems in my work
environment.
2012-03-06 Frank Warmerdam <warmerdam@pobox.com>
* Preparing 4.8.0 release candidate.
* nad/epsg: regenerate with +no_uoff for hotine oblique mercator (#104)
* src/PJ_sconics.c: Fix missing P->sig term in pconic forward
projection equation (#148).
2012-03-03 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_omerc.c: Support +no_uoff and +no_off (#128)
* src/PJ_stere.c: Cleanup odd code construct (#147)
2012-02-26 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_geos.c, nad/testvarious: Added GEOS +sweep and add GEOS
to the test suite (#146)
* nad/CH: added swiss datum related definitions from strk (#145)
* src/Makefile.am, src/mutltistresstest.c: provide for building
multistresstest in the makefile, and slightly improve it.
2012-02-25 Frank Warmerdam <warmerdam@pobox.com>
* nad/epsg: regenerate with +datum (#122)
2012-02-20 Frank Warmerdam <warmerdam@pobox.com>
* Prepare 4.8.0 Beta1.
* src/PJ_isea.c: Add Icosahedral Snyder Equal Area projection (#111)
* src/nad2nad.c: completely removed as part of the ctable2 overhaul.
* src/cs2cs.c, src/pj_init.c, src/geod_set.c, src/nad2nad.c, src/geod.c:
Use parenthesis around assignments in if statements (#123).
* src/nad2bin.c: improve io error checking (#140).
* src/PJ_healpix.c: fix windows build issues (#133)
2012-02-15 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_utils.c: Add pj_get_spheroid_defn() (#142)
2012-02-08 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_apply_gridshift.c: Ensure that one amoung many points
falling outside the grid areas will not cause the remainder to not
be datum shifted in a way that is hard to diagnose. (#45)
2012-02-01 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_apply_gridshift.c: ensure we try to use grids as long as we
are within epsilon of the edge (#141).
2012-01-31 Frank Warmerdam <warmerdam@pobox.com>
* src/nad2bin.c: fix comparison test for -f flag (#139).
2011-12-22 Frank Warmerdam <warmerdam@google.com>
* src/pj_init.c; Only split arguments on pluses following spaces
in pj_init_plus() (#132)
2011-12-14 Frank Warmerdam <warmerdam@google.com>
* src/pj_open_lib.c: make sure we check errno before logging messages (#131).
2011-12-13 Frank Warmerdam <warmerdam@google.com>
* src/PJ_healpix.c, etc: added healpix support contributed by
Landcare in New Zealand.
2011-11-22 Frank Warmerdam <warmerdam@pobox.com>
* src/nad_init.c, src/pj_gridinfo.c, src/nad2bin.c: Implement
support for "ctable2" format grid shift files.
2011-11-18 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_mutex.c, src/pj_apply_vgridshift.c: avoid unused warnings.
2011-11-13 Frank Warmerdam <warmerdam@pobox.com>
* src/nad2bin.c: Modified to write NTv2 format files.
* src/pj_init.c: avoid casting warning with old_locale.
2011-09-28 Frank Warmerdam <warmerdam@pobox.com>
* nad/epsg: Upgrade to EPSG 7.9. Ideal datum selection rules also
changed a bit upstream.
2011-09-01 Martin Desruisseaux <martin.desruisseaux@geomatys.fr>
* Updated jniwrap/build.xml Ant script and README file.
2011-08-27 Martin Desruisseaux <martin.desruisseaux@geomatys.fr>
* Fixed some (but not all) memory leaks in org.proj4.Projections JNI bindings
* Deprecated org.proj4.Projections JNI bindings
* Added org.proj4.PJ JNI bindings in replacement of org.proj4.Projections
2011-08-27 Frank Warmerdam <warmerdam@pobox.com>
* pj_pr_list.c, pj_sterrno.c: doc typo fixes from Martin.
2011-08-07 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_datums.c: Updated Potsdam (DHDN) towgs84 parameters to match
EPSG 7 parameter list for EPSG:4314 (#115).
* src/pj_mutex.c: alter name of core_lock to avoid conflict on AIX (#55)
2011-07-23 <warmerdam@pobox.com>
* configure.in, Makefile.am, proj.pc.in: Added pkg-config support (#3)
2011-07-05 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_init.c, src/pj_gridinfo.c: Correct error handling for missing
grid shift files and defaults files (#116)
2011-06-09 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_robin.c: fix mistaken constant value (#113).
* src/pj_init.c: fix for +axis validation (#87)
* nad/IGNF: addition/fix of Kerguelen, Amsterdam and St Paul, Terre Adélie,
INSPIRE CRSes in IGNF catalogue (#88)
2011-05-31 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_igh.c: use project free instead of free() in FREEUP (#112).
* src/projects.h: memset PJ structure to zeros after allocation to
avoid problems getting everything initialized properly (#112).
2011-05-23 Frank Warmerdam <warmerdam@pobox.com>
* nad/esri.extra, nad/other.extra: moved 900913 definition from
esri.extra to other.extra since it has nothing to do with esri.
* nad/epsg: updated to EPSG 7.6.
2011-05-20 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_sterea.c: ensure P->en is properly initialized (#109)
2011-05-10 Frank Warmerdam <warmerdam@pobox.com>
* src/projects.h, src/pj_init.c, src/pj_transform.c: Implement
support for vto_meter and vunits vertical units transformation.
2011-05-04 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_igh.c: Added goodes interrupted homolosine (#106).
2011-03-28 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_gridlist.c: avoid possible buffer overflow.
https://bugs.meego.com/show_bug.cgi?id=14963
2011-03-23 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_initcache.c: Fix reversed memcpy that causes a crash on the
16th item put in the initcache. (#100).
2011-02-21 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_init.c: fix serious bug in locale handling, wasn't copying
the old locale so it would sometimes get corrupted.
* src/proj_etmerc.c: added extended transverse mercator impl. (#97)
* Rerun autogen.sh with the latest versions of automake, autoconf and
libtool.
2011-02-10 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_gridinfo.c: fix debug bounds reported (#95).
2011-02-08 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_cea.c: Fix particular CEA case (#94).
* src/pj_auth.c: correct precision of constants (#93)
* src/pj_init.c, pj_malloc.c, jniproj.c: avoid C++ comments (#92)
2011-01-11 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_goode.c: fix propogation of es and ctx to sub-projections.
2010-10-19 Frank Warmerdam <warmerdam@pobox.com>
* src/proj_api.h, src/projects.h: move pj_clear_initcache() to public
api and update to 4.8.0 PJ_VERSION to identify when this is available.
2010-08-31 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_gridinfo.c: Move grids in 180 to 360 region to -180 to 0.
Improve error/debug reporting.
2010-08-21 Frank Warmerdam <warmerdam@pobox.com>
* nad/test*: default to using ../src/cs2cs
2010-07-31 Frank Warmerdam <warmerdam@pobox.com>
* nad/epsg: updated from GDAL. Adds TMSO projection definitions,
and replaces all named datums with fully defined datums.
2010-07-05 Frank Warmerdam <warmerdam@pobox.com>
* src/projects.h: I_ERROR macro must set context errno.
2010-06-10 Frank Warmerdam <warmerdam@pobox.com>
* src/*: Preliminary implementation of projCtx multithreading change.
2010-05-11 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_apply_vgridshift.c (+more): preliminary addition of
vertical grid shifting support.
2010-03-16 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c, src/pj_init.c, src/projects.h, src/pj_gridlist.c,
src/pj_apply_gridshit.c: rework the translation of nadgrids parameters
into a list of gridshift files to avoid use of static "lastnadgrids"
information which screws up multithreading. Changes the PJ structure.
* src/multistresstest.c: new harnass for multithreaded testing.
2010-03-03 Frank Warmerdam <warmerdam@pobox.com>
* src/*: fix a variety of warnings when -Wall is used. Mostly
unused variables, and use of assignment results in an if statement
without extra brackets.
* src/*: treat most grid shift errors as not-transient, with the
exception of not having a grid shift file for the area of interest.
This is done by adding a new error code for no grid shift file for
target area. Also ensure that cs2cs reports pj_transform() errors
via emess so we have a chance of seeing the error message.
2010-02-28 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_init.c, src/pj_transform.c: added support for +axis setting
to control axis orientation (#18).
* nad/epsg: Regenerated from EPSG 7.4.1 with the big datum selection
upgrade.
2010-02-20 Frank Warmerdam <warmerdam@pobox.com>
* src/PJ_omerc.c: wholesale update from libproj4.3 (20081120) (#62)
2010-01-25 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_mutex.c: avoid conflict between pthread and win32 mutex
implementations on unix-like build environments on windows. (#56)
* src/pj_init,src/projects.h,src/pj_transform.c,nad/testvarious:
Correct seriously broken +lon_wrap implementation. (#62)
* src/pj_mutex.c: fix creation of mutex on win32 to be in
unacquired state in pj_init_lock to avoid an extra reference. (#63)
2009-10-19 Frank Warmerdam <warmerdam@pobox.com>
* nad/ntf_r93.gsb: updated with file from IGN (#52).
* docs/*: files moved out of source tree (still in svn)
2009-09-29 Frank Warmerdam <warmerdam@pobox.com>
* nmake.opt: Update so that various items can be externally
overridden (#54).
2009-09-24 Frank Warmerdam <warmerdam@pobox.com>
* nad/Makefile.am: add ntv2 and ignf testing if grid shift files
@@ -23,7 +327,7 @@
* src/pj_mutex.c: fix up windows support.
* nad/ntf_r93.gsb: set mime-type to binary so it isn't corrupted on
* nad/ntf_r93.gsb: set mime-type to binary so it isn't corrupted on
windows systems.
2009-06-17 Frank Warmerdam <warmerdam@pobox.com>
@@ -36,7 +340,7 @@
* README: Update windows build instructions (#30).
* nad/epsg: Upgraded to EPSG 7.1.
* nad/epsg: Upgraded to EPSG 7.1.
2009-05-19 Frank Warmerdam <warmerdam@pobox.com>
@@ -58,7 +362,7 @@
if available, and to avoid testvarious if grid shift files are
not available.
* src: Fix various warnings.
* src: Fix various warnings.
2009-03-11 Frank Warmerdam <warmerdam@pobox.com>
@@ -96,7 +400,7 @@
2009-01-23 Frank Warmerdam <warmerdam@pobox.com>
* src/biveval.c: Avoid use of static variables which interfere with
re-entrancy (#24)"
re-entrancy (#24)"
2009-01-05 Frank Warmerdam <warmerdam@pobox.com>
@@ -111,10 +415,10 @@
2008-08-21 Frank Warmerdam <warmerdam@pobox.com>
* Prepare 4.6.1RC2
* Prepare 4.6.1RC2
* nad/td_out.dist: backed out erroneous changes in 4.6.0 that lost
datum shifts with grid shift files. Added stere (#12) test.
* nad/td_out.dist: backed out erroneous changes in 4.6.0 that lost
datum shifts with grid shift files. Added stere (#12) test.
* nmake.opt: Added /Op to avoid stere errors per ticket #12.
@@ -135,12 +439,12 @@
* Prepare 4.6.1 release.
* rename INSTALL.TXT to INSTALL since the damn distribution generator
won't stand for the alternate naming. Change makefile.vc to use
install-all target instead of install. What are the chances anyone
won't stand for the alternate naming. Change makefile.vc to use
install-all target instead of install. What are the chances anyone
will think of trying that? Not high.
* nad/epsg: regenerated from EPSG 6.17. This should also correct the
odd precision problems in the last version or two caused by GDAL
odd precision problems in the last version or two caused by GDAL
numeric processing issues.
2008-06-17 Frank Warmerdam <warmerdam@pobox.com>
@@ -158,8 +462,8 @@
2008-03-15 Frank Warmerdam <warmerdam@pobox.com>
* rename INSTALL to INSTALL.TXT to avoid screwing up "make install"
* Rework win32 makefiles to support "make install", and better
knowledge of grid shift files,
* Rework win32 makefiles to support "make install", and better
knowledge of grid shift files,
2008-01-18 IGNF <didier.richard@ign.fr>
@@ -203,7 +507,7 @@
* pj_factors.c: in the case of phi=90, the derived should be calculated
at [90-delta,90] instead of at [90,90+delta] (the same is true for -90)
http://bugzilla.remotesensing.org/show_bug.cgi?id=1605
2007-12-03 Frank Warmerdam <warmerdam@pobox.com>
* pj_transform.c: Small improvement in WGS84_ES precision to avoid
@@ -223,18 +527,18 @@
* pj_transform.c: Do ellipsoid comparisons using the _orig ellipse
values rather than the adjusted one. Use these original values for
any conversion to/from geocentric coordinates.
any conversion to/from geocentric coordinates.
Also, only do pj_datum_transform if neither the source nor destination
is PJD_UNKNOWN. This means we will no longer attempt via-geocentric
adjustments for coordinate systems lacking a datum definition (having
Also, only do pj_datum_transform if neither the source nor destination
is PJD_UNKNOWN. This means we will no longer attempt via-geocentric
adjustments for coordinate systems lacking a datum definition (having
only an ellipsoid.
* projects.h, pj_init.c: added a_orig and es_orig values in the PJ
structure so we can distinguish between the originally requested
structure so we can distinguish between the originally requested
ellipsoid, and the ellipsoid after adjustment for spherical projections
Todays changes courtesy of bug 1602.
Todays changes courtesy of bug 1602.
2007-09-28 Frank Warmerdam <warmerdam@pobox.com>
@@ -277,7 +581,7 @@
2007-03-11 Frank Warmerdam <warmerdam@pobox.com>
* src/projects.h: Ensure that WIN32 is defined on win32 systems.
* src/pj_open_lib.c: support drive letter prefixes on absolute
paths. Support either \ or / as a dir delimeter on windows (bug 1499)
@@ -289,7 +593,7 @@
2007-01-31 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_datum_set.cpp: Don't parse more datum shift parameters than
we have space to store in datum_params[].
we have space to store in datum_params[].
2006-11-02 Frank Warmerdam <warmerdam@pobox.com>
@@ -317,7 +621,7 @@
2006-10-12 Frank Warmerdam <warmerdam@pobox.com>
* Added experimental +lon_wrap argument to set a "center point" for
* Added experimental +lon_wrap argument to set a "center point" for
longitude wrapping of longitude values coming out of pj_transform().
2006-10-10 Frank Warmerdam <warmerdam@pobox.com>
@@ -344,7 +648,7 @@
* src/PJ_krovak.c: Add +czech flag to apply non-useful sign reversal
that someone once apparently thought was a good idea. By default work
like folks want. Contributed by Martin Landa and Radim Blazek.
like folks want. Contributed by Martin Landa and Radim Blazek.
Bug 1133, and 147.
2006-07-07 Frank Warmerdam <warmerdam@pobox.com>
@@ -352,7 +656,7 @@
* Added esri.extra and other.extra to distributed and installed files
in nad/Makefile.am.
* autotools update.
* autotools update.
2006-06-23 Andrey Kiselev <dron@ak4719.spb.edu>
@@ -360,16 +664,16 @@
2006-05-01 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c: Ensure that out-of-range lat/long values in
* src/pj_transform.c: Ensure that out-of-range lat/long values in
geodetic_to_geocentric are considered transient errors.
Rel. 4.5.0 2006-04-21
-------------------------------------------------------------------------
2006-04-21 Frank Warmerdam <warmerdam@pobox.com>
* nad/epsg: Upgraded using GDAL 1.3.2 with prime meridian fixes,
and reporting of deprecated PCSes.
and reporting of deprecated PCSes.
2006-04-20 Frank Warmerdam <warmerdam@pobox.com>
@@ -441,19 +745,19 @@ Rel. 4.5.0 2006-04-21
2004-11-05 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c: Fixed pj_geocentric_to_geodetic() to not try
and process HUGE_VAL values (those that have failed some previous
* src/pj_transform.c: Fixed pj_geocentric_to_geodetic() to not try
and process HUGE_VAL values (those that have failed some previous
transform step). Related to bug:
http://bugzilla.remotesensing.org/show_bug.cgi?id=642
2004-10-30 Frank Warmerdam <warmerdam@pobox.com>
* Improved --with-jni support in configure to allow specification
of an include directory.
of an include directory.
Rel. 4.4.9 2004-10-29
-------------------------------------------------------------------------
2004-10-29 Frank Warmerdam <warmerdam@pobox.com>
* Preparing 4.4.9 release.
@@ -467,26 +771,26 @@ Rel. 4.4.9 2004-10-29
2004-10-28 Frank Warmerdam <warmerdam@pobox.com>
* src/makefile.vc: Changed to build executables against a proj.dll
by default.
by default.
* proj.def: added lots of methods, including some private ones used
only by proj.c, and geod.c.
* Added pj_get_*_ref() accessors for all the definition lists.
* Added pj_get_*_ref() accessors for all the definition lists.
* Makefile.am: added jniwrap make support.
* configure.in: various updates, including use of AC_MAINTAINER_MODE,
and setting version to 4.4.9. Fixes annoying .so problem.
and setting version to 4.4.9. Fixes annoying .so problem.
* updated to latest libtoolish stuff.
* updated to latest libtoolish stuff.
2004-10-25 Frank Warmerdam <warmerdam@pobox.com>
* fixtimes.sh: Run this after a CVS checkout to setup times of
various build files to avoid re-running automake and friends.
* src/geocent.c,geocent.h,pj_transform.c: Added pj_ prefix to
* src/geocent.c,geocent.h,pj_transform.c: Added pj_ prefix to
all Geotrans functions to avoid name conflict if both linked in.
* configure.in: added --with-jni option.
@@ -501,7 +805,7 @@ Rel. 4.4.9 2004-10-29
2004-10-19 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_gauss.c, src/PJ_geos.c, src/PJ_sterea.c: Incorporated
* src/pj_gauss.c, src/PJ_geos.c, src/PJ_sterea.c: Incorporated
geos and sterea projections from Gerald's libproj4.
2004-09-16 Frank Warmerdam <warmerdam@pobox.com>
@@ -510,8 +814,8 @@ Rel. 4.4.9 2004-10-29
2004-09-14 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_pr_list.c: Ensure unused parameters are not included
in the returned string (provided by Eric Miller).
* src/pj_pr_list.c: Ensure unused parameters are not included
in the returned string (provided by Eric Miller).
2004-05-17 Frank Warmerdam <warmerdam@pobox.com>
@@ -519,7 +823,7 @@ Rel. 4.4.9 2004-10-29
2004-05-12 Frank Warmerdam <warmerdam@pobox.com>
* nad/epsg: update translation for potsdam datum.
* nad/epsg: update translation for potsdam datum.
http://bugzilla.remotesensing.org/show_bug.cgi?id=566
@@ -530,13 +834,13 @@ Rel. 4.4.9 2004-10-29
Rel. 4.4.8 2004-05-04
-------------------------------------------------------------------------
2004-05-04 Frank Warmerdam <warmerdam@pobox.com>
* 4.4.8 release re-issued.
* 4.4.8 release re-issued.
* nad/epsg: regenerated with prime meridian problems corrected.
http://bugzilla.remotesensing.org/show_bug.cgi?id=510
2004-05-03 Frank Warmerdam <warmerdam@pobox.com>
@@ -557,9 +861,9 @@ Rel. 4.4.8 2004-05-04
http://bugzilla.remotesensing.org/show_bug.cgi?id=510
* src/geocent.c: Updated Geocentric_To_Geodetic computation to be
iterative to reduce error as per Wenzel, H.-G.(1985): Hochauflösende
Kugelfunktionsmodelle für das Gravitationspotential der Erde. Wiss.
* src/geocent.c: Updated Geocentric_To_Geodetic computation to be
iterative to reduce error as per Wenzel, H.-G.(1985): Hochauflösende
Kugelfunktionsmodelle für das Gravitationspotential der Erde. Wiss.
Arb. Univ. Hannover Nr. 137, p. 130-131. Fix adapted to geocent.c and
submitted by Lothar Gorling.
@@ -569,7 +873,7 @@ Rel. 4.4.8 2004-05-04
* src/makefile.vc: Define HAVE_STRERROR.
* src/projects.h: PJD_ERR_GEOCENTRIC now -45, and added to
* src/projects.h: PJD_ERR_GEOCENTRIC now -45, and added to
pj_strerrno.c.
* src/pj_release.c: added pj_get_release() function.
@@ -582,7 +886,7 @@ Rel. 4.4.8 2004-05-04
2004-01-24 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c: Ensure pj_transform() will try to transform all
points in provided list if even some might transform properly.
points in provided list if even some might transform properly.
2003-08-18 Frank Warmerdam <warmerdam@pobox.com>
@@ -617,25 +921,25 @@ Rel. 4.4.8 2004-05-04
Rel. 4.4.7 2003-03-31
-------------------------------------------------------------------------
2003-03-31 Frank Warmerdam <warmerdam@pobox.com>
* Prepare 4.4.7 Release.
* nad/esri: incorporated Paul Ramsey's update. ESRI specific
* nad/esri: incorporated Paul Ramsey's update. ESRI specific
coordinate systems in nad/esri.extra.
* nad/epsg: Regenerated with towgs84 parameters properly generated
for non-greenwich prime meridians.
for non-greenwich prime meridians.
http://bugzilla.remotesensing.org/show_bug.cgi?id=304
2003-03-28 Frank Warmerdam <warmerdam@pobox.com>
* config.guess, config.sub: updated from
* config.guess, config.sub: updated from
ftp://ftp.gnu.org/pub/gnu/config/ in order to resolve Debian build
problems on MIPS architecture.
problems on MIPS architecture.
http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no&bug=186586
* src/pj_datums.c: fixed ire65 definition to refer to mod_airy, not
@@ -651,7 +955,7 @@ Rel. 4.4.7 2003-03-31
2003-03-25 Frank Warmerdam <warmerdam@pobox.com>
* src/cs2cs.c: modified so that -f formats are used for Z as well as
x and y values.
x and y values.
As per http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=169056
* src/man/man1/cs2cs.1: removed -V flag ... it is not supported.
@@ -660,23 +964,23 @@ Rel. 4.4.7 2003-03-31
2003-03-17 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_datums.c: changed NAD27 definition to make everything
optional, and to include alaska, and ntv2_0.gsb.
optional, and to include alaska, and ntv2_0.gsb.
nadgrids=@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat
* src/pj_grid*, src/pj_apply_gridshift.c, src/nad_init.c: Lots of
changes introducing the PJ_GRIDINFO structure, support for skippable
grids ('@' prefix), delayed grid data loading and support for NTv2
grids.
grids.
2003-03-16 Frank Warmerdam <warmerdam@pobox.com>
* Modified get_opt() to terminate reading the definition when a new
definition (a word starting with '<') is encountered, in addition
to when the definition terminator '<>' is encountered, so that
unterminated definitions like those in the distributed esri file
definition (a word starting with '<') is encountered, in addition
to when the definition terminator '<>' is encountered, so that
unterminated definitions like those in the distributed esri file
will work properly. Patch provided by Carl Anderson.
http://bugzilla.remotesensing.org/show_bug.cgi?id=302
2003-03-03 Frank Warmerdam <warmerdam@pobox.com>
@@ -685,14 +989,14 @@ Rel. 4.4.7 2003-03-31
* nad/epsg: updated to EPSG 6.2.2.
* src/Makefile.am, nad/Makefile.am: a few fixes for Cygwin
* src/Makefile.am, nad/Makefile.am: a few fixes for Cygwin
compatibility, ensure /usr/local/share/proj get pre-created.
* Incorporate src/PJ_lcca.c, the new "alternate" LCC implementation
provided by Gerald for some old maps. See his site for details.
* Rebuild dependent files with automake 1.6.3, libtool 1.4.2 and
autoconf 2.53.
* Rebuild dependent files with automake 1.6.3, libtool 1.4.2 and
autoconf 2.53.
2003-01-15 Frank Warmerdam <warmerdam@pobox.com>
@@ -717,7 +1021,7 @@ Rel. 4.4.7 2003-03-31
2002-12-01 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c: Applied fix for 7 parameter shifts in
* src/pj_transform.c: Applied fix for 7 parameter shifts in
pj_geocentric_from_wgs84() as per suggestion from Harald Lernbeiss in:
http://bugzilla.remotesensing.org/show_bug.cgi?id=194
@@ -735,27 +1039,27 @@ Rel. 4.4.7 2003-03-31
2002-07-25 Frank Warmerdam <warmerdam@pobox.com>
* nad/esri: added new ESRI translation file. Includes EPSG values
plus various ESRI extensions.
plus various ESRI extensions.
2002-07-07 Frank Warmerdam <warmerdam@pobox.com>
* src/*.c, src/*.h, src/makefile.vc: *Many* changes to support
compiling all of the PROJ.4 source as C++ source. Add /TP to CFLAGS
in makefile.vc to test this on Windows. projects.h, and proj_api.h
in makefile.vc to test this on Windows. projects.h, and proj_api.h
attempt to export all externally visible functions with C linkage but
all code should now compile as C++. Currently only tested with VC++ 6.
2002-06-11 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_pr_list.c, proj.def, proj_api.h: Added the pj_get_def()
function to return an expanded definition from a projPJ handle,
function to return an expanded definition from a projPJ handle,
including having the +init= section expanded.
2002-05-30 Frank Warmerdam <warmerdam@pobox.com>
* src/geod/{geod.c,geod_for.c,geod_inv.c,geod_set.c,geodesic.h}:
Renamed a, S and f to geod_a, geod_S and geod_f to slightly reduce
the horrible naming conflict situations with geodesic.h.
the horrible naming conflict situations with geodesic.h.
http://bugzilla.remotesensing.org/show_bug.cgi?id=148
2002-04-30 Frank Warmerdam <warmerdam@pobox.com>
@@ -785,7 +1089,7 @@ Rel. 4.4.7 2003-03-31
Rel. 4.4.5 2002/01/09
-------------------------------------------------------------------------
2002-01-09 Frank Warmerdam <warmerdam@pobox.com>
* src/geocent.c: Fixed serious bug in Convert_Geodetic_To_Geocentric()
@@ -801,13 +1105,13 @@ Rel. 4.4.5 2002/01/09
Rel. 4.4.4 2001/09/15
-------------------------------------------------------------------------
2001-09-15 Frank Warmerdam <warmerdam@pobox.com>
* src/geocent.c: I have modified the Convert_Geodetic_To_Geocentric()
* src/geocent.c: I have modified the Convert_Geodetic_To_Geocentric()
function to clamp Latitudes just a little out of the range
-PI/2 to PI/2 and to no longer do error checks on Longitudes since
they will be auto-wrapped by sin() and cos().
they will be auto-wrapped by sin() and cos().
See http://bugzilla.remotesensing.org/show_bug.cgi?id=17
@@ -826,7 +1130,7 @@ Rel. 4.4.4 2001/09/15
2001-08-11 Frank Warmerdam <warmerdam@pobox.com>
* src/proj.c: Generate an error message if +proj=latlong is used with
this program. As per bugzilla bug 70.
this program. As per bugzilla bug 70.
2001-06-01 Frank Warmerdam <warmerdam@pobox.com>
@@ -840,7 +1144,7 @@ Rel. 4.4.4 2001/09/15
Rel. 4.4.3 2001/04/20
-------------------------------------------------------------------------
2001-04-20 Frank Warmerdam <warmerdam@pobox.com>
* Don't install test files in /usr/local/share/proj.
@@ -877,7 +1181,7 @@ Rel. 4.4.3 2001/04/20
2001-04-04 Frank Warmerdam <warmerdam@pobox.com>
* rewrote 7 param datum shift to match EPSG:9606, now works with
* rewrote 7 param datum shift to match EPSG:9606, now works with
example.
2001-03-20 Frank Warmerdam <warmerdam@pobox.com>
@@ -933,13 +1237,13 @@ Rel. 4.4.3 2001/04/20
2000-11-18 Frank Warmerdam <warmerda@cs46980-c>
* Patch from Craig Bruce to adjlon.c to avoid wrong results,
and near-hangs when adjusting very large numbers.
* Patch from Craig Bruce to adjlon.c to avoid wrong results,
and near-hangs when adjusting very large numbers.
http://bugzilla.remotesensing.org/show_bug.cgi?id=27
Rel. 4.4.2 2000/09/22
-------------------------------------------------------------------------
2000-09-22 Frank Warmerdam <warmerda@cs46980-c>
* Fixed src/Makefile.am install-exec-local target, and added
@@ -955,7 +1259,7 @@ Rel. 4.4.2 2000/09/22
2000-09-21 Frank Warmerdam <warmerda@cs46980-c>
* Added "sphere" to pj_ellps.c.
* Added "sphere" to pj_ellps.c.
2000-07-06 Frank Warmerdam <warmerda@cs46980-c>
@@ -993,12 +1297,12 @@ Rel. 4.4.2 2000/09/22
2000-03-29 Frank Warmerdam <warmerda@cs46980-c>
* Added hard links for invproj->proj and invgeod->geod in
* Added hard links for invproj->proj and invgeod->geod in
src/Makefile.{am,in}.
Rel. 4.4.1 2000/03/27
-------------------------------------------------------------------------
2000-03-27 Frank Warmerdam <warmerda@cs46980-c>
* Issued V4.4.1 Release.
@@ -1020,7 +1324,7 @@ Rel. 4.4.1 2000/03/27
* Wrote new configure.in, and use automake to generate makefiles.
* Renamed UV to projUV to avoid conflicts on windows.
* Reorganize ChangeLog, and start work on 4.4.
Rel. 4.3.2 94/10/30 Base-line
@@ -1271,7 +1575,7 @@ Rel. 4.1.1 93/3/26 Base-line
gen_cheby.c, projects.h - corrected gen_cheby argument declarations
related to 'proj' argument and prototype. Often signalled
warnings, but still managed to execute OK.
pj_init.c - local function get_init had insufficient storage
defined for copy of file name and id. Added id define.
Strncat replaced with correct strncpy (amazingly did not
@@ -1308,6 +1612,6 @@ Unresolved:
Reports of errno 25 persist. Do not know what platform. Reviewed
code and can't see problem.
Unknown platform has problem with pj_errno global and linker storage
allocation. Seems similar to SG problem that was over come with
allocation. Seems similar to SG problem that was over come with
-common switch.
+11 -3
View File
@@ -22,7 +22,7 @@
- If any interfaces have been removed since the last public release, then
set age to 0.
4.5) Run "automake" and "autoconf".
4.5) Run "autgen.sh" (hopefully on the same machine it was last run on)
5) Add a note to the ChangeLog that a new release is being issued, and what
the release number is.
@@ -35,7 +35,15 @@
- %setup line
- rm -rf line
9) Tag the release with a command like "cvs tag -F proj_4_4_3".
8) If this is a major release, prepare a branch.
svn copy https://svn.osgeo.org/metacrs/proj/trunk \
https://svn.osgeo.org/metacrs/proj/branches/4.7
9) Tag the release set in SVN
svn copy https://svn.osgeo.org/metacrs/proj/branches/4.7 \
https://svn.osgeo.org/metacrs/proj/tags/4.7.0
10) Do a "make dist-all" in the proj root directory. After some grinding
this should result in files like proj-4.4.3.tar.gz and proj-4.4.3.zip
@@ -44,7 +52,7 @@
11) Put these in the proj ftp area on ftp.remotesensing.org. This can be
done via scp using a command like the following.
scp proj-4.4.3.{tar.gz,zip} frankw@upload.osgeo.org:/osgeo/download/proj
scp proj-4.4.3.{tar.gz,zip} warmerdam@upload.osgeo.org:/osgeo/download/proj
12) Announce the new release on the PROJ.4 and MetaCRS mailing lists.
+4
View File
@@ -2,4 +2,8 @@ SUBDIRS = src man nad jniwrap
EXTRA_DIST = makefile.vc nmake.opt
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = proj.pc
AUTOMAKE_OPTIONS = dist-zip
ACLOCAL_AMFLAGS = -I m4
+231 -87
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -13,10 +14,12 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -33,9 +36,10 @@ build_triplet = @build@
host_triplet = @host@
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \
ChangeLog INSTALL NEWS config.guess config.sub depcomp \
install-sh ltconfig ltmain.sh missing mkinstalldirs
$(srcdir)/Makefile.in $(srcdir)/proj.pc.in \
$(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
config.guess config.sub depcomp install-sh ltconfig ltmain.sh \
missing mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -44,7 +48,8 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_FILES = proj.pc
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -54,8 +59,34 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
DATA = $(pkgconfig_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
@@ -63,9 +94,34 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
{ test ! -d $(distdir) \
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr $(distdir); }; }
{ test ! -d "$(distdir)" \
|| { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr "$(distdir)"; }; }
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).zip
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
@@ -82,21 +138,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -104,22 +157,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -132,9 +194,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -177,11 +239,15 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = src man nad jniwrap
EXTRA_DIST = makefile.vc nmake.opt
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = proj.pc
AUTOMAKE_OPTIONS = dist-zip
ACLOCAL_AMFLAGS = -I m4
all: all-recursive
.SUFFIXES:
@@ -191,15 +257,15 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
cd $(srcdir) && $(AUTOMAKE) --gnu \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -215,9 +281,12 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(srcdir) && $(AUTOCONF)
$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
proj.pc: $(top_builddir)/config.status $(srcdir)/proj.pc.in
cd $(top_builddir) && $(SHELL) ./config.status $@
mostlyclean-libtool:
-rm -f *.lo
@@ -226,7 +295,27 @@ clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
-rm -f libtool config.lt
install-pkgconfigDATA: $(pkgconfig_DATA)
@$(NORMAL_INSTALL)
test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
done
uninstall-pkgconfigDATA:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
@@ -235,7 +324,7 @@ distclean-libtool:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -252,7 +341,7 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
@@ -260,7 +349,7 @@ $(RECURSIVE_TARGETS):
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -286,16 +375,16 @@ $(RECURSIVE_CLEAN_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -303,14 +392,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -322,46 +411,50 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d $(distdir) || mkdir $(distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -377,38 +470,55 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
@@ -417,6 +527,14 @@ dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-lzma: distdir
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
$(am__remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
$(am__remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
@@ -441,13 +559,17 @@ dist dist-all: distdir
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lzma*) \
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
@@ -455,9 +577,11 @@ distcheck: dist
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& cd $(distdir)/_build \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
@@ -479,13 +603,15 @@ distcheck: dist
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@cd $(distuninstallcheck_dir) \
@$(am__cd) '$(distuninstallcheck_dir)' \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
@@ -504,9 +630,12 @@ distcleancheck: distclean
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
@@ -527,6 +656,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -547,26 +677,38 @@ dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am:
install-data-am: install-pkgconfigDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
@@ -587,26 +729,28 @@ ps: ps-recursive
ps-am:
uninstall-am:
uninstall-am: uninstall-pkgconfigDATA
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
install-strip
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am clean clean-generic \
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
distclean-generic distclean-libtool distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
uninstall uninstall-am
dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
distcheck distclean distclean-generic distclean-libtool \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
installdirs-am maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-pkgconfigDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
+39
View File
@@ -1,3 +1,42 @@
4.8.0 Release Notes
-------------------
o Added the Natural Earth projection.
o Added HEALPIX, rHEALPIX and Icosahedral Snyder Equal Area projections.
o nad2bin now produces "CTable2" format grid shift files by default which
are platform independent.
o nad2nad removed, use cs2cs for datum shift operations.
o projects.h no longer installed as a public include file. Please try to
only use proj_api.h.
o Add pj_get_spheroid_defn() accessor.
o Added an alternate version of pj_init() that takes a projCtx (execution
context) structure to address multithreading issues with error management
and to provide a support for application hookable error reporting and
logging.
o Upgrade to EPSG 7.9. Some changes in ideal datum selection.
o JNI bindings reworked, org.proj4.Projections deprecated in favor of
org.proj4.PJ.
o Added preliminary vertical datum support.
o Fix various multithreading issues, particular in datum grid handling code.
o Added support for the +axis= option for alternate axis orientations as
part of a coordinate system (used for TM South Orientated support).
o +proj=omerc implementatioin replaced with code from libproj4. +rot_conv
flag no longer works, and some coordinate systems (ie. Malaysian) will
need to use +gamma instead. "epsg" init file updated accordingly.
4.7.0 Release Notes
-------------------
Vendored
+6133 -4187
View File
File diff suppressed because it is too large Load Diff
Vendored
+10390 -15524
View File
File diff suppressed because it is too large Load Diff
+6 -4
View File
@@ -1,10 +1,10 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT([PROJ.4 Projections], 4.7.0, [warmerdam@pobox.com], proj)
AC_INIT([PROJ.4 Projections], 4.8.0, [warmerdam@pobox.com], proj)
AC_CONFIG_MACRO_DIR([m4])
AC_LANG(C)
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
AM_CONFIG_HEADER(src/proj_config.h)
@@ -47,7 +47,7 @@ elif test "$with_jni" != "no" -a "$with_jni" != "" ; then
if test \! -r "$with_jni/jni.h" ; then
AC_MSG_ERROR(Did not find $with_jni/jni.h)
fi
AC_DEFINE(JNI_ENABLED,1,[Enabled for Java/JNI Support])
AC_MSG_RESULT([enabled])
@@ -59,7 +59,7 @@ elif test "$with_jni" = "" ; then
AC_MSG_CHECKING(whether to enable Java/JNI support)
if test "$ac_cv_header_jni_h" = "no" ; then
if test "$ac_cv_header_jni_h" = "no" ; then
AC_MSG_RESULT([disabled])
else
AC_MSG_RESULT([enabled])
@@ -97,3 +97,5 @@ AC_SUBST(MUTEX_SETTING,$MUTEX_SETTING)
AC_OUTPUT(Makefile src/Makefile man/Makefile man/man1/Makefile \
man/man3/Makefile nad/Makefile \
jniwrap/Makefile jniwrap/org/Makefile jniwrap/org/proj4/Makefile)
AC_OUTPUT(proj.pc)
+125 -53
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,6 +42,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -51,10 +54,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
@@ -67,21 +98,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -89,22 +117,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -117,9 +154,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -162,6 +199,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = build.xml doxygen.cfg README
@@ -173,14 +211,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -198,6 +236,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
@@ -212,7 +251,7 @@ clean-libtool:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -229,7 +268,7 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
@@ -237,7 +276,7 @@ $(RECURSIVE_TARGETS):
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -263,16 +302,16 @@ $(RECURSIVE_CLEAN_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -280,14 +319,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -299,39 +338,43 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -352,29 +395,44 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
@@ -404,6 +462,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -422,6 +481,8 @@ dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
@@ -430,18 +491,28 @@ install-data-am: install-data-local
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
@@ -462,8 +533,8 @@ ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
install-strip
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic clean-libtool \
@@ -482,6 +553,7 @@ uninstall-am:
install-data-local:
echo In jniwrap
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+55 -148
View File
@@ -1,212 +1,119 @@
-------------------- J P R O J . 4 --------------------
This is the first release of a JNI wrap of the main proj4 functions.
This is the second release of JNI wrappers for the main proj4 functions.
PLEASE read the following information.
For more information regarding JPROJ4 please contact me through the
web page at:
The first release of JNI wrappers were created by:
http://www.hydrologis.com
http://www.hydrologis.com
For more information regarding the current release please see the web page at:
http://www.geoapi.org/geoapi-proj4/
---------------------------------------------------
What is JPROJ4:
What is "Proj.4 wrapper":
-------------
JPROJ is a small library of java classes that wrap a few proj functions by
using the java native interface.
"Proj.4 wrapper" is a small library of Java classes that wrap a few Proj.4 functions by
using the Java Native Interface (JNI). The main Java class is org.proj4.PJ.
Compilation:
-------------
To complile the native part, configure has to be run like this:
CFLAGS=-Iinclude2 ./configure --with-jni=include1
To compile the native part, configure has to be run in the proj directory like this:
CFLAGS=-Iinclude2 ./configure --with-jni=include1
where
include1 = folder in which the header file jni.h resides (usually $JAVA_HOME/include)
include2 = folder in which the header file jni_md.h resides (usually $JAVA_HOME/include/linux or whatever)
include1 = folder in which the header file jni.h resides (usually $JAVA_HOME/include)
include2 = folder in which the header file jni_md.h resides (usually $JAVA_HOME/include/linux or whatever)
On MacOS, those two folders are /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/include/
The java part is compiled by running ant inside the "jniwrap" folder.
The java part is compiled by running ant inside the "jniwrap" folder.
This will compile the classes and archive them in a jar library.
It applies to Linux, Macos and Windows (and virtually to every system
It applies to Linux, Macos and Windows (and virtually to every system
supporting java).
Requirements:
-------------
Beyond the ones already put by proj, you need:
- j2sdk, the java standard development kit
- ant, to run the build
- doxygen for the documentation generation
Beyond the ones already put by Proj.4, you need:
- JSE 1.5+, the Java standard development kit version 1.5 or above
- Ant, to run the build
- Doxygen for the documentation generation
Documentation:
--------------
The documentation is held inside the code and can be retrieved by running
doxygen inside the folder jniwrap. This will create the html format
doxygen inside the folder jniwrap. This will create the HTML format
documentation inside of jniwrap/docs
The standard way to achive this is to use an ant target:
ant do_make_help
The standard way to achive this is to use an Ant target:
ant do_make_help
License:
--------
GPL
GPL for the first release
Proj.4 license for the second release.
Authors:
--------
Andrea Antonello (andrea.antonello@hydrologis.com)
Martin Desruisseaux (martin.desruisseaux@geomatys.fr)
Usage & a fast example:
-----------------------
The jproj.jar is all is needed to implement proj support in java applications.
The whole job is done by the proj4, so there are just a couple of functions that
The whole job is done by the proj4, so there are just a couple of functions that
be used.
The best way is to see everything through an example.
In the following example we read projection informations and data from a file
and then transform the data and query the information.
In the following example we create two Coordinate System and transform 3 points.
The Coordinate System and the points are hard-coded for simplicity. Of course,
real applications would read them from a file or other data source.
________________________________________________________________________________
First step:
create a text file, let's say test.txt, with the following in it:
srcProj: +proj=latlong +datum=WGS84
destProj: +init=epsg:32632
rows: 1
46 11 194.0
import org.proj4.*;
import java.util.Arrays;
This contains info about a source and destination projection, the number of data
triplets and then the data (in this case just one point)
________________________________________________________________________________
Step two:
create a test code. Simply copy the following into a file called Main.java. The
code is commented to see what we are doing:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedHashMap;
import org.proj4.Proj4;
import org.proj4.ProjectionData;
public class Main
{
public static void main(String[] args) throws IOException
{
// print out the usage if no argument was given
if (args.length < 1)
{
System.out.println();
System.out.println("Usage: Proj datafile");
System.out.println();
System.exit(0);
/**
* Converts coordinates from EPSG:32632 (WGS 84 / UTM zone 32N) to WGS84,
* then prints the result to the standard output stream.
*/
public class Main {
public static void main(String[] args) throws PJException {
PJ sourcePJ = new PJ("+init=epsg:32632"); // (x,y) axis order
PJ targetPJ = new PJ("+proj=latlong +datum=WGS84"); // (λ,φ) axis order
double[] coordinates = {
500000, 0, // First coordinate
400000, 100000, // Second coordinate
600000, -100000 // Third coordinate
};
sourcePJ.transform(targetPJ, 2, coordinates, 0, 3);
System.out.println(Arrays.toString(coordinates));
}
// now the input file is going to be read
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(new File(args[0]))));
LinkedHashMap mapHeader = new LinkedHashMap();
// read the header
String line = null;
for (int i = 0; i < 3; i++)
{
if ((line = br.readLine()) != null)
{
String[] header = line.split(":", 2);
if (header.length <= 2)
{
mapHeader.put(header[0].trim(), header[1].trim());
}
else
{
System.out.println("Wrong file format");
System.exit(0);
}
}
}
// with what you see above, the header was read
// now I can define the number of rows of data triplets
int rows = new Integer((String) mapHeader.get("rows")).intValue();
double[][] testCoord = new double[rows][2];
double[] testValues = new double[rows];
System.out.println("Source coordinates and values:");
// start reading the data
for (int i = 0; i < rows; i++)
{
if ((line = br.readLine()) != null)
{
String[] values = line.split(" +");
if (values.length == 3)
{
testCoord[i][0] = new Double(values[0].trim()).doubleValue();
testCoord[i][1] = new Double(values[1].trim()).doubleValue();
testValues[i] = new Double(values[2].trim()).doubleValue();
System.out.println("x = " + testCoord[i][0] + " y = "
+ testCoord[i][1] + " z = " + testValues[i]);
}
else
{
System.out.println("Wrong file format or empty line found");
}
}
}
// create the dataset
// this is necessary to be able to transform
ProjectionData dataTP = new ProjectionData(testCoord, testValues);
// here we go with the instantiation of the proj4 object
Proj4 testProjection = new Proj4((String) mapHeader.get("srcProj"),
(String) mapHeader.get("destProj"));
// the instantiation of the proj4 object instantiated also the projection
// objects for source and destination projection
// therefore we can already print the projection infos:
testProjection.printSrcProjInfo();
testProjection.printDestProjInfo();
// and transform, passing as parameter the created dataset:
testProjection.transform(dataTP, 1, 1);
// if we need the parameters as Hashmap for a later use:
LinkedHashMap testMap = testProjection.getSrcProjInfo();
// and let us print them to screen to see them
System.out.println();
System.out.println("Proj as a Hashmap");
System.out.println("******************************************************");
System.out.println(testMap.toString());
}
}
________________________________________________________________________________
Step three
compile the Main code:
we assume that proj was compiled with the right flag to support jproj.
Therefore we have a library called jproj.jar.
@@ -216,6 +123,6 @@ javac -classpath <path to the jar library>/jproj.jar Main.java
and execute the created test case with:
java -cp .:<path to the jar library>/jproj.jar -Djava.library.path=<path to the libproj, if needed> Main test.txt
java -cp .:<path to the jar library>/jproj.jar -Djava.library.path=<path to the libproj, if needed> Main
That's it, enjoy!
+77 -87
View File
@@ -1,98 +1,88 @@
<?xml version="1.0"?>
<project name="jproj" default="compile" basedir=".">
<!-- ******************************************* -->
<!-- set the variables -->
<!-- ******************************************* -->
<property name="src" value="org/proj4"/>
<property name="build" value="classes"/>
<property name="libs" value="libs"/>
<!-- ******************************************* -->
<!-- start everything (default target) -->
<!-- ******************************************* -->
<target name="compile" depends="start, do_javac, jar_it">
<!-- ******************************************* -->
<!-- Set the variables -->
<!-- ******************************************* -->
<property name="src" value="org/proj4"/>
<property name="srcProj" value="../src"/>
<property name="build" value="classes"/>
<property name="libs" value="libs"/>
<!-- ******************************************* -->
<!-- Start everything (default target) -->
<!-- ******************************************* -->
<target name="compile" depends="start, do_javac, jar_it">
<echo>Compilation finished...</echo>
</target>
<!-- ******************************************* -->
<!-- create some begin stuff -->
<!-- ******************************************* -->
<target name="start">
<echo>Start compilation...</echo>
<!-- <splash imageurl="./etc/images/logo.jpg" showduration="5000"/> -->
</target>
<!-- ******************************************* -->
<!-- Create some begin stuff -->
<!-- ******************************************* -->
<target name="start">
<echo>Creating folder structure...</echo>
<mkdir dir="${build}"/>
<mkdir dir="${libs}"/>
</target>
<!-- ******************************************* -->
<!-- execute javac compilation -->
<!-- ******************************************* -->
<target name="do_javac" depends="start">
<echo>Compiling the java code...</echo>
<javac srcdir="${src}" destdir="${build}" debug="on">
</javac>
</target>
</target>
<!-- ******************************************* -->
<!-- execute javah for JNI headers -->
<!-- ******************************************* -->
<!-- needed if something if new native methods are added -->
<!-- ******************************************* -->
<target name="do_javah" depends="do_javac">
<echo>Creating jni headers...</echo>
<exec dir="${build}" executable="javah" os="Linux">
<arg line="-jni -d ../native org.proj4.Projections"/>
</exec>
</target>
<!-- ******************************************* -->
<!-- do the C part compilation through make -->
<!-- ******************************************* -->
<target name="do_make" depends="do_javah">
<echo>Compiling libraries ...</echo>
<exec dir="." executable="make" os="Linux">
<arg line=""/>
</exec>
</target>
<!-- ******************************************* -->
<!-- create binary package distribution with ant -->
<!-- ******************************************* -->
<!-- this is not working properly by now -->
<target name="jar_it">
<delete file="${libs}/jproj.jar"/>
<jar destfile="${libs}/jproj.jar" basedir="${build}/">
<manifest>
<attribute name="Built-By" value="the jgrass idealists"/>
</manifest>
</jar>
<delete dir="${build}"/>
</target>
<!-- ****************************************************** -->
<!-- execute doxygen help file and source file creation -->
<!-- ****************************************************** -->
<target name="do_make_help" depends="start">
<echo>Creating help files...</echo>
<exec dir="." executable="doxygen">
<arg line="doxygen.cfg"/>
</exec>
</target>
<!-- ******************************************* -->
<!-- Execute javac compilation -->
<!-- ******************************************* -->
<target name="do_javac" depends="start">
<echo>Compiling the java code...</echo>
<javac srcdir="${src}" destdir="${build}" encoding="UTF-8" source="1.5" target="1.5" includeAntRuntime="false"/>
</target>
<!-- ******************************************* -->
<!-- clean up everything -->
<!-- ******************************************* -->
<target name="clean">
<echo>Cleaning up...</echo>
<delete dir="${build}"/>
<delete dir="${libs}"/>
<delete dir="docs"/>
</target>
<!-- ******************************************* -->
<!-- Execute javah for JNI headers -->
<!-- ******************************************* -->
<!-- Needed if new native methods are added. -->
<!-- Header file is created only if the old -->
<!-- proj/src/org_proj4_PJ.h file is deleted -->
<!-- before to run this task. -->
<!-- ******************************************* -->
<target name="do_javah" depends="do_javac">
<echo>Creating jni headers...</echo>
<javah classpath="${build}" class="org.proj4.PJ" destdir="${srcProj}"/>
</target>
<!-- ******************************************* -->
<!-- Do the C part compilation through make -->
<!-- ******************************************* -->
<target name="do_make" depends="do_javah">
<echo>Compiling libraries...</echo>
<exec dir=".." executable="make"/>
</target>
<!-- ******************************************* -->
<!-- Create binary package distribution -->
<!-- ******************************************* -->
<target name="jar_it">
<jar destfile="${libs}/jproj.jar" basedir="${build}/">
<manifest>
<attribute name="Built-By" value="Proj.4"/>
</manifest>
</jar>
</target>
<!-- ****************************************************** -->
<!-- Execute doxygen help file and source file creation -->
<!-- ****************************************************** -->
<target name="do_make_help" depends="start">
<echo>Creating help files...</echo>
<exec dir="." executable="doxygen">
<arg line="doxygen.cfg"/>
</exec>
</target>
<!-- ******************************************* -->
<!-- Clean up everything -->
<!-- ******************************************* -->
<target name="clean">
<echo>Cleaning up...</echo>
<delete dir="${build}"/>
<delete dir="${libs}"/>
<delete dir="docs"/>
</target>
</project>
+1119 -478
View File
File diff suppressed because it is too large Load Diff
+125 -53
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,6 +42,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -51,10 +54,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
@@ -67,21 +98,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -89,22 +117,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -117,9 +154,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -162,6 +199,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = proj4
@@ -172,14 +210,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/org/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/org/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/org/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/org/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -197,6 +235,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
@@ -211,7 +250,7 @@ clean-libtool:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -228,7 +267,7 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
@@ -236,7 +275,7 @@ $(RECURSIVE_TARGETS):
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -262,16 +301,16 @@ $(RECURSIVE_CLEAN_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -279,14 +318,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -298,39 +337,43 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -351,29 +394,44 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
@@ -403,6 +461,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -421,6 +480,8 @@ dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
@@ -429,18 +490,28 @@ install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
@@ -461,8 +532,8 @@ ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
install-strip
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic clean-libtool \
@@ -478,6 +549,7 @@ uninstall-am:
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+24 -18
View File
@@ -14,33 +14,39 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
/**
* class representing a latitude longitude projection
*
* @deprecated Replaced by {@link PJ}, which doesn't need special subclass for this case.
* The conversion of angular values, if needed, is performed directly in the {@link PJ}
* native code, because the native code can more easily exploit the information provided
* by Proj.4 about the CRS type.
*/
@Deprecated
public class LatLong extends Projections
{
+2 -1
View File
@@ -1,4 +1,5 @@
EXTRA_DIST = LatLong.java Others.java Proj4Factory.java Proj4.java \
EXTRA_DIST = PJ.java PJException.java package-info.java \
LatLong.java Others.java Proj4Factory.java Proj4.java \
ProjectionData.java Projections.java
+53 -23
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,6 +42,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -55,21 +58,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -77,22 +77,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -105,9 +114,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -150,9 +159,11 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = LatLong.java Others.java Proj4Factory.java Proj4.java \
EXTRA_DIST = PJ.java PJException.java package-info.java \
LatLong.java Others.java Proj4Factory.java Proj4.java \
ProjectionData.java Projections.java
all: all-am
@@ -162,14 +173,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/org/proj4/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/org/proj4/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu jniwrap/org/proj4/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu jniwrap/org/proj4/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -187,6 +198,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
@@ -216,13 +228,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -250,6 +266,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -268,6 +285,8 @@ dvi-am:
html: html-am
html-am:
info: info-am
info-am:
@@ -276,18 +295,28 @@ install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -321,6 +350,7 @@ uninstall-am:
maintainer-clean-generic mostlyclean mostlyclean-generic \
mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+25 -19
View File
@@ -14,34 +14,40 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
/**
* class representing a generic projection, i.e. with no particular
* class representing a generic projection, i.e. with no particular
* preprocessing needs.
*
* @deprecated Replaced by {@link PJ}, which doesn't need special subclass for this case.
* The conversion of angular values, if needed, is performed directly in the {@link PJ}
* native code, because the native code can more easily exploit the information provided
* by Proj.4 about the CRS type.
*/
@Deprecated
public class Others extends Projections
{
+294
View File
@@ -0,0 +1,294 @@
/******************************************************************************
* $Id$
*
* Project: PROJ.4
* Purpose: Java/JNI wrappers for PROJ.4 API.
* Author: Martin Desruisseaux
*
******************************************************************************
* Copyright (c) 2011, Open Geospatial Consortium, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*****************************************************************************
* This file is a copy of a file developed in the GeoAPI "Proj.4 binding"
* module (http://www.geoapi.org/geoapi-proj4/index.html). If this file is
* modified, please consider synchronizing the changes with GeoAPI.
*/
package org.proj4;
/**
* Wraps the <a href="http://proj.osgeo.org/">Proj4</a> {@code PJ} native data structure.
* Almost every methods defined in this class are native methods delegating the work to the
* Proj.4 library. This class is the only place where such native methods are defined.
* <p>
* In the Proj.4 library, the {@code PJ} structure aggregates in a single place information usually
* splitted in many different ISO 19111 interfaces: {@link org.opengis.referencing.datum.Ellipsoid},
* {@link org.opengis.referencing.datum.Datum}, {@link org.opengis.referencing.datum.PrimeMeridian},
* {@link org.opengis.referencing.cs.CoordinateSystem}, {@link org.opengis.referencing.crs.CoordinateReferenceSystem}
* and their sub-interfaces. The relationship with the GeoAPI methods is indicated in the
* "See" tags when appropriate.
*
* @author Martin Desruisseaux (Geomatys)
*/
public class PJ {
/**
* The maximal number of dimension accepted by the {@link #transform(PJ, int, double[], int, int)}
* method. This upper limit is actually somewhat arbitrary. This limit exists mostly as a safety
* against potential misuse.
*/
public static final int DIMENSION_MAX = 100;
// IMPLEMENTATION NOTE: if the value is modified, edit also the native C file.
/**
* Loads the Proj4 library.
*/
static {
System.loadLibrary("proj");
}
/**
* The pointer to {@code PJ} structure allocated in the C/C++ heap. This value has no
* meaning in Java code. <strong>Do not modify</strong>, since this value is used by Proj4.
* Do not rename neither, unless you update accordingly the C code in JNI wrappers.
*/
private final long ptr;
/**
* Creates a new {@code PJ} structure from the given Proj4 definition string.
*
* @param definition The Proj.4 definition string.
* @throws IllegalArgumentException If the PJ structure can not be created from the given string.
*/
public PJ(final String definition) throws IllegalArgumentException {
ptr = allocatePJ(definition);
if (ptr == 0) {
throw new IllegalArgumentException(definition);
}
}
/**
* Creates a new {@code PJ} structure derived from an existing {@code PJ} object.
* This constructor is usually for getting the
* {@linkplain org.opengis.referencing.crs.ProjectedCRS#getBaseCRS() base geographic CRS}
* from a {@linkplain org.opengis.referencing.crs.ProjectedCRS projected CRS}.
*
* @param crs The CRS (usually projected) from which to derive a new CRS.
* @param type The type of the new CRS. Currently, only {@link Type#GEOGRAPHIC} is supported.
* @throws IllegalArgumentException If the PJ structure can not be created.
*/
public PJ(final PJ crs, final Type type) throws IllegalArgumentException {
if (crs == null) {
// TODO: Use Objects with JDK 7.
throw new NullPointerException("The CRS must be non-null.");
}
if (type != Type.GEOGRAPHIC) {
throw new IllegalArgumentException("Can not derive the " + type + " type.");
}
ptr = allocateGeoPJ(crs);
if (ptr == 0) {
throw new IllegalArgumentException(crs.getLastError());
}
}
/**
* Allocates a PJ native data structure and returns the pointer to it. This method should be
* invoked by the constructor only, and the return value <strong>must</strong> be assigned
* to the {@link #ptr} field. The allocated structure is released by the {@link #finalize()}
* method.
*
* @param definition The Proj4 definition string.
* @return A pointer to the PJ native data structure, or 0 if the operation failed.
*/
private static native long allocatePJ(String definition);
/**
* Allocates a PJ native data structure for the base geographic CRS of the given CRS, and
* returns the pointer to it. This method should be invoked by the constructor only, and
* the return value <strong>must</strong> be assigned to the {@link #ptr} field.
* The allocated structure is released by the {@link #finalize()} method.
*
* @param projected The CRS from which to derive the base geographic CRS.
* @return A pointer to the PJ native data structure, or 0 if the operation failed.
*/
private static native long allocateGeoPJ(PJ projected);
/**
* Returns the version number of the Proj4 library.
*
* @return The Proj.4 release string.
*/
public static native String getVersion();
/**
* Returns the Proj4 definition string. This is the string given to the constructor,
* expanded with as much information as possible.
*
* @return The Proj4 definition string.
*/
public native String getDefinition();
/**
* Returns the Coordinate Reference System type.
*
* @return The CRS type.
*/
public native Type getType();
/**
* The coordinate reference system (CRS) type returned by {@link PJ#getType()}.
* In the Proj.4 library, a CRS can only be geographic, geocentric or projected,
* without distinction between 2D and 3D CRS.
*
* @author Martin Desruisseaux (Geomatys)
*/
public static enum Type {
/*
* IMPLEMENTATION NOTE: Do not rename those fields, unless you update the
* native C code accordingly.
*/
/**
* The CRS is of type {@link org.opengis.referencing.crs.GeographicCRS}.
* The CRS can be two-dimensional or three-dimensional.
*/
GEOGRAPHIC,
/**
* The CRS is of type {@link org.opengis.referencing.crs.GeocentricCRS}.
* The CRS can only be three-dimensional.
*/
GEOCENTRIC,
/**
* The CRS is of type {@link org.opengis.referencing.crs.ProjectedCRS}.
* The CRS can be two-dimensional or three-dimensional.
*/
PROJECTED
}
/**
* Returns the value stored in the {@code a_orig} PJ field.
*
* @return The axis length stored in {@code a_orig}.
*
* @see org.opengis.referencing.datum.Ellipsoid#getSemiMajorAxis()
*/
public native double getSemiMajorAxis();
/**
* Returns the value computed from PJ fields by {@code √((a_orig)² × (1 - es_orig))}.
*
* @return The axis length computed by {@code √((a_orig)² × (1 - es_orig))}.
*
* @see org.opengis.referencing.datum.Ellipsoid#getSemiMinorAxis()
*/
public native double getSemiMinorAxis();
/**
* Returns the square of the ellipsoid eccentricity (&epsilon;&sup2;). The eccentricity
* is related to axis length by &epsilon;=√(1-(<var>b</var>/<var>a</var>)&sup2;). The
* eccentricity of a sphere is zero.
*
* @return The eccentricity.
*
* @see org.opengis.referencing.datum.Ellipsoid#isSphere()
* @see org.opengis.referencing.datum.Ellipsoid#getInverseFlattening()
*/
public native double getEccentricitySquared();
/**
* Returns an array of character indicating the direction of each axis. Directions are
* characters like {@code 'e'} for East, {@code 'n'} for North and {@code 'u'} for Up.
*
* @return The axis directions.
*
* @see org.opengis.referencing.cs.CoordinateSystemAxis#getDirection()
*/
public native char[] getAxisDirections();
/**
* Longitude of the prime meridian measured from the Greenwich meridian, positive eastward.
*
* @return The prime meridian longitude, in degrees.
*
* @see org.opengis.referencing.datum.PrimeMeridian#getGreenwichLongitude()
*/
public native double getGreenwichLongitude();
/**
* Returns the conversion factor from the linear units to metres.
*
* @param vertical {@code false} for the conversion factor of horizontal axes,
* or {@code true} for the conversion factor of the vertical axis.
* @return The conversion factor to metres for the given axis.
*/
public native double getLinearUnitToMetre(boolean vertical);
/**
* Transforms in-place the coordinates in the given array. The coordinates array shall contain
* (<var>x</var>,<var>y</var>,<var>z</var>,&hellip;) tuples, where the <var>z</var> and
* following dimensions are optional. Note that any dimension after the <var>z</var> value
* are ignored.
* <p>
* Input and output units:
* <p>
* <ul>
* <li>Angular units (as in longitude and latitudes) are decimal degrees.</li>
* <li>Linear units are usually metres, but this is actually projection-dependent.</li>
* </ul>
*
* @param target The target CRS.
* @param dimension The dimension of each coordinate value. Must be in the [2-{@value #DIMENSION_MAX}] range.
* @param coordinates The coordinates to transform, as a sequence of
* (<var>x</var>,<var>y</var>,&lt;<var>z</var>&gt;,&hellip;) tuples.
* @param offset Offset of the first coordinate in the given array.
* @param numPts Number of points to transform.
* @throws NullPointerException If the {@code target} or {@code coordinates} argument is null.
* @throws IndexOutOfBoundsException if the {@code offset} or {@code numPts} arguments are invalid.
* @throws PJException If the operation failed for an other reason (provided by Proj4).
*
* @see org.opengis.referencing.operation.MathTransform#transform(double[], int, double[], int, int)
*/
public native void transform(PJ target, int dimension, double[] coordinates, int offset, int numPts)
throws PJException;
/**
* Returns a description of the last error that occurred, or {@code null} if none.
*
* @return The last error that occurred, or {@code null}.
*/
public native String getLastError();
/**
* Returns the string representation of the PJ structure.
*
* @return The string representation.
*/
@Override
public native String toString();
/**
* Deallocates the native PJ data structure. This method can be invoked only by the garbage
* collector, and must be invoked exactly once (no more, no less).
* <strong>NEVER INVOKE THIS METHOD EXPLICITELY, NEVER OVERRIDE</strong>.
*/
@Override
protected final native void finalize();
}
+62
View File
@@ -0,0 +1,62 @@
/******************************************************************************
* $Id$
*
* Project: PROJ.4
* Purpose: Java/JNI wrappers for PROJ.4 API.
* Author: Martin Desruisseaux
*
******************************************************************************
* Copyright (c) 2011, Open Geospatial Consortium, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*****************************************************************************
* This file is a copy of a file developed in the GeoAPI "Proj.4 binding"
* module (http://www.geoapi.org/geoapi-proj4/index.html). If this file is
* modified, please consider synchronizing the changes with GeoAPI.
*/
package org.proj4;
/**
* Exception thrown when a call to {@link PJ#transform(PJ, int, double[], int, int)} failed.
*
* @author Martin Desruisseaux (Geomatys)
*/
public class PJException extends Exception {
/**
* For cross-version compatibility.
*/
private static final long serialVersionUID = -2580747577812829763L;
/**
* Constructs a new exception with no message.
*/
public PJException() {
super();
}
/**
* Constructs a new exception with the given message.
*
* @param message A message that describe the cause for the failure.
*/
public PJException(final String message) {
super(message);
}
}
+33 -31
View File
@@ -2,7 +2,7 @@
FILE: Proj4.java
DESCRIPTION:
DESCRIPTION:
NOTES: ---
AUTHOR: Antonello Andrea
@@ -14,34 +14,34 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
import java.util.LinkedHashMap;
/**
* This is the public
* This is the public
* test class to try the jproj api. Reads data from file.
* The input file has three lines of header:<BR>
* 1) source projection code or option <BR>
@@ -58,18 +58,20 @@ import java.util.LinkedHashMap;
* destProj: +init=epsg:32632
* rows: 2
* ...datatriplets
*
*
* @deprecated Replaced by {@link PJ}. See package description for usage example.
*/
@Deprecated
public class Proj4 implements Proj4Factory
{
Projections srcProjection = null;
Projections destProjection = null;
Projections projection = null;
/**
* constructor used to instatiate a single projection. This is used
* if the goal is to simply get information about a projection definition
*
*
* @param proj the projection definition
*/
public Proj4(String proj)
@@ -83,12 +85,12 @@ public class Proj4 implements Proj4Factory
projection = new Others(proj);
}
}
/**
* constructor used to instantiate the object for a further reproiection.
* From the definitions the source and destination projection are
* From the definitions the source and destination projection are
* created.
*
*
* @param srcProj
* @param destProj
*/
@@ -115,7 +117,7 @@ public class Proj4 implements Proj4Factory
/**
* method to reproject a dataset from the source projection to the destination
* projection as defined in the constructor
*
*
* @param dataTP the data set to reproject
* @param point_count
* @param point_offset
@@ -134,7 +136,7 @@ public class Proj4 implements Proj4Factory
+ dataTP.z[i]);
}
}
/**
* @return the projection info as a hashmap
*/
@@ -150,7 +152,7 @@ public class Proj4 implements Proj4Factory
{
return srcProjection.mapProjInfo();
}
/**
* @return the destination projection info as a hashmap
*/
@@ -158,7 +160,7 @@ public class Proj4 implements Proj4Factory
{
return destProjection.mapProjInfo();
}
/**
* print the projection info to standard output
@@ -167,7 +169,7 @@ public class Proj4 implements Proj4Factory
{
projection.printProjInfo();
}
/**
* print the source projection info to standard output
*/
+27 -23
View File
@@ -2,7 +2,7 @@
FILE: Proj4Factory.java
DESCRIPTION:
DESCRIPTION:
NOTES: ---
AUTHOR: Antonello Andrea
@@ -14,28 +14,28 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
@@ -43,23 +43,27 @@ import java.util.LinkedHashMap;
/**
* @deprecated Replaced by {@link PJ}. See package description for usage example.
*/
@Deprecated
public interface Proj4Factory
{
/**
* method to reproject a dataset from the source projection to the destination
* projection as defined in the constructor
*
*
* @param dataTP the data set to reproject
* @param point_count
* @param point_offset
*/
public void transform(ProjectionData dataTP, long point_count, int point_offset);
/**
* @return the projection info as a hashmap
*/
public LinkedHashMap getProjInfo();
/**
* @return the source projection info as a hashmap
*/
+26 -20
View File
@@ -14,33 +14,39 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
/**
* class representing the dataset to be reprojected
*
* @deprecated The new {@link PJ} class uses a different layout for coordinate values.
* The new layout is the same than the one used by {@link java.awt.geom.AffineTransform}
* in Java2D: tuples of (<var>x</var>,<var>y</var>,&lt;<var>y</var>&gt;) coordinates in
* a single flat array.
*/
@Deprecated
public class ProjectionData
{
@@ -52,7 +58,7 @@ public class ProjectionData
public int rows = 0;
/**
* object to hold the data to be transformed. This will be passed from
* object to hold the data to be transformed. This will be passed from
* the starting projection object to the destinantion projection passing through
* the transformation.
*/
@@ -61,7 +67,7 @@ public class ProjectionData
rows = _coord.length;
x = new double[rows];
y = new double[rows];
for (int i = 0; i < rows; i++)
{
x[i] = _coord[i][0];
+77 -38
View File
@@ -2,7 +2,7 @@
FILE: Projections.java
DESCRIPTION:
DESCRIPTION:
NOTES: ---
AUTHOR: Antonello Andrea
@@ -14,27 +14,27 @@
REVISION: ---
=====================================================================================*/
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
/*
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
*/
package org.proj4;
@@ -42,7 +42,10 @@ import java.util.LinkedHashMap;
/**
* superclass of all the projections the main proj methods are held here
*
* @deprecated Replaced by {@link PJ}.
*/
@Deprecated
public abstract class Projections
{
@@ -88,45 +91,58 @@ public abstract class Projections
}
/**
* get all the projection informations needed from the
* get all the projection informations needed from the
* projection code (reproduces pj_get_def() of the proj api)
*
*
* @param the proj code or options
* @return the info String
*
* @deprecated Replaced by {@link PJ#getDefinition()}.
*/
@Deprecated
protected native String getProjInfo(String proj);
/**
* get the ellipsoid parameters from the
* get the ellipsoid parameters from the
* projection code
*
*
* @param the proj code or options
* @return the info String
*
* @deprecated Replaced by {@link PJ#getSemiMajorAxis()}, {@link PJ#getSemiMinorAxis()},
* {@link PJ#getEccentricitySquared()} and {@link PJ#getDefinition()}.
*/
@Deprecated
protected native String getEllipsInfo(String proj);
/**
* native call to the reprojections routines of proj
*
*
* @param firstCoord array of x
* @param secondCoord array of y
* @param values array of z
* @param srcCodeString source projection code or option
* @param destCodeString destination projection code or option
* @param pointcount
* @param pointcount
* @param pointoffset
*
* @deprecated Replaced by {@link PJ#transform(PJ, int, double[], int, int)}.
*/
@Deprecated
protected native void transform(double[] firstCoord, double[] secondCoord,
double[] values, String srcCodeString, String destCodeString,
long pointcount, int pointoffset);
/**
* public method to call the native getProjInfo
*
* @return quoting the proj api:"Returns the PROJ.4 command string that
* would produce this definition expanded as much as possible. For
*
* @return quoting the proj api:"Returns the PROJ.4 command string that
* would produce this definition expanded as much as possible. For
* instance, +init= calls and +datum= defintions would be expanded"
*
* @deprecated Replaced by {@link PJ#getDefinition()}.
*/
@Deprecated
public String getProjInfo()
{
return getProjInfo(proj);
@@ -134,9 +150,13 @@ public abstract class Projections
/**
* public method to call the native getEllispdInfo
*
*
* @return the list of ellipsoid parameters
*
* @deprecated Replaced by {@link PJ#getSemiMajorAxis()}, {@link PJ#getSemiMinorAxis()},
* {@link PJ#getEccentricitySquared()} and {@link PJ#getDefinition()}.
*/
@Deprecated
public String getEllipseInfo()
{
return getEllipsInfo(proj);
@@ -144,7 +164,10 @@ public abstract class Projections
/**
* print to standard output the proj info in a nice format
*
* @deprecated Replaced by {@link PJ#toString()}.
*/
@Deprecated
public void printProjInfo()
{
String projinfo = getProjInfo();
@@ -215,18 +238,22 @@ public abstract class Projections
* if there is some operation to perform on the input data, this is
* the right moment (ex. latlong from degree to radiant)
* -> i.e. do whatever is needed
*
*
* @param dataTP
*
* @deprecated The conversion from degrees to radians is now performed directly by
* {@link PJ#transform(PJ, int, double[], int, int)}.
*/
@Deprecated
public abstract void prepareData(ProjectionData dataTP);
/**
* do the transform. The srcProjection is passed to the destination proj and
* do the transform. The srcProjection is passed to the destination proj and
* the transformation takes place. Then the resulting transformed data
* are passed to the destProj, so that the destProj in case can take care of
* final transformation of data (ex. if the destProj is latlong, the values
* are passed to the destProj, so that the destProj in case can take care of
* final transformation of data (ex. if the destProj is latlong, the values
* have to be set beck to degrees
*
*
* @param srcProj object holding the source projection
* @param dataTP the data set
* @param point_count
@@ -241,18 +268,26 @@ public abstract class Projections
/**
* this takes care that the reprojected data are in the correct format
* (ex. latlong has to be transformed back to radiant)
*
* (ex. latlong has to be transformed back to radiant)
*
* @param dataTP the data set
*
* @deprecated The conversion from radians to degrees is now performed directly by
* {@link PJ#transform(PJ, int, double[], int, int)}.
*/
@Deprecated
public abstract void prepareTransformedData(ProjectionData dataTP);
/**
* transform latitude and longitude from degree to radiant format
*
*
* @param la
* @param lo
*
* @deprecated The conversion from degrees to radians is now performed directly by
* {@link PJ#transform(PJ, int, double[], int, int)}.
*/
@Deprecated
protected void degreeToRadiant(double[] la, double[] lo)
{
for (int i = 0; i < la.length; i++)
@@ -264,10 +299,14 @@ public abstract class Projections
/**
* transform latitude and longitude from radiant to degree format
*
*
* @param la
* @param lo
*
* @deprecated The conversion from radians to degrees is now performed directly by
* {@link PJ#transform(PJ, int, double[], int, int)}.
*/
@Deprecated
protected void radiantToDegree(double[] la, double[] lo)
{
for (int i = 0; i < la.length; i++)
+42
View File
@@ -0,0 +1,42 @@
/******************************************************************************
* $Id$
*
* Project: PROJ.4
* Purpose: Java/JNI wrappers for PROJ.4 API.
* Author: Martin Desruisseaux
*
******************************************************************************
* Copyright (c) 2011, Open Geospatial Consortium, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*****************************************************************************
* This file is a copy of a file developed in the GeoAPI "Proj.4 binding"
* module (http://www.geoapi.org/geoapi-proj4/index.html). If this file is
* modified, please consider synchronizing the changes with GeoAPI.
*/
/**
* Wrappers for the <a href="http://proj.osgeo.org/">Proj4</a> library. The {@link org.proj4.PJ}
* class contains only native methods delegating their work to the Proj.4 library.
* For higher-level methods making use of those native methods, see for example the
* <a href="http://www.geoapi.org/geoapi-proj4/index.html">GeoAPI bindings for Proj.4</a>.
*
* @author Martin Desruisseaux (Geomatys)
*/
package org.proj4;
+6736 -4272
View File
File diff suppressed because it is too large Load Diff
+6444 -3746
View File
File diff suppressed because it is too large Load Diff
+7831
View File
File diff suppressed because it is too large Load Diff
+369
View File
@@ -0,0 +1,369 @@
# Helper functions for option handling. -*- Autoconf -*-
#
# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 7 ltoptions.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
# ------------------------------------------
m4_define([_LT_MANGLE_OPTION],
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
# ---------------------------------------
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
# saved as a flag.
m4_define([_LT_SET_OPTION],
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
_LT_MANGLE_DEFUN([$1], [$2]),
[m4_warning([Unknown $1 option `$2'])])[]dnl
])
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
# ------------------------------------------------------------
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
m4_define([_LT_IF_OPTION],
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
# -------------------------------------------------------
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
# are set.
m4_define([_LT_UNLESS_OPTIONS],
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
[m4_define([$0_found])])])[]dnl
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
])[]dnl
])
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
# ----------------------------------------
# OPTION-LIST is a space-separated list of Libtool options associated
# with MACRO-NAME. If any OPTION has a matching handler declared with
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
# the unknown option and exit.
m4_defun([_LT_SET_OPTIONS],
[# Set options
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
[_LT_SET_OPTION([$1], _LT_Option)])
m4_if([$1],[LT_INIT],[
dnl
dnl Simply set some default values (i.e off) if boolean options were not
dnl specified:
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
])
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
])
dnl
dnl If no reference was made to various pairs of opposing options, then
dnl we run the default mode handler for the pair. For example, if neither
dnl `shared' nor `disable-shared' was passed, we enable building of shared
dnl archives by default:
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
[_LT_ENABLE_FAST_INSTALL])
])
])# _LT_SET_OPTIONS
## --------------------------------- ##
## Macros to handle LT_INIT options. ##
## --------------------------------- ##
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
# -----------------------------------------
m4_define([_LT_MANGLE_DEFUN],
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
# -----------------------------------------------
m4_define([LT_OPTION_DEFINE],
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
])# LT_OPTION_DEFINE
# dlopen
# ------
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
])
AU_DEFUN([AC_LIBTOOL_DLOPEN],
[_LT_SET_OPTION([LT_INIT], [dlopen])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `dlopen' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
# win32-dll
# ---------
# Declare package support for building win32 dll's.
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
[enable_win32_dll=yes
case $host in
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
;;
esac
test -z "$AS" && AS=as
_LT_DECL([], [AS], [1], [Assembler program])dnl
test -z "$DLLTOOL" && DLLTOOL=dlltool
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
test -z "$OBJDUMP" && OBJDUMP=objdump
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
])# win32-dll
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
_LT_SET_OPTION([LT_INIT], [win32-dll])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `win32-dll' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
# _LT_ENABLE_SHARED([DEFAULT])
# ----------------------------
# implement the --enable-shared flag, and supports the `shared' and
# `disable-shared' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_SHARED],
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([shared],
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
enable_shared=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_shared=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
_LT_DECL([build_libtool_libs], [enable_shared], [0],
[Whether or not to build shared libraries])
])# _LT_ENABLE_SHARED
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
# Old names:
AC_DEFUN([AC_ENABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
])
AC_DEFUN([AC_DISABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], [disable-shared])
])
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
# _LT_ENABLE_STATIC([DEFAULT])
# ----------------------------
# implement the --enable-static flag, and support the `static' and
# `disable-static' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_STATIC],
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([static],
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
enable_static=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_static=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
_LT_DECL([build_old_libs], [enable_static], [0],
[Whether or not to build static libraries])
])# _LT_ENABLE_STATIC
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
# Old names:
AC_DEFUN([AC_ENABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
])
AC_DEFUN([AC_DISABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], [disable-static])
])
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
# ----------------------------------
# implement the --enable-fast-install flag, and support the `fast-install'
# and `disable-fast-install' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_FAST_INSTALL],
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([fast-install],
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_fast_install=yes ;;
no) enable_fast_install=no ;;
*)
enable_fast_install=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_fast_install=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
_LT_DECL([fast_install], [enable_fast_install], [0],
[Whether or not to optimize for fast installation])dnl
])# _LT_ENABLE_FAST_INSTALL
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
# Old names:
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the `fast-install' option into LT_INIT's first parameter.])
])
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the `disable-fast-install' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
# _LT_WITH_PIC([MODE])
# --------------------
# implement the --with-pic flag, and support the `pic-only' and `no-pic'
# LT_INIT options.
# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
m4_define([_LT_WITH_PIC],
[AC_ARG_WITH([pic],
[AS_HELP_STRING([--with-pic],
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
[pic_mode="$withval"],
[pic_mode=default])
test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
])# _LT_WITH_PIC
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
# Old name:
AU_DEFUN([AC_LIBTOOL_PICMODE],
[_LT_SET_OPTION([LT_INIT], [pic-only])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `pic-only' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
## ----------------- ##
## LTDL_INIT Options ##
## ----------------- ##
m4_define([_LTDL_MODE], [])
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
[m4_define([_LTDL_MODE], [nonrecursive])])
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
[m4_define([_LTDL_MODE], [recursive])])
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
[m4_define([_LTDL_MODE], [subproject])])
m4_define([_LTDL_TYPE], [])
LT_OPTION_DEFINE([LTDL_INIT], [installable],
[m4_define([_LTDL_TYPE], [installable])])
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
[m4_define([_LTDL_TYPE], [convenience])])
+123
View File
@@ -0,0 +1,123 @@
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
#
# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
# Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 6 ltsugar.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
# lt_join(SEP, ARG1, [ARG2...])
# -----------------------------
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
# associated separator.
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
# versions in m4sugar had bugs.
m4_define([lt_join],
[m4_if([$#], [1], [],
[$#], [2], [[$2]],
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
m4_define([_lt_join],
[m4_if([$#$2], [2], [],
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
# lt_car(LIST)
# lt_cdr(LIST)
# ------------
# Manipulate m4 lists.
# These macros are necessary as long as will still need to support
# Autoconf-2.59 which quotes differently.
m4_define([lt_car], [[$1]])
m4_define([lt_cdr],
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
[$#], 1, [],
[m4_dquote(m4_shift($@))])])
m4_define([lt_unquote], $1)
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
# ------------------------------------------
# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
# Note that neither SEPARATOR nor STRING are expanded; they are appended
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
# than defined and empty).
#
# This macro is needed until we can rely on Autoconf 2.62, since earlier
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
m4_define([lt_append],
[m4_define([$1],
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
# ----------------------------------------------------------
# Produce a SEP delimited list of all paired combinations of elements of
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
# has the form PREFIXmINFIXSUFFIXn.
# Needed until we can rely on m4_combine added in Autoconf 2.62.
m4_define([lt_combine],
[m4_if(m4_eval([$# > 3]), [1],
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
[[m4_foreach([_Lt_prefix], [$2],
[m4_foreach([_Lt_suffix],
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
# -----------------------------------------------------------------------
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
m4_define([lt_if_append_uniq],
[m4_ifdef([$1],
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
[lt_append([$1], [$2], [$3])$4],
[$5])],
[lt_append([$1], [$2], [$3])$4])])
# lt_dict_add(DICT, KEY, VALUE)
# -----------------------------
m4_define([lt_dict_add],
[m4_define([$1($2)], [$3])])
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
# --------------------------------------------
m4_define([lt_dict_add_subkey],
[m4_define([$1($2:$3)], [$4])])
# lt_dict_fetch(DICT, KEY, [SUBKEY])
# ----------------------------------
m4_define([lt_dict_fetch],
[m4_ifval([$3],
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
# -----------------------------------------------------------------
m4_define([lt_if_dict_fetch],
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
[$5],
[$6])])
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
# --------------------------------------------------------------
m4_define([lt_dict_filter],
[m4_if([$5], [], [],
[lt_join(m4_quote(m4_default([$4], [[, ]])),
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
])
+23
View File
@@ -0,0 +1,23 @@
# ltversion.m4 -- version numbers -*- Autoconf -*-
#
# Copyright (C) 2004 Free Software Foundation, Inc.
# Written by Scott James Remnant, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# @configure_input@
# serial 3293 ltversion.m4
# This file is part of GNU Libtool
m4_define([LT_PACKAGE_VERSION], [2.4])
m4_define([LT_PACKAGE_REVISION], [1.3293])
AC_DEFUN([LTVERSION_VERSION],
[macro_version='2.4'
macro_revision='1.3293'
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0)
])
+98
View File
@@ -0,0 +1,98 @@
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
#
# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
# Written by Scott James Remnant, 2004.
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 5 lt~obsolete.m4
# These exist entirely to fool aclocal when bootstrapping libtool.
#
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
# which have later been changed to m4_define as they aren't part of the
# exported API, or moved to Autoconf or Automake where they belong.
#
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
# using a macro with the same name in our local m4/libtool.m4 it'll
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
# and doesn't know about Autoconf macros at all.)
#
# So we provide this file, which has a silly filename so it's always
# included after everything else. This provides aclocal with the
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
# because those macros already exist, or will be overwritten later.
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
#
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
# Yes, that means every name once taken will need to remain here until
# we give up compatibility with versions before 1.7, at which point
# we need to keep only those names which we still refer to.
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
+125 -53
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,6 +42,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -51,10 +54,38 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
@@ -67,21 +98,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -89,22 +117,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -117,9 +154,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -162,6 +199,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = man1 man3
@@ -172,14 +210,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu man/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu man/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -197,6 +235,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
@@ -211,7 +250,7 @@ clean-libtool:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -228,7 +267,7 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
@@ -236,7 +275,7 @@ $(RECURSIVE_TARGETS):
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -262,16 +301,16 @@ $(RECURSIVE_CLEAN_TARGETS):
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -279,14 +318,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -298,39 +337,43 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -351,29 +394,44 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
@@ -403,6 +461,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -421,6 +480,8 @@ dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
@@ -429,18 +490,28 @@ install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
@@ -461,8 +532,8 @@ ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
install-strip
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic clean-libtool \
@@ -478,6 +549,7 @@ uninstall-am:
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+1 -1
View File
@@ -1,4 +1,4 @@
man_MANS = geod.1 nad2nad.1 proj.1 cs2cs.1
man_MANS = geod.1 proj.1 cs2cs.1
EXTRA_DIST = $(man_MANS)
+119 -63
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,8 +42,30 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
man1dir = $(mandir)/man1
am__installdirs = "$(DESTDIR)$(man1dir)"
NROFF = nroff
@@ -59,21 +83,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -81,22 +102,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -109,9 +139,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -154,9 +184,10 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
man_MANS = geod.1 nad2nad.1 proj.1 cs2cs.1
man_MANS = geod.1 proj.1 cs2cs.1
EXTRA_DIST = $(man_MANS)
all: all-am
@@ -165,14 +196,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/man1/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu man/man1/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/man1/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu man/man1/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -190,57 +221,51 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
install-man1: $(man1_MANS) $(man_MANS)
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
for i in $$l2; do \
case "$$i" in \
*.1*) list="$$list $$i" ;; \
esac; \
@list=''; test -n "$(man1dir)" || exit 0; \
{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.1[a-z]*$$/p'; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
fi; \
done; \
for i in $$list; do \
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
else file=$$i; fi; \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
1*) ;; \
*) ext='1' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
done
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
while read files; do \
test -z "$$files" || { \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
done; }
uninstall-man1:
@$(NORMAL_UNINSTALL)
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
for i in $$l2; do \
case "$$i" in \
*.1*) list="$$list $$i" ;; \
esac; \
done; \
for i in $$list; do \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
1*) ;; \
*) ext='1' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
done
@list=''; test -n "$(man1dir)" || exit 0; \
files=`{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.1[a-z]*$$/p'; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
test -z "$$files" || { \
echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
tags: TAGS
TAGS:
@@ -249,6 +274,19 @@ CTAGS:
distdir: $(DISTFILES)
@list='$(MANS)'; if test -n "$$list"; then \
list=`for p in $$list; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
echo " typically \`make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -264,13 +302,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -301,6 +343,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -319,6 +362,8 @@ dvi-am:
html: html-am
html-am:
info: info-am
info-am:
@@ -327,18 +372,28 @@ install-data-am: install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man: install-man1
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -375,6 +430,7 @@ uninstall-man: uninstall-man1
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
uninstall uninstall-am uninstall-man uninstall-man1
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+118 -62
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,8 +16,9 @@
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -40,8 +42,30 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
man3dir = $(mandir)/man3
am__installdirs = "$(DESTDIR)$(man3dir)"
NROFF = nroff
@@ -59,21 +83,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -81,22 +102,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -109,9 +139,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -154,6 +184,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
man_MANS = pj_init.3
@@ -165,14 +196,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/man3/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu man/man3/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/man3/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu man/man3/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -190,57 +221,51 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
install-man3: $(man3_MANS) $(man_MANS)
install-man3: $(man_MANS)
@$(NORMAL_INSTALL)
test -z "$(man3dir)" || $(MKDIR_P) "$(DESTDIR)$(man3dir)"
@list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
for i in $$l2; do \
case "$$i" in \
*.3*) list="$$list $$i" ;; \
esac; \
@list=''; test -n "$(man3dir)" || exit 0; \
{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.3[a-z]*$$/p'; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \
fi; \
done; \
for i in $$list; do \
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
else file=$$i; fi; \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
3*) ;; \
*) ext='3' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst"; \
done
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
while read files; do \
test -z "$$files" || { \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \
done; }
uninstall-man3:
@$(NORMAL_UNINSTALL)
@list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
for i in $$l2; do \
case "$$i" in \
*.3*) list="$$list $$i" ;; \
esac; \
done; \
for i in $$list; do \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
3*) ;; \
*) ext='3' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " rm -f '$(DESTDIR)$(man3dir)/$$inst'"; \
rm -f "$(DESTDIR)$(man3dir)/$$inst"; \
done
@list=''; test -n "$(man3dir)" || exit 0; \
files=`{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.3[a-z]*$$/p'; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
test -z "$$files" || { \
echo " ( cd '$(DESTDIR)$(man3dir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(man3dir)" && rm -f $$files; }
tags: TAGS
TAGS:
@@ -249,6 +274,19 @@ CTAGS:
distdir: $(DISTFILES)
@list='$(MANS)'; if test -n "$$list"; then \
list=`for p in $$list; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
echo " typically \`make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -264,13 +302,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -301,6 +343,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -319,6 +362,8 @@ dvi-am:
html: html-am
html-am:
info: info-am
info-am:
@@ -327,18 +372,28 @@ install-data-am: install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man: install-man3
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -375,6 +430,7 @@ uninstall-man: uninstall-man3
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
uninstall uninstall-am uninstall-man uninstall-man3
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+22
View File
@@ -0,0 +1,22 @@
# This init file provides definitions for CH1903 and CH1903/LV03
# projections using the distortion grids developed by Swisstopo.
# See: http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/lv03-lv95/chenyx06/distortion_grids.html
#
# You'll need to download the grids separately and put in a directory
# scanned by libproj. Directories may be added to the scan list through
# the PROJ_LIB environment variable
#
# Note that an independent effort was made to derive an usable grid
# from the CH1903->CH1903+ grid initially available from the Swisstopo
# website. You can read about this other effort here:
# http://lists.maptools.org/pipermail/proj/2012-February/006093.html
# It may be of interest because the latter was by some reported as being
# more accurate than the former:
# http://lists.maptools.org/pipermail/proj/2012-February/006119.html
#
# This init file uses the official one
#
# CH1903/LV03
<1903_LV03> +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +units=m +nadgrids=chenyx06etrs.gsb +no_defs
# CH1903
<1903> +proj=longlat +ellps=bessel +nadgrids=chenyx06etrs.gsb +no_defs <>
+220 -202
View File
@@ -1,6 +1,6 @@
# W [AMANU49]
# W [AMANU63]
# W [AMST63]
<AMST63> +title=Ile d'Amsterdam 1963 +proj=geocent +towgs84=109.7530,-528.1330,-362.2440 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [ANAA47]
<ANAA92> +title=MOP92 (Anaa) Tuamotu +proj=geocent +towgs84=1.5000,3.8400,4.8100 +a=6378137.0000 +rf=298.2572235630000 +units=m +no_defs <>
# W [APAT48]
@@ -14,10 +14,11 @@
# W [CASS1733]
<CIOBIH> +title=CIO-BIH +proj=geocent +towgs84=0.0000,0.0000,0.5000,0.0000,0.0000,0.0140,-0.100000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
# W [CLIP67]
<CROZ63> +title=Crozet 1963 +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<CROZ63> +title=Crozet 1963 +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<CSG67> +title=Guyane CSG67 +proj=geocent +towgs84=-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<ED50> +title=ED50 +proj=geocent +towgs84=-84.0000,-97.0000,-117.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<EFATE57> +title=EFATE-IGN 1957 +proj=geocent +towgs84=-127.0000,-769.0000,472.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<ETRS89> +title=Systeme de reference terrestre Europeen (1989) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
# W [EUROPA54]
# W [FAKA50]
# W [FANGA50]
@@ -40,7 +41,7 @@
<IGN72> +title=IGN 1972 Grande-Terre / Ile des Pins +proj=geocent +towgs84=-11.6400,-348.6000,291.6800 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [JULES55]
<KAUE70> +title=MHPF70 (Kauehi) Tuamotu +proj=geocent +towgs84=126.7400,300.1000,-75.4900 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<KERG62CAR> +title=Kerguelen - K0 +proj=geocent +towgs84=145.0000,-187.0000,103.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<KERG62CAR> +title=Kerguelen - K0 +proj=geocent +towgs84=144.8990,-186.7700,100.9230 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<LIFOU56> +title=Lifou - Iles Loyaute (IGN56) +proj=geocent +towgs84=336.0000,223.0000,-231.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<LUREF> +title=Nouvelle Triangulation du Grand Duche du Luxembourg +proj=geocent +towgs84=-192.9860,13.6730,-39.3090,-0.4099,-2.9332,2.6881,0.430000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [MAKE50]
@@ -61,7 +62,7 @@
# W [MURU78]
# W [NC51]
# W [NOVA53]
<NTF> +title=Nouvelle Triangulation Francaise +proj=geocent +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +units=m +no_defs <>
<NTF> +title=Nouvelle Triangulation Francaise +proj=geocent +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +units=m +no_defs <>
<NUKU72> +title=IGN 1972 Nuku Hiva +proj=geocent +towgs84=165.7320,216.7200,180.5050,-0.6434,-0.4512,-0.0791,7.420400 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<NUKU94> +title=SAT94 (Nukutavake) Tuamotu +proj=geocent +towgs84=197.1600,200.1700,-48.0800 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<OUVEA72CAR> +title=Ouvea - Iles Loyaute (MHNC 1972 - OUVEA) +proj=geocent +towgs84=-13.0000,-348.0000,292.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
@@ -78,17 +79,18 @@
<REUN47> +title=Reunion 1947 +proj=geocent +towgs84=789.5240,-626.4860,-89.9040,0.6006,76.7946,-10.5788,-32.324100 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [REUN49]
# W [REUN92]
<RGF93> +title=Reseau geodesique francais 1993 +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGFG95> +title=Reseau geodesique francais de Guyane 1995 +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGM04> +title=RGM04 (Reseau Geodesique de Mayotte 2004) +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGNC> +title=Reseau Geodesique de Nouvelle-Caledonie +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGPF> +title=RGPF (Reseau Geodesique de Polynesie Francaise) +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGR92> +title=Reseau geodesique Reunion 1992 +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGSPM06> +title=Reseau Geodesique Saint-Pierre-et-Miquelon (2006) +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RRAF91> +title=RRAF 1991 (Reseau de Reference des Antilles Francaises) +proj=geocent +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGF93> +title=Reseau geodesique francais 1993 +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGFG95> +title=Reseau geodesique francais de Guyane 1995 +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGM04> +title=RGM04 (Reseau Geodesique de Mayotte 2004) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGNC> +title=Reseau Geodesique de Nouvelle-Caledonie +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGPF> +title=RGPF (Reseau Geodesique de Polynesie Francaise) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGR92> +title=Reseau geodesique Reunion 1992 +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGSPM06> +title=Reseau Geodesique Saint-Pierre-et-Miquelon (2006) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGTAAF07> +title=Reseau Geodesique des TAAF (2007) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RRAF91> +title=RRAF 1991 (Reseau de Reference des Antilles Francaises) +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<SAT84> +title=SAT84 (Rurutu) Iles Australes +proj=geocent +towgs84=202.1300,174.6000,-15.7400 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<SHOM84> +title=SHOM 1984 Martinique Montagne Du Vauclin +proj=geocent +towgs84=189.5060,486.5470,148.7830 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [STPL69]
<STPL69> +title=Ile de Saint-Paul 1969 +proj=geocent +towgs84=225.5710,-346.6080,-46.5670 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<STPM50> +title=St Pierre et Miquelon 1950 +proj=geocent +towgs84=-95.5930,573.7630,173.4420,-0.9602,1.2510,-1.3918,42.626500 +a=6378206.4000 +rf=294.9786982000000 +units=m +no_defs <>
# W [SYSLNCAR]
<TAHAA> +title=Raiatea - Tahaa 51-54 (Tahaa, Base Terme Est) +proj=geocent +towgs84=72.4380,345.9180,79.4860,-1.6045,-0.8823,-0.5565,1.374600 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
@@ -96,7 +98,7 @@
<TAHI79> +title=IGN79 (Tahiti) Iles de la Societe +proj=geocent +towgs84=221.5250,152.9480,176.7680,2.3847,1.3896,0.8770,11.474100 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [TAKA69]
<TANNA> +title=Tanna Bloc Sud +proj=geocent +towgs84=-139.0000,-967.0000,436.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<TERA50> +title=Pointe Geologie - Perroud 1950 +proj=geocent +towgs84=324.8000,153.6000,172.1000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<TERA50> +title=Pointe Geologie - Perroud 1950 +proj=geocent +towgs84=324.9120,153.2820,172.0260 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [TIKE50]
# W [TIKE60]
# W [TROM56]
@@ -105,10 +107,10 @@
# W [WALL76]
<WALL78> +title=Wallis-Uvea 1978 (MOP78) +proj=geocent +towgs84=253.0000,-133.0000,-127.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<WGS72> +title=World Geodetic System 1972 +proj=geocent +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +units=m +no_defs <>
<WGS84> +title=World Geodetic System 1984 +proj=geocent +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<WGS84> +title=World Geodetic System 1984 +proj=geocent +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
# W [AMANU49GEO]
# W [AMANU63GEO]
# W [AMST63GEO]
<AMST63GEO> +title=Ile d'Amsterdam 1963 +proj=longlat +towgs84=109.7530,-528.1330,-362.2440 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [ANAA47GEO]
<ANAA92GEO> +title=MOP92 (Anaa) Tuamotu +proj=longlat +towgs84=1.5000,3.8400,4.8100 +a=6378137.0000 +rf=298.2572235630000 +units=m +no_defs <>
# W [APAT48GEO]
@@ -121,10 +123,11 @@
# W [CADA80GEO]
# W [CASS1733GEO]
# W [CLIP67GEO]
<CROZ63GEO> +title=Crozet 1963 +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<CSG67GEO> +title=Guyane CSG67 UTM fuseau 21 +proj=longlat +towgs84=-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<CROZ63GEO> +title=Crozet 1963 +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<CSG67GEO> +title=Guyane CSG67 +proj=longlat +towgs84=-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<ED50G> +title=ED50 +proj=longlat +towgs84=-84.0000,-97.0000,-117.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<EFATE57GEO> +title=EFATE-IGN 1957 +proj=longlat +towgs84=-127.0000,-769.0000,472.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<ETRS89GEO> +title=ETRS89 geographiques (dms) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
# W [EUROPA54GEO]
# W [FAKA50GEO]
# W [FANGA50GEO]
@@ -147,7 +150,7 @@
<IGN72GEO> +title=IGN 1972 Grande-Terre / Ile des Pins +proj=longlat +towgs84=-11.6400,-348.6000,291.6800 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [JULES55GEO]
<KAUE70GEO> +title=MHPF70 (Kauehi) Tuamotu +proj=longlat +towgs84=126.7400,300.1000,-75.4900 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<KERG62GEO> +title=Kerguelen - K0 +proj=longlat +towgs84=145.0000,-187.0000,103.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<KERG62GEO> +title=Kerguelen - K0 +proj=longlat +towgs84=144.8990,-186.7700,100.9230 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<LIFOU56GEO> +title=Lifou - Iles Loyaute (IGN56) +proj=longlat +towgs84=336.0000,223.0000,-231.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<LUXGEO> +title=Nouvelle Triangulation du Grand Duche du Luxembourg +proj=longlat +towgs84=-192.9860,13.6730,-39.3090,-0.4099,-2.9332,2.6881,0.430000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [MAKE50GEO]
@@ -168,8 +171,8 @@
# W [MURU78GEO]
# W [NC51GEO]
# W [NOVA53GEO]
<NTFG> +title=Nouvelle Triangulation Francaise Greenwich degres sexagesimaux +proj=longlat +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +units=m +no_defs <>
<NTFP> +title=Nouvelle Triangulation Francaise Paris grades +proj=longlat +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +units=m +no_defs <>
<NTFG> +title=Nouvelle Triangulation Francaise Greenwich degres sexagesimaux +proj=longlat +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +units=m +no_defs <>
<NTFP> +title=Nouvelle Triangulation Francaise Paris grades +proj=longlat +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +units=m +no_defs <>
<NUKU72GEO> +title=IGN 1972 Nuku Hiva +proj=longlat +towgs84=165.7320,216.7200,180.5050,-0.6434,-0.4512,-0.0791,7.420400 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<NUKU94GEO> +title=SAT94 (Nukutavake) Tuamotu +proj=longlat +towgs84=197.1600,200.1700,-48.0800 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<OUVEA72GEO> +title=Ouvea - Iles Loyaute (MHNC 1972 - OUVEA) +proj=longlat +towgs84=-13.0000,-348.0000,292.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
@@ -185,16 +188,17 @@
<REUN47GEO> +title=Reunion 1947 +proj=longlat +towgs84=789.5240,-626.4860,-89.9040,0.6006,76.7946,-10.5788,-32.324100 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [REUN49GEO]
# W [REUN92GEO]
<RGF93G> +title=Reseau geodesique francais 1993 +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGFG95GEO> +title=Reseau geodesique francais de Guyane 1995 +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGM04GEO> +title=RGM04 (Reseau Geodesique de Mayotte 2004) +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGNCGEO> +title=Reseau Geodesique de Nouvelle-Caledonie +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGPFGEO> +title=RGPF (Reseau Geodesique de Polynesie Francaise) +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGR92GEO> +title=Reseau geodesique de la Reunion 1992 +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGSPM06GEO> +title=Saint-Pierre-et-Miquelon (2006) +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGF93G> +title=Reseau geodesique francais 1993 +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGFG95GEO> +title=Reseau geodesique francais de Guyane 1995 +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGM04GEO> +title=RGM04 (Reseau Geodesique de Mayotte 2004) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGNCGEO> +title=Reseau Geodesique de Nouvelle-Caledonie +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGPFGEO> +title=RGPF (Reseau Geodesique de Polynesie Francaise) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGR92GEO> +title=Reseau geodesique de la Reunion 1992 +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGSPM06GEO> +title=Saint-Pierre-et-Miquelon (2006) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<RGTAAF07G> +title=Reseau Geodesique des TAAF (2007) (dms) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<SAT84GEO> +title=SAT84 (Rurutu) Iles Australes +proj=longlat +towgs84=202.1300,174.6000,-15.7400 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<SHOM84GEO> +title=SHOM 1984 Martinique Montagne Du Vauclin +proj=longlat +towgs84=189.5060,486.5470,148.7830 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [STPL69GEO]
<STPL69GEO> +title=Ile de Saint-Paul 1969 +proj=longlat +towgs84=225.5710,-346.6080,-46.5670 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<STPM50GEO> +title=St Pierre et Miquelon 1950 +proj=longlat +towgs84=-95.5930,573.7630,173.4420,-0.9602,1.2510,-1.3918,42.626500 +a=6378206.4000 +rf=294.9786982000000 +units=m +no_defs <>
# W [SYSLNGEO]
<TAHAAGEO> +title=Raiatea - Tahaa 51-54 (Tahaa, Base Terme Est) +proj=longlat +towgs84=72.4380,345.9180,79.4860,-1.6045,-0.8823,-0.5565,1.374600 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
@@ -202,7 +206,7 @@
<TAHI79GEO> +title=IGN79 (Tahiti) Iles de la Societe +proj=longlat +towgs84=221.5250,152.9480,176.7680,2.3847,1.3896,0.8770,11.474100 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [TAKA69GEO]
<TANNAGEO> +title=Tanna Bloc Sud +proj=longlat +towgs84=-139.0000,-967.0000,436.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<TERA50GEO> +title=Pointe Geologie - Perroud 1950 +proj=longlat +towgs84=324.8000,153.6000,172.1000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<TERA50G> +title=Pointe Geologie - Perroud 1950 +proj=longlat +towgs84=324.9120,153.2820,172.0260 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
# W [TIKE50GEO]
# W [TIKE60GEO]
# W [TROM56GEO]
@@ -212,11 +216,11 @@
# W [WALL76GEO]
<WALL78GEO> +title=Wallis - Uvea 1978 (MOP78) +proj=longlat +towgs84=253.0000,-133.0000,-127.0000 +a=6378388.0000 +rf=297.0000000000000 +units=m +no_defs <>
<WGS72G> +title=WGS72 +proj=longlat +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +units=m +no_defs <>
<WGS84G> +title=World Geodetic System 1984 +proj=longlat +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<WGS84RRAFGEO> +title=Reseau de reference des Antilles francaises (1988-1991) +proj=longlat +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<WGS84G> +title=World Geodetic System 1984 +proj=longlat +a=6378137.0000 +rf=298.2572221010000 +units=m +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +no_defs <>
<WGS84RRAFGEO> +title=Reseau de reference des Antilles francaises (1988-1991) +proj=longlat +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
<XGEO> +title=Systeme CIO-BIH +proj=longlat +towgs84=0.0000,0.0000,0.5000,0.0000,0.0000,0.0140,-0.100000 +a=6378137.0000 +rf=298.2572221010000 +units=m +no_defs <>
# W [AMANU63UTM7S]
# W [AMST63UTM43S]
<AMST63UTM43S> +title=Amsterdam 1963 +proj=tmerc +towgs84=109.7530,-528.1330,-362.2440 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
# W [ANAA47UTM6S]
<ANAA92UTM6S> +title=MOP92 (Anaa) Tuamotu - UTM fuseau 6 Sud +proj=tmerc +towgs84=1.5000,3.8400,4.8100 +a=6378137.0000 +rf=298.2572235630000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<APAT86UTM6S> +title=MOP86 (Apataki, Rapa, Hao) Tuamotu - UTM fuseau 6 Sud +proj=tmerc +towgs84=216.8400,118.8100,19.6100 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
@@ -225,27 +229,30 @@
<CAD97UTM38S> +title=Cadastre 1997 - UTM fuseau 38 Sud +proj=tmerc +towgs84=-381.7880,-57.5010,-256.6730 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
# W [CADA80UTM7S]
# W [CLIP57UTM12]
<CROZ63UTM39S> +title=Crozet 1963 +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<CROZ63UTM39S> +title=Crozet 1963 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<CSG67UTM21> +title=Guyane CSG67 UTM fuseau 21 +proj=tmerc +towgs84=-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<CSG67UTM22> +title=Guyane CSG67 UTM fuseau 22 +proj=tmerc +towgs84=-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<EFATE57UT59S> +title=EFATE-IGN 1957 - UTM fuseau 59 Sud +proj=tmerc +towgs84=-127.0000,-769.0000,472.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<ETRS89LAEA> +title=ETRS89 Lambert Azimutal Equal Area +proj=laea +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=52.000000000 +lon_0=10.000000000 +x_0=4321000.000 +y_0=3210000.000 +units=m +no_defs <>
<ETRS89LCC> +title=ETRS89 Lambert Conformal Conic +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=52.000000000 +lon_0=9.999999995 +lat_1=35.000000000 +lat_2=65.000000000 +x_0=4000000.000 +y_0=2800000.000 +units=m +no_defs <>
# W [FAKA50UTM6S]
# W [FANGA64UTM7S]
# W [FANGA651U7S]
# W [FANGA652U7S]
# W [FANGA66UTM7S]
<FANGA84UTM7S> +title=Fangataufa 1984 - UTM fuseau 7 Sud +proj=tmerc +towgs84=150.5700,158.3300,118.3200 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<GEOPORTALANF> +title=Geoportail - Antilles francaises +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=15.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALCRZ> +title=Geoportail - Crozet +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-46.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALFXX> +title=Geoportail - France metropolitaine +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=46.500000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALGUF> +title=Geoportail - Guyane +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=4.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALKER> +title=Geoportail - Kerguelen +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-49.500000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALMYT> +title=Geoportail - Mayotte +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-12.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALNCL> +title=Geoportail - Nouvelle-Caledonie +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-22.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALPYF> +title=Geoportail - Polynesie francaise +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-15.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALREU> +title=Geoportail - Reunion et dependances +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-21.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALSPM> +title=Geoportail - Saint-Pierre et Miquelon +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=47.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALWLF> +title=Geoportail - Wallis et Futuna +proj=eqc +nadgrids=null +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-14.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALANF> +title=Geoportail - Antilles francaises +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=15.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALASP> +title=Geoportail - Amsterdam et Saint-Paul +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-38.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALCRZ> +title=Geoportail - Crozet +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-46.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALFXX> +title=Geoportail - France metropolitaine +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=46.500000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALGUF> +title=Geoportail - Guyane +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=4.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALKER> +title=Geoportail - Kerguelen +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-49.500000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALMYT> +title=Geoportail - Mayotte +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-12.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALNCL> +title=Geoportail - Nouvelle-Caledonie +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-22.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALPYF> +title=Geoportail - Polynesie francaise +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-15.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALREU> +title=Geoportail - Reunion et dependances +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-21.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALSPM> +title=Geoportail - Saint-Pierre et Miquelon +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=47.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<GEOPORTALWLF> +title=Geoportail - Wallis et Futuna +proj=eqc +nadgrids=null +wktext +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=0.000000000 +lat_ts=-14.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
# W [GLOR77UTM38S]
<GUAD48UTM20> +title=Guadeloupe Ste Anne +proj=tmerc +towgs84=-472.2900,-5.6300,-304.1200,0.4362,-0.8374,0.2563,1.898400 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<GUADFM49U20> +title=Guadeloupe Fort Marigot +proj=tmerc +towgs84=136.5960,248.1480,-429.7890 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
@@ -256,21 +263,21 @@
# W [HIVA60UTM7S]
# W [HIVA67UTM7S]
<IGN63UTM7S> +title=IGN 1963 - Hiva Oa, Tahuata, Mohotani - UTM fuseau 7 Sud +proj=tmerc +towgs84=410.7210,55.0490,80.7460,-2.5779,-2.3514,-0.6664,17.331100 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<IGN72LAM> +title=IGN 1972 - Lambert Nouvelle Caledonie +proj=lcc +towgs84=-11.6400,-348.6000,291.6800 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-21.300000000 +lon_0=166.000000000 +lat_1=-20.400000000 +lat_2=-22.200000000 +x_0=400000.000 +y_0=300000.000 +units=m +no_defs <>
<IGN72LAM> +title=IGN 1972 - Lambert Nouvelle Caledonie +proj=lcc +towgs84=-11.6400,-348.6000,291.6800 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-21.499999999 +lon_0=166.000000000 +lat_1=-20.666666667 +lat_2=-22.333333333 +x_0=400000.000 +y_0=300000.000 +units=m +no_defs <>
<IGN72UTM58S> +title=IGN 1972 - UTM fuseau 58 Sud +proj=tmerc +towgs84=-11.6400,-348.6000,291.6800 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<KAUE70UTM6S> +title=MHPF70 (Kauehi) Tuamotu - UTM fuseau 6 Sud +proj=tmerc +towgs84=126.7400,300.1000,-75.4900 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<KERG62UTM42S> +title=Kerguelen 1962 +proj=tmerc +towgs84=145.0000,-187.0000,103.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<LAMB1> +title=Lambert I +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=49.500000000 +lon_0=0.000000000 +k_0=0.99987734 +lat_1=49.500000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB1C> +title=Lambert I Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=49.500000000 +lon_0=0.000000000 +k_0=0.99987734 +lat_1=49.500000000 +x_0=600000.000 +y_0=1200000.000 +units=m +no_defs <>
<LAMB2> +title=Lambert II +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB2C> +title=Lambert II Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=2200000.000 +units=m +no_defs <>
<LAMB3> +title=Lambert III +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB3C> +title=Lambert III Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=3200000.000 +units=m +no_defs <>
<LAMB4> +title=Lambert IV +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=42.165000000 +lon_0=0.000000000 +k_0=0.99994471 +lat_1=42.165000000 +x_0=234.358 +y_0=185861.369 +units=m +no_defs <>
<LAMB4C> +title=Lambert IV Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=42.165000000 +lon_0=0.000000000 +k_0=0.99994471 +lat_1=42.165000000 +x_0=234.358 +y_0=4185861.369 +units=m +no_defs <>
<LAMB93> +title=Lambert 93 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.500000000 +lon_0=3.000000000 +lat_1=44.000000000 +lat_2=49.000000000 +x_0=700000.000 +y_0=6600000.000 +units=m +no_defs <>
<LAMBE> +title=Lambert II etendu +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=2200000.000 +units=m +no_defs <>
<LAMBGC> +title=Lambert grand champ +proj=lcc +nadgrids=ntf_r93.gsb,null +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=47.000000000 +lon_0=0.000000000 +lat_1=45.000000000 +lat_2=49.000000000 +x_0=600000.000 +y_0=600000.000 +units=m +no_defs <>
<KERG62UTM42S> +title=Kerguelen 1962 +proj=tmerc +towgs84=144.8990,-186.7700,100.9230 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<LAMB1> +title=Lambert I +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=49.500000000 +lon_0=0.000000000 +k_0=0.99987734 +lat_1=49.500000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB1C> +title=Lambert I Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=49.500000000 +lon_0=0.000000000 +k_0=0.99987734 +lat_1=49.500000000 +x_0=600000.000 +y_0=1200000.000 +units=m +no_defs <>
<LAMB2> +title=Lambert II +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB2C> +title=Lambert II Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=2200000.000 +units=m +no_defs <>
<LAMB3> +title=Lambert III +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs <>
<LAMB3C> +title=Lambert III Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=3200000.000 +units=m +no_defs <>
<LAMB4> +title=Lambert IV +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=42.165000000 +lon_0=0.000000000 +k_0=0.99994471 +lat_1=42.165000000 +x_0=234.358 +y_0=185861.369 +units=m +no_defs <>
<LAMB4C> +title=Lambert IV Carto +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=42.165000000 +lon_0=0.000000000 +k_0=0.99994471 +lat_1=42.165000000 +x_0=234.358 +y_0=4185861.369 +units=m +no_defs <>
<LAMB93> +title=Lambert 93 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.500000000 +lon_0=3.000000000 +lat_1=44.000000000 +lat_2=49.000000000 +x_0=700000.000 +y_0=6600000.000 +units=m +no_defs <>
<LAMBE> +title=Lambert II etendu +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=46.800000000 +lon_0=0.000000000 +k_0=0.99987742 +lat_1=46.800000000 +x_0=600000.000 +y_0=2200000.000 +units=m +no_defs <>
<LAMBGC> +title=Lambert grand champ +proj=lcc +nadgrids=ntf_r93.gsb,null +wktext +towgs84=-168.0000,-60.0000,320.0000 +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=47.000000000 +lon_0=0.000000000 +lat_1=45.000000000 +lat_2=49.000000000 +x_0=600000.000 +y_0=600000.000 +units=m +no_defs <>
<LUXGAUSSK> +title=Luxembourg 1929 +proj=tmerc +towgs84=-192.9860,13.6730,-39.3090,-0.4099,-2.9332,2.6881,0.430000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=49.833333333 +lon_0=6.166666667 +k_0=1.00000000 +x_0=80000.000 +y_0=100000.000 +units=m +no_defs <>
# W [MAKE50UTM7S]
# W [MANGA51U8S]
@@ -279,7 +286,7 @@
# W [MAUPITIUTM5S]
<MAYO50UTM38S> +title=Mayotte Combani +proj=tmerc +towgs84=-599.9280,-275.5520,-195.6650,-0.0835,-0.4715,0.0602,49.281400 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<MHPF67UTM8S> +title=MHPF67 (Mangareva, Agakauitai, Aukena, Mekiro) Gambiers (Iles) - UTM 8 S +proj=tmerc +towgs84=338.0800,212.5800,-296.1700 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<MILLER> +title=Geoportail - Monde +proj=mill +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lon_0=0.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<MILLER> +title=Geoportail - Monde +proj=mill +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lon_0=0.000000000 +x_0=0.000 +y_0=0.000 +units=m +no_defs <>
<MOOREA87U6S> +title=Moorea 1987 - UTM fuseau 6 Sud +proj=tmerc +towgs84=215.9820,149.5930,176.2290,3.2624,1.6920,1.1571,10.477300 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<MOP90UTM6S> +title=MOP90 (Tetiaroa) Iles de la Societe - UTM fuseau 6 Sud +proj=tmerc +towgs84=217.0370,86.9590,23.9560 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
# W [MURU59UTM7S]
@@ -297,173 +304,184 @@
# W [RANGI59U6S]
# W [RANGI68U6S]
<REUN47GAUSSL> +title=Reunion Gauss Laborde +proj=gstmerc +towgs84=789.5240,-626.4860,-89.9040,0.6006,76.7946,-10.5788,-32.324100 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-21.116666667 +lon_0=55.533333333 +k_0=1.00000000 +x_0=160000.000 +y_0=50000.000 +units=m +no_defs <>
<RGF93CC42> +title=Projection conique conforme Zone 1 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=42.000000000 +lon_0=3.000000000 +lat_1=41.250000000 +lat_2=42.750000000 +x_0=1700000.000 +y_0=1200000.000 +units=m +no_defs <>
<RGF93CC43> +title=Projection conique conforme Zone 2 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=43.000000000 +lon_0=3.000000000 +lat_1=42.250000000 +lat_2=43.750000000 +x_0=1700000.000 +y_0=2200000.000 +units=m +no_defs <>
<RGF93CC44> +title=Projection conique conforme Zone 3 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=44.000000000 +lon_0=3.000000000 +lat_1=43.250000000 +lat_2=44.750000000 +x_0=1700000.000 +y_0=3200000.000 +units=m +no_defs <>
<RGF93CC45> +title=Projection conique conforme Zone 4 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=45.000000000 +lon_0=3.000000000 +lat_1=44.250000000 +lat_2=45.750000000 +x_0=1700000.000 +y_0=4200000.000 +units=m +no_defs <>
<RGF93CC46> +title=Projection conique conforme Zone 5 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.000000000 +lon_0=3.000000000 +lat_1=45.250000000 +lat_2=46.750000000 +x_0=1700000.000 +y_0=5200000.000 +units=m +no_defs <>
<RGF93CC47> +title=Projection conique conforme Zone 6 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=47.000000000 +lon_0=3.000000000 +lat_1=46.250000000 +lat_2=47.750000000 +x_0=1700000.000 +y_0=6200000.000 +units=m +no_defs <>
<RGF93CC48> +title=Projection conique conforme Zone 7 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=48.000000000 +lon_0=3.000000000 +lat_1=47.250000000 +lat_2=48.750000000 +x_0=1700000.000 +y_0=7200000.000 +units=m +no_defs <>
<RGF93CC49> +title=Projection conique conforme Zone 8 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=49.000000000 +lon_0=3.000000000 +lat_1=48.250000000 +lat_2=49.750000000 +x_0=1700000.000 +y_0=8200000.000 +units=m +no_defs <>
<RGF93CC50> +title=Projection conique conforme Zone 9 +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=50.000000000 +lon_0=3.000000000 +lat_1=49.250000000 +lat_2=50.750000000 +x_0=1700000.000 +y_0=9200000.000 +units=m +no_defs <>
<RGM04UTM38S> +title=UTM fuseau 38 Sud (Reseau Geodesique de Mayotte 2004) +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCLAM> +title=Reseau Geodesique de Nouvelle-Caledonie - Lambert Nouvelle Caledonie +proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=-21.300000000 +lon_0=166.000000000 +lat_1=-20.400000000 +lat_2=-22.200000000 +x_0=400000.000 +y_0=300000.000 +units=m +no_defs <>
<RGNCUTM57S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 57 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCUTM58S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 58 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCUTM59S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 59 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM5S> +title=RGPF - UTM fuseau 5 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM6S> +title=RGPF - UTM fuseau 6 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM7S> +title=RGPF - UTM fuseau 7 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGR92UTM40S> +title=RGR92 UTM fuseau 40 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGSPM06U21> +title=Saint-Pierre-et-Miquelon (2006) UTM Fuseau 21 Nord +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<RGF93CC42> +title=Projection conique conforme Zone 1 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=42.000000000 +lon_0=3.000000000 +lat_1=41.250000000 +lat_2=42.750000000 +x_0=1700000.000 +y_0=1200000.000 +units=m +no_defs <>
<RGF93CC43> +title=Projection conique conforme Zone 2 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=43.000000000 +lon_0=3.000000000 +lat_1=42.250000000 +lat_2=43.750000000 +x_0=1700000.000 +y_0=2200000.000 +units=m +no_defs <>
<RGF93CC44> +title=Projection conique conforme Zone 3 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=44.000000000 +lon_0=3.000000000 +lat_1=43.250000000 +lat_2=44.750000000 +x_0=1700000.000 +y_0=3200000.000 +units=m +no_defs <>
<RGF93CC45> +title=Projection conique conforme Zone 4 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=45.000000000 +lon_0=3.000000000 +lat_1=44.250000000 +lat_2=45.750000000 +x_0=1700000.000 +y_0=4200000.000 +units=m +no_defs <>
<RGF93CC46> +title=Projection conique conforme Zone 5 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.000000000 +lon_0=3.000000000 +lat_1=45.250000000 +lat_2=46.750000000 +x_0=1700000.000 +y_0=5200000.000 +units=m +no_defs <>
<RGF93CC47> +title=Projection conique conforme Zone 6 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=47.000000000 +lon_0=3.000000000 +lat_1=46.250000000 +lat_2=47.750000000 +x_0=1700000.000 +y_0=6200000.000 +units=m +no_defs <>
<RGF93CC48> +title=Projection conique conforme Zone 7 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=48.000000000 +lon_0=3.000000000 +lat_1=47.250000000 +lat_2=48.750000000 +x_0=1700000.000 +y_0=7200000.000 +units=m +no_defs <>
<RGF93CC49> +title=Projection conique conforme Zone 8 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=49.000000000 +lon_0=3.000000000 +lat_1=48.250000000 +lat_2=49.750000000 +x_0=1700000.000 +y_0=8200000.000 +units=m +no_defs <>
<RGF93CC50> +title=Projection conique conforme Zone 9 +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=50.000000000 +lon_0=3.000000000 +lat_1=49.250000000 +lat_2=50.750000000 +x_0=1700000.000 +y_0=9200000.000 +units=m +no_defs <>
<RGM04UTM38S> +title=UTM fuseau 38 Sud (Reseau Geodesique de Mayotte 2004) +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCLAM> +title=Reseau Geodesique de Nouvelle-Caledonie - Lambert Nouvelle Caledonie +proj=lcc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=-21.499999999 +lon_0=166.000000000 +lat_1=-20.666666667 +lat_2=-22.333333333 +x_0=400000.000 +y_0=300000.000 +units=m +no_defs <>
<RGNCUTM57S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 57 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCUTM58S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 58 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGNCUTM59S> +title=Reseau Geodesique de Nouvelle-Caledonie - UTM fuseau 59 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM5S> +title=RGPF - UTM fuseau 5 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM6S> +title=RGPF - UTM fuseau 6 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGPFUTM7S> +title=RGPF - UTM fuseau 7 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGR92UTM40S> +title=RGR92 UTM fuseau 40 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<RGSPM06U21> +title=Saint-Pierre-et-Miquelon (2006) UTM Fuseau 21 Nord +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<SAT84UTM5S> +title=SAT84 (Rurutu) Iles Australes - UTM fuseau 5 Sud +proj=tmerc +towgs84=202.1300,174.6000,-15.7400 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<STEREOSX> +title=Stereographique polaire Sud +proj=sterea +towgs84=0.0000,0.0000,0.5000,0.0000,0.0000,0.0140,-0.100000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=-90.000000000 +lon_0=140.000000000 +k=0.96027295 +x_0=300000.000 +y_0=-2299363.482 +units=m +no_defs <>
# W [STPL69UTM43S]
<STPL69UTM43S> +title=Saint-Paul 1969 +proj=tmerc +towgs84=225.5710,-346.6080,-46.5670 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<STPM50UTM21> +title=St Pierre et Miquelon 1950 +proj=tmerc +towgs84=-95.5930,573.7630,173.4420,-0.9602,1.2510,-1.3918,42.626500 +a=6378206.4000 +rf=294.9786982000000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<TAHAAUTM05S> +title=Tahaa 1951 +proj=tmerc +towgs84=72.4380,345.9180,79.4860,-1.6045,-0.8823,-0.5565,1.374600 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<TAHI51UTM06S> +title=Tahiti-Terme Nord UTM fuseau 6 Sud +proj=tmerc +towgs84=162.0000,117.0000,154.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<TAHI79UTM6S> +title=Tahiti 1979 +proj=tmerc +towgs84=221.5250,152.9480,176.7680,2.3847,1.3896,0.8770,11.474100 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
# W [TAKA69UTM6S]
<TANNAUTM59S> +title=Tanna Bloc Sud - UTM fuseau 59 Sud +proj=tmerc +towgs84=-139.0000,-967.0000,436.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<TERA50SPTA> +title=Terre Adelie Stereo polaire Terre Adelie +proj=sterea +towgs84=324.8000,153.6000,172.1000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-67.000000000 +lon_0=140.000000000 +k=1.00000000 +x_0=300000.000 +y_0=200000.000 +units=m +no_defs <>
<TERA50STEREO> +title=Terre Adelie 1950 +proj=sterea +towgs84=324.8000,153.6000,172.1000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-90.000000000 +lon_0=140.000000000 +k=0.96027295 +x_0=300000.000 +y_0=-2299363.482 +units=m +no_defs <>
<TERA50STEREO> +title=Terre Adelie 1950 +proj=stere +towgs84=324.9120,153.2820,172.0260 +a=6378388.0000 +rf=297.0000000000000 +lat_0=-90.000000000 +lon_0=140.000000000 +lat_ts=-67.000000000 +k=0.96027295 +x_0=300000.000 +y_0=-2299363.482 +units=m +no_defs <>
# W [TIKE50UTM6S]
# W [TIKE60UTM6S]
<TUBU69UTM6S> +title=Tubuai - Iles Australes - UTM fuseau 6 Sud +proj=tmerc +towgs84=237.1700,171.6100,-77.8400 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
# W [TURI69UTM7S]
<UTM01SW72> +title=World Geodetic System 1972 UTM fuseau 01 Sud +proj=tmerc +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM01SW84> +title=World Geodetic System 1984 UTM fuseau 01 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM01W84> +title=World Geodetic System 1984 UTM fuseau 01 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM02SW84> +title=World Geodetic System 1984 UTM fuseau 02 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM02W84> +title=World Geodetic System 1984 UTM fuseau 02 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM03SW84> +title=World Geodetic System 1984 UTM fuseau 03 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM03W84> +title=World Geodetic System 1984 UTM fuseau 03 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM04SW84> +title=World Geodetic System 1984 UTM fuseau 04 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM04W84> +title=World Geodetic System 1984 UTM fuseau 04 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM05SW84> +title=World Geodetic System 1984 UTM fuseau 05 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM05W84> +title=World Geodetic System 1984 UTM fuseau 05 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM06SW84> +title=World Geodetic System 1984 UTM fuseau 06 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM06W84> +title=World Geodetic System 1984 UTM fuseau 06 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM07SW84> +title=World Geodetic System 1984 UTM fuseau 07 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM07W84> +title=World Geodetic System 1984 UTM fuseau 07 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM08SW84> +title=World Geodetic System 1984 UTM fuseau 08 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM08W84> +title=World Geodetic System 1984 UTM fuseau 08 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM09SW84> +title=World Geodetic System 1984 UTM fuseau 09 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM09W84> +title=World Geodetic System 1984 UTM fuseau 09 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM10SW84> +title=World Geodetic System 1984 UTM fuseau 10 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM10W84> +title=World Geodetic System 1984 UTM fuseau 10 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM11SW84> +title=World Geodetic System 1984 UTM fuseau 11 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM11W84> +title=World Geodetic System 1984 UTM fuseau 11 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM12SW84> +title=World Geodetic System 1984 UTM fuseau 12 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM12W84> +title=World Geodetic System 1984 UTM fuseau 12 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM13SW84> +title=World Geodetic System 1984 UTM fuseau 13 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM13W84> +title=World Geodetic System 1984 UTM fuseau 13 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM14SW84> +title=World Geodetic System 1984 UTM fuseau 14 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM14W84> +title=World Geodetic System 1984 UTM fuseau 14 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM15SW84> +title=World Geodetic System 1984 UTM fuseau 15 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM15W84> +title=World Geodetic System 1984 UTM fuseau 15 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM16SW84> +title=World Geodetic System 1984 UTM fuseau 16 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM16W84> +title=World Geodetic System 1984 UTM fuseau 16 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM17SW84> +title=World Geodetic System 1984 UTM fuseau 17 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM17W84> +title=World Geodetic System 1984 UTM fuseau 17 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM18SW84> +title=World Geodetic System 1984 UTM fuseau 18 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM18W84> +title=World Geodetic System 1984 UTM fuseau 18 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM19SW84> +title=World Geodetic System 1984 UTM fuseau 19 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM19W84> +title=World Geodetic System 1984 UTM fuseau 19 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM20SW84> +title=World Geodetic System 1984 UTM fuseau 20 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM20W84> +title=World Geodetic System 1984 UTM fuseau 20 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM01SW84> +title=World Geodetic System 1984 UTM fuseau 01 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM01W84> +title=World Geodetic System 1984 UTM fuseau 01 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM02SW84> +title=World Geodetic System 1984 UTM fuseau 02 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM02W84> +title=World Geodetic System 1984 UTM fuseau 02 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM03SW84> +title=World Geodetic System 1984 UTM fuseau 03 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM03W84> +title=World Geodetic System 1984 UTM fuseau 03 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM04SW84> +title=World Geodetic System 1984 UTM fuseau 04 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM04W84> +title=World Geodetic System 1984 UTM fuseau 04 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM05SW84> +title=World Geodetic System 1984 UTM fuseau 05 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM05W84> +title=World Geodetic System 1984 UTM fuseau 05 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM06SW84> +title=World Geodetic System 1984 UTM fuseau 06 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM06W84> +title=World Geodetic System 1984 UTM fuseau 06 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM07SW84> +title=World Geodetic System 1984 UTM fuseau 07 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM07W84> +title=World Geodetic System 1984 UTM fuseau 07 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM08SW84> +title=World Geodetic System 1984 UTM fuseau 08 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM08W84> +title=World Geodetic System 1984 UTM fuseau 08 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM09SW84> +title=World Geodetic System 1984 UTM fuseau 09 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM09W84> +title=World Geodetic System 1984 UTM fuseau 09 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM10SW84> +title=World Geodetic System 1984 UTM fuseau 10 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM10W84> +title=World Geodetic System 1984 UTM fuseau 10 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM11SW84> +title=World Geodetic System 1984 UTM fuseau 11 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM11W84> +title=World Geodetic System 1984 UTM fuseau 11 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM12SW84> +title=World Geodetic System 1984 UTM fuseau 12 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM12W84> +title=World Geodetic System 1984 UTM fuseau 12 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM13SW84> +title=World Geodetic System 1984 UTM fuseau 13 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM13W84> +title=World Geodetic System 1984 UTM fuseau 13 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM14SW84> +title=World Geodetic System 1984 UTM fuseau 14 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM14W84> +title=World Geodetic System 1984 UTM fuseau 14 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM15SW84> +title=World Geodetic System 1984 UTM fuseau 15 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM15W84> +title=World Geodetic System 1984 UTM fuseau 15 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM16SW84> +title=World Geodetic System 1984 UTM fuseau 16 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM16W84> +title=World Geodetic System 1984 UTM fuseau 16 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM17SW84> +title=World Geodetic System 1984 UTM fuseau 17 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM17W84> +title=World Geodetic System 1984 UTM fuseau 17 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM18SW84> +title=World Geodetic System 1984 UTM fuseau 18 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM18W84> +title=World Geodetic System 1984 UTM fuseau 18 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM19SW84> +title=World Geodetic System 1984 UTM fuseau 19 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM19W84> +title=World Geodetic System 1984 UTM fuseau 19 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM20SW84> +title=World Geodetic System 1984 UTM fuseau 20 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM20W84> +title=World Geodetic System 1984 UTM fuseau 20 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM20W84GUAD> +title=World Geodetic System 1984 UTM fuseau 20 Nord-Guadeloupe +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM20W84MART> +title=World Geodetic System 1984 UTM fuseau 20 Nord-Martinique +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM21SW84> +title=World Geodetic System 1984 UTM fuseau 21 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM21W84> +title=World Geodetic System 1984 UTM fuseau 21 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM21SW84> +title=World Geodetic System 1984 UTM fuseau 21 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM21W84> +title=World Geodetic System 1984 UTM fuseau 21 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM22RGFG95> +title=RGFG95 UTM fuseau 22 Nord-Guyane +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM22SW84> +title=World Geodetic System 1984 UTM fuseau 22 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM22W84> +title=World Geodetic System 1984 UTM fuseau 22 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM23SW84> +title=World Geodetic System 1984 UTM fuseau 23 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM23W84> +title=World Geodetic System 1984 UTM fuseau 23 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM24SW84> +title=World Geodetic System 1984 UTM fuseau 24 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM24W84> +title=World Geodetic System 1984 UTM fuseau 24 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM25SW84> +title=World Geodetic System 1984 UTM fuseau 25 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM25W84> +title=World Geodetic System 1984 UTM fuseau 25 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM26SW84> +title=World Geodetic System 1984 UTM fuseau 26 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM26W84> +title=World Geodetic System 1984 UTM fuseau 26 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM27SW84> +title=World Geodetic System 1984 UTM fuseau 27 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM27W84> +title=World Geodetic System 1984 UTM fuseau 27 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM28SW84> +title=World Geodetic System 1984 UTM fuseau 28 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM28W84> +title=World Geodetic System 1984 UTM fuseau 28 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM29SW84> +title=World Geodetic System 1984 UTM fuseau 29 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM29W84> +title=World Geodetic System 1984 UTM fuseau 29 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM22SW84> +title=World Geodetic System 1984 UTM fuseau 22 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM22W84> +title=World Geodetic System 1984 UTM fuseau 22 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM23SW84> +title=World Geodetic System 1984 UTM fuseau 23 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM23W84> +title=World Geodetic System 1984 UTM fuseau 23 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM24SW84> +title=World Geodetic System 1984 UTM fuseau 24 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM24W84> +title=World Geodetic System 1984 UTM fuseau 24 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM25SW84> +title=World Geodetic System 1984 UTM fuseau 25 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM25W84> +title=World Geodetic System 1984 UTM fuseau 25 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM26ETRS89> +title=Europe - de 30d a 24d Ouest +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM26SW84> +title=World Geodetic System 1984 UTM fuseau 26 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM26W84> +title=World Geodetic System 1984 UTM fuseau 26 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM27ETRS89> +title=Europe - de 24d a 18d Ouest +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM27SW84> +title=World Geodetic System 1984 UTM fuseau 27 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM27W84> +title=World Geodetic System 1984 UTM fuseau 27 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM28ETRS89> +title=Europe - de 18d a 12d Ouest +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM28SW84> +title=World Geodetic System 1984 UTM fuseau 28 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM28W84> +title=World Geodetic System 1984 UTM fuseau 28 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM29ETRS89> +title=Europe - de 12d a 6d Ouest +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM29SW84> +title=World Geodetic System 1984 UTM fuseau 29 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM29W84> +title=World Geodetic System 1984 UTM fuseau 29 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30> +title=European Datum 1950 UTM fuseau 30 +proj=tmerc +towgs84=-84.0000,-97.0000,-117.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30ETRS89> +title=Europe - de -6d a 0d Ouest +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30RGF93> +title=RGF93 UTM fuseau 30 +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30SW84> +title=World Geodetic System 1984 UTM fuseau 30 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM30SW84> +title=World Geodetic System 1984 UTM fuseau 30 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM30W72> +title=World Geodetic System 1972 UTM fuseau 30 +proj=tmerc +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30W84> +title=World Geodetic System 1984 UTM fuseau 30 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM30W84> +title=World Geodetic System 1984 UTM fuseau 30 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=-3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31> +title=European Datum 1950 UTM fuseau 31 +proj=tmerc +towgs84=-84.0000,-97.0000,-117.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31ETRS89> +title=Europe - de 0d a 6d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31RGF93> +title=RGF93 UTM fuseau 31 +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31SW84> +title=World Geodetic System 1984 UTM fuseau 31 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM31SW84> +title=World Geodetic System 1984 UTM fuseau 31 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM31W72> +title=World Geodetic System 1972 UTM fuseau 31 +proj=tmerc +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31W84> +title=World Geodetic System 1984 UTM fuseau 31 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM31W84> +title=World Geodetic System 1984 UTM fuseau 31 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=3.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32> +title=European Datum 1950 UTM fuseau 32 +proj=tmerc +towgs84=-84.0000,-97.0000,-117.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32ETRS89> +title=Europe - de 6d a 12d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32RGF93> +title=RGF93 UTM fuseau 32 +proj=tmerc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32SW84> +title=World Geodetic System 1984 UTM fuseau 32 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM32SW84> +title=World Geodetic System 1984 UTM fuseau 32 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM32W72> +title=World Geodetic System 1972 UTM fuseau 32 +proj=tmerc +towgs84=0.0000,12.0000,6.0000 +a=6378135.0000 +rf=298.2600000000000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32W84> +title=World Geodetic System 1984 UTM fuseau 32 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM33SW84> +title=World Geodetic System 1984 UTM fuseau 33 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM33W84> +title=World Geodetic System 1984 UTM fuseau 33 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM34SW84> +title=World Geodetic System 1984 UTM fuseau 34 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM34W84> +title=World Geodetic System 1984 UTM fuseau 34 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM35SW84> +title=World Geodetic System 1984 UTM fuseau 35 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM35W84> +title=World Geodetic System 1984 UTM fuseau 35 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM36SW84> +title=World Geodetic System 1984 UTM fuseau 36 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM36W84> +title=World Geodetic System 1984 UTM fuseau 36 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM37SW84> +title=World Geodetic System 1984 UTM fuseau 37 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM37W84> +title=World Geodetic System 1984 UTM fuseau 37 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM38SW84> +title=World Geodetic System 1984 UTM fuseau 38 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM38W84> +title=World Geodetic System 1984 UTM fuseau 38 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM39SW84> +title=World Geodetic System 1984 UTM fuseau 39 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM39W84> +title=World Geodetic System 1984 UTM fuseau 39 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM40SW84> +title=World Geodetic System 1984 UTM fuseau 40 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM40W84> +title=World Geodetic System 1984 UTM fuseau 40 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM41SW84> +title=World Geodetic System 1984 UTM fuseau 41 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM41W84> +title=World Geodetic System 1984 UTM fuseau 41 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM42SW84> +title=World Geodetic System 1984 UTM fuseau 42 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM42W84> +title=World Geodetic System 1984 UTM fuseau 42 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM43SW84> +title=World Geodetic System 1984 UTM fuseau 43 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM43W84> +title=World Geodetic System 1984 UTM fuseau 43 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM44SW84> +title=World Geodetic System 1984 UTM fuseau 44 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM44W84> +title=World Geodetic System 1984 UTM fuseau 44 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM45SW84> +title=World Geodetic System 1984 UTM fuseau 45 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM45W84> +title=World Geodetic System 1984 UTM fuseau 45 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM46SW84> +title=World Geodetic System 1984 UTM fuseau 46 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM46W84> +title=World Geodetic System 1984 UTM fuseau 46 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM47SW84> +title=World Geodetic System 1984 UTM fuseau 47 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM47W84> +title=World Geodetic System 1984 UTM fuseau 47 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM48SW84> +title=World Geodetic System 1984 UTM fuseau 48 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM48W84> +title=World Geodetic System 1984 UTM fuseau 48 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM49SW84> +title=World Geodetic System 1984 UTM fuseau 49 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM49W84> +title=World Geodetic System 1984 UTM fuseau 49 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM50SW84> +title=World Geodetic System 1984 UTM fuseau 50 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM50W84> +title=World Geodetic System 1984 UTM fuseau 50 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM51SW84> +title=World Geodetic System 1984 UTM fuseau 51 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM51W84> +title=World Geodetic System 1984 UTM fuseau 51 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM52SW84> +title=World Geodetic System 1984 UTM fuseau 52 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM52W84> +title=World Geodetic System 1984 UTM fuseau 52 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM53SW84> +title=World Geodetic System 1984 UTM fuseau 53 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM53W84> +title=World Geodetic System 1984 UTM fuseau 53 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM54SW84> +title=World Geodetic System 1984 UTM fuseau 54 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM54W84> +title=World Geodetic System 1984 UTM fuseau 54 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM55SW84> +title=World Geodetic System 1984 UTM fuseau 55 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM55W84> +title=World Geodetic System 1984 UTM fuseau 55 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM56SW84> +title=World Geodetic System 1984 UTM fuseau 56 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM56W84> +title=World Geodetic System 1984 UTM fuseau 56 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM57SW84> +title=World Geodetic System 1984 UTM fuseau 57 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM57W84> +title=World Geodetic System 1984 UTM fuseau 57 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM58SW84> +title=World Geodetic System 1984 UTM fuseau 58 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM58W84> +title=World Geodetic System 1984 UTM fuseau 58 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM59SW84> +title=World Geodetic System 1984 UTM fuseau 59 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM59W84> +title=World Geodetic System 1984 UTM fuseau 59 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM60SW84> +title=World Geodetic System 1984 UTM fuseau 60 Sud +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM60W84> +title=World Geodetic System 1984 UTM fuseau 60 +proj=tmerc +towgs84=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.000000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM32W84> +title=World Geodetic System 1984 UTM fuseau 32 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=9.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM33ETRS89> +title=Europe - de 12d a 18d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM33SW84> +title=World Geodetic System 1984 UTM fuseau 33 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM33W84> +title=World Geodetic System 1984 UTM fuseau 33 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=15.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM34ETRS89> +title=Europe - de 18d a 24d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM34SW84> +title=World Geodetic System 1984 UTM fuseau 34 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM34W84> +title=World Geodetic System 1984 UTM fuseau 34 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=21.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM35ETRS89> +title=Europe - de 24d a 30d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM35SW84> +title=World Geodetic System 1984 UTM fuseau 35 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM35W84> +title=World Geodetic System 1984 UTM fuseau 35 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=27.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM36ETRS89> +title=Europe - de 30d a 36d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM36SW84> +title=World Geodetic System 1984 UTM fuseau 36 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM36W84> +title=World Geodetic System 1984 UTM fuseau 36 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=33.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM37ETRS89> +title=Europe - de 36d a 42d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM37SW84> +title=World Geodetic System 1984 UTM fuseau 37 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM37W84> +title=World Geodetic System 1984 UTM fuseau 37 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=39.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM38ETRS89> +title=Europe - de 42d a 48d Est +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM38SW84> +title=World Geodetic System 1984 UTM fuseau 38 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM38W84> +title=World Geodetic System 1984 UTM fuseau 38 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=45.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM39SW84> +title=World Geodetic System 1984 UTM fuseau 39 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM39W84> +title=World Geodetic System 1984 UTM fuseau 39 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=51.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM40SW84> +title=World Geodetic System 1984 UTM fuseau 40 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM40W84> +title=World Geodetic System 1984 UTM fuseau 40 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=57.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM41SW84> +title=World Geodetic System 1984 UTM fuseau 41 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM41W84> +title=World Geodetic System 1984 UTM fuseau 41 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=63.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM42SW84> +title=World Geodetic System 1984 UTM fuseau 42 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM42W84> +title=World Geodetic System 1984 UTM fuseau 42 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=69.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM43SW84> +title=World Geodetic System 1984 UTM fuseau 43 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM43W84> +title=World Geodetic System 1984 UTM fuseau 43 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=75.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM44SW84> +title=World Geodetic System 1984 UTM fuseau 44 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM44W84> +title=World Geodetic System 1984 UTM fuseau 44 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=81.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM45SW84> +title=World Geodetic System 1984 UTM fuseau 45 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM45W84> +title=World Geodetic System 1984 UTM fuseau 45 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=87.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM46SW84> +title=World Geodetic System 1984 UTM fuseau 46 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM46W84> +title=World Geodetic System 1984 UTM fuseau 46 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=93.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM47SW84> +title=World Geodetic System 1984 UTM fuseau 47 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM47W84> +title=World Geodetic System 1984 UTM fuseau 47 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=99.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM48SW84> +title=World Geodetic System 1984 UTM fuseau 48 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM48W84> +title=World Geodetic System 1984 UTM fuseau 48 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=105.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM49SW84> +title=World Geodetic System 1984 UTM fuseau 49 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM49W84> +title=World Geodetic System 1984 UTM fuseau 49 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=111.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM50SW84> +title=World Geodetic System 1984 UTM fuseau 50 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM50W84> +title=World Geodetic System 1984 UTM fuseau 50 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=117.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM51SW84> +title=World Geodetic System 1984 UTM fuseau 51 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM51W84> +title=World Geodetic System 1984 UTM fuseau 51 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=123.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM52SW84> +title=World Geodetic System 1984 UTM fuseau 52 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM52W84> +title=World Geodetic System 1984 UTM fuseau 52 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=129.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM53SW84> +title=World Geodetic System 1984 UTM fuseau 53 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM53W84> +title=World Geodetic System 1984 UTM fuseau 53 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=135.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM54SW84> +title=World Geodetic System 1984 UTM fuseau 54 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM54W84> +title=World Geodetic System 1984 UTM fuseau 54 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=141.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM55SW84> +title=World Geodetic System 1984 UTM fuseau 55 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM55W84> +title=World Geodetic System 1984 UTM fuseau 55 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=147.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM56SW84> +title=World Geodetic System 1984 UTM fuseau 56 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM56W84> +title=World Geodetic System 1984 UTM fuseau 56 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=153.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM57SW84> +title=World Geodetic System 1984 UTM fuseau 57 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM57W84> +title=World Geodetic System 1984 UTM fuseau 57 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=159.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM58SW84> +title=World Geodetic System 1984 UTM fuseau 58 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM58W84> +title=World Geodetic System 1984 UTM fuseau 58 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=165.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM59SW84> +title=World Geodetic System 1984 UTM fuseau 59 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM59W84> +title=World Geodetic System 1984 UTM fuseau 59 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=171.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
<UTM60SW84> +title=World Geodetic System 1984 UTM fuseau 60 Sud +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
<UTM60W84> +title=World Geodetic System 1984 UTM fuseau 60 +proj=tmerc +nadgrids=@null +wktext +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=0.000000000 +lon_0=177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=0.000 +units=m +no_defs <>
# W [VAITAPEUTM5S]
# W [WALL76UTM1S]
<WALL78UTM1S> +title=Wallis-Uvea 1978 (MOP78) UTM 1 SUD +proj=tmerc +towgs84=253.0000,-133.0000,-127.0000 +a=6378388.0000 +rf=297.0000000000000 +lat_0=0.000000000 +lon_0=-177.000000000 +k_0=0.99960000 +x_0=500000.000 +y_0=10000000.000 +units=m +no_defs <>
+2 -2
View File
@@ -19,7 +19,7 @@ EXTRA_DIST = GL27 nad.lst nad27 nad83 pj_out27.dist pj_out83.dist td_out.dist \
proj_def.dat test27 test83 world epsg esri tv_out.dist \
testvarious testdatumfile testntv2 ntv2_out.dist \
esri.extra other.extra \
IGNF testIGNF proj_outIGNF.dist \
CH IGNF testIGNF proj_outIGNF.dist \
makefile.vc
process-nad2bin:
@@ -30,7 +30,7 @@ process-nad2bin:
../src/nad2bin$(EXEEXT) $$DEST < $$x ; \
done; \
fi
install-data-local: process-nad2bin
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
@if [ -f conus.lla ] ; then \
+81 -35
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -16,8 +17,9 @@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -41,6 +43,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -48,9 +51,23 @@ am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(pkgdatadir)"
pkgdataDATA_INSTALL = $(INSTALL_DATA)
DATA = $(pkgdata_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
@@ -65,21 +82,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -87,22 +101,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -115,9 +138,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -160,6 +183,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -183,7 +207,7 @@ EXTRA_DIST = GL27 nad.lst nad27 nad83 pj_out27.dist pj_out83.dist td_out.dist \
proj_def.dat test27 test83 world epsg esri tv_out.dist \
testvarious testdatumfile testntv2 ntv2_out.dist \
esri.extra other.extra \
IGNF testIGNF proj_outIGNF.dist \
CH IGNF testIGNF proj_outIGNF.dist \
makefile.vc
all: all-am
@@ -193,14 +217,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu nad/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu nad/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu nad/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu nad/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -218,6 +242,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
@@ -227,20 +252,23 @@ clean-libtool:
install-pkgdataDATA: $(pkgdata_DATA)
@$(NORMAL_INSTALL)
test -z "$(pkgdatadir)" || $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)"
@list='$(pkgdata_DATA)'; for p in $$list; do \
@list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(pkgdataDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgdatadir)/$$f'"; \
$(pkgdataDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgdatadir)/$$f"; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \
done
uninstall-pkgdataDATA:
@$(NORMAL_UNINSTALL)
@list='$(pkgdata_DATA)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(pkgdatadir)/$$f'"; \
rm -f "$(DESTDIR)$(pkgdatadir)/$$f"; \
done
@list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(pkgdatadir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(pkgdatadir)" && rm -f $$files
tags: TAGS
TAGS:
@@ -264,13 +292,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -302,6 +334,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -320,6 +353,8 @@ dvi-am:
html: html-am
html-am:
info: info-am
info-am:
@@ -328,18 +363,28 @@ install-data-am: install-data-local install-pkgdataDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -360,7 +405,7 @@ ps-am:
uninstall-am: uninstall-pkgdataDATA
.MAKE: install-am install-strip
.MAKE: check-am install-am install-strip
.PHONY: all all-am check check-am check-local clean clean-generic \
clean-libtool clean-local distclean distclean-generic \
@@ -426,6 +471,7 @@ check-local: process-nad2bin
clean-local:
$(RM) $(TEST_DB)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+3314 -2481
View File
File diff suppressed because it is too large Load Diff
-4
View File
@@ -946,7 +946,3 @@
<104304> +proj=longlat +a=6378249.2 +b=6356514.999904194 no_defs <>
# GCS Voirol Unifie 1960 Degree
<104305> +proj=longlat +ellps=clrk80 no_defs <>
#
# Chris' funny epsgish code for the google mercator
#
<900913> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <>
BIN
View File
Binary file not shown.
+4
View File
@@ -47,3 +47,7 @@
<42310> +proj=merc +lat_ts=0 +lon_0=0 +k=1.000000 +x_0=0 +y_0=0 +ellps=GRS80 +datum=WGS84 +units=m +no_defs no_defs <>
# NAD83 / LCC Statcan
<42311> +proj=lcc +lat_1=49 +lat_2=77 +lat_0=63.390675 +lon_0=-91.86666700000001 +x_0=6200000 +y_0=3000000 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <>
#
# Funny epsgish code for google mercator - you should really use EPSG:3857
#
<900913> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <>
+14 -12
View File
@@ -1,12 +1,14 @@
+init=./IGNF:NTFG +to +init=./IGNF:RGF93G
3.300866856 43.4477976569 0.0000 3d18'0.915"E 43d26'52.077"N 0.000
+init=./IGNF:LAMBE +to +init=./IGNF:LAMB93
600000.0000 2600545.4523 0.0000 652760.737 7033791.244 0.000
600000.0000 2600545.4523 0.0000 652760.737 7033791.243 0.000
135638.3592 2418760.4094 0.0000 187194.062 6855928.882 0.000
998137.3947 2413822.2844 0.0000 1049052.258 6843776.562 0.000
600000.0000 2200000.0000 0.0000 649398.872 6633524.192 0.000
600000.0000 2200000.0000 0.0000 649398.872 6633524.191 0.000
311552.5340 1906457.4840 0.0000 358799.172 6342652.486 0.000
960488.4138 1910172.8812 0.0000 1007068.686 6340907.237 0.000
600000.0000 1699510.8340 0.0000 645204.279 6133556.746 0.000
1203792.5981 626873.17210 0.0000 1238875.764 5057405.017 0.000
1203792.5981 626873.17210 0.0000 1238875.764 5057405.016 0.000
+init=./IGNF:LAMBE +to +init=./IGNF:GEOPORTALFXX
600000.0000 2600545.4523 0.0000 179040.148 5610495.275 0.000
135638.3592 2418760.4094 0.0000 -303729.363 5410118.356 0.000
@@ -17,14 +19,14 @@
600000.0000 1699510.8340 0.0000 179047.633 4708817.007 0.000
1203792.5981 626873.17210 0.0000 658287.395 3623739.237 0.000
+init=./IGNF:RGF93G +to +init=./IGNF:GEOPORTALFXX
2d20'11.4239243" 50d23'59.7718445" 0.0 179040.151 5610495.281 -0.000
-3d57'49.4051448" 48d35'59.7121716" 0.0 -303729.365 5410118.352 -0.000
7d44'12.1439796" 48d35'59.7832558" 0.0 592842.794 5410120.550 -0.000
2d20'11.4951975" 46d47'59.8029841" 0.0 179041.668 5209746.077 -0.000
-1d15'48.9240599" 44d05'59.8251878" 0.0 -96825.467 4909184.138 -0.000
6d50'12.2276489" 44d06'00.0517019" 0.0 523880.022 4909191.143 -0.000
2d20'11.7754730" 42d18'00.0824436" 0.0 179047.634 4708817.010 -0.000
9d32'12.6680218" 41d24'00.3542556" 0.0 730783.054 4608637.873 -0.000
2d20'11.4239243" 50d23'59.7718445" 0.0 179040.151 5610495.281 0.000
-3d57'49.4051448" 48d35'59.7121716" 0.0 -303729.365 5410118.352 0.000
7d44'12.1439796" 48d35'59.7832558" 0.0 592842.794 5410120.550 0.000
2d20'11.4951975" 46d47'59.8029841" 0.0 179041.668 5209746.077 0.000
-1d15'48.9240599" 44d05'59.8251878" 0.0 -96825.467 4909184.138 0.000
6d50'12.2276489" 44d06'00.0517019" 0.0 523880.022 4909191.143 0.000
2d20'11.7754730" 42d18'00.0824436" 0.0 179047.634 4708817.010 0.000
9d32'12.6680218" 41d24'00.3542556" 0.0 730783.054 4608637.873 0.000
+init=./IGNF:RGF93G +to +init=./IGNF:MILLER
2d20'11.4239243" 50d23'59.7718445" 0.0 260098.730 6140682.441 0.000
-3d57'49.4051448" 48d35'59.7121716" 0.0 -441239.699 5880610.004 0.000
@@ -35,4 +37,4 @@
2d20'11.7754730" 42d18'00.0824436" 0.0 260109.601 5009175.714 0.000
9d32'12.6680218" 41d24'00.3542556" 0.0 1061637.534 4889066.592 0.000
+init=./IGNF:RGR92 +to +init=./IGNF:REUN47
3356123.5400 1303218.3090 5247430.6050 3353421.833 1304074.314 5248935.606
3356123.5400 1303218.3090 5247430.6050 3353421.833 1304074.314 5248935.607
+1
View File
@@ -1,3 +1,4 @@
3d18'0.31206816" 43d26'52.07156484" 0.0 3d18'0.91471" 43d26'52.077" 0.000
600000.0000 2600545.4523 0.0000 652760.737 7033791.245 0.000
135638.3592 2418760.4094 0.0000 187194.062 6855928.882 0.000
998137.3947 2413822.2844 0.0000 1049052.257 6843776.562 0.000
+11
View File
@@ -12,3 +12,14 @@ Test MD used where available
79d58'00.000"W 36d58'00.000"N 0.0 79d57'59.128"W 36d58'0.501"N 0.000
79d58'00.000"W 37d02'00.000"N 0.0 79d57'59.126"W 37d2'0.501"N 0.000
79d58'00.000"W 36d58'00.000"N 0.0 79d57'59.128"W 36d58'0.501"N 0.000
##############################################################
Test that we use grid shift files even if we are right on the
edge or even a wee bit outside (#141).
-5.5 52.0 -5.501106465528 51.999890470284 0.000000000000
-5.5000000000001 52.0000000000001 -5.501106465529 51.999890470284 0.000000000000
-5.4999 51.9999 -5.501006458305 51.999790470257 0.000000000000
-5.5001 52.0 -5.500100000000 52.000000000000 0.000000000000
-5.5 52.0 -5.498893534472 52.000109529716 0.000000000000
-5.5000000000001 52.0000000000001 -5.498893534472 52.000109529717 0.000000000000
-5.4999 51.9999 -5.498793541695 52.000009529743 0.000000000000
-5.5001 52.0 -5.500100000000 52.000000000000 0.000000000000
+6 -7
View File
@@ -16,13 +16,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'proj' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
+6 -7
View File
@@ -17,13 +17,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'proj' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
+12 -7
View File
@@ -8,6 +8,8 @@
# 2009-03-08 : the null grid (nad2bin < null.lla null) MUST
# be around otherwise the LAMBE to LAMB93
# transformations will be wrong and vice-versa
# 2009-10-04 : addition of NTFG to RGF93G test to check if
# the gsb grid is still ok
EXE=$1
usage()
@@ -18,13 +20,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'cs2cs' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
@@ -38,6 +39,10 @@ RES="-f %.3f"
echo "doing tests into file ${OUT}, please wait"
#
rm -f ${OUT}
echo "+init=${INIT_FILE}:NTFG +to +init=${INIT_FILE}:RGF93G" >>${OUT}
$EXE +init=${INIT_FILE}:NTFG +to +init=${INIT_FILE}:RGF93G -E >>${OUT} <<EOF
3.300866856 43.4477976569 0.0000
EOF
echo "+init=${INIT_FILE}:LAMBE +to +init=${INIT_FILE}:LAMB93" >>${OUT}
$EXE +init=${INIT_FILE}:LAMBE +to +init=${INIT_FILE}:LAMB93 -E $RES >>${OUT} <<EOF
600000.0000 2600545.4523 0.0000
+31 -7
View File
@@ -13,13 +13,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'cs2cs' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
@@ -69,6 +68,31 @@ $EXE +proj=latlong +ellps=clrk66 +nadgrids=conus \
79d58'00.000"W 36d58'00.000"N 0.0
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test that we use grid shift files even if we are right on the" >> ${OUT}
echo "edge or even a wee bit outside (#141)." >> ${OUT}
#
# Our test points are (1) right on mesh corner, (2) outside but within
# epsilon (3) inside a bit (4) outside by more than epsilon
#
$EXE +proj=latlong +ellps=WGS84 +nadgrids=ntf_r93.gsb \
+to +proj=latlong +datum=WGS84 \
-E -f "%.12f" >>${OUT} <<EOF
-5.5 52.0
-5.5000000000001 52.0000000000001
-5.4999 51.9999
-5.5001 52.0
EOF
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=latlong +ellps=WGS84 +nadgrids=ntf_r93.gsb \
-E -f "%.12f" >>${OUT} <<EOF
-5.5 52.0
-5.5000000000001 52.0000000000001
-5.4999 51.9999
-5.5001 52.0
EOF
#
##############################################################################
# Done!
# do 'diff' with distribution results
+6 -7
View File
@@ -13,13 +13,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'cs2cs' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
+274 -10
View File
@@ -13,13 +13,12 @@ usage()
}
if test -z "${EXE}"; then
echo "*** ERROR: Missing path to 'cs2cs' program."
usage
else
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
EXE=../src/cs2cs
fi
if test ! -x ${EXE}; then
echo "*** ERROR: Can not find '${EXE}' program!"
exit 1
fi
echo "============================================"
@@ -82,6 +81,22 @@ $EXE +proj=latlong +datum=WGS84 +pm=greenwich \
EOF
#
echo "##############################################################" >> ${OUT}
echo Test support for the lon_wrap switch. >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=latlong +datum=WGS84 +lon_wrap=180 \
-E >>${OUT} <<EOF
1d00'00.000"W 10d00'00.000"N 0.0
0d00'00.000"W 10d00'00.000"N 0.0
0d00'00.000"E 10d00'00.000"N 0.0
1d00'00.000"E 45d00'00.000"N 0.0
179d00'00.000"E 45d00'00.000"N 0.0
181d00'00.000"E 45d00'00.000"N 0.0
350d00'00.000"E 45d00'00.000"N 0.0
370d00'00.000"E 45d00'00.000"N 0.0
EOF
#
echo "##############################################################" >> ${OUT}
echo Test simple prime meridian handling within a projection. >> ${OUT}
#
$EXE +proj=utm +zone=11 +datum=WGS84 +pm=3 \
@@ -95,10 +110,10 @@ echo Test geocentric x/y/z generation. >> ${OUT}
$EXE +proj=latlong +datum=WGS84 \
+to +proj=geocent +datum=WGS84 \
-E >>${OUT} <<EOF
0d00'00.000"W 0d00'00.000"N 0.0
0d00'00.000"W 0d00'00.000"N 10.0
0d00'00.001"W 0d00'00.001"N 0.0
0d00'00.001"W 0d00'00.001"N 10.0
79d00'00.000"W 45d00'00.000"N 0.0
0d00'00.000"W 90d00'00.000"N 0.0
45d00'00.000"W 89d59'59.990"N 0.0
EOF
#
echo "##############################################################" >> ${OUT}
@@ -138,6 +153,15 @@ $EXE +proj=latlong +datum=WGS84 \
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test stere without lat_ts (#147)" >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=stere +lat_0=40 +lon_0=10 +datum=WGS84 \
-E >>${OUT} <<EOF
20 45
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test sts projection (re: ticket 12)" >> ${OUT}
#
$EXE +proj=latlong +ellps=WGS84 \
@@ -151,6 +175,246 @@ $EXE +proj=kav5 +ellps=WGS84 +units=m \
383646.088858 5997047.888175
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test RSO Borneo projection (re: ticket 62)" >> ${OUT}
#
$EXE +proj=latlong +a=6377298.556 +rf=300.8017 \
+to +proj=omerc +a=6377298.556 +rf=300.8017 +lat_0=4 +lonc=115 \
+alpha=53d18\'56.9537 +gamma=53d7\'48.3685 +k_0=0.99984 \
+x_0=590476.87 +y_0=442857.65 \
-E >>${OUT} <<EOF
116d2'11.12630 5d54'19.90183
EOF
echo "##############################################################" >> ${OUT}
echo "Test extended transverse mercator (#97)" >> ${OUT}
#
$EXE +proj=etmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
+to +proj=latlong +datum=WGS84 \
-E >>${OUT} <<EOF
10000 20000
500000 2000000
1000000 2000000
2000000 2000000
4000000 2000000
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test extended transverse mercator inverse (#97)" >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=etmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
-E >>${OUT} <<EOF
0dN 0.000
15d22'16.108"W 17d52'53.478"N 0.000
10d40'55.532"W 17d42'48.526"N 0.000
1d32'21.33"W 17d3'47.233"N 0.000
15d4'42.357"E 14d48'56.372"N 0.000
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test transverse mercator (#97)" >> ${OUT}
#
$EXE +proj=tmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
+to +proj=latlong +datum=WGS84 \
-E >>${OUT} <<EOF
10000 20000
500000 2000000
1000000 2000000
2000000 2000000
4000000 2000000
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test transverse mercator inverse (#97)" >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=tmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
-E >>${OUT} <<EOF
0dN 0.000
15d22'16.108"W 17d52'53.478"N 0.000
10d40'55.532"W 17d42'48.526"N 0.000
1d32'21.33"W 17d3'47.233"N 0.000
15d4'42.357"E 14d48'56.372"N 0.000
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test robinson projection (#113)" >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=robin +datum=WGS84 \
-E >>${OUT} <<EOF
-30 40
-35 45
EOF
echo "##############################################################" >> ${OUT}
echo "Test forward projection on sphere" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 \
+to +proj=healpix +a=1 +lon_0=0 -f '%.'5'f' \
-E >>${OUT} <<EOF
0 41.81031
-90 0
EOF
echo "Test inverse projection on sphere" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 \
+to +proj=healpix +a=1 +lon_0=0 -f '%.'5'f' -I\
-E >>${OUT} <<EOF
0 0.7853981633974483
-1.5707963267948966 0
EOF
echo "Test forward projection on ellipsoid" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
+to +proj=healpix +a=1 +lon_0=0 +ellps=WGS84 -f '%.'5'f' \
-E >>${OUT} <<EOF
0 41.937853904844985
-90 0
EOF
echo "Test inverse projection on ellipsoid" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
+to +proj=healpix +a=1 +lon_0=0 +ellps=WGS84 -f '%.'5'f' -I\
-E >>${OUT} <<EOF
0 0.7853981633974483
-1.5707963267948966 0
EOF
echo "##############################################################" >> ${OUT}
echo "Test forward projection on sphere" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 \
+to +proj=rhealpix +a=1 +lon_0=0 +npole=0 +spole=0 -f '%.'5'f' \
-E >>${OUT} <<EOF
0 41.81031
-90 0
EOF
echo "Test inverse projection on sphere" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 \
+to +proj=rhealpix +a=1 +lon_0=0 +npole=0 +spole=0 -f '%.'5'f' -I\
-E >>${OUT} <<EOF
0 0.7853981633974483
-1.5707963267948966 0
EOF
echo "Test forward projection on ellipsoid" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
+to +proj=rhealpix +a=1 +lon_0=0 +ellps=WGS84 +npole=0 +spole=0 -f '%.'5'f' \
-E >>${OUT} <<EOF
0 41.937853904844985
-90 0
EOF
echo "Test inverse projection on ellipsoid" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
+to +proj=rhealpix +a=1 +lon_0=0 -I +ellps=WGS84 +npole=0 +spole=0 -f '%.'5'f'\
-E >>${OUT} <<EOF
0 0.7853981633974483
-1.5707963267948966 0
EOF
echo "##############################################################" >> ${OUT}
echo "Test geos projection" >> ${OUT}
echo "Test geos on a sphere" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere -E >>${OUT} <<EOF
16d11'8" 58d35'31"
-43d11'47" -22d54'30"
18d25'26" -33d55'31"
47d58'42" 29d22'11"
EOF
echo "Test geos on a ellipsoid" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 -E >>${OUT} <<EOF
16d11'8" 58d35'31"
-43d11'47" -22d54'30"
18d25'26" -33d55'31"
47d58'42" 29d22'11"
EOF
echo "Test inv geos on a sphere" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere -I -E >>${OUT} <<EOF
849736.77 4960015.43
-3780930.93 -2326595.36
1608689.65 -3412115.56
3825202.59 2885980.79
EOF
echo "Test inv geos on a ellipsoid" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 -I -E >>${OUT} <<EOF
852862.53 4945122.70
-3787026.57 -2314765.32
1612331.00 -3397031.37
3832522.65 2872185.29
EOF
echo "Test geos on a sphere with alternate sweep" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere +sweep=y -E >>${OUT} <<EOF
16d11'8" 58d35'31"
-43d11'47" -22d54'30"
18d25'26" -33d55'31"
47d58'42" 29d22'11"
EOF
echo "Test geos on a ellipsoid with alternate sweep" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 +sweep=y -E >>${OUT} <<EOF
16d11'8" 58d35'31"
-43d11'47" -22d54'30"
18d25'26" -33d55'31"
47d58'42" 29d22'11"
EOF
echo "Test inv geos on a sphere with alternate sweep" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere +sweep=y -I -E >>${OUT} <<EOF
841586.28 4961396.21
-3772913.22 -2339604.71
1601377.77 -3415545.15
3812722.89 2902474.62
EOF
echo "Test inv geos on a ellipsoid with alternate sweep" >> ${OUT}
$EXE +proj=latlong +ellps=sphere \
+to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 +sweep=y -I -E >>${OUT} <<EOF
844731.03 4946509.59
-3779077.27 -2327750.87
1605067.15 -3400461.47
3820138.08 2888664.15
EOF
#
echo "##############################################################" >> ${OUT}
echo "Test the natural earth projection" >> ${OUT}
$EXE +proj=latlong +a=1 +lon_0=0 \
+to +proj=natearth +a=6371008.7714 +b=6371008.7714 -f '%.'7'f' \
-E >>${OUT} <<EOF
0.0 0.0 0 0.0 0.0
0.0 22.5 0 0.0 2525419.569383768
0.0 45.0 0 0.0 5052537.389973222
0.0 67.5 0 0.0 7400065.6562573705
0.0 90.0 0 0.0 9062062.394736718
45.0 0.0 0 4356790.016612169 0.0
45.0 22.5 0 4253309.544984069 2525419.569383768
45.0 45.0 0 3924521.5829515466 5052537.389973222
45.0 67.5 0 3354937.47115583 7400065.6562573705
45.0 90.0 0 2397978.2448443635 9062062.394736718
90.0 0.0 0 8713580.033224339 0.0
90.0 22.5 0 8506619.089968137 2525419.569383768
90.0 45.0 0 7849043.165903093 5052537.389973222
90.0 67.5 0 6709874.94231166 7400065.6562573705
90.0 90.0 0 4795956.489688727 9062062.394736718
135.0 0.0 0 1.3070370049836507E7 0.0
135.0 22.5 0 1.2759928634952208E7 2525419.569383768
135.0 45.0 0 1.177356474885464E7 5052537.389973222
135.0 67.5 0 1.0064812413467491E7 7400065.6562573705
135.0 90.0 0 7193934.734533091 9062062.394736718
180.0 0.0 0 1.7427160066448677E7 0.0
180.0 22.5 0 1.7013238179936275E7 2525419.569383768
180.0 45.0 0 1.5698086331806187E7 5052537.389973222
180.0 67.5 0 1.341974988462332E7 7400065.6562573705
180.0 90.0 0 9591912.979377454 9062062.394736718
EOF
echo "##############################################################" >> ${OUT}
echo "Test pconic (#148)" >> ${OUT}
#
$EXE +proj=latlong +datum=WGS84 \
+to +proj=pconic +units=m +lat_1=20n +lat_2=60n +lon_0=60W +datum=WGS84 \
-E >>${OUT} <<EOF
-70.4 -23.65
EOF
$EXE +proj=pconic +units=m +lat_1=20n +lat_2=60n +lon_0=60W +datum=WGS84 \
+to +proj=latlong +datum=WGS84 \
-E >>${OUT} <<EOF
-2240096.40 -6940342.15
EOF
##############################################################################
# Done!
# do 'diff' with distribution results
+150 -3
View File
@@ -18,14 +18,24 @@ Test simple prime meridian handling.
0d00'00.000"W 0d00'00.000"N 0.0 1dW 0dN 0.000
79d00'00.000"W 45d00'00.000"N 0.0 80dW 45dN 0.000
##############################################################
Test support for the lon_wrap switch.
1d00'00.000"W 10d00'00.000"N 0.0 359dE 10dN 0.000
0d00'00.000"W 10d00'00.000"N 0.0 360dE 10dN 0.000
0d00'00.000"E 10d00'00.000"N 0.0 360dE 10dN 0.000
1d00'00.000"E 45d00'00.000"N 0.0 1dE 45dN 0.000
179d00'00.000"E 45d00'00.000"N 0.0 179dE 45dN 0.000
181d00'00.000"E 45d00'00.000"N 0.0 181dE 45dN 0.000
350d00'00.000"E 45d00'00.000"N 0.0 350dE 45dN 0.000
370d00'00.000"E 45d00'00.000"N 0.0 10dE 45dN 0.000
##############################################################
Test simple prime meridian handling within a projection.
500000 3000000 113dW 27d7'20.891"N 0.000
##############################################################
Test geocentric x/y/z generation.
0d00'00.000"W 0d00'00.000"N 0.0 6378137.00 -0.00 0.00
0d00'00.000"W 0d00'00.000"N 10.0 6378147.00 -0.00 0.00
0d00'00.001"W 0d00'00.001"N 0.0 6378137.00 -0.03 0.03
0d00'00.001"W 0d00'00.001"N 10.0 6378147.00 -0.03 0.03
79d00'00.000"W 45d00'00.000"N 0.0 861996.98 -4434590.01 4487348.41
0d00'00.000"W 90d00'00.000"N 0.0 0.00 -0.00 6356752.31
45d00'00.000"W 89d59'59.990"N 0.0 0.22 -0.22 6356752.31
##############################################################
Test geocentric x/y/z consumption.
6378137.00 -0.00 0.00 0dE 0dN 0.000
@@ -36,6 +46,143 @@ Test geocentric x/y/z consumption.
Test stere projection (re: win32 ticket 12)
105 40 5577808.93 1494569.40 0.00
##############################################################
Test stere without lat_ts (#147)
20 45 789468.08 602385.33 0.00
##############################################################
Test sts projection (re: ticket 12)
4.897000 52.371000 383646.09 5997047.89 0.00
383646.088858 5997047.888175 4d53'49.2"E 52d22'15.6"N 0.000
##############################################################
Test RSO Borneo projection (re: ticket 62)
116d2'11.12630 5d54'19.90183 704570.40 653979.68 0.00
##############################################################
Test extended transverse mercator (#97)
10000 20000 20dW 0dN 0.000
500000 2000000 15d22'16.108"W 17d52'53.478"N 0.000
1000000 2000000 10d40'55.532"W 17d42'48.526"N 0.000
2000000 2000000 1d32'21.33"W 17d3'47.233"N 0.000
4000000 2000000 15d4'42.357"E 14d48'56.372"N 0.000
##############################################################
Test extended transverse mercator inverse (#97)
0dN 0.000 2278817.00 20000.00 0.00
15d22'16.108"W 17d52'53.478"N 0.000 499999.99 2000000.01 0.00
10d40'55.532"W 17d42'48.526"N 0.000 999999.99 1999999.99 0.00
1d32'21.33"W 17d3'47.233"N 0.000 2000000.00 1999999.99 0.00
15d4'42.357"E 14d48'56.372"N 0.000 4000000.00 2000000.01 0.00
##############################################################
Test transverse mercator (#97)
10000 20000 20dW 0dN 0.000
500000 2000000 15d22'16.108"W 17d52'53.478"N 0.000
1000000 2000000 10d40'55.532"W 17d42'48.526"N 0.000
2000000 2000000 1d32'21.399"W 17d3'47.244"N 0.000
4000000 2000000 15d4'6.539"E 14d49'7.331"N 0.000
##############################################################
Test transverse mercator inverse (#97)
0dN 0.000 2278812.96 20000.00 0.00
15d22'16.108"W 17d52'53.478"N 0.000 499999.99 2000000.01 0.00
10d40'55.532"W 17d42'48.526"N 0.000 999999.99 1999999.99 0.00
1d32'21.33"W 17d3'47.233"N 0.000 2000000.03 1999999.62 0.00
15d4'42.357"E 14d48'56.372"N 0.000 3999967.33 1999855.31 0.00
##############################################################
Test robinson projection (#113)
-30 40 -2612095.95 4276351.58 0.00
-35 45 -2963455.42 4805073.65 0.00
##############################################################
Test forward projection on sphere
0 41.81031 0.00000 0.78540 0.00000
-90 0 -1.57080 0.00000 0.00000
Test inverse projection on sphere
0 0.7853981633974483 0.00000 41.81031 0.00000
-1.5707963267948966 0 -90.00000 0.00000 0.00000
Test forward projection on ellipsoid
0 41.937853904844985 0.00000 0.78540 0.00000
-90 0 -1.57080 0.00000 0.00000
Test inverse projection on ellipsoid
0 0.7853981633974483 0.00000 41.93785 0.00000
-1.5707963267948966 0 -90.00000 0.00000 0.00000
##############################################################
Test forward projection on sphere
0 41.81031 0.00000 0.78540 0.00000
-90 0 -1.57080 0.00000 0.00000
Test inverse projection on sphere
0 0.7853981633974483 0.00000 41.81031 0.00000
-1.5707963267948966 0 -90.00000 0.00000 0.00000
Test forward projection on ellipsoid
0 41.937853904844985 0.00000 0.78540 0.00000
-90 0 -1.57080 0.00000 0.00000
Test inverse projection on ellipsoid
0 0.7853981633974483 0.00000 41.93785 0.00000
-1.5707963267948966 0 -90.00000 0.00000 0.00000
##############################################################
Test geos projection
Test geos on a sphere
16d11'8" 58d35'31" 849736.77 4960015.43 0.00
-43d11'47" -22d54'30" -3780930.93 -2326595.36 0.00
18d25'26" -33d55'31" 1608689.65 -3412115.56 0.00
47d58'42" 29d22'11" 3825202.59 2885980.79 0.00
Test geos on a ellipsoid
16d11'8" 58d35'31" 852862.53 4945122.70 0.00
-43d11'47" -22d54'30" -3787026.57 -2314765.32 0.00
18d25'26" -33d55'31" 1612331.00 -3397031.37 0.00
47d58'42" 29d22'11" 3832522.65 2872185.29 0.00
Test inv geos on a sphere
849736.77 4960015.43 16d11'8"E 58d35'31"N 0.000
-3780930.93 -2326595.36 43d11'47"W 22d54'30"S 0.000
1608689.65 -3412115.56 18d25'26"E 33d55'31"S 0.000
3825202.59 2885980.79 47d58'42"E 29d22'11"N 0.000
Test inv geos on a ellipsoid
852862.53 4945122.70 16d11'8"E 58d35'31"N 0.000
-3787026.57 -2314765.32 43d11'47"W 22d54'30"S 0.000
1612331.00 -3397031.37 18d25'26"E 33d55'31"S 0.000
3832522.65 2872185.29 47d58'42"E 29d22'11"N 0.000
Test geos on a sphere with alternate sweep
16d11'8" 58d35'31" 841586.28 4961396.21 0.00
-43d11'47" -22d54'30" -3772913.22 -2339604.71 0.00
18d25'26" -33d55'31" 1601377.77 -3415545.15 0.00
47d58'42" 29d22'11" 3812722.89 2902474.62 0.00
Test geos on a ellipsoid with alternate sweep
16d11'8" 58d35'31" 844731.03 4946509.59 0.00
-43d11'47" -22d54'30" -3779077.27 -2327750.87 0.00
18d25'26" -33d55'31" 1605067.15 -3400461.47 0.00
47d58'42" 29d22'11" 3820138.08 2888664.15 0.00
Test inv geos on a sphere with alternate sweep
841586.28 4961396.21 16d11'8"E 58d35'31"N 0.000
-3772913.22 -2339604.71 43d11'47"W 22d54'30"S 0.000
1601377.77 -3415545.15 18d25'26"E 33d55'31"S 0.000
3812722.89 2902474.62 47d58'42"E 29d22'11"N 0.000
Test inv geos on a ellipsoid with alternate sweep
844731.03 4946509.59 16d11'8"E 58d35'31"N 0.000
-3779077.27 -2327750.87 43d11'47"W 22d54'30"S 0.000
1605067.15 -3400461.47 18d25'26"E 33d55'31"S 0.000
3820138.08 2888664.15 47d58'42"E 29d22'11"N 0.000
##############################################################
Test the natural earth projection
0.0 0.0 0 0.0000000 0.0000000 0.0000000 0.0 0.0
0.0 22.5 0 0.0000000 2525419.5693838 0.0000000 0.0 2525419.569383768
0.0 45.0 0 0.0000000 5052537.3899732 0.0000000 0.0 5052537.389973222
0.0 67.5 0 0.0000000 7400065.6562574 0.0000000 0.0 7400065.6562573705
0.0 90.0 0 0.0000000 9062062.3947367 0.0000000 0.0 9062062.394736718
45.0 0.0 0 4356790.0166122 0.0000000 0.0000000 4356790.016612169 0.0
45.0 22.5 0 4253309.5449841 2525419.5693838 0.0000000 4253309.544984069 2525419.569383768
45.0 45.0 0 3924521.5829515 5052537.3899732 0.0000000 3924521.5829515466 5052537.389973222
45.0 67.5 0 3354937.4711558 7400065.6562574 0.0000000 3354937.47115583 7400065.6562573705
45.0 90.0 0 2397978.2448444 9062062.3947367 0.0000000 2397978.2448443635 9062062.394736718
90.0 0.0 0 8713580.0332243 0.0000000 0.0000000 8713580.033224339 0.0
90.0 22.5 0 8506619.0899681 2525419.5693838 0.0000000 8506619.089968137 2525419.569383768
90.0 45.0 0 7849043.1659031 5052537.3899732 0.0000000 7849043.165903093 5052537.389973222
90.0 67.5 0 6709874.9423117 7400065.6562574 0.0000000 6709874.94231166 7400065.6562573705
90.0 90.0 0 4795956.4896887 9062062.3947367 0.0000000 4795956.489688727 9062062.394736718
135.0 0.0 0 13070370.0498365 0.0000000 0.0000000 1.3070370049836507E7 0.0
135.0 22.5 0 12759928.6349522 2525419.5693838 0.0000000 1.2759928634952208E7 2525419.569383768
135.0 45.0 0 11773564.7488546 5052537.3899732 0.0000000 1.177356474885464E7 5052537.389973222
135.0 67.5 0 10064812.4134675 7400065.6562574 0.0000000 1.0064812413467491E7 7400065.6562573705
135.0 90.0 0 7193934.7345331 9062062.3947367 0.0000000 7193934.734533091 9062062.394736718
180.0 0.0 0 17427160.0664487 0.0000000 0.0000000 1.7427160066448677E7 0.0
180.0 22.5 0 17013238.1799363 2525419.5693838 0.0000000 1.7013238179936275E7 2525419.569383768
180.0 45.0 0 15698086.3318062 5052537.3899732 0.0000000 1.5698086331806187E7 5052537.389973222
180.0 67.5 0 13419749.8846233 7400065.6562574 0.0000000 1.341974988462332E7 7400065.6562573705
180.0 90.0 0 9591912.9793775 9062062.3947367 0.0000000 9591912.979377454 9062062.394736718
##############################################################
Test pconic (#148)
-70.4 -23.65 -2240096.40 -6940342.15 0.00
-2240096.40 -6940342.15 70d24'W 23d39'S 0.000
+14 -1
View File
@@ -1,5 +1,11 @@
!IFDEF EXT_NMAKE_OPT
!INCLUDE $(EXT_NMAKE_OPT)
!ENDIF
# Directory tree where PROJ will be installed.
!IFNDEF INSTDIR
INSTDIR=C:\PROJ
!ENDIF
# Set the following to the directory where the PROJ distribution data files
# (ie, the contents of ..\NAD) are to be installed. It is possible to later
@@ -9,11 +15,18 @@ INSTDIR=C:\PROJ
# distribution. Any setting of the PROJ_LIB environment variable takes
# precedence at runtime over the setting of the PROJ_LIB_DIR macro stored in
# the compiled software.
!IFNDEF PROJ_LIB_DIR
PROJ_LIB_DIR=$(INSTDIR)\SHARE
!ENDIF
# Uncomment the first for an optimized build, or the second for debug.
!IFNDEF OPTFLAGS
!IFNDEF DEBUG
OPTFLAGS= /nologo /Ox /Op /MD
#OPTFLAGS= /nologo /Zi /MD /Fdproj.pdb
!ELSE
OPTFLAGS= /nologo /Zi /MD /Fdproj.pdb
!ENDIF
!ENDIF
# Uncomment the first for linking exes against DLL or second for static
EXE_PROJ = proj_i.lib
+11
View File
@@ -0,0 +1,11 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: proj
Description: Cartographic Projections Library.
Requires:
Version: @VERSION@
Libs: -L${libdir} -lproj
Cflags: -I${includedir}
+4 -4
View File
@@ -1,5 +1,5 @@
%define PACKAGE_NAME proj
%define PACKAGE_VERSION 4.6.1
%define PACKAGE_VERSION 4.8.0
%define PACKAGE_URL http://trac.osgeo.org/proj
%define _prefix /usr
@@ -7,7 +7,7 @@ Summary: Cartographic projection software
Name: %PACKAGE_NAME
Version: %PACKAGE_VERSION
Release: 1
Source0: proj-4.6.1.tar.gz
Source0: proj-4.8.0.tar.gz
Copyright: MIT License, Copyright (c) 2000, Frank Warmerdam
Group: Applications/GIS
Vendor: Intevation GmbH <http://intevation.net>
@@ -24,7 +24,7 @@ forward and inverse transformation of cartographic data to or from cartesian
data with a wide range of selectable projection functions.
%prep
%setup -D -n proj-4.6.1
%setup -D -n proj-4.8.0
%configure
%build
@@ -35,7 +35,7 @@ rm -rf $RPM_BUILD_ROOT
%makeinstall
%clean
rm -rf %{_builddir}/proj-4.6.1
rm -rf %{_builddir}/proj-4.8.0
rm -rf $RPM_BUILD_ROOT
%files
+12 -10
View File
@@ -1,33 +1,34 @@
bin_PROGRAMS = proj nad2nad nad2bin geod cs2cs
bin_PROGRAMS = proj nad2bin geod cs2cs
EXTRA_PROGRAMS = multistresstest
INCLUDES = -DPROJ_LIB=\"$(pkgdatadir)\" \
-DMUTEX_@MUTEX_SETTING@ @JNI_INCLUDE@
include_HEADERS = projects.h nad_list.h proj_api.h org_proj4_Projections.h
include_HEADERS = proj_api.h org_proj4_Projections.h org_proj4_PJ.h
EXTRA_DIST = makefile.vc proj.def
proj_SOURCES = proj.c gen_cheb.c p_series.c
cs2cs_SOURCES = cs2cs.c gen_cheb.c p_series.c
nad2nad_SOURCES = nad2nad.c
nad2bin_SOURCES = nad2bin.c
geod_SOURCES = geod.c geod_set.c geod_for.c geod_inv.c geodesic.h
multistresstest_SOURCES = multistresstest.c
proj_LDADD = libproj.la
cs2cs_LDADD = libproj.la
nad2nad_LDADD = libproj.la
nad2bin_LDADD = libproj.la
geod_LDADD = libproj.la
multistresstest_LDADD = libproj.la -lpthread
lib_LTLIBRARIES = libproj.la
libproj_la_LDFLAGS = -no-undefined -version-info 6:6:6
libproj_la_LDFLAGS = -no-undefined -version-info 7:0:7
libproj_la_SOURCES = \
projects.h pj_list.h \
PJ_aeqd.c PJ_gnom.c PJ_laea.c PJ_mod_ster.c \
PJ_nsper.c PJ_nzmg.c PJ_ortho.c PJ_stere.c PJ_sterea.c \
PJ_aea.c PJ_bipc.c PJ_bonne.c PJ_eqdc.c \
PJ_aea.c PJ_bipc.c PJ_bonne.c PJ_eqdc.c PJ_isea.c \
PJ_imw_p.c PJ_krovak.c PJ_lcc.c PJ_poly.c \
PJ_rpoly.c PJ_sconics.c proj_rouss.c \
PJ_cass.c PJ_cc.c PJ_cea.c PJ_eqc.c \
@@ -38,11 +39,11 @@ libproj_la_SOURCES = \
PJ_chamb.c PJ_hammer.c PJ_lagrng.c PJ_larr.c \
PJ_lask.c PJ_nocol.c PJ_ob_tran.c PJ_oea.c \
PJ_tpeqd.c PJ_vandg.c PJ_vandg2.c PJ_vandg4.c \
PJ_wag7.c PJ_lcca.c PJ_geos.c \
PJ_wag7.c PJ_lcca.c PJ_geos.c proj_etmerc.c \
PJ_boggs.c PJ_collg.c PJ_crast.c PJ_denoy.c \
PJ_eck1.c PJ_eck2.c PJ_eck3.c PJ_eck4.c \
PJ_eck5.c PJ_fahey.c PJ_fouc_s.c PJ_gins8.c PJ_gstmerc.c \
PJ_gn_sinu.c PJ_goode.c PJ_hatano.c PJ_loxim.c \
PJ_gn_sinu.c PJ_goode.c PJ_igh.c PJ_hatano.c PJ_loxim.c \
PJ_mbt_fps.c PJ_mbtfpp.c PJ_mbtfpq.c PJ_moll.c \
PJ_nell.c PJ_nell_h.c PJ_putp2.c PJ_putp3.c \
PJ_putp4p.c PJ_putp5.c PJ_putp6.c PJ_robin.c \
@@ -54,13 +55,14 @@ libproj_la_SOURCES = \
pj_factors.c pj_fwd.c pj_init.c pj_inv.c \
pj_list.c pj_malloc.c pj_mlfn.c pj_msfn.c proj_mdist.c \
pj_open_lib.c pj_param.c pj_phi2.c pj_pr_list.c \
pj_qsfn.c pj_strerrno.c pj_tsfn.c pj_units.c \
pj_qsfn.c pj_strerrno.c pj_tsfn.c pj_units.c pj_ctx.c pj_log.c \
pj_zpoly1.c rtodms.c vector1.c pj_release.c pj_gauss.c \
PJ_healpix.c PJ_natearth.c \
\
nad_cvt.c nad_init.c nad_intr.c emess.c emess.h \
pj_apply_gridshift.c pj_datums.c pj_datum_set.c pj_transform.c \
geocent.c geocent.h pj_utils.c pj_gridinfo.c pj_gridlist.c \
jniproj.c pj_mutex.c pj_initcache.c
jniproj.c pj_mutex.c pj_initcache.c pj_apply_vgridshift.c
install-exec-local:
+211 -131
View File
@@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -18,8 +19,9 @@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -34,8 +36,9 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = proj$(EXEEXT) nad2nad$(EXEEXT) nad2bin$(EXEEXT) \
geod$(EXEEXT) cs2cs$(EXEEXT)
bin_PROGRAMS = proj$(EXEEXT) nad2bin$(EXEEXT) geod$(EXEEXT) \
cs2cs$(EXEEXT)
EXTRA_PROGRAMS = multistresstest$(EXEEXT)
subdir = src
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/proj_config.h.in
@@ -46,52 +49,68 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = proj_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
"$(DESTDIR)$(includedir)"
libLTLIBRARIES_INSTALL = $(INSTALL)
LTLIBRARIES = $(lib_LTLIBRARIES)
libproj_la_LIBADD =
am_libproj_la_OBJECTS = PJ_aeqd.lo PJ_gnom.lo PJ_laea.lo \
PJ_mod_ster.lo PJ_nsper.lo PJ_nzmg.lo PJ_ortho.lo PJ_stere.lo \
PJ_sterea.lo PJ_aea.lo PJ_bipc.lo PJ_bonne.lo PJ_eqdc.lo \
PJ_imw_p.lo PJ_krovak.lo PJ_lcc.lo PJ_poly.lo PJ_rpoly.lo \
PJ_sconics.lo proj_rouss.lo PJ_cass.lo PJ_cc.lo PJ_cea.lo \
PJ_eqc.lo PJ_gall.lo PJ_labrd.lo PJ_lsat.lo PJ_merc.lo \
PJ_mill.lo PJ_ocea.lo PJ_omerc.lo PJ_somerc.lo PJ_tcc.lo \
PJ_tcea.lo PJ_tmerc.lo PJ_airy.lo PJ_aitoff.lo PJ_august.lo \
PJ_bacon.lo PJ_chamb.lo PJ_hammer.lo PJ_lagrng.lo PJ_larr.lo \
PJ_lask.lo PJ_nocol.lo PJ_ob_tran.lo PJ_oea.lo PJ_tpeqd.lo \
PJ_vandg.lo PJ_vandg2.lo PJ_vandg4.lo PJ_wag7.lo PJ_lcca.lo \
PJ_geos.lo PJ_boggs.lo PJ_collg.lo PJ_crast.lo PJ_denoy.lo \
PJ_eck1.lo PJ_eck2.lo PJ_eck3.lo PJ_eck4.lo PJ_eck5.lo \
PJ_fahey.lo PJ_fouc_s.lo PJ_gins8.lo PJ_gstmerc.lo \
PJ_gn_sinu.lo PJ_goode.lo PJ_hatano.lo PJ_loxim.lo \
PJ_mbt_fps.lo PJ_mbtfpp.lo PJ_mbtfpq.lo PJ_moll.lo PJ_nell.lo \
PJ_nell_h.lo PJ_putp2.lo PJ_putp3.lo PJ_putp4p.lo PJ_putp5.lo \
PJ_putp6.lo PJ_robin.lo PJ_sts.lo PJ_urm5.lo PJ_urmfps.lo \
PJ_wag2.lo PJ_wag3.lo PJ_wink1.lo PJ_wink2.lo pj_latlong.lo \
pj_geocent.lo aasincos.lo adjlon.lo bch2bps.lo bchgen.lo \
biveval.lo dmstor.lo mk_cheby.lo pj_auth.lo pj_deriv.lo \
pj_ell_set.lo pj_ellps.lo pj_errno.lo pj_factors.lo pj_fwd.lo \
pj_init.lo pj_inv.lo pj_list.lo pj_malloc.lo pj_mlfn.lo \
pj_msfn.lo proj_mdist.lo pj_open_lib.lo pj_param.lo pj_phi2.lo \
pj_pr_list.lo pj_qsfn.lo pj_strerrno.lo pj_tsfn.lo pj_units.lo \
PJ_isea.lo PJ_imw_p.lo PJ_krovak.lo PJ_lcc.lo PJ_poly.lo \
PJ_rpoly.lo PJ_sconics.lo proj_rouss.lo PJ_cass.lo PJ_cc.lo \
PJ_cea.lo PJ_eqc.lo PJ_gall.lo PJ_labrd.lo PJ_lsat.lo \
PJ_merc.lo PJ_mill.lo PJ_ocea.lo PJ_omerc.lo PJ_somerc.lo \
PJ_tcc.lo PJ_tcea.lo PJ_tmerc.lo PJ_airy.lo PJ_aitoff.lo \
PJ_august.lo PJ_bacon.lo PJ_chamb.lo PJ_hammer.lo PJ_lagrng.lo \
PJ_larr.lo PJ_lask.lo PJ_nocol.lo PJ_ob_tran.lo PJ_oea.lo \
PJ_tpeqd.lo PJ_vandg.lo PJ_vandg2.lo PJ_vandg4.lo PJ_wag7.lo \
PJ_lcca.lo PJ_geos.lo proj_etmerc.lo PJ_boggs.lo PJ_collg.lo \
PJ_crast.lo PJ_denoy.lo PJ_eck1.lo PJ_eck2.lo PJ_eck3.lo \
PJ_eck4.lo PJ_eck5.lo PJ_fahey.lo PJ_fouc_s.lo PJ_gins8.lo \
PJ_gstmerc.lo PJ_gn_sinu.lo PJ_goode.lo PJ_igh.lo PJ_hatano.lo \
PJ_loxim.lo PJ_mbt_fps.lo PJ_mbtfpp.lo PJ_mbtfpq.lo PJ_moll.lo \
PJ_nell.lo PJ_nell_h.lo PJ_putp2.lo PJ_putp3.lo PJ_putp4p.lo \
PJ_putp5.lo PJ_putp6.lo PJ_robin.lo PJ_sts.lo PJ_urm5.lo \
PJ_urmfps.lo PJ_wag2.lo PJ_wag3.lo PJ_wink1.lo PJ_wink2.lo \
pj_latlong.lo pj_geocent.lo aasincos.lo adjlon.lo bch2bps.lo \
bchgen.lo biveval.lo dmstor.lo mk_cheby.lo pj_auth.lo \
pj_deriv.lo pj_ell_set.lo pj_ellps.lo pj_errno.lo \
pj_factors.lo pj_fwd.lo pj_init.lo pj_inv.lo pj_list.lo \
pj_malloc.lo pj_mlfn.lo pj_msfn.lo proj_mdist.lo \
pj_open_lib.lo pj_param.lo pj_phi2.lo pj_pr_list.lo pj_qsfn.lo \
pj_strerrno.lo pj_tsfn.lo pj_units.lo pj_ctx.lo pj_log.lo \
pj_zpoly1.lo rtodms.lo vector1.lo pj_release.lo pj_gauss.lo \
nad_cvt.lo nad_init.lo nad_intr.lo emess.lo \
pj_apply_gridshift.lo pj_datums.lo pj_datum_set.lo \
pj_transform.lo geocent.lo pj_utils.lo pj_gridinfo.lo \
pj_gridlist.lo jniproj.lo pj_mutex.lo pj_initcache.lo
PJ_healpix.lo PJ_natearth.lo nad_cvt.lo nad_init.lo \
nad_intr.lo emess.lo pj_apply_gridshift.lo pj_datums.lo \
pj_datum_set.lo pj_transform.lo geocent.lo pj_utils.lo \
pj_gridinfo.lo pj_gridlist.lo jniproj.lo pj_mutex.lo \
pj_initcache.lo pj_apply_vgridshift.lo
libproj_la_OBJECTS = $(am_libproj_la_OBJECTS)
libproj_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(libproj_la_LDFLAGS) $(LDFLAGS) -o $@
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am_cs2cs_OBJECTS = cs2cs.$(OBJEXT) gen_cheb.$(OBJEXT) \
p_series.$(OBJEXT)
@@ -101,18 +120,19 @@ am_geod_OBJECTS = geod.$(OBJEXT) geod_set.$(OBJEXT) geod_for.$(OBJEXT) \
geod_inv.$(OBJEXT)
geod_OBJECTS = $(am_geod_OBJECTS)
geod_DEPENDENCIES = libproj.la
am_multistresstest_OBJECTS = multistresstest.$(OBJEXT)
multistresstest_OBJECTS = $(am_multistresstest_OBJECTS)
multistresstest_DEPENDENCIES = libproj.la
am_nad2bin_OBJECTS = nad2bin.$(OBJEXT)
nad2bin_OBJECTS = $(am_nad2bin_OBJECTS)
nad2bin_DEPENDENCIES = libproj.la
am_nad2nad_OBJECTS = nad2nad.$(OBJEXT)
nad2nad_OBJECTS = $(am_nad2nad_OBJECTS)
nad2nad_DEPENDENCIES = libproj.la
am_proj_OBJECTS = proj.$(OBJEXT) gen_cheb.$(OBJEXT) p_series.$(OBJEXT)
proj_OBJECTS = $(am_proj_OBJECTS)
proj_DEPENDENCIES = libproj.la
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
@@ -123,10 +143,9 @@ LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
SOURCES = $(libproj_la_SOURCES) $(cs2cs_SOURCES) $(geod_SOURCES) \
$(nad2bin_SOURCES) $(nad2nad_SOURCES) $(proj_SOURCES)
$(multistresstest_SOURCES) $(nad2bin_SOURCES) $(proj_SOURCES)
DIST_SOURCES = $(libproj_la_SOURCES) $(cs2cs_SOURCES) $(geod_SOURCES) \
$(nad2bin_SOURCES) $(nad2nad_SOURCES) $(proj_SOURCES)
includeHEADERS_INSTALL = $(INSTALL_HEADER)
$(multistresstest_SOURCES) $(nad2bin_SOURCES) $(proj_SOURCES)
HEADERS = $(include_HEADERS)
ETAGS = etags
CTAGS = ctags
@@ -143,21 +162,18 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -165,22 +181,31 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
@@ -193,9 +218,9 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -238,30 +263,31 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
INCLUDES = -DPROJ_LIB=\"$(pkgdatadir)\" \
-DMUTEX_@MUTEX_SETTING@ @JNI_INCLUDE@
include_HEADERS = projects.h nad_list.h proj_api.h org_proj4_Projections.h
include_HEADERS = proj_api.h org_proj4_Projections.h org_proj4_PJ.h
EXTRA_DIST = makefile.vc proj.def
proj_SOURCES = proj.c gen_cheb.c p_series.c
cs2cs_SOURCES = cs2cs.c gen_cheb.c p_series.c
nad2nad_SOURCES = nad2nad.c
nad2bin_SOURCES = nad2bin.c
geod_SOURCES = geod.c geod_set.c geod_for.c geod_inv.c geodesic.h
multistresstest_SOURCES = multistresstest.c
proj_LDADD = libproj.la
cs2cs_LDADD = libproj.la
nad2nad_LDADD = libproj.la
nad2bin_LDADD = libproj.la
geod_LDADD = libproj.la
multistresstest_LDADD = libproj.la -lpthread
lib_LTLIBRARIES = libproj.la
libproj_la_LDFLAGS = -no-undefined -version-info 6:6:6
libproj_la_LDFLAGS = -no-undefined -version-info 7:0:7
libproj_la_SOURCES = \
projects.h pj_list.h \
PJ_aeqd.c PJ_gnom.c PJ_laea.c PJ_mod_ster.c \
PJ_nsper.c PJ_nzmg.c PJ_ortho.c PJ_stere.c PJ_sterea.c \
PJ_aea.c PJ_bipc.c PJ_bonne.c PJ_eqdc.c \
PJ_aea.c PJ_bipc.c PJ_bonne.c PJ_eqdc.c PJ_isea.c \
PJ_imw_p.c PJ_krovak.c PJ_lcc.c PJ_poly.c \
PJ_rpoly.c PJ_sconics.c proj_rouss.c \
PJ_cass.c PJ_cc.c PJ_cea.c PJ_eqc.c \
@@ -272,11 +298,11 @@ libproj_la_SOURCES = \
PJ_chamb.c PJ_hammer.c PJ_lagrng.c PJ_larr.c \
PJ_lask.c PJ_nocol.c PJ_ob_tran.c PJ_oea.c \
PJ_tpeqd.c PJ_vandg.c PJ_vandg2.c PJ_vandg4.c \
PJ_wag7.c PJ_lcca.c PJ_geos.c \
PJ_wag7.c PJ_lcca.c PJ_geos.c proj_etmerc.c \
PJ_boggs.c PJ_collg.c PJ_crast.c PJ_denoy.c \
PJ_eck1.c PJ_eck2.c PJ_eck3.c PJ_eck4.c \
PJ_eck5.c PJ_fahey.c PJ_fouc_s.c PJ_gins8.c PJ_gstmerc.c \
PJ_gn_sinu.c PJ_goode.c PJ_hatano.c PJ_loxim.c \
PJ_gn_sinu.c PJ_goode.c PJ_igh.c PJ_hatano.c PJ_loxim.c \
PJ_mbt_fps.c PJ_mbtfpp.c PJ_mbtfpq.c PJ_moll.c \
PJ_nell.c PJ_nell_h.c PJ_putp2.c PJ_putp3.c \
PJ_putp4p.c PJ_putp5.c PJ_putp6.c PJ_robin.c \
@@ -288,13 +314,14 @@ libproj_la_SOURCES = \
pj_factors.c pj_fwd.c pj_init.c pj_inv.c \
pj_list.c pj_malloc.c pj_mlfn.c pj_msfn.c proj_mdist.c \
pj_open_lib.c pj_param.c pj_phi2.c pj_pr_list.c \
pj_qsfn.c pj_strerrno.c pj_tsfn.c pj_units.c \
pj_qsfn.c pj_strerrno.c pj_tsfn.c pj_units.c pj_ctx.c pj_log.c \
pj_zpoly1.c rtodms.c vector1.c pj_release.c pj_gauss.c \
PJ_healpix.c PJ_natearth.c \
\
nad_cvt.c nad_init.c nad_intr.c emess.c emess.h \
pj_apply_gridshift.c pj_datums.c pj_datum_set.c pj_transform.c \
geocent.c geocent.h pj_utils.c pj_gridinfo.c pj_gridlist.c \
jniproj.c pj_mutex.c pj_initcache.c
jniproj.c pj_mutex.c pj_initcache.c pj_apply_vgridshift.c
all: proj_config.h
$(MAKE) $(AM_MAKEFLAGS) all-am
@@ -305,14 +332,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Makefile
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -330,6 +357,7 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
proj_config.h: stamp-h1
@if test ! -f $@; then \
@@ -341,7 +369,7 @@ stamp-h1: $(srcdir)/proj_config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status src/proj_config.h
$(srcdir)/proj_config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_srcdir) && $(AUTOHEADER)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
@@ -350,20 +378,24 @@ distclean-hdr:
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
list2=; for p in $$list; do \
if test -f $$p; then \
f=$(am__strip_dir) \
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
list2="$$list2 $$p"; \
else :; fi; \
done
done; \
test -z "$$list2" || { \
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
}
uninstall-libLTLIBRARIES:
@$(NORMAL_UNINSTALL)
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
p=$(am__strip_dir) \
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
for p in $$list; do \
$(am__strip_dir) \
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
done
clean-libLTLIBRARIES:
@@ -379,43 +411,58 @@ libproj.la: $(libproj_la_OBJECTS) $(libproj_la_DEPENDENCIES)
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; for p in $$list; do \
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
if test -f $$p \
|| test -f $$p1 \
; then \
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
else :; fi; \
done
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p || test -f $$p1; \
then echo "$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
@list='$(bin_PROGRAMS)'; for p in $$list; do \
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
rm -f "$(DESTDIR)$(bindir)/$$f"; \
done
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-e 's/$$/$(EXEEXT)/' `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
@list='$(bin_PROGRAMS)'; for p in $$list; do \
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
echo " rm -f $$p $$f"; \
rm -f $$p $$f ; \
done
@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
echo " rm -f" $$list; \
rm -f $$list || exit $$?; \
test -n "$(EXEEXT)" || exit 0; \
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
cs2cs$(EXEEXT): $(cs2cs_OBJECTS) $(cs2cs_DEPENDENCIES)
@rm -f cs2cs$(EXEEXT)
$(LINK) $(cs2cs_OBJECTS) $(cs2cs_LDADD) $(LIBS)
geod$(EXEEXT): $(geod_OBJECTS) $(geod_DEPENDENCIES)
@rm -f geod$(EXEEXT)
$(LINK) $(geod_OBJECTS) $(geod_LDADD) $(LIBS)
multistresstest$(EXEEXT): $(multistresstest_OBJECTS) $(multistresstest_DEPENDENCIES)
@rm -f multistresstest$(EXEEXT)
$(LINK) $(multistresstest_OBJECTS) $(multistresstest_LDADD) $(LIBS)
nad2bin$(EXEEXT): $(nad2bin_OBJECTS) $(nad2bin_DEPENDENCIES)
@rm -f nad2bin$(EXEEXT)
$(LINK) $(nad2bin_OBJECTS) $(nad2bin_LDADD) $(LIBS)
nad2nad$(EXEEXT): $(nad2nad_OBJECTS) $(nad2nad_DEPENDENCIES)
@rm -f nad2nad$(EXEEXT)
$(LINK) $(nad2nad_OBJECTS) $(nad2nad_LDADD) $(LIBS)
proj$(EXEEXT): $(proj_OBJECTS) $(proj_DEPENDENCIES)
@rm -f proj$(EXEEXT)
$(LINK) $(proj_OBJECTS) $(proj_LDADD) $(LIBS)
@@ -460,7 +507,10 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_gstmerc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_hammer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_hatano.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_healpix.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_igh.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_imw_p.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_isea.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_krovak.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_labrd.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_laea.Plo@am__quote@
@@ -478,6 +528,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_mill.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_mod_ster.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_moll.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_natearth.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_nell.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_nell_h.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PJ_nocol.Plo@am__quote@
@@ -531,14 +582,16 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geod_set.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jniproj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mk_cheby.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multistresstest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nad2bin.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nad2nad.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nad_cvt.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nad_init.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nad_intr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/p_series.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_apply_gridshift.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_apply_vgridshift.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_auth.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_ctx.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_datum_set.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_datums.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_deriv.Plo@am__quote@
@@ -556,6 +609,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_inv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_latlong.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_list.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_log.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_malloc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_mlfn.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_msfn.Plo@am__quote@
@@ -573,6 +627,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_utils.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pj_zpoly1.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proj.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proj_etmerc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proj_mdist.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proj_rouss.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rtodms.Plo@am__quote@
@@ -580,21 +635,21 @@ distclean-compile:
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
@@ -607,65 +662,72 @@ clean-libtool:
install-includeHEADERS: $(include_HEADERS)
@$(NORMAL_INSTALL)
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
@list='$(include_HEADERS)'; for p in $$list; do \
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \
$(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
done
uninstall-includeHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(include_HEADERS)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
rm -f "$(DESTDIR)$(includedir)/$$f"; \
done
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(includedir)" && rm -f $$files
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) proj_config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) proj_config.h.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) proj_config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) proj_config.h.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -686,13 +748,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -725,6 +791,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -746,6 +813,8 @@ dvi-am:
html: html-am
html-am:
info: info-am
info-am:
@@ -754,19 +823,29 @@ install-data-am: install-includeHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binPROGRAMS install-exec-local \
install-libLTLIBRARIES
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -790,7 +869,7 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \
uninstall-libLTLIBRARIES
.MAKE: install-am install-strip
.MAKE: all install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
clean-generic clean-libLTLIBRARIES clean-libtool ctags \
@@ -814,6 +893,7 @@ install-exec-local:
(cd $(DESTDIR)$(bindir); ln -s proj$(EXEEXT) invproj$(EXEEXT))
rm -f $(DESTDIR)$(bindir)/invgeod$(EXEEXT)
(cd $(DESTDIR)$(bindir); ln -s geod$(EXEEXT) invgeod$(EXEEXT))
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+4 -4
View File
@@ -153,10 +153,10 @@ setup(PJ *P) {
return P;
}
ENTRY1(aea,en)
P->phi1 = pj_param(P->params, "rlat_1").f;
P->phi2 = pj_param(P->params, "rlat_2").f;
P->phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
P->phi2 = pj_param(P->ctx, P->params, "rlat_2").f;
ENDENTRY(setup(P))
ENTRY1(leac,en)
P->phi2 = pj_param(P->params, "rlat_1").f;
P->phi1 = pj_param(P->params, "bsouth").i ? - HALFPI: HALFPI;
P->phi2 = pj_param(P->ctx, P->params, "rlat_1").f;
P->phi1 = pj_param(P->ctx, P->params, "bsouth").i ? - HALFPI: HALFPI;
ENDENTRY(setup(P))
+9 -9
View File
@@ -87,7 +87,7 @@ FORWARD(e_forward); /* elliptical */
ct = cos(t); st = sin(t);
Az = atan2(sin(lp.lam) * ct, P->cosph0 * st - P->sinph0 * coslam * ct);
cA = cos(Az); sA = sin(Az);
s = aasin( fabs(sA) < TOL ?
s = aasin( P->ctx, fabs(sA) < TOL ?
(P->cosph0 * st - P->sinph0 * coslam * ct) / cA :
sin(lp.lam) * ct / sA );
H = P->He * cA;
@@ -147,7 +147,7 @@ INVERSE(e_guam_inv); /* Guam elliptical */
lp.phi = P->phi0;
for (i = 0; i < 3; ++i) {
t = P->e * sin(lp.phi);
lp.phi = pj_inv_mlfn(P->M1 + xy.y -
lp.phi = pj_inv_mlfn(P->ctx, P->M1 + xy.y -
x2 * tan(lp.phi) * (t = sqrt(1. - t * t)), P->es, P->en);
}
lp.lam = xy.x * t / cos(lp.phi);
@@ -170,8 +170,8 @@ INVERSE(e_inverse); /* elliptical */
D = c / P->N1;
E = D * (1. - D * D * (A * (1. + A) / 6. + B * (1. + 3.*A) * D / 24.));
F = 1. - E * E * (A / 2. + B * E / 6.);
psi = aasin(P->sinph0 * cos(E) + t * sin(E));
lp.lam = aasin(sin(Az) * sin(E) / cos(psi));
psi = aasin(P->ctx, P->sinph0 * cos(E) + t * sin(E));
lp.lam = aasin(P->ctx, sin(Az) * sin(E) / cos(psi));
if ((t = fabs(psi)) < EPS10)
lp.phi = 0.;
else if (fabs(t - HALFPI) < 0.)
@@ -180,7 +180,7 @@ INVERSE(e_inverse); /* elliptical */
lp.phi = atan((1. - P->es * F * P->sinph0 / sin(psi)) * tan(psi) /
P->one_es);
} else { /* Polar */
lp.phi = pj_inv_mlfn(P->mode == N_POLE ? P->Mp - c : P->Mp + c,
lp.phi = pj_inv_mlfn(P->ctx, P->mode == N_POLE ? P->Mp - c : P->Mp + c,
P->es, P->en);
lp.lam = atan2(xy.x, P->mode == N_POLE ? -xy.y : xy.y);
}
@@ -201,11 +201,11 @@ INVERSE(s_inverse); /* spherical */
sinc = sin(c_rh);
cosc = cos(c_rh);
if (P->mode == EQUIT) {
lp.phi = aasin(xy.y * sinc / c_rh);
lp.phi = aasin(P->ctx, xy.y * sinc / c_rh);
xy.x *= sinc;
xy.y = cosc * c_rh;
} else {
lp.phi = aasin(cosc * P->sinph0 + xy.y * sinc * P->cosph0 /
lp.phi = aasin(P->ctx,cosc * P->sinph0 + xy.y * sinc * P->cosph0 /
c_rh);
xy.y = (cosc - P->sinph0 * sin(lp.phi)) * c_rh;
xy.x *= sinc * P->cosph0;
@@ -228,7 +228,7 @@ FREEUP;
}
}
ENTRY1(aeqd, en)
P->phi0 = pj_param(P->params, "rlat_0").f;
P->phi0 = pj_param(P->ctx, P->params, "rlat_0").f;
if (fabs(fabs(P->phi0) - HALFPI) < EPS10) {
P->mode = P->phi0 < 0. ? S_POLE : N_POLE;
P->sinph0 = P->phi0 < 0. ? -1. : 1.;
@@ -246,7 +246,7 @@ ENTRY1(aeqd, en)
P->inv = s_inverse; P->fwd = s_forward;
} else {
if (!(P->en = pj_enfn(P->es))) E_ERROR_0;
if (pj_param(P->params, "bguam").i) {
if (pj_param(P->ctx, P->params, "bguam").i) {
P->M1 = pj_mlfn(P->phi0, P->sinph0, P->cosph0, P->en);
P->inv = e_guam_inv; P->fwd = e_guam_fwd;
} else {
+2 -2
View File
@@ -94,8 +94,8 @@ FREEUP; if (P) pj_dalloc(P); }
ENTRY0(airy)
double beta;
P->no_cut = pj_param(P->params, "bno_cut").i;
beta = 0.5 * (HALFPI - pj_param(P->params, "rlat_b").f);
P->no_cut = pj_param(P->ctx, P->params, "bno_cut").i;
beta = 0.5 * (HALFPI - pj_param(P->ctx, P->params, "rlat_b").f);
if (fabs(beta) < EPS)
P->Cb = -0.5;
else {
+2 -2
View File
@@ -66,9 +66,9 @@ ENTRY0(aitoff)
ENDENTRY(setup(P))
ENTRY0(wintri)
P->mode = 1;
if (pj_param(P->params, "tlat_1").i)
if (pj_param(P->ctx, P->params, "tlat_1").i)
{
if ((P->cosphi1 = cos(pj_param(P->params, "rlat_1").f)) == 0.)
if ((P->cosphi1 = cos(pj_param(P->ctx, P->params, "rlat_1").f)) == 0.)
E_ERROR(-22)
}
else /* 50d28' or acos(2/pi) */
+1 -1
View File
@@ -125,7 +125,7 @@ INVERSE(s_inverse); /* spheroid */
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(bipc)
P->noskew = pj_param(P->params, "bns").i;
P->noskew = pj_param(P->ctx, P->params, "bns").i;
P->inv = s_inverse;
P->fwd = s_forward;
P->es = 0.;
+2 -2
View File
@@ -45,7 +45,7 @@ INVERSE(e_inverse); /* ellipsoid */
double s, rh;
rh = hypot(xy.x, xy.y = P->am1 - xy.y);
lp.phi = pj_inv_mlfn(P->am1 + P->m1 - rh, P->es, P->en);
lp.phi = pj_inv_mlfn(P->ctx, P->am1 + P->m1 - rh, P->es, P->en);
if ((s = fabs(lp.phi)) < HALFPI) {
s = sin(lp.phi);
lp.lam = rh * atan2(xy.x, xy.y) *
@@ -65,7 +65,7 @@ FREEUP;
ENTRY1(bonne, en)
double c;
P->phi1 = pj_param(P->params, "rlat_1").f;
P->phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
if (fabs(P->phi1) < EPS10) E_ERROR(-23);
if (P->es) {
P->en = pj_enfn(P->es);
+1 -1
View File
@@ -40,7 +40,7 @@ FORWARD(s_forward); /* spheroid */
INVERSE(e_inverse); /* ellipsoid */
double ph1;
ph1 = pj_inv_mlfn(P->m0 + xy.y, P->es, P->en);
ph1 = pj_inv_mlfn(P->ctx, P->m0 + xy.y, P->es, P->en);
P->tn = tan(ph1); P->t = P->tn * P->tn;
P->n = sin(ph1);
P->r = 1. / (1. - P->es * P->n * P->n);
+3 -4
View File
@@ -42,10 +42,9 @@ FREEUP;
ENTRY1(cea, apa)
double t;
if (pj_param(P->params, "tlat_ts").i &&
(P->k0 = cos(t = pj_param(P->params, "rlat_ts").f)) < 0.) E_ERROR(-24)
else
t = 0.;
if (pj_param(P->ctx, P->params, "tlat_ts").i &&
(P->k0 = cos(t = pj_param(P->ctx, P->params, "rlat_ts").f)) < 0.)
E_ERROR(-24);
if (P->es) {
t = sin(t);
P->k0 /= sqrt(1. - P->es * t * t);
+12 -12
View File
@@ -17,17 +17,17 @@ PROJ_HEAD(chamb, "Chamberlin Trimetric") "\n\tMisc Sph, no inv."
#define THIRD 0.333333333333333333
#define TOL 1e-9
static VECT /* distance and azimuth from point 1 to point 2 */
vect(double dphi, double c1, double s1, double c2, double s2, double dlam) {
vect(projCtx ctx, double dphi, double c1, double s1, double c2, double s2, double dlam) {
VECT v;
double cdl, dp, dl;
cdl = cos(dlam);
if (fabs(dphi) > 1. || fabs(dlam) > 1.)
v.r = aacos(s1 * s2 + c1 * c2 * cdl);
v.r = aacos(ctx, s1 * s2 + c1 * c2 * cdl);
else { /* more accurate for smaller distances */
dp = sin(.5 * dphi);
dl = sin(.5 * dlam);
v.r = 2. * aasin(sqrt(dp * dp + c1 * c2 * dl * dl));
v.r = 2. * aasin(ctx,sqrt(dp * dp + c1 * c2 * dl * dl));
}
if (fabs(v.r) > TOL)
v.Az = atan2(c2 * sin(dlam), c1 * s2 - s1 * c2 * cdl);
@@ -36,8 +36,8 @@ vect(double dphi, double c1, double s1, double c2, double s2, double dlam) {
return v;
}
static double /* law of cosines */
lc(double b,double c,double a) {
return aacos(.5 * (b * b + c * c - a * a) / (b * c));
lc(projCtx ctx, double b,double c,double a) {
return aacos(ctx, .5 * (b * b + c * c - a * a) / (b * c));
}
FORWARD(s_forward); /* spheroid */
double sinphi, cosphi, a;
@@ -47,7 +47,7 @@ FORWARD(s_forward); /* spheroid */
sinphi = sin(lp.phi);
cosphi = cos(lp.phi);
for (i = 0; i < 3; ++i) { /* dist/azimiths from control */
v[i] = vect(lp.phi - P->c[i].phi, P->c[i].cosphi, P->c[i].sinphi,
v[i] = vect(P->ctx, lp.phi - P->c[i].phi, P->c[i].cosphi, P->c[i].sinphi,
cosphi, sinphi, lp.lam - P->c[i].lam);
if ( ! v[i].r)
break;
@@ -59,7 +59,7 @@ FORWARD(s_forward); /* spheroid */
xy = P->p;
for (i = 0; i < 3; ++i) {
j = i == 2 ? 0 : i + 1;
a = lc(P->c[i].v.r, v[i].r, v[j].r);
a = lc(P->ctx,P->c[i].v.r, v[i].r, v[j].r);
if (v[i].Az < 0.)
a = -a;
if (! i) { /* coord comp unique to each arc */
@@ -87,22 +87,22 @@ ENTRY0(chamb)
for (i = 0; i < 3; ++i) { /* get control point locations */
(void)sprintf(line, "rlat_%d", i+1);
P->c[i].phi = pj_param(P->params, line).f;
P->c[i].phi = pj_param(P->ctx, P->params, line).f;
(void)sprintf(line, "rlon_%d", i+1);
P->c[i].lam = pj_param(P->params, line).f;
P->c[i].lam = pj_param(P->ctx, P->params, line).f;
P->c[i].lam = adjlon(P->c[i].lam - P->lam0);
P->c[i].cosphi = cos(P->c[i].phi);
P->c[i].sinphi = sin(P->c[i].phi);
}
for (i = 0; i < 3; ++i) { /* inter ctl pt. distances and azimuths */
j = i == 2 ? 0 : i + 1;
P->c[i].v = vect(P->c[j].phi - P->c[i].phi, P->c[i].cosphi, P->c[i].sinphi,
P->c[i].v = vect(P->ctx,P->c[j].phi - P->c[i].phi, P->c[i].cosphi, P->c[i].sinphi,
P->c[j].cosphi, P->c[j].sinphi, P->c[j].lam - P->c[i].lam);
if (! P->c[i].v.r) E_ERROR(-25);
/* co-linearity problem ignored for now */
}
P->beta_0 = lc(P->c[0].v.r, P->c[2].v.r, P->c[1].v.r);
P->beta_1 = lc(P->c[0].v.r, P->c[1].v.r, P->c[2].v.r);
P->beta_0 = lc(P->ctx,P->c[0].v.r, P->c[2].v.r, P->c[1].v.r);
P->beta_1 = lc(P->ctx,P->c[0].v.r, P->c[1].v.r, P->c[2].v.r);
P->beta_2 = PI - P->beta_0;
P->p.y = 2. * (P->c[0].p.y = P->c[1].p.y = P->c[2].v.r * sin(P->beta_0));
P->c[2].p.y = 0.;
+2 -2
View File
@@ -35,9 +35,9 @@ FORWARD(s_forward); /* spheroid */
INVERSE(s_inverse); /* spheroid */
double c;
lp.phi = aasin(xy.y / C_y);
lp.phi = aasin(P->ctx,xy.y / C_y);
lp.lam = xy.x / (C_x * (1. + (c = cos(lp.phi))));
lp.phi = aasin((lp.phi + sin(lp.phi) * (c + 2.)) / C_p);
lp.phi = aasin(P->ctx,(lp.phi + sin(lp.phi) * (c + 2.)) / C_p);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
+1 -1
View File
@@ -16,7 +16,7 @@ INVERSE(s_inverse); /* spheroid */
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(eqc)
if ((P->rc = cos(pj_param(P->params, "rlat_ts").f)) <= 0.) E_ERROR(-24);
if ((P->rc = cos(pj_param(P->ctx, P->params, "rlat_ts").f)) <= 0.) E_ERROR(-24);
P->inv = s_inverse;
P->fwd = s_forward;
P->es = 0.;
+3 -3
View File
@@ -28,7 +28,7 @@ INVERSE(e_inverse); /* sphere & ellipsoid */
}
lp.phi = P->c - P->rho;
if (P->ellips)
lp.phi = pj_inv_mlfn(lp.phi, P->es, P->en);
lp.phi = pj_inv_mlfn(P->ctx, lp.phi, P->es, P->en);
lp.lam = atan2(xy.x, xy.y) / P->n;
} else {
lp.lam = 0.;
@@ -51,8 +51,8 @@ ENTRY1(eqdc, en)
double cosphi, sinphi;
int secant;
P->phi1 = pj_param(P->params, "rlat_1").f;
P->phi2 = pj_param(P->params, "rlat_2").f;
P->phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
P->phi2 = pj_param(P->ctx, P->params, "rlat_2").f;
if (fabs(P->phi1 + P->phi2) < EPS10) E_ERROR(-21);
if (!(P->en = pj_enfn(P->es)))
E_ERROR_0;
+2 -2
View File
@@ -28,14 +28,14 @@ INVERSE(s_inverse); /* spheroid */
if (!i)
lp.phi = xy.y < 0. ? -HALFPI : HALFPI;
} else
lp.phi = aasin(xy.y);
lp.phi = aasin(P->ctx,xy.y);
V = cos(lp.phi);
lp.lam = xy.x * (P->n + P->n1 * V) / V;
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(fouc_s)
P->n = pj_param(P->params, "dn").f;
P->n = pj_param(P->ctx, P->params, "dn").f;
if (P->n < 0. || P->n > 1.)
E_ERROR(-99)
P->n1 = 1. - P->n;
+63 -13
View File
@@ -2,6 +2,7 @@
** libproj -- library of cartographic projections
**
** Copyright (c) 2004 Gerald I. Evenden
** Copyright (c) 2012 Martin Raspaud
*/
static const char
LIBPROJ_ID[] = "$Id$";
@@ -35,7 +36,9 @@ LIBPROJ_ID[] = "$Id$";
double radius_p_inv2; \
double radius_g; \
double radius_g_1; \
double C;
double C; \
char * sweep_axis; \
int flip_axis;
#define PJ_LIB__
#include <projects.h>
@@ -54,8 +57,16 @@ FORWARD(s_forward); /* spheroid */
if (((P->radius_g - Vx) * Vx - Vy * Vy - Vz * Vz) < 0.) F_ERROR;
/* Calculation based on view angles from satellite.*/
tmp = P->radius_g - Vx;
xy.x = P->radius_g_1 * atan(Vy / tmp);
xy.y = P->radius_g_1 * atan(Vz / hypot(Vy, tmp));
if(P->flip_axis)
{
xy.x = P->radius_g_1 * atan(Vy / hypot(Vz, tmp));
xy.y = P->radius_g_1 * atan(Vz / tmp);
}
else
{
xy.x = P->radius_g_1 * atan(Vy / tmp);
xy.y = P->radius_g_1 * atan(Vz / hypot(Vy, tmp));
}
return (xy);
}
FORWARD(e_forward); /* ellipsoid */
@@ -74,17 +85,33 @@ FORWARD(e_forward); /* ellipsoid */
F_ERROR;
/* Calculation based on view angles from satellite. */
tmp = P->radius_g - Vx;
xy.x = P->radius_g_1 * atan (Vy / tmp);
xy.y = P->radius_g_1 * atan (Vz / hypot (Vy, tmp));
if(P->flip_axis)
{
xy.x = P->radius_g_1 * atan (Vy / hypot (Vz, tmp));
xy.y = P->radius_g_1 * atan (Vz / tmp);
}
else
{
xy.x = P->radius_g_1 * atan (Vy / tmp);
xy.y = P->radius_g_1 * atan (Vz / hypot (Vy, tmp));
}
return (xy);
}
INVERSE(s_inverse); /* spheroid */
double Vx, Vy, Vz, a, b, c, det, k;
double Vx, Vy, Vz, a, b, det, k;
/* Setting three components of vector from satellite to position.*/
Vx = -1.0;
Vy = tan (xy.x / (P->radius_g - 1.0));
Vz = tan (xy.y / (P->radius_g - 1.0)) * sqrt (1.0 + Vy * Vy);
if(P->flip_axis)
{
Vz = tan (xy.y / (P->radius_g - 1.0));
Vy = tan (xy.x / (P->radius_g - 1.0)) * sqrt (1.0 + Vz * Vz);
}
else
{
Vy = tan (xy.x / (P->radius_g - 1.0));
Vz = tan (xy.y / (P->radius_g - 1.0)) * sqrt (1.0 + Vy * Vy);
}
/* Calculation of terms in cubic equation and determinant.*/
a = Vy * Vy + Vz * Vz + Vx * Vx;
b = 2 * P->radius_g * Vx;
@@ -100,12 +127,20 @@ INVERSE(s_inverse); /* spheroid */
return (lp);
}
INVERSE(e_inverse); /* ellipsoid */
double Vx, Vy, Vz, a, b, c, det, k;
double Vx, Vy, Vz, a, b, det, k;
/* Setting three components of vector from satellite to position.*/
Vx = -1.0;
Vy = tan (xy.x / P->radius_g_1);
Vz = tan (xy.y / P->radius_g_1) * hypot(1.0, Vy);
if(P->flip_axis)
{
Vz = tan (xy.y / P->radius_g_1);
Vy = tan (xy.x / P->radius_g_1) * hypot(1.0, Vz);
}
else
{
Vy = tan (xy.x / P->radius_g_1);
Vz = tan (xy.y / P->radius_g_1) * hypot(1.0, Vy);
}
/* Calculation of terms in cubic equation and determinant.*/
a = Vz / P->radius_p;
a = Vy * Vy + a * a + Vx * Vx;
@@ -124,9 +159,24 @@ INVERSE(e_inverse); /* ellipsoid */
}
FREEUP; if (P) free(P); }
ENTRY0(geos)
if ((P->h = pj_param(P->params, "dh").f) <= 0.) E_ERROR(-30);
if ((P->h = pj_param(P->ctx, P->params, "dh").f) <= 0.) E_ERROR(-30);
if (P->phi0) E_ERROR(-46);
P->radius_g = 1. + (P->radius_g_1 = P->h / P->a);
P->sweep_axis = pj_param(P->ctx, P->params, "ssweep").s;
if (P->sweep_axis == NULL)
P->flip_axis = 0;
else
{
if (P->sweep_axis[1] != '\0' ||
(P->sweep_axis[0] != 'x' &&
P->sweep_axis[0] != 'y'))
E_ERROR(-49);
if (P->sweep_axis[0] == 'y')
P->flip_axis = 1;
else
P->flip_axis = 0;
}
P->radius_g_1 = P->h / P->a;
P->radius_g = 1. + P->radius_g_1;
P->C = P->radius_g * P->radius_g - 1.0;
if (P->es) {
P->radius_p = sqrt (P->one_es);
+7 -9
View File
@@ -21,7 +21,7 @@ FORWARD(e_forward); /* ellipsoid */
INVERSE(e_inverse); /* ellipsoid */
double s;
if ((s = fabs(lp.phi = pj_inv_mlfn(xy.y, P->es, P->en))) < HALFPI) {
if ((s = fabs(lp.phi = pj_inv_mlfn(P->ctx, xy.y, P->es, P->en))) < HALFPI) {
s = sin(lp.phi);
lp.lam = xy.x * sqrt(1. - P->es * s * s) / cos(lp.phi);
} else if ((s - EPS10) < HALFPI)
@@ -32,7 +32,7 @@ INVERSE(e_inverse); /* ellipsoid */
/* General spherical sinusoidals */
FORWARD(s_forward); /* sphere */
if (!P->m)
lp.phi = P->n != 1. ? aasin(P->n * sin(lp.phi)): lp.phi;
lp.phi = P->n != 1. ? aasin(P->ctx,P->n * sin(lp.phi)): lp.phi;
else {
double k, V;
int i;
@@ -52,11 +52,9 @@ FORWARD(s_forward); /* sphere */
return (xy);
}
INVERSE(s_inverse); /* sphere */
double s;
xy.y /= P->C_y;
lp.phi = P->m ? aasin((P->m * xy.y + sin(xy.y)) / P->n) :
( P->n != 1. ? aasin(sin(xy.y) / P->n) : xy.y );
lp.phi = P->m ? aasin(P->ctx,(P->m * xy.y + sin(xy.y)) / P->n) :
( P->n != 1. ? aasin(P->ctx,sin(xy.y) / P->n) : xy.y );
lp.lam = xy.x / (P->C_x * (P->m + cos(xy.y)));
return (lp);
}
@@ -91,9 +89,9 @@ ENTRY1(mbtfps, en)
setup(P);
ENDENTRY(P)
ENTRY1(gn_sinu, en)
if (pj_param(P->params, "tn").i && pj_param(P->params, "tm").i) {
P->n = pj_param(P->params, "dn").f;
P->m = pj_param(P->params, "dm").f;
if (pj_param(P->ctx, P->params, "tn").i && pj_param(P->ctx, P->params, "tm").i) {
P->n = pj_param(P->ctx, P->params, "dn").f;
P->m = pj_param(P->ctx, P->params, "dm").f;
} else
E_ERROR(-99)
setup(P);
+3
View File
@@ -39,6 +39,9 @@ ENTRY2(goode, sinu, moll)
P->es = 0.;
if (!(P->sinu = pj_sinu(0)) || !(P->moll = pj_moll(0)))
E_ERROR_0;
P->sinu->es = 0.;
P->sinu->ctx = P->ctx;
P->moll->ctx = P->ctx;
if (!(P->sinu = pj_sinu(P->sinu)) || !(P->moll = pj_moll(P->moll)))
E_ERROR_0;
P->fwd = s_forward;
+1 -1
View File
@@ -28,7 +28,7 @@ INVERSE(s_inverse); /* spheroid */
sinC= sin((xy.y*P->a - P->YS)/P->n2)/cosh((xy.x*P->a - P->XS)/P->n2);
LC= log(pj_tsfn(-1.0*asin(sinC),0.0,0.0));
lp.lam= L/P->n1;
lp.phi= -1.0*pj_phi2(exp((LC-P->c)/P->n1),P->e);
lp.phi= -1.0*pj_phi2(P->ctx, exp((LC-P->c)/P->n1),P->e);
/*fprintf(stderr,"inv:\nL =%16.13f\nsinC =%16.13f\nLC =%16.13f\nXY(%16.4f,%16.4f)=LP(%16.13f,%16.13f)\n",L,sinC,LC,((xy.x/P->ra)+P->x0)/P->to_meter,((xy.y/P->ra)+P->y0)/P->to_meter,lp.lam+P->lam0,lp.phi);*/
return (lp);
}
+4 -4
View File
@@ -15,12 +15,12 @@ FORWARD(s_forward); /* spheroid */
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(hammer)
if (pj_param(P->params, "tW").i) {
if ((P->w = fabs(pj_param(P->params, "dW").f)) <= 0.) E_ERROR(-27);
if (pj_param(P->ctx, P->params, "tW").i) {
if ((P->w = fabs(pj_param(P->ctx, P->params, "dW").f)) <= 0.) E_ERROR(-27);
} else
P->w = .5;
if (pj_param(P->params, "tM").i) {
if ((P->m = fabs(pj_param(P->params, "dM").f)) <= 0.) E_ERROR(-27);
if (pj_param(P->ctx, P->params, "tM").i) {
if ((P->m = fabs(pj_param(P->ctx, P->params, "dM").f)) <= 0.) E_ERROR(-27);
} else
P->m = 1.;
P->rm = 1. / P->m;
+675
View File
@@ -0,0 +1,675 @@
/******************************************************************************
* $Id: PJ_healpix.c 1504 2011-10-18 14:58:57Z landcare $
*
* Project: PROJ.4
* Purpose: Implementation of the healpix projection.
* Definition: http://code.scenzgrid.org/index.php/p/scenzgrid-py/source/tree/master/docs/scenzgrid.pdf
* Author: Alex Raichev & Michael Speth , spethm@landcareresearch.co.nz
*
******************************************************************************
* Copyright (c) 2001, Thomas Flemming, tf@ttqv.com
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*****************************************************************************/
#define PROJ_PARMS__ \
int npole;\
int spole;
#define PJ_LIB__
# include <projects.h>
PROJ_HEAD(healpix, "HEALPix") "\n\tSph., Ellps.";
PROJ_HEAD(rhealpix, "rHEALPix") "\n\tSph., Ellps.\n\tnpole= spole=";
# include <stdio.h>
# define R1 {{ 0,-1},{ 1, 0}} /** Matrix for anticlockwise rotation by pi/2 **/
# define R2 {{-1, 0},{ 0,-1}} /** Matrix for anticlockwise rotation by pi (R1 X R1) X = dot product **/
# define R3 {{ 0, 1},{-1, 0}} /** Matrix for anticlockwise rotation by 3*pi/2 (R2 X R1) **/
# define IDENT {{1,0},{0,1}}
/**
* 0 - Identity matrix<br>
* 1 - Counter-clockwise rotation by PI/2<br>
* 2 - Counter-clockwise rotation by PI<br>
* 3 - Counter-clockwise rotation by 3*PI/2<br>
* 4 - Counter-clockwise rotation by 3*PI/2<br>
* 5 - Counter-clockwise rotation by PI<br>
* 6 - Counter-clockwise rotation by PI/2<br>
**/
# define ROT { IDENT, R1, R2, R3, R3, R2, R1}
# define RFACTOR 3 /** Used for returning the rotation matrix **/
/** Used for calculating if a point is within the HEALPix projection for sphere. **/
# define EPS 1e-12
typedef struct {
int cn; // the number 0 -> 4 indicating the position of the polar cap.
double x,y; // the coordinates of the pole points (point of most extreme latitude on the polar caps).
enum Region { north, south, equatorial } region;
} CapMap;
typedef struct {
double x,y;
} Point;
double rot[7][2][2] = ROT;
/**
NOTES: Alex Raichev implemented the math in python and this is a port of his work.
The healpix projection is a Lambert cylindrical equal-area projection for
equaltorial latitudes and an interrupted Colignon projection for polar
latitudes.
**/
/**
* Returns the sign of the double.
* @param v the parameter whose sign is returned.
* @return 1 for positive number, -1 for negative, and 0 for zero.
**/
double sign (double v) {
return v > 0 ? 1 : (v < 0 ? -1 : 0);
}
/**
* Scales the number by a factor.
* @param num the number to be scaled.
* @param factor the factor to scale the number by.
* @param isInverse 1 for scaling the number by 1 / factor and 0 for scaling by the factor.
* @return the scaled number.
**/
double scale_number(double num, double factor, int isInverse){
if(isInverse == 1){
return num * 1.0/factor;
}
return num * factor;
}
/**
* Scales all the items of the array by a factor.
* @param xy
**/
void scale_array(XY *array, double k, int inverse){
double c = 0;
if (inverse == 1) {
c = 1.0/k;
}else{
c = k;
}
array->x *= c;
array->y *= c;
}
/**
* Given an angle return its equivalent angle.
* @param x the angle to convert
* @return the equivalent angle such that -PI <= the angle returend <= PI
**/
double standardize_lon(double x){
if(x < -1*PI || x >= PI){
x = x - 2*PI*floor(x/(2*PI));
if(x >= PI){
x = x - 2*PI;
}
}
return x;
}
/**
* Given an angle, return its unit-circle equivalent angle.
* @param x the angel to convert.
* @return the equivalent angle such that -PI/2 <= the angle returned <= PI/2.
**/
double standardize_lat(double x){
if( x < -PI/2.0 || x > PI/2){
x = x-2.0*PI*floor(x/(2.0*PI));
if(x > PI/2.0 && x <= 3.0*PI/2){
x = PI - x;
}else{
x = x - 2*PI;
}
}
return x;
}
/**
* Calculates if the point lies on or within the polygon.
* Very good explination of how this works: http://paulbourke.net/geometry/insidepoly/
* @param nvert the number of vertices in the polygon.
* @param vert the x,y-coordinates of the polygon's vertices
* @param testx the x-coordinate of the test point.
* @param testy the y-coordinate of the test point.
* @return 1 if on or within the bounds of the polygon, and 0 otherwise.
**/
static
int pnpoly(int nvert, double vert[][2], double testx, double testy){
int i,j,c = 0;
int counter = 0;
double xinters;
Point p1,p2;
// check for boundrary cases
for(i = 0; i < nvert; i++){
if(testx == vert[i][0] && testy == vert[i][1]){
return 1;
}
}
// initialize p1
p1.x = vert[0][0];
p1.y = vert[0][1];
for(i = 1; i < nvert; i++){
p2.x = vert[i % nvert][0];
p2.y = vert[i % nvert][1];
if(testy > MIN(p1.y,p2.y)){
if (testy <= MAX(p1.y,p2.y)) {
if (testx <= MAX(p1.x,p2.x)) {
if (p1.y != p2.y) {
xinters = (testy-p1.y)*(p2.x-p1.x)/(p2.y-p1.y)+p1.x;
if (p1.x == p2.x || testx <= xinters){
counter++;
}
}
}
}
}
p1 = p2;
}
if(counter % 2 == 0){
return 0;
}else{
return 1;
}
return c;
}
/**
* Calculates if the coordinates are within the image of projection.
* @param x the x-coordinate to check.
* @param y the y-coordinate to check.
* @param proj 0 for healpix and 1 for rhealpix.
* @param npole the positions of the polar squares, only used for rhealpix.
* @param spole the positions of the polar squares, only used for rhealpix.
* @return 1 if the coordinate is within the projection and 0 otherwise.
**/
int in_image(double x, double y, int proj, int npole, int spole){
if(proj == 0){
double healpixVertsJit[][2] = {
{-1.0*PI-EPS ,PI/4.0},
{-3.0*PI/4.0 ,PI/2.0+EPS},
{-1.0*PI/2.0 ,PI/4.0+EPS},
{-1.0*PI/4.0 ,PI/2.0+EPS},
{0.0 ,PI/4.0+EPS},
{PI/4.0 ,PI/2.0+EPS},
{PI/2.0 ,PI/4.0+EPS},
{3.0*PI/4.0 ,PI/2.0+EPS},
{PI+EPS ,PI/4.0},
{PI+EPS ,-1.0*PI/4.0},
{3.0*PI/4.0 ,-1.0*PI/2.0-EPS},
{PI/2.0 ,-1.0*PI/4.0-EPS},
{PI/4.0 ,-1.0*PI/2.0-EPS},
{0.0 ,-1.0*PI/4.0-EPS},
{-1.0*PI/4.0 ,-1.0*PI/2.0-EPS},
{-1.0*PI/2.0 ,-1.0*PI/4.0-EPS},
{-3.0*PI/4.0 ,-1.0*PI/2.0-EPS},
{-1.0*PI-EPS ,-1.0*PI/4.0}};
return pnpoly((int)sizeof(healpixVertsJit)/sizeof(healpixVertsJit[0]),
healpixVertsJit,x,y);
}else{
// Used for calculating if a point is within the rHEALPix projection for sphere.
double rhealpixVertsJit[][2] = {
{-1.0*PI-EPS ,PI/4.0+EPS},
{-1.0*PI + npole*PI/2.0-EPS ,PI/4.0+EPS},
{-1.0*PI + npole*PI/2.0-EPS ,3*PI/4.0+EPS},
{-1.0*PI + (npole + 1.0)*PI/2.0+EPS ,3*PI/4.0+EPS},
{-1.0*PI + (npole + 1.0)*PI/2.0+EPS ,PI/4.0+EPS},
{PI+EPS ,PI/4.0+EPS},
{PI+EPS ,-1.0*PI/4.0-EPS},
{-1.0*PI + (spole + 1.0)*PI/2.0+EPS ,-1.0*PI/4.0-EPS},
{-1.0*PI + (spole + 1.0)*PI/2.0+EPS ,-3.0*PI/4.0-EPS},
{-1.0*PI + spole*PI/2.0-EPS ,-3.0*PI/4.0-EPS},
{-1.0*PI + spole*PI/2.0-EPS ,-1.0*PI/4.0-EPS},
{-1.0*PI-EPS ,-1.0*PI/4.0-EPS}};
return pnpoly((int)sizeof(rhealpixVertsJit)/sizeof(rhealpixVertsJit[0]),
rhealpixVertsJit,x,y);
}
}
/**
* Returns an authalic latitude of the point given a point of geographic
* latitude phi on an ellipse of eccentricity e.
* pj_authlat is the inverse of the alex's auth_lat.
* @param phi
* @param e
* @param inverse 1 for inverse or 0 otherwise.
* @return the authalic latitude of the point.
**/
double auth_lat(double phi, double e, int inverse){
if(inverse == 0){
double q_numerator = ((1.0 - pow(e,2.0)) * sin(phi));
double q_demonitor = (1.0 - (pow(e*sin(phi),2.0)));
double q_subtractor = - (1.0 - pow(e,2.0)) / (2.0*e) * log((1.0 - e*sin(phi)) / (1.0+e*sin(phi)));
double q = ((1.0 - pow(e,2.0)) * sin(phi)) / (1.0 - (pow(e*sin(phi),2.0))) -
(1.0 - pow(e,2.0)) / (2.0*e) * log((1.0 - e*sin(phi)) / (1.0+e*sin(phi)));
double qp = 1.0 - (1.0-pow(e,2.0)) / (2.0*e)*log((1.0 - e) / (1.0 + e));
double ratio = q/qp;
// Rounding errors
if( fabsl(ratio) > 1){
ratio = sign(ratio);
}
return asin(ratio);
}
return phi + (pow(e,2) / 3.0 + 31*pow(e,4) / 180.0 + 517.0*pow(e,6)/5040.0) * sin(2.0*phi)
+ (23.0*pow(e,4)/360.0 + 251.0*pow(e,6)/3780.0)*sin(4.0*phi)
+ 761.0*pow(e,6)/45360.0 * sin(6.0*phi);
}
/**
* Compute the forward signature functions of the HEALPix
* projection of a sphere with radius `R` and central meridian `lon0`.
**/
XY healpix_sphere(LP lp, PJ *P){
double lam = standardize_lon(lp.lam);
double phi = standardize_lat(lp.phi);
double phi0 = aasin(P->ctx, 2.0/3.0);
XY xy;
// equatorial region
if( fabsl(phi) <= phi0) {
xy.x = lam;
xy.y = 3.0*PI/8.0*sin(phi);
} else {
double lamc;
double sigma = sqrt(3.0 * (1 - fabsl(sin(phi))));
double cn = floor(2 * lam / PI + 2);
if (cn >= 4) {
cn = 3;
}
lamc = -3*PI/4 + (PI/2)*cn;
xy.x = lamc + (lam - lamc) * sigma;
xy.y = sign(phi)*PI/4 * (2 - sigma);
}
xy.x = scale_number(xy.x,P->a,0);
xy.y = scale_number(xy.y,P->a,0);
return xy;
}
/**
* Compute the inverse signature functions of the HEALPix
* projection of a sphere with radius `R` and central meridian `lon0`.
**/
LP healpix_sphere_inv(XY xy, PJ *P){
double x,y,y0;
double cn;
double xc;
double tau;
LP lp;
// Scale down to radius 1 sphere
x = scale_number(xy.x,P->a,1);
y = scale_number(xy.y,P->a,1);
y0 = PI/4.0;
// Equatorial region.
if(fabsl(y) <= y0){
lp.lam = x;
lp.phi = asin(8.0*y/(3.0*PI));
} else if(fabsl(y) < PI/2.0){
cn = floor(2.0 * x/PI + 2.0);
if(cn >= 4){
cn = 3;
}
xc = -3.0 * PI/4.0 + (PI/2.0)*cn;
tau = 2.0 - 4.0*fabsl(y)/PI;
lp.lam = xc + (x - xc)/tau;
lp.phi = sign(y)*asin(1.0 - pow(tau , 2.0)/3.0);
} else {
lp.lam = -1.0*PI - P->lam0;
lp.phi = sign(y)*PI/2.0;
}
return (lp);
}
/**
* Adds one vector to another of length 2.
* @param a the first term.
* @param b the second term.
* @param ret holds the summation of the vectors.
**/
static void vector_add(double a[], double b[],double * ret){
int i;
for(i = 0; i < 2; i++){
ret[i] = a[i] + b[i];
}
}
/**
* Subs tracts one vector from another of length 2.
* @param a the minuend.
* @param b the subtrahend.
* @param ret the difference of the vectors where the difference is the result of a minus b.
**/
static void vector_sub(double a[], double b[], double * ret){
int i;
for(i = 0; i < 2; i++){
ret[i] = a[i] - b[i];
}
}
/**
* Calculates the dot product of the arrays.
* @param a the array that will be used to calculate the dot product.
* Must contain the same number of columns as b's rows. Must be a matrix with equal lengthed rows and columns.
* @param b the array that will be used to calculate the dot product; must contain the same number of rows as a's columns.
* @param length the size of the b array. Note, a's column size must equal b's length.
* @param ret the dot product of a and b.
**/
static void dot_product(double a[2][2], double b[], double * ret){
int i,j;
int length = 2;
for(i = 0; i < length; i++){
ret[i] = 0;
for(j = 0; j < length; j++){
ret[i] += a[i][j]*b[i];
}
}
}
/**
* Returns the polar cap number, pole point coordinates, and region
* for x,y in the HEALPix projection of the sphere of radius R.
* @param x coordinate in the HEALPix or rHEALPix.
* @param y coordinate in the HEALPix or rHEALPix.
* @param npole integer between 0 and 3 indicating the position of the north pole.
* @param spole integer between 0 and 3 indicating teh position of the south pole.
* @param inverse 1 computes the rHEALPix projection and 0 computes forward.
* @return a structure containing the cap poles.
**/
static CapMap get_cap(double x, double y, double R, int npole, int spole, int inverse){
CapMap capmap;
double c;
capmap.x = x;
capmap.y = y;
if(inverse == 0){
if(y > R*PI/4.0){
capmap.region = north;
c = R*PI/2.0;
}else if(y < -1*R*PI/4.0){
capmap.region = south;
c = -1*R*PI/2.0;
}else{
capmap.region = equatorial;
capmap.cn = 0;
return capmap;
}
// polar region
if(x < -1*R*PI/2.0){
capmap.cn = 0;
capmap.x = (-1*R*3.0*PI/4.0);
capmap.y = c;
}else if(x >= -1*R*PI/2.0 && x < 0){
capmap.cn = 1;
capmap.x = -1*R*PI/4.0;
capmap.y = c;
}else if(x >= 0 && x < R*PI/2.0){
capmap.cn = 2;
capmap.x = R*PI/4.0;
capmap.y = c;
}else{
capmap.cn = 3;
capmap.x = R*3.0*PI/4.0;
capmap.y = c;
}
return capmap;
}else{
double c;
double eps;
if(y > R*PI/4.0){
capmap.region = north;
capmap.x = -1*R*3.0*PI/4.0 + npole*R*PI/2.0;
capmap.y = R*PI/2.0;
x = x - npole*R*PI/2.0;
}else if(y < -1*R*PI/4.0){
capmap.region = south;
capmap.x = -1*R*3.0*PI/4.0 + spole*R*PI/2;
capmap.y = -1*R*PI/2.0;
x = x - spole*R*PI/2.0;
}else{
capmap.region = equatorial;
capmap.cn = 0;
return capmap;
}
// Polar Region, find # of HEALPix polar cap number that
// x,y moves to when rHEALPix polar square is disassembled.
eps = R*1e-15; // Kludge. Fuzz to avoid some rounding errors.
if(capmap.region == north){
if(y >= -1*x - R*PI/4.0 - eps && y < x + R*5.0*PI/4.0 - eps){
capmap.cn = 1;
}else if(y > -1*x -1*R*PI/4.0 + eps && y >= x + R*5.0*PI/4.0 - eps){
capmap.cn = 2;
}else if(y <= -1*x -1*R*PI/4.0 + eps && y > x + R*5.0*PI/4.0 + eps){
capmap.cn = 3;
}else{
capmap.cn = 0;
}
}else if(capmap.region == south){
if(y <= x + R*PI/4.0 + eps && y > -1*x - R*5.0*PI/4 + eps){
capmap.cn = 1;
}else if(y < x + R*PI/4.0 - eps && y <= -1*x - R*5.0*PI/4.0 + eps){
capmap.cn = 2;
}else if(y >= x + R*PI/4.0 - eps && y < -1*x - R*5.0*PI/4.0 - eps){
capmap.cn = 3;
}else {
capmap.cn = 0;
}
}
return capmap;
}
}
/**
* Rearrange point x,y in the HEALPix projection by
* combining the polar caps into two polar squares.
* Put the north polar square in position npole and
* the south polar square in position spole.
* @param x coordinate in the HEALPix projection of the sphere.
* @param y coordinate in the HEALPix projection of the sphere.
* @param R - the Sphere's radius.
* @param npole integer between 0 and 3 indicating the position
* of the north polar square.
* @param spole integer between 0 and 3 indicating the position
* of the south polar square.
* @param inverse 1 to uncombine the polar caps and 0 to combine.
**/
static XY combine_caps(double x, double y, double R, int npole, int spole, int inverse){
XY xy;
double v[2];
double a[2];
double vector[2];
double tmpVect[2];
double v_min_c[2];
double ret_dot[2];
double ret_add[2];
CapMap capmap = get_cap(x,y,R,npole,spole,inverse);
if(capmap.region == equatorial){
xy.x = capmap.x;
xy.y = capmap.y;
return xy;
}
v[0] = x;
v[1] = y;
if(inverse == 0){
// compute forward function by rotating, translating, and shifting xy.
int pole = 0;
double (*tmpRot)[2];
double c[2] = {capmap.x,capmap.y};
if(capmap.region == north){
pole = npole;
tmpRot = rot[capmap.cn];
a[0] = R*-3.0*PI/4.0;
a[1] = PI/2.0;
}else {
pole = spole;
tmpRot = rot[capmap.cn+RFACTOR];
a[0] = R*-3.0*PI/4.0;
a[1] = PI/-2.0;
}
tmpVect[0] = R*pole*PI/2.0;
tmpVect[1] = 0;
// translate, rotate, then shift
vector_sub(v,c,v_min_c);
dot_product(tmpRot,v_min_c,ret_dot);
vector_add(a,tmpVect,ret_add);
vector_add(ret_dot, ret_add, vector);
xy.x = vector[0];
xy.y = vector[1];
return xy;
}else{
// compute inverse function.
// get the current position of rHEALPix polar squares
int pole = floor( (capmap.x + R*3.0*PI/4.0) / (R*PI/2.0));
double tmpVect[2] = {R*pole*PI/2.0,0};
double coord[2] = {x,y};
double (*tmpRot)[2];
int cn;
// translate polar square to position 0
vector_sub(coord,tmpVect,v);
// disassemble
if(capmap.region == north){
cn = capmap.cn + RFACTOR;
a[0] = R*-3*PI/4.0;
a[1] = PI/2.0;
}else{
cn = capmap.cn;
a[0] = R*-3*PI/4.0;
a[1] = PI/-2.0;
}
tmpVect[0] = R*capmap.cn*PI/2.0;
tmpVect[1] = 0;
// Math: Rotate Matrix * v-a + a + R*CN*{PI/2,0}
vector_sub(v,a,v_min_c);
dot_product(rot[cn],v_min_c,ret_dot);
vector_add(ret_dot,a,ret_add);
vector_add(ret_add,tmpVect,vector);
xy.x = vector[0];
xy.y = vector[1];
return xy;
}
}
FORWARD(e_healpix_forward); /* ellipsoidal */
//int r1[][2] = R1;
double bet = auth_lat(lp.phi, P->e, 0);
lp.phi = bet;
P->a = P->ra;
return healpix_sphere(lp,P);
}
FORWARD(s_healpix_forward); /* spheroid */
return healpix_sphere(lp, P);
}
INVERSE(e_healpix_inverse); /* ellipsoidal */
double bet, x, y;
P->a = P->ra;
// Scale down to radius 1 sphere before checking x,y
x = scale_number(xy.x,P->a,1);
y = scale_number(xy.y,P->a,1);
// check if the point is in the image
if(in_image(x,y,0,0,0) == 0){
lp.lam = HUGE_VAL;
lp.phi = HUGE_VAL;
pj_ctx_set_errno( P->ctx, -15);
return lp;
}
lp = healpix_sphere_inv(xy, P);
lp.phi = auth_lat(lp.phi,P->e,1);
return (lp);
}
INVERSE(s_healpix_inverse); /* spheroid */
double x = xy.x;
double y = xy.y;
// Scale down to radius 1 sphere before checking x,y
x = scale_number(x,P->a,1);
y = scale_number(y,P->a,1);
// check if the point is in the image
if(in_image(x,y,0,0,0) == 0){
lp.lam = HUGE_VAL;
lp.phi = HUGE_VAL;
pj_ctx_set_errno( P->ctx, -15);
return lp;
}
return healpix_sphere_inv(xy, P);
}
FORWARD(e_rhealpix_forward); /* ellipsoidal */
double bet = auth_lat(lp.phi,P->e,0);
lp.phi = bet;
xy = healpix_sphere(lp,P);
return combine_caps(xy.x, xy.y, P->a, P->npole, P->spole, 0);
}
FORWARD(s_rhealpix_forward); /* spheroid */
// Compute forward function.
xy = healpix_sphere(lp,P);
return combine_caps(xy.x, xy.y, P->a, P->npole, P->spole, 0);
}
INVERSE(e_rhealpix_inverse); /* ellipsoidal */
double x = scale_number(xy.x,P->a,1);
double y = scale_number(xy.y,P->a,1);
// check for out of bounds coordinates
if(in_image(x,y,1,P->npole,P->spole) == 0){
lp.lam = HUGE_VAL;
lp.phi = HUGE_VAL;
pj_ctx_set_errno( P->ctx, -15);
return lp;
}
xy = combine_caps(xy.x,xy.y,P->a,P->npole,P->spole,1);
lp = healpix_sphere_inv(xy, P);
lp.phi = auth_lat(lp.phi,P->e,1);
return lp;
}
INVERSE(s_rhealpix_inverse); /* spheroid */
double x = scale_number(xy.x,P->a,1);
double y = scale_number(xy.y,P->a,1);
// check for out of bounds coordinates
if(in_image(x,y,1,P->npole,P->spole) == 0){
lp.lam = HUGE_VAL;
lp.phi = HUGE_VAL;
pj_ctx_set_errno( P->ctx, -15);
return lp;
}
xy = combine_caps(xy.x,xy.y,P->a,P->npole,P->spole,1);
return healpix_sphere_inv(xy, P);
}
FREEUP;
if (P) {
pj_dalloc(P);
}
}
ENTRY0(healpix)
if(P->es){
P->inv = e_healpix_inverse; P->fwd = e_healpix_forward;
}else{
P->inv = s_healpix_inverse; P->fwd = s_healpix_forward;
}
ENDENTRY(P)
ENTRY0(rhealpix)
P->npole = pj_param(P->ctx, P->params,"inpole").i;
P->spole = pj_param(P->ctx,P->params,"ispole").i;
// check for valid npole and spole inputs
if(P->npole < 0 || P->npole > 3){
E_ERROR(-47);
}
if(P->spole < 0 || P->spole > 3){
E_ERROR(-47);
}
if(P->es){
P->inv = e_rhealpix_inverse; P->fwd = e_rhealpix_forward;
}else{
P->inv = s_rhealpix_inverse; P->fwd = s_rhealpix_forward;
}
ENDENTRY(P)
+190
View File
@@ -0,0 +1,190 @@
#define PROJ_PARMS__ \
struct PJconsts* pj[12]; \
double dy0;
#define PJ_LIB__
#include <projects.h>
PROJ_HEAD(igh, "Interrupted Goode Homolosine") "\n\tPCyl, Sph.";
C_NAMESPACE PJ
*pj_sinu(PJ *), *pj_moll(PJ *);
static const double d4044118 = (40 + 44/60. + 11.8/3600.) * DEG_TO_RAD; // 40d 44' 11.8" [degrees]
static const double d10 = 10 * DEG_TO_RAD;
static const double d20 = 20 * DEG_TO_RAD;
static const double d30 = 30 * DEG_TO_RAD;
static const double d40 = 40 * DEG_TO_RAD;
static const double d50 = 50 * DEG_TO_RAD;
static const double d60 = 60 * DEG_TO_RAD;
static const double d80 = 80 * DEG_TO_RAD;
static const double d90 = 90 * DEG_TO_RAD;
static const double d100 = 100 * DEG_TO_RAD;
static const double d140 = 140 * DEG_TO_RAD;
static const double d160 = 160 * DEG_TO_RAD;
static const double d180 = 180 * DEG_TO_RAD;
static const double EPSLN = 1.e-10; // allow a little 'slack' on zone edge positions
FORWARD(s_forward); /* spheroid */
int z;
if (lp.phi >= d4044118) { // 1|2
z = (lp.lam <= -d40 ? 1: 2);
}
else if (lp.phi >= 0) { // 3|4
z = (lp.lam <= -d40 ? 3: 4);
}
else if (lp.phi >= -d4044118) { // 5|6|7|8
if (lp.lam <= -d100) z = 5; // 5
else if (lp.lam <= -d20) z = 6; // 6
else if (lp.lam <= d80) z = 7; // 7
else z = 8; // 8
}
else { // 9|10|11|12
if (lp.lam <= -d100) z = 9; // 9
else if (lp.lam <= -d20) z = 10; // 10
else if (lp.lam <= d80) z = 11; // 11
else z = 12; // 12
}
lp.lam -= P->pj[z-1]->lam0;
xy = P->pj[z-1]->fwd(lp, P->pj[z-1]);
xy.x += P->pj[z-1]->x0;
xy.y += P->pj[z-1]->y0;
return (xy);
}
INVERSE(s_inverse); /* spheroid */
const double y90 = P->dy0 + sqrt(2); // lt=90 corresponds to y=y0+sqrt(2)
int z = 0;
if (xy.y > y90+EPSLN || xy.y < -y90+EPSLN) // 0
z = 0;
else if (xy.y >= d4044118) // 1|2
z = (xy.x <= -d40? 1: 2);
else if (xy.y >= 0) // 3|4
z = (xy.x <= -d40? 3: 4);
else if (xy.y >= -d4044118) { // 5|6|7|8
if (xy.x <= -d100) z = 5; // 5
else if (xy.x <= -d20) z = 6; // 6
else if (xy.x <= d80) z = 7; // 7
else z = 8; // 8
}
else { // 9|10|11|12
if (xy.x <= -d100) z = 9; // 9
else if (xy.x <= -d20) z = 10; // 10
else if (xy.x <= d80) z = 11; // 11
else z = 12; // 12
}
if (z)
{
int ok = 0;
xy.x -= P->pj[z-1]->x0;
xy.y -= P->pj[z-1]->y0;
lp = P->pj[z-1]->inv(xy, P->pj[z-1]);
lp.lam += P->pj[z-1]->lam0;
switch (z) {
case 1: ok = (lp.lam >= -d180-EPSLN && lp.lam <= -d40+EPSLN) ||
((lp.lam >= -d40-EPSLN && lp.lam <= -d10+EPSLN) &&
(lp.phi >= d60-EPSLN && lp.phi <= d90+EPSLN)); break;
case 2: ok = (lp.lam >= -d40-EPSLN && lp.lam <= d180+EPSLN) ||
((lp.lam >= -d180-EPSLN && lp.lam <= -d160+EPSLN) &&
(lp.phi >= d50-EPSLN && lp.phi <= d90+EPSLN)) ||
((lp.lam >= -d50-EPSLN && lp.lam <= -d40+EPSLN) &&
(lp.phi >= d60-EPSLN && lp.phi <= d90+EPSLN)); break;
case 3: ok = (lp.lam >= -d180-EPSLN && lp.lam <= -d40+EPSLN); break;
case 4: ok = (lp.lam >= -d40-EPSLN && lp.lam <= d180+EPSLN); break;
case 5: ok = (lp.lam >= -d180-EPSLN && lp.lam <= -d100+EPSLN); break;
case 6: ok = (lp.lam >= -d100-EPSLN && lp.lam <= -d20+EPSLN); break;
case 7: ok = (lp.lam >= -d20-EPSLN && lp.lam <= d80+EPSLN); break;
case 8: ok = (lp.lam >= d80-EPSLN && lp.lam <= d180+EPSLN); break;
case 9: ok = (lp.lam >= -d180-EPSLN && lp.lam <= -d100+EPSLN); break;
case 10: ok = (lp.lam >= -d100-EPSLN && lp.lam <= -d20+EPSLN); break;
case 11: ok = (lp.lam >= -d20-EPSLN && lp.lam <= d80+EPSLN); break;
case 12: ok = (lp.lam >= d80-EPSLN && lp.lam <= d180+EPSLN); break;
}
z = (!ok? 0: z); // projectable?
}
// if (!z) pj_errno = -15; // invalid x or y
if (!z) lp.lam = HUGE_VAL;
if (!z) lp.phi = HUGE_VAL;
return (lp);
}
FREEUP;
if (P) {
int i;
for (i = 0; i < 12; ++i)
{
if (P->pj[i])
(*(P->pj[i]->pfree))(P->pj[i]);
}
pj_dalloc(P);
}
}
ENTRY0(igh)
/*
Zones:
-180 -40 180
+--------------+-------------------------+ Zones 1,2,9,10,11 & 12:
|1 |2 | Mollweide projection
| | |
+--------------+-------------------------+ Zones 3,4,5,6,7 & 8:
|3 |4 | Sinusoidal projection
| | |
0 +-------+------+-+-----------+-----------+
|5 |6 |7 |8 |
| | | | |
+-------+--------+-----------+-----------+
|9 |10 |11 |12 |
| | | | |
+-------+--------+-----------+-----------+
-180 -100 -20 80 180
*/
#define SETUP(n, proj, x_0, y_0, lon_0) \
if (!(P->pj[n-1] = pj_##proj(0))) E_ERROR_0; \
if (!(P->pj[n-1] = pj_##proj(P->pj[n-1]))) E_ERROR_0; \
P->pj[n-1]->x0 = x_0; \
P->pj[n-1]->y0 = y_0; \
P->pj[n-1]->lam0 = lon_0;
LP lp = { 0, d4044118 };
XY xy1;
XY xy3;
// sinusoidal zones
SETUP(3, sinu, -d100, 0, -d100);
SETUP(4, sinu, d30, 0, d30);
SETUP(5, sinu, -d160, 0, -d160);
SETUP(6, sinu, -d60, 0, -d60);
SETUP(7, sinu, d20, 0, d20);
SETUP(8, sinu, d140, 0, d140);
// mollweide zones
SETUP(1, moll, -d100, 0, -d100);
// y0 ?
xy1 = P->pj[0]->fwd(lp, P->pj[0]); // zone 1
xy3 = P->pj[2]->fwd(lp, P->pj[2]); // zone 3
// y0 + xy1.y = xy3.y for lt = 40d44'11.8"
P->dy0 = xy3.y - xy1.y;
P->pj[0]->y0 = P->dy0;
// mollweide zones (cont'd)
SETUP( 2, moll, d30, P->dy0, d30);
SETUP( 9, moll, -d160, -P->dy0, -d160);
SETUP(10, moll, -d60, -P->dy0, -d60);
SETUP(11, moll, d20, -P->dy0, d20);
SETUP(12, moll, d140, -P->dy0, d140);
P->inv = s_inverse;
P->fwd = s_forward;
P->es = 0.;
ENDENTRY(P)
+6 -6
View File
@@ -13,12 +13,12 @@ PROJ_HEAD(imw_p, "International Map of the World Polyconic")
phi12(PJ *P, double *del, double *sig) {
int err = 0;
if (!pj_param(P->params, "tlat_1").i ||
!pj_param(P->params, "tlat_2").i) {
if (!pj_param(P->ctx, P->params, "tlat_1").i ||
!pj_param(P->ctx, P->params, "tlat_2").i) {
err = -41;
} else {
P->phi_1 = pj_param(P->params, "rlat_1").f;
P->phi_2 = pj_param(P->params, "rlat_2").f;
P->phi_1 = pj_param(P->ctx, P->params, "rlat_1").f;
P->phi_2 = pj_param(P->ctx, P->params, "rlat_2").f;
*del = 0.5 * (P->phi_2 - P->phi_1);
*sig = 0.5 * (P->phi_2 + P->phi_1);
err = (fabs(*del) < EPS || fabs(*sig) < EPS) ? -42 : 0;
@@ -113,8 +113,8 @@ ENTRY1(imw_p, en)
P->phi_1 = P->phi_2;
P->phi_2 = del;
}
if (pj_param(P->params, "tlon_1").i)
P->lam_1 = pj_param(P->params, "rlon_1").f;
if (pj_param(P->ctx, P->params, "tlon_1").i)
P->lam_1 = pj_param(P->ctx, P->params, "rlon_1").f;
else { /* use predefined based upon latitude */
sig = fabs(sig * RAD_TO_DEG);
if (sig <= 60) sig = 2.;
+1134
View File
File diff suppressed because it is too large Load Diff
+8 -11
View File
@@ -69,12 +69,9 @@ PROJ_HEAD(krovak, "Krovak") "\n\tPCyl., Ellps.";
FORWARD(e_forward); /* ellipsoid */
/* calculate xy from lat/lon */
char errmess[255];
char tmp[16];
/* Constants, identical to inverse transform function */
double s45, s90, e2, e, alfa, uq, u0, g, k, k1, n0, ro0, ad, a, s0, n;
double gfi, u, fi0, lon17, lamdd, deltav, s, d, eps, ro;
double gfi, u, fi0, deltav, s, d, eps, ro;
s45 = 0.785398163397448; /* 45° */
@@ -124,7 +121,7 @@ FORWARD(e_forward); /* ellipsoid */
xy.y = ro * cos(eps) / a;
xy.x = ro * sin(eps) / a;
if( !pj_param(P -> params, "tczech").i )
if( !pj_param(P->ctx, P->params, "tczech").i )
{
xy.y *= -1.0;
xy.x *= -1.0;
@@ -140,7 +137,7 @@ INVERSE(e_inverse); /* ellipsoid */
/* Constants, identisch wie in der Umkehrfunktion */
double s45, s90, fi0, e2, e, alfa, uq, u0, g, k, k1, n0, ro0, ad, a, s0, n;
double u, l24, lamdd, deltav, s, d, eps, ro, fi1, xy0, lon17;
double u, deltav, s, d, eps, ro, fi1, xy0;
int ok;
s45 = 0.785398163397448; /* 45° */
@@ -179,7 +176,7 @@ INVERSE(e_inverse); /* ellipsoid */
xy.x=xy.y;
xy.y=xy0;
if( !pj_param(P -> params, "tczech").i )
if( !pj_param(P->ctx, P->params, "tczech").i )
{
xy.x *= -1.0;
xy.y *= -1.0;
@@ -224,7 +221,7 @@ ENTRY0(krovak)
/* read some Parameters,
* here Latitude Truescale */
ts = pj_param(P->params, "rlat_ts").f;
ts = pj_param(P->ctx, P->params, "rlat_ts").f;
P->C_x = ts;
/* we want Bessel as fixed ellipsoid */
@@ -232,17 +229,17 @@ ENTRY0(krovak)
P->e = sqrt(P->es = 0.006674372230614);
/* if latitude of projection center is not set, use 49d30'N */
if (!pj_param(P->params, "tlat_0").i)
if (!pj_param(P->ctx, P->params, "tlat_0").i)
P->phi0 = 0.863937979737193;
/* if center long is not set use 42d30'E of Ferro - 17d40' for Ferro */
/* that will correspond to using longitudes relative to greenwich */
/* as input and output, instead of lat/long relative to Ferro */
if (!pj_param(P->params, "tlon_0").i)
if (!pj_param(P->ctx, P->params, "tlon_0").i)
P->lam0 = 0.7417649320975901 - 0.308341501185665;
/* if scale not set default to 0.9999 */
if (!pj_param(P->params, "tk").i)
if (!pj_param(P->ctx, P->params, "tk").i)
P->k0 = 0.9999;
/* always the same */
+2 -2
View File
@@ -86,8 +86,8 @@ FREEUP; if (P) pj_dalloc(P); }
ENTRY0(labrd)
double Az, sinp, R, N, t;
P->rot = pj_param(P->params, "bno_rot").i == 0;
Az = pj_param(P->params, "razi").f;
P->rot = pj_param(P->ctx, P->params, "bno_rot").i == 0;
Az = pj_param(P->ctx, P->params, "razi").f;
sinp = sin(P->phi0);
t = 1. - P->es * sinp * sinp;
N = 1. / sqrt(t);
+2 -2
View File
@@ -26,9 +26,9 @@ FREEUP; if (P) pj_dalloc(P); }
ENTRY0(lagrng)
double phi1;
if ((P->rw = pj_param(P->params, "dW").f) <= 0) E_ERROR(-27);
if ((P->rw = pj_param(P->ctx, P->params, "dW").f) <= 0) E_ERROR(-27);
P->hrw = 0.5 * (P->rw = 1. / P->rw);
phi1 = pj_param(P->params, "rlat_1").f;
phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
if (fabs(fabs(phi1 = sin(phi1)) - 1.) < TOL) E_ERROR(-22);
P->a1 = pow((1. - phi1)/(1. + phi1), P->hrw);
P->es = 0.; P->fwd = s_forward;
+5 -5
View File
@@ -34,7 +34,7 @@ INVERSE(e_inverse); /* ellipsoid & spheroid */
xy.y = -xy.y;
}
if (P->ellips) {
if ((lp.phi = pj_phi2(pow(rho / P->c, 1./P->n), P->e))
if ((lp.phi = pj_phi2(P->ctx, pow(rho / P->c, 1./P->n), P->e))
== HUGE_VAL)
I_ERROR;
} else
@@ -64,12 +64,12 @@ ENTRY0(lcc)
double cosphi, sinphi;
int secant;
P->phi1 = pj_param(P->params, "rlat_1").f;
if (pj_param(P->params, "tlat_2").i)
P->phi2 = pj_param(P->params, "rlat_2").f;
P->phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
if (pj_param(P->ctx, P->params, "tlat_2").i)
P->phi2 = pj_param(P->ctx, P->params, "rlat_2").f;
else {
P->phi2 = P->phi1;
if (!pj_param(P->params, "tlat_0").i)
if (!pj_param(P->ctx, P->params, "tlat_0").i)
P->phi0 = P->phi1;
}
if (fabs(P->phi1 + P->phi2) < EPS10) E_ERROR(-21);
+3 -3
View File
@@ -22,7 +22,7 @@ fSp(double S, double C) {
return(1. + 3.* S * S * C);
}
FORWARD(e_forward); /* ellipsoid */
double S, S3, r, dr;
double S, r, dr;
S = pj_mlfn(lp.phi, sin(lp.phi), cos(lp.phi), P->en) - P->M0;
dr = fS(S, P->C);
@@ -46,7 +46,7 @@ INVERSE(e_inverse); /* ellipsoid & spheroid */
if (fabs(dif) < DEL_TOL) break;
}
if (!i) I_ERROR
lp.phi = pj_inv_mlfn(S + P->M0, P->es, P->en);
lp.phi = pj_inv_mlfn(P->ctx, S + P->M0, P->es, P->en);
return (lp);
}
FREEUP; if (P) { if (P->en) pj_dalloc(P->en); pj_dalloc(P); } }
@@ -54,7 +54,7 @@ ENTRY0(lcca)
double s2p0, N0, R0, tan0, tan20;
if (!(P->en = pj_enfn(P->es))) E_ERROR_0;
if (!pj_param(P->params, "tlat_0").i) E_ERROR(50);
if (!pj_param(P->ctx, P->params, "tlat_0").i) E_ERROR(50);
if (P->phi0 == 0.) E_ERROR(51);
P->l = sin(P->phi0);
P->M0 = pj_mlfn(P->phi0, P->l, cos(P->phi0), P->en);
+1 -1
View File
@@ -33,7 +33,7 @@ INVERSE(s_inverse); /* spheroid */
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(loxim);
P->phi1 = pj_param(P->params, "rlat_1").f;
P->phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
if ((P->cosphi1 = cos(P->phi1)) < EPS) E_ERROR(-22);
P->tanphi1 = tan(FORTPI + 0.5 * P->phi1);
P->inv = s_inverse; P->fwd = s_forward;
+4 -4
View File
@@ -66,7 +66,7 @@ FORWARD(e_forward); /* ellipsoid */
}
if (l) {
sp = sin(lp.phi);
phidp = aasin((P->one_es * P->ca * sp - P->sa * cos(lp.phi) *
phidp = aasin(P->ctx,(P->one_es * P->ca * sp - P->sa * cos(lp.phi) *
sin(lamt)) / sqrt(1. - P->es * sp * sp));
tanph = log(tan(FORTPI + .5 * phidp));
sd = sin(lamdp);
@@ -116,7 +116,7 @@ INVERSE(e_inverse); /* ellipsoid */
lamt -= HALFPI * (1. - scl) * sl;
lp.lam = lamt - P->p22 * lamdp;
if (fabs(P->sa) < TOL)
lp.phi = aasin(spp / sqrt(P->one_es * P->one_es + P->es * sppsq));
lp.phi = aasin(P->ctx,spp / sqrt(P->one_es * P->one_es + P->es * sppsq));
else
lp.phi = atan((tan(lamdp) * cos(lamt) - P->ca * sin(lamt)) /
(P->one_es * P->sa));
@@ -127,9 +127,9 @@ ENTRY0(lsat)
int land, path;
double lam, alf, esc, ess;
land = pj_param(P->params, "ilsat").i;
land = pj_param(P->ctx, P->params, "ilsat").i;
if (land <= 0 || land > 5) E_ERROR(-28);
path = pj_param(P->params, "ipath").i;
path = pj_param(P->ctx, P->params, "ipath").i;
if (path <= 0 || path > (land <= 3 ? 251 : 233)) E_ERROR(-29);
if (land <= 3) {
P->lam0 = DEG_TO_RAD * 128.87 - TWOPI / 251. * path;
+3 -3
View File
@@ -27,11 +27,11 @@ FORWARD(s_forward); /* spheroid */
return (xy);
}
INVERSE(s_inverse); /* spheroid */
double t, s;
double t;
lp.phi = C2 * (t = aasin(xy.y / C_y));
lp.phi = C2 * (t = aasin(P->ctx,xy.y / C_y));
lp.lam = xy.x / (C_x * (1. + 3. * cos(lp.phi)/cos(t)));
lp.phi = aasin((C1 * sin(t) + sin(lp.phi)) / C3);
lp.phi = aasin(P->ctx,(C1 * sin(t) + sin(lp.phi)) / C3);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
+3 -3
View File
@@ -15,7 +15,7 @@ FORWARD(s_forward); /* spheroid */
return (xy);
}
INVERSE(e_inverse); /* ellipsoid */
if ((lp.phi = pj_phi2(exp(- xy.y / P->k0), P->e)) == HUGE_VAL) I_ERROR;
if ((lp.phi = pj_phi2(P->ctx, exp(- xy.y / P->k0), P->e)) == HUGE_VAL) I_ERROR;
lp.lam = xy.x / P->k0;
return (lp);
}
@@ -29,8 +29,8 @@ ENTRY0(merc)
double phits=0.0;
int is_phits;
if( (is_phits = pj_param(P->params, "tlat_ts").i) ) {
phits = fabs(pj_param(P->params, "rlat_ts").f);
if( (is_phits = pj_param(P->ctx, P->params, "tlat_ts").i) ) {
phits = fabs(pj_param(P->ctx, P->params, "rlat_ts").f);
if (phits >= HALFPI) E_ERROR(-24);
}
if (P->es) { /* ellipsoid */
+1 -1
View File
@@ -60,7 +60,7 @@ INVERSE(e_inverse); /* ellipsoid */
lp.phi = P->phi0;
return lp;
}
chi = aasin(cosz * P->schio + p.i * sinz * P->cchio / rh);
chi = aasin(P->ctx, cosz * P->schio + p.i * sinz * P->cchio / rh);
phi = chi;
for (nn = 20; nn ;--nn) {
esphi = P->e * sin(phi);
+2 -4
View File
@@ -27,12 +27,10 @@ FORWARD(s_forward); /* spheroid */
return (xy);
}
INVERSE(s_inverse); /* spheroid */
double th, s;
lp.phi = aasin(xy.y / P->C_y);
lp.phi = aasin(P->ctx, xy.y / P->C_y);
lp.lam = xy.x / (P->C_x * cos(lp.phi));
lp.phi += lp.phi;
lp.phi = aasin((lp.phi + sin(lp.phi)) / P->C_p);
lp.phi = aasin(P->ctx, (lp.phi + sin(lp.phi)) / P->C_p);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
+77
View File
@@ -0,0 +1,77 @@
/*
The Natural Earth projection was designed by Tom Patterson, US National Park
Service, in 2007, using Flex Projector. The shape of the original projection
was defined at every 5 degrees and piece-wise cubic spline interpolation was
used to compute the complete graticule.
The code here uses polynomial functions instead of cubic splines and
is therefore much simpler to program. The polynomial approximation was
developed by Bojan Savric, in collaboration with Tom Patterson and Bernhard
Jenny, Institute of Cartography, ETH Zurich. It slightly deviates from
Patterson's original projection by adding additional curvature to meridians
where they meet the horizontal pole line. This improvement is by intention
and designed in collaboration with Tom Patterson.
Port to PROJ.4 by Bernhard Jenny, 6 June 2011
*/
#define PJ_LIB__
#include <projects.h>
PROJ_HEAD(natearth, "Natural Earth") "\n\tPCyl., Sph.";
#define A0 0.8707
#define A1 -0.131979
#define A2 -0.013791
#define A3 0.003971
#define A4 -0.001529
#define B0 1.007226
#define B1 0.015085
#define B2 -0.044475
#define B3 0.028874
#define B4 -0.005916
#define C0 B0
#define C1 (3 * B1)
#define C2 (7 * B2)
#define C3 (9 * B3)
#define C4 (11 * B4)
#define EPS 1e-11
#define MAX_Y (0.8707 * 0.52 * PI)
FORWARD(s_forward); /* spheroid */
double phi2, phi4;
phi2 = lp.phi * lp.phi;
phi4 = phi2 * phi2;
xy.x = lp.lam * (A0 + phi2 * (A1 + phi2 * (A2 + phi4 * phi2 * (A3 + phi2 * A4))));
xy.y = lp.phi * (B0 + phi2 * (B1 + phi4 * (B2 + B3 * phi2 + B4 * phi4)));
return (xy);
}
INVERSE(s_inverse); /* spheroid */
double yc, tol, y2, y4, f, fder;
/* make sure y is inside valid range */
if (xy.y > MAX_Y) {
xy.y = MAX_Y;
} else if (xy.y < -MAX_Y) {
xy.y = -MAX_Y;
}
/* latitude */
yc = xy.y;
for (;;) { /* Newton-Raphson */
y2 = yc * yc;
y4 = y2 * y2;
f = (yc * (B0 + y2 * (B1 + y4 * (B2 + B3 * y2 + B4 * y4)))) - xy.y;
fder = C0 + y2 * (C1 + y4 * (C2 + C3 * y2 + C4 * y4));
yc -= tol = f / fder;
if (fabs(tol) < EPS) {
break;
}
}
lp.phi = yc;
/* longitude */
y2 = yc * yc;
lp.lam = xy.x / (A0 + y2 * (A1 + y2 * (A2 + y2 * y2 * y2 * (A3 + y2 * A4))));
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(natearth) P->es = 0; P->inv = s_inverse; P->fwd = s_forward; ENDENTRY(P)
+1 -3
View File
@@ -21,10 +21,8 @@ FORWARD(s_forward); /* spheroid */
return (xy);
}
INVERSE(s_inverse); /* spheroid */
double th, s;
lp.lam = 2. * xy.x / (1. + cos(xy.y));
lp.phi = aasin(0.5 * (xy.y + sin(xy.y)));
lp.phi = aasin(P->ctx,0.5 * (xy.y + sin(xy.y)));
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
+3 -3
View File
@@ -115,7 +115,7 @@ INVERSE(s_inverse); /* spheroid */
FREEUP; if (P) pj_dalloc(P); }
static PJ *
setup(PJ *P) {
if ((P->height = pj_param(P->params, "dh").f) <= 0.) E_ERROR(-30);
if ((P->height = pj_param(P->ctx, P->params, "dh").f) <= 0.) E_ERROR(-30);
if (fabs(fabs(P->phi0) - HALFPI) < EPS10)
P->mode = P->phi0 < 0. ? S_POLE : N_POLE;
else if (fabs(P->phi0) < EPS10)
@@ -141,8 +141,8 @@ ENDENTRY(setup(P))
ENTRY0(tpers)
double omega, gamma;
omega = pj_param(P->params, "dtilt").f * DEG_TO_RAD;
gamma = pj_param(P->params, "dazi").f * DEG_TO_RAD;
omega = pj_param(P->ctx, P->params, "dtilt").f * DEG_TO_RAD;
gamma = pj_param(P->ctx, P->params, "dazi").f * DEG_TO_RAD;
P->tilt = 1;
P->cg = cos(gamma); P->sg = sin(gamma);
P->cw = cos(omega); P->sw = sin(omega);
+17 -17
View File
@@ -21,7 +21,7 @@ FORWARD(o_forward); /* spheroid */
cosphi = cos(lp.phi);
lp.lam = adjlon(aatan2(cosphi * sin(lp.lam), P->sphip * cosphi * coslam +
P->cphip * sinphi) + P->lamp);
lp.phi = aasin(P->sphip * sinphi - P->cphip * cosphi * coslam);
lp.phi = aasin(P->ctx,P->sphip * sinphi - P->cphip * cosphi * coslam);
return (P->link->fwd(lp, P->link));
}
FORWARD(t_forward); /* spheroid */
@@ -32,7 +32,7 @@ FORWARD(t_forward); /* spheroid */
cosphi = cos(lp.phi);
coslam = cos(lp.lam);
lp.lam = adjlon(aatan2(cosphi * sin(lp.lam), sin(lp.phi)) + P->lamp);
lp.phi = aasin(- cosphi * coslam);
lp.phi = aasin(P->ctx, - cosphi * coslam);
return (P->link->fwd(lp, P->link));
}
INVERSE(o_inverse); /* spheroid */
@@ -43,7 +43,7 @@ INVERSE(o_inverse); /* spheroid */
coslam = cos(lp.lam -= P->lamp);
sinphi = sin(lp.phi);
cosphi = cos(lp.phi);
lp.phi = aasin(P->sphip * sinphi + P->cphip * cosphi * coslam);
lp.phi = aasin(P->ctx,P->sphip * sinphi + P->cphip * cosphi * coslam);
lp.lam = aatan2(cosphi * sin(lp.lam), P->sphip * cosphi * coslam -
P->cphip * sinphi);
}
@@ -57,7 +57,7 @@ INVERSE(t_inverse); /* spheroid */
cosphi = cos(lp.phi);
t = lp.lam - P->lamp;
lp.lam = aatan2(cosphi * sin(t), - sin(lp.phi));
lp.phi = aasin(cosphi * cos(t));
lp.phi = aasin(P->ctx,cosphi * cos(t));
}
return (lp);
}
@@ -74,7 +74,7 @@ ENTRY1(ob_tran, link)
char *name, *s;
/* get name of projection to be translated */
if (!(name = pj_param(P->params, "so_proj").s)) E_ERROR(-26);
if (!(name = pj_param(P->ctx, P->params, "so_proj").s)) E_ERROR(-26);
for (i = 0; (s = pj_list[i].id) && strcmp(name, s) ; ++i) ;
if (!s || !(P->link = (*pj_list[i].proj)(0))) E_ERROR(-37);
/* copy existing header into new */
@@ -97,12 +97,12 @@ ENTRY1(ob_tran, link)
freeup(P);
return 0;
}
if (pj_param(P->params, "to_alpha").i) {
if (pj_param(P->ctx, P->params, "to_alpha").i) {
double lamc, phic, alpha;
lamc = pj_param(P->params, "ro_lon_c").f;
phic = pj_param(P->params, "ro_lat_c").f;
alpha = pj_param(P->params, "ro_alpha").f;
lamc = pj_param(P->ctx, P->params, "ro_lon_c").f;
phic = pj_param(P->ctx, P->params, "ro_lat_c").f;
alpha = pj_param(P->ctx, P->params, "ro_alpha").f;
/*
if (fabs(phic) <= TOL ||
fabs(fabs(phic) - HALFPI) <= TOL ||
@@ -111,17 +111,17 @@ ENTRY1(ob_tran, link)
if (fabs(fabs(phic) - HALFPI) <= TOL)
E_ERROR(-32);
P->lamp = lamc + aatan2(-cos(alpha), -sin(alpha) * sin(phic));
phip = aasin(cos(phic) * sin(alpha));
} else if (pj_param(P->params, "to_lat_p").i) { /* specified new pole */
P->lamp = pj_param(P->params, "ro_lon_p").f;
phip = pj_param(P->params, "ro_lat_p").f;
phip = aasin(P->ctx,cos(phic) * sin(alpha));
} else if (pj_param(P->ctx, P->params, "to_lat_p").i) { /* specified new pole */
P->lamp = pj_param(P->ctx, P->params, "ro_lon_p").f;
phip = pj_param(P->ctx, P->params, "ro_lat_p").f;
} else { /* specified new "equator" points */
double lam1, lam2, phi1, phi2, con;
lam1 = pj_param(P->params, "ro_lon_1").f;
phi1 = pj_param(P->params, "ro_lat_1").f;
lam2 = pj_param(P->params, "ro_lon_2").f;
phi2 = pj_param(P->params, "ro_lat_2").f;
lam1 = pj_param(P->ctx, P->params, "ro_lon_1").f;
phi1 = pj_param(P->ctx, P->params, "ro_lat_1").f;
lam2 = pj_param(P->ctx, P->params, "ro_lon_2").f;
phi2 = pj_param(P->ctx, P->params, "ro_lat_2").f;
if (fabs(phi1 - phi2) <= TOL ||
(con = fabs(phi1)) <= TOL ||
fabs(con - HALFPI) <= TOL ||
+7 -7
View File
@@ -41,16 +41,16 @@ ENTRY0(ocea)
P->rok = P->a / P->k0;
P->rtk = P->a * P->k0;
if ( pj_param(P->params, "talpha").i) {
alpha = pj_param(P->params, "ralpha").f;
lonz = pj_param(P->params, "rlonc").f;
if ( pj_param(P->ctx, P->params, "talpha").i) {
alpha = pj_param(P->ctx, P->params, "ralpha").f;
lonz = pj_param(P->ctx, P->params, "rlonc").f;
P->singam = atan(-cos(alpha)/(-sin(phi_0) * sin(alpha))) + lonz;
P->sinphi = asin(cos(phi_0) * sin(alpha));
} else {
phi_1 = pj_param(P->params, "rlat_1").f;
phi_2 = pj_param(P->params, "rlat_2").f;
lam_1 = pj_param(P->params, "rlon_1").f;
lam_2 = pj_param(P->params, "rlon_2").f;
phi_1 = pj_param(P->ctx, P->params, "rlat_1").f;
phi_2 = pj_param(P->ctx, P->params, "rlat_2").f;
lam_1 = pj_param(P->ctx, P->params, "rlon_1").f;
lam_2 = pj_param(P->ctx, P->params, "rlon_2").f;
P->singam = atan2(cos(phi_1) * sin(phi_2) * cos(lam_1) -
sin(phi_1) * cos(phi_2) * cos(lam_2),
sin(phi_1) * cos(phi_2) * sin(lam_2) -
+10 -10
View File
@@ -13,9 +13,9 @@ FORWARD(s_forward); /* sphere */
sp = sin(lp.phi);
cl = cos(lp.lam);
Az = aatan2(cp * sin(lp.lam), P->cp0 * sp - P->sp0 * cp * cl) + P->theta;
shz = sin(0.5 * aacos(P->sp0 * sp + P->cp0 * cp * cl));
M = aasin(shz * sin(Az));
N = aasin(shz * cos(Az) * cos(M) / cos(M * P->two_r_m));
shz = sin(0.5 * aacos(P->ctx, P->sp0 * sp + P->cp0 * cp * cl));
M = aasin(P->ctx, shz * sin(Az));
N = aasin(P->ctx, shz * cos(Az) * cos(M) / cos(M * P->two_r_m));
xy.y = P->n * sin(N * P->two_r_n);
xy.x = P->m * sin(M * P->two_r_m) * cos(N) / cos(N * P->two_r_n);
return (xy);
@@ -23,26 +23,26 @@ FORWARD(s_forward); /* sphere */
INVERSE(s_inverse); /* sphere */
double N, M, xp, yp, z, Az, cz, sz, cAz;
N = P->hn * aasin(xy.y * P->rn);
M = P->hm * aasin(xy.x * P->rm * cos(N * P->two_r_n) / cos(N));
N = P->hn * aasin(P->ctx,xy.y * P->rn);
M = P->hm * aasin(P->ctx,xy.x * P->rm * cos(N * P->two_r_n) / cos(N));
xp = 2. * sin(M);
yp = 2. * sin(N) * cos(M * P->two_r_m) / cos(M);
cAz = cos(Az = aatan2(xp, yp) - P->theta);
z = 2. * aasin(0.5 * hypot(xp, yp));
z = 2. * aasin(P->ctx, 0.5 * hypot(xp, yp));
sz = sin(z);
cz = cos(z);
lp.phi = aasin(P->sp0 * cz + P->cp0 * sz * cAz);
lp.phi = aasin(P->ctx, P->sp0 * cz + P->cp0 * sz * cAz);
lp.lam = aatan2(sz * sin(Az),
P->cp0 * cz - P->sp0 * sz * cAz);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(oea)
if (((P->n = pj_param(P->params, "dn").f) <= 0.) ||
((P->m = pj_param(P->params, "dm").f) <= 0.))
if (((P->n = pj_param(P->ctx, P->params, "dn").f) <= 0.) ||
((P->m = pj_param(P->ctx, P->params, "dm").f) <= 0.))
E_ERROR(-39)
else {
P->theta = pj_param(P->params, "rtheta").f;
P->theta = pj_param(P->ctx, P->params, "rtheta").f;
P->sp0 = sin(P->phi0);
P->cp0 = cos(P->phi0);
P->rn = 1./ P->n;
+153 -125
View File
@@ -1,166 +1,194 @@
/*
** Copyright (c) 2003, 2006 Gerald I. Evenden
*/
/*
** Permission is hereby granted, free of charge, to any person obtaining
** a copy of this software and associated documentation files (the
** "Software"), to deal in the Software without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Software, and to
** permit persons to whom the Software is furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be
** included in all copies or substantial portions of the Software.
**
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#define PROJ_PARMS__ \
double alpha, lamc, lam1, phi1, lam2, phi2, Gamma, al, bl, el, \
singam, cosgam, sinrot, cosrot, u_0; \
int ellips, rot;
double A, B, E, AB, ArB, BrA, rB, singam, cosgam, sinrot, cosrot; \
double v_pole_n, v_pole_s, u_0; \
int no_rot;
#define PJ_LIB__
#include <projects.h>
#include <projects.h>
PROJ_HEAD(omerc, "Oblique Mercator")
"\n\tCyl, Sph&Ell\n\t no_rot rot_conv no_uoff and\n\t"
"alpha= lonc= or\n\t lon_1= lat_1= lon_2= lat_2=";
"\n\tCyl, Sph&Ell no_rot\n\t"
"alpha= [gamma=] [no_off] lonc= or\n\t lon_1= lat_1= lon_2= lat_2=";
#define TOL 1.e-7
#define EPS 1.e-10
#define TSFN0(x) tan(.5 * (HALFPI - (x)))
FORWARD(e_forward); /* ellipsoid & spheroid */
double con, q, s, ul, us, vl, vs;
vl = sin(P->bl * lp.lam);
if (fabs(fabs(lp.phi) - HALFPI) <= EPS) {
ul = lp.phi < 0. ? -P->singam : P->singam;
us = P->al * lp.phi / P->bl;
FORWARD(e_forward); /* ellipsoid */
double Q, S, T, U, V, temp, u, v;
if (fabs(fabs(lp.phi) - HALFPI) > EPS) {
Q = P->E / pow(pj_tsfn(lp.phi, sin(lp.phi), P->e), P->B);
temp = 1. / Q;
S = .5 * (Q - temp);
T = .5 * (Q + temp);
V = sin(P->B * lp.lam);
U = (S * P->singam - V * P->cosgam) / T;
if (fabs(fabs(U) - 1.0) < EPS)
F_ERROR;
v = 0.5 * P->ArB * log((1. - U)/(1. + U));
temp = cos(P->B * lp.lam);
u = (fabs(temp) < TOL) ? P->AB * lp.lam :
P->ArB * atan2((S * P->cosgam + V * P->singam) , temp);
} else {
q = P->el / (P->ellips ? pow(pj_tsfn(lp.phi, sin(lp.phi), P->e), P->bl)
: TSFN0(lp.phi));
s = .5 * (q - 1. / q);
ul = 2. * (s * P->singam - vl * P->cosgam) / (q + 1. / q);
con = cos(P->bl * lp.lam);
if (fabs(con) >= TOL) {
us = P->al * atan((s * P->cosgam + vl * P->singam) / con) / P->bl;
if (con < 0.)
us += PI * P->al / P->bl;
} else
us = P->al * P->bl * lp.lam;
v = lp.phi > 0 ? P->v_pole_n : P->v_pole_s;
u = P->ArB * lp.phi;
}
if (fabs(fabs(ul) - 1.) <= EPS) F_ERROR;
vs = .5 * P->al * log((1. - ul) / (1. + ul)) / P->bl;
us -= P->u_0;
if (! P->rot) {
xy.x = us;
xy.y = vs;
if (P->no_rot) {
xy.x = u;
xy.y = v;
} else {
xy.x = vs * P->cosrot + us * P->sinrot;
xy.y = us * P->cosrot - vs * P->sinrot;
u -= P->u_0;
xy.x = v * P->cosrot + u * P->sinrot;
xy.y = u * P->cosrot - v * P->sinrot;
}
return (xy);
}
INVERSE(e_inverse); /* ellipsoid & spheroid */
double q, s, ul, us, vl, vs;
INVERSE(e_inverse); /* ellipsoid */
double u, v, Qp, Sp, Tp, Vp, Up;
if (! P->rot) {
us = xy.x;
vs = xy.y;
if (P->no_rot) {
v = xy.y;
u = xy.x;
} else {
vs = xy.x * P->cosrot - xy.y * P->sinrot;
us = xy.y * P->cosrot + xy.x * P->sinrot;
v = xy.x * P->cosrot - xy.y * P->sinrot;
u = xy.y * P->cosrot + xy.x * P->sinrot + P->u_0;
}
us += P->u_0;
q = exp(- P->bl * vs / P->al);
s = .5 * (q - 1. / q);
vl = sin(P->bl * us / P->al);
ul = 2. * (vl * P->cosgam + s * P->singam) / (q + 1. / q);
if (fabs(fabs(ul) - 1.) < EPS) {
Qp = exp(- P->BrA * v);
Sp = .5 * (Qp - 1. / Qp);
Tp = .5 * (Qp + 1. / Qp);
Vp = sin(P->BrA * u);
Up = (Vp * P->cosgam + Sp * P->singam) / Tp;
if (fabs(fabs(Up) - 1.) < EPS) {
lp.lam = 0.;
lp.phi = ul < 0. ? -HALFPI : HALFPI;
lp.phi = Up < 0. ? -HALFPI : HALFPI;
} else {
lp.phi = P->el / sqrt((1. + ul) / (1. - ul));
if (P->ellips) {
if ((lp.phi = pj_phi2(pow(lp.phi, 1. / P->bl), P->e)) == HUGE_VAL)
I_ERROR;
} else
lp.phi = HALFPI - 2. * atan(lp.phi);
lp.lam = - atan2((s * P->cosgam -
vl * P->singam), cos(P->bl * us / P->al)) / P->bl;
lp.phi = P->E / sqrt((1. + Up) / (1. - Up));
if ((lp.phi = pj_phi2(P->ctx, pow(lp.phi, 1. / P->B), P->e)) == HUGE_VAL)
I_ERROR;
lp.lam = - P->rB * atan2((Sp * P->cosgam -
Vp * P->singam), cos(P->BrA * u));
}
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(omerc)
double con, com, cosph0, d, f, h, l, sinph0, p, j;
int azi;
double con, com, cosph0, D, F, H, L, sinph0, p, J, gamma,
gamma0, lamc, lam1, lam2, phi1, phi2, alpha_c;
int alp, gam, no_off = 0;
P->rot = pj_param(P->params, "bno_rot").i == 0;
if( (azi = pj_param(P->params, "talpha").i) != 0.0) {
P->lamc = pj_param(P->params, "rlonc").f;
P->alpha = pj_param(P->params, "ralpha").f;
if ( fabs(P->alpha) <= TOL ||
fabs(fabs(P->phi0) - HALFPI) <= TOL ||
fabs(fabs(P->alpha) - HALFPI) <= TOL)
E_ERROR(-32);
P->no_rot = pj_param(P->ctx, P->params, "tno_rot").i;
if ((alp = pj_param(P->ctx, P->params, "talpha").i) != 0)
alpha_c = pj_param(P->ctx, P->params, "ralpha").f;
if ((gam = pj_param(P->ctx, P->params, "tgamma").i) != 0)
gamma = pj_param(P->ctx, P->params, "rgamma").f;
if (alp || gam) {
lamc = pj_param(P->ctx, P->params, "rlonc").f;
no_off =
/* For libproj4 compatability */
pj_param(P->ctx, P->params, "tno_off").i
/* for backward compatibility */
|| pj_param(P->ctx, P->params, "tno_uoff").i;
} else {
P->lam1 = pj_param(P->params, "rlon_1").f;
P->phi1 = pj_param(P->params, "rlat_1").f;
P->lam2 = pj_param(P->params, "rlon_2").f;
P->phi2 = pj_param(P->params, "rlat_2").f;
if (fabs(P->phi1 - P->phi2) <= TOL ||
(con = fabs(P->phi1)) <= TOL ||
lam1 = pj_param(P->ctx, P->params, "rlon_1").f;
phi1 = pj_param(P->ctx, P->params, "rlat_1").f;
lam2 = pj_param(P->ctx, P->params, "rlon_2").f;
phi2 = pj_param(P->ctx, P->params, "rlat_2").f;
if (fabs(phi1 - phi2) <= TOL ||
(con = fabs(phi1)) <= TOL ||
fabs(con - HALFPI) <= TOL ||
fabs(fabs(P->phi0) - HALFPI) <= TOL ||
fabs(fabs(P->phi2) - HALFPI) <= TOL) E_ERROR(-33);
fabs(fabs(phi2) - HALFPI) <= TOL) E_ERROR(-33);
}
com = (P->ellips = P->es > 0.) ? sqrt(P->one_es) : 1.;
com = sqrt(P->one_es);
if (fabs(P->phi0) > EPS) {
sinph0 = sin(P->phi0);
cosph0 = cos(P->phi0);
if (P->ellips) {
con = 1. - P->es * sinph0 * sinph0;
P->bl = cosph0 * cosph0;
P->bl = sqrt(1. + P->es * P->bl * P->bl / P->one_es);
P->al = P->bl * P->k0 * com / con;
d = P->bl * com / (cosph0 * sqrt(con));
} else {
P->bl = 1.;
P->al = P->k0;
d = 1. / cosph0;
}
if ((f = d * d - 1.) <= 0.)
f = 0.;
con = 1. - P->es * sinph0 * sinph0;
P->B = cosph0 * cosph0;
P->B = sqrt(1. + P->es * P->B * P->B / P->one_es);
P->A = P->B * P->k0 * com / con;
D = P->B * com / (cosph0 * sqrt(con));
if ((F = D * D - 1.) <= 0.)
F = 0.;
else {
f = sqrt(f);
F = sqrt(F);
if (P->phi0 < 0.)
f = -f;
F = -F;
}
P->el = f += d;
if (P->ellips) P->el *= pow(pj_tsfn(P->phi0, sinph0, P->e), P->bl);
else P->el *= TSFN0(P->phi0);
P->E = F += D;
P->E *= pow(pj_tsfn(P->phi0, sinph0, P->e), P->B);
} else {
P->bl = 1. / com;
P->al = P->k0;
P->el = d = f = 1.;
P->B = 1. / com;
P->A = P->k0;
P->E = D = F = 1.;
}
if (azi) {
P->Gamma = asin(sin(P->alpha) / d);
P->lam0 = P->lamc - asin((.5 * (f - 1. / f)) *
tan(P->Gamma)) / P->bl;
if (alp || gam) {
if (alp) {
gamma0 = asin(sin(alpha_c) / D);
if (!gam)
gamma = alpha_c;
} else
alpha_c = asin(D*sin(gamma0 = gamma));
if ((con = fabs(alpha_c)) <= TOL ||
fabs(con - PI) <= TOL ||
fabs(fabs(P->phi0) - HALFPI) <= TOL)
E_ERROR(-32);
P->lam0 = lamc - asin(.5 * (F - 1. / F) *
tan(gamma0)) / P->B;
} else {
if (P->ellips) {
h = pow(pj_tsfn(P->phi1, sin(P->phi1), P->e), P->bl);
l = pow(pj_tsfn(P->phi2, sin(P->phi2), P->e), P->bl);
} else {
h = TSFN0(P->phi1);
l = TSFN0(P->phi2);
}
f = P->el / h;
p = (l - h) / (l + h);
j = P->el * P->el;
j = (j - l * h) / (j + l * h);
if ((con = P->lam1 - P->lam2) < -PI)
P->lam2 -= TWOPI;
H = pow(pj_tsfn(phi1, sin(phi1), P->e), P->B);
L = pow(pj_tsfn(phi2, sin(phi2), P->e), P->B);
F = P->E / H;
p = (L - H) / (L + H);
J = P->E * P->E;
J = (J - L * H) / (J + L * H);
if ((con = lam1 - lam2) < -PI)
lam2 -= TWOPI;
else if (con > PI)
P->lam2 += TWOPI;
P->lam0 = adjlon(.5 * (P->lam1 + P->lam2) - atan(
j * tan(.5 * P->bl * (P->lam1 - P->lam2)) / p) / P->bl);
P->Gamma = atan(2. * sin(P->bl * adjlon(P->lam1 - P->lam0)) /
(f - 1. / f));
P->alpha = asin(d * sin(P->Gamma));
lam2 += TWOPI;
P->lam0 = adjlon(.5 * (lam1 + lam2) - atan(
J * tan(.5 * P->B * (lam1 - lam2)) / p) / P->B);
gamma0 = atan(2. * sin(P->B * adjlon(lam1 - P->lam0)) /
(F - 1. / F));
gamma = alpha_c = asin(D * sin(gamma0));
}
P->singam = sin(P->Gamma);
P->cosgam = cos(P->Gamma);
f = pj_param(P->params, "brot_conv").i ? P->Gamma : P->alpha;
P->sinrot = sin(f);
P->cosrot = cos(f);
P->u_0 = pj_param(P->params, "bno_uoff").i ? 0. :
fabs(P->al * atan(sqrt(d * d - 1.) / P->cosrot) / P->bl);
if (P->phi0 < 0.)
P->u_0 = - P->u_0;
P->singam = sin(gamma0);
P->cosgam = cos(gamma0);
P->sinrot = sin(gamma);
P->cosrot = cos(gamma);
P->BrA = 1. / (P->ArB = P->A * (P->rB = 1. / P->B));
P->AB = P->A * P->B;
if (no_off)
P->u_0 = 0;
else {
P->u_0 = fabs(P->ArB * atan2(sqrt(D * D - 1.), cos(alpha_c)));
if (P->phi0 < 0.)
P->u_0 = - P->u_0;
}
F = 0.5 * gamma0;
P->v_pole_n = P->ArB * log(tan(FORTPI - F));
P->v_pole_s = P->ArB * log(tan(FORTPI + F));
P->inv = e_inverse;
P->fwd = e_forward;
ENDENTRY(P)
+2 -2
View File
@@ -31,9 +31,9 @@ FORWARD(s_forward); /* spheroid */
INVERSE(s_inverse); /* spheroid */
double c;
lp.phi = aasin(xy.y / C_y);
lp.phi = aasin(P->ctx,xy.y / C_y);
lp.lam = xy.x / (C_x * ((c = cos(lp.phi)) - 0.5));
lp.phi = aasin((lp.phi + sin(lp.phi) * (c - 1.)) / C_p);
lp.phi = aasin(P->ctx,(lp.phi + sin(lp.phi) * (c - 1.)) / C_p);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
+3 -3
View File
@@ -5,18 +5,18 @@
PROJ_HEAD(putp4p, "Putnins P4'") "\n\tPCyl., Sph.";
PROJ_HEAD(weren, "Werenskiold I") "\n\tPCyl., Sph.";
FORWARD(s_forward); /* spheroid */
lp.phi = aasin(0.883883476 * sin(lp.phi));
lp.phi = aasin(P->ctx,0.883883476 * sin(lp.phi));
xy.x = P->C_x * lp.lam * cos(lp.phi);
xy.x /= cos(lp.phi *= 0.333333333333333);
xy.y = P->C_y * sin(lp.phi);
return (xy);
}
INVERSE(s_inverse); /* spheroid */
lp.phi = aasin(xy.y / P->C_y);
lp.phi = aasin(P->ctx,xy.y / P->C_y);
lp.lam = xy.x * cos(lp.phi) / P->C_x;
lp.phi *= 3.;
lp.lam /= cos(lp.phi);
lp.phi = aasin(1.13137085 * sin(lp.phi));
lp.phi = aasin(P->ctx,1.13137085 * sin(lp.phi));
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }

Some files were not shown because too many files have changed in this diff Show More