[Proj] Differences in reprojection between using the cs2cs app and using the api
Hermann Peifer
peifer at gmx.eu
Wed Feb 11 14:00:43 EST 2015
Hi,
I can only provide a few hints based on your examples below:
epsg:3273 is not the same as epsg:32723, neither are epsg:31938 and
epsg:31983
These combinations do not make sense: +init=epsg:3273 +proj=latlong and
init=epsg:32723 +proj=latlong
epsg:32723 resolves into: +proj=utm +zone=23 +south +datum=WGS84
+units=m +no_defs. The projection cannot be latlong and utm at the same
time. The same goes for latlong and lcc in the other case.
Luckily the software ignores some of the specified parameters. It would
however be better to use this definition and see if it helps:
+init=epsg:4326 +to +init=epsg:31983.
My results with Rel. 4.9.0, 13 September 2014
$ echo -45.491596 -23.570147 | cs2cs -f "%.6f" +init=epsg:4326 +to
+init=epsg:31983
449834.145105 7393276.784821 0.000000
Hope this helps, Hermann
On 2015-02-11 18:07, Adri CS wrote:
> Hi,
>
> I built Proj4 4.8.0 for Windows with MinGW. I'm trying to reproject some
> WGS84 lat/long coordinates (degrees) from Brazil to UTM Sirgas 2000. The
> UTM zone would be 23S.
>
> **) Using the cs2cs app:
>
> /cs2cs.exe -f %.6f +init=epsg:3273 +proj=latlong +to +init=epsg:31938
> input.txt > output.txt/
>
> **The input file would contain coords like this: -45.491596
> -23.570147 769.750000
>
> And the output would be: 449834.145105 7393276.784821 769.750000
>
> /***********************************************/
>
> **) Using the api (I omit the error checking):
>
> /projPJ wgs = pj_init_plus("+init=epsg:32723 +proj=latlong");
> /
> /projPJ sirgas = = pj_init_plus("+init=epsg:31983");
> /
> /double lat = -45.491596;
> /
> /double lon = -23.570147;
> double alt = 769.750000;
>
> /
> /lat *= DEG_TO_RAD;
> /
> /lon *= DEG_TO_RAD;
> /
> /
> /
> /pj_transform(wgs, sirgas, 1, 1, &lon, &lat, &alt);/
>
> This outputs: 449834.127632 7393276.821296 769.750000
>
> In both cases, the left part of the returned UTM easting and northing
> coordinates are the same, but the numbers after the decimal point are
> different.
>
> I'm only transforming the input lat/lon coordintates when using the api,
> since if I transform them before calling cs2cs, it will output wron
> coords (the easting will have 7 digits before the decimal points).
>
> What's happening here? The only difference I can see it's the
> transformation of the lat/lon coordinates from degrees to radians: I'm
> multypling directly while in the cs2cs source, there's a call to the
> /dmstor/ function (which I can't call directly, it seems).
>
> Thanks for your time & cheers!
> Adri.
>
>
> _______________________________________________
> Proj mailing list
> Proj at lists.maptools.org
> http://lists.maptools.org/mailman/listinfo/proj
>
More information about the Proj
mailing list