Ticket #1 (closed defect: fixed)
g.setproj bug: latitude_of_center and longitude_of_center ignored
| Reported by: | neteler | Owned by: | grass-dev@… |
|---|---|---|---|
| Priority: | major | Milestone: | 6.3.0 |
| Component: | Default | Version: | svn-trunk |
| Keywords: | proj | Cc: | |
| Platform: | CPU: |
Description
I discovered two issues with the Swiss. Obl. Mercator definition:
When defining it from scratch:
D Other Projection
Please specify projection name
>somerc
Please specify datum name
>list
Number Details
---
1 Used in whole ch1903 region
(PROJ.4 Params towgs84=674.253,15.053,405.324)
Default 3-Parameter Transformation (May not be optimum for older datums; use this only if no more appropriate
options are available.)
-> here the 7-param is missing which is listed (but commented) in lib/gis/datumtransform.table. Any objections to activate that?
We continue in the dialog as usual... (I custom defined the 7-param). Then:
g.proj -w
PROJCS["Swiss. Obl. Mercator",
GEOGCS["bessel",
DATUM["unknown",
SPHEROID["Bessel_1841",6377397.155,299.1528128],
TOWGS84[660.077,13.551,369.344,2.484,1.783,2.939,0.56]],
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433]],
PROJECTION["Hotine_Oblique_Mercator"],
PARAMETER["latitude_of_center",0],
PARAMETER["longitude_of_center",0],
PARAMETER["azimuth",90],
PARAMETER["rectified_grid_angle",90],
PARAMETER["scale_factor",1],
PARAMETER["false_easting",600000],
PARAMETER["false_northing",200000],
UNIT["meter",1]]
-> we observe that latitude_of_center and longitude_of_center are WRONG.
Comparing to http://www.epsg-registry.org/
-> [retrieve by code]
Code: 21781
Latitude of projection centre: 46° 57' 8.66" N
Unit of Measure: sexagesimal DMS
Sign Reversible: No
Longitude of projection centre: 7° 26' 22.5" E
Unit of Measure: sexagesimal DMS
Sign Reversible: No
Azimuth of initial line: 90°
Unit of Measure: sexagesimal DMS
Sign Reversible: No
Angle from Rectified to Skew Grid: 90°
Unit of Measure: sexagesimal DMS
Sign Reversible: No
Scale factor on initial line: 1
Unit of Measure: unity
Sign Reversible: No
Easting at projection centre: 600000
Unit of Measure: metre
Sign Reversible: No
Northing at projection centre: 200000
Unit of Measure: metre
Sign Reversible: No
BUT if I look into:
cd general/g.setproj/
grep -i somer *
main.c: else if (G_strcasecmp(proj_out, "SOMERC") == 0) {
proj-parms.table:SOMERC:Swiss. Obl.
Mercator:KFACT=noask,1.0;LAT0=noask,46.952405556;LON0=noask,7.4395833333;X0=noask,600000.0;Y0=noask,200000.0
It seems to be there. How come that this isn't used? I am not familiar enough with the mechanism to fix that...
Markus
Change History
Note: See
TracTickets for help on using
tickets.
