[Mapbender-users] Problems with the handling of some OWS in Mapbender2 - solved
Armin Retterath
armin.retterath at lvermgeo.rlp.de
Wed Jul 2 07:03:39 PDT 2014
Hello together,
in some Mapbender implementations it is not possible to register
services, that have a global extent like -180,-90,180,90.
It was possible without any problems under postgis 1.3.1 and proj4 4.5
(e.g. debian lenny), but when updating to postgis 1.5.1 in conjunction
with proj4.7 (e.g. debian wheezy) it came to problems when nadgrids are
used to make precise coordinate transformations.
The problem was the definition of the nadgrids in the epsg file and in
the postgis spatial_ref_sys table. Before proj4.6, someone was able to
define following proj4text:
+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +units=m +nadgrids=BETA2007.gsb
When st_transform was invoked, the transformation was done without
problems. In the newer version an error will occur, if the point that
should be transformed is not in the bbox of the nadgrid itself. The
spatial selects will throw an error and mapbender makes trouble ;-) .
If you update to a newer postgis/proj version, you should set the @ sign
before the .gsb file and give a null value for the case, that the gsb
file is not used (e.g. the point is outside the bbox of the grid or the
grid file was not found).
+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +units=m +nadgrids=@BETA2007.gsb,null
After this you will not longer will have trouble with your postgis and
mapbender ;-) .
SQL to update the proj4text in case of german-wide BETA2007
transformations (you have to download the BETA2007.gsb to the proj
folder before):
UPDATE spatial_ref_sys set proj4text = '+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +units=m +nadgrids=@BETA2007.gsb,null' WHERE srid = 31466;
UPDATE spatial_ref_sys set proj4text = '+proj=tmerc +lat_0=0 +lon_0=9 +k=1 +x_0=3500000 +y_0=0 +ellps=bessel +units=m +nadgrids=@BETA2007.gsb,null' WHERE srid = 31467;
UPDATE spatial_ref_sys set proj4text = '+proj=tmerc +lat_0=0 +lon_0=12 +k=1 +x_0=4500000 +y_0=0 +ellps=bessel +units=m +nadgrids=@BETA2007.gsb,null' WHERE srid = 31468;
UPDATE spatial_ref_sys set proj4text = '+proj=tmerc +lat_0=0 +lon_0=15 +k=1 +x_0=5500000 +y_0=0 +ellps=bessel +units=m +nadgrids=@BETA2007.gsb,null' WHERE srid = 31469;
UPDATE spatial_ref_sys set proj4text = '+proj=utm +zone=32 +ellps=GRS80 +units=m +datum=WGS84' WHERE srid = 25832;
Hope that helps a little bit
Armin
--
Zentrale Stelle Geodateninfrastruktur
Rheinland-Pfalz
LVermGeo-RP
Ferdinand-Sauerbruch-Straße 15
56073 Koblenz
0261/492-466
armin.retterath at lvermgeo.rlp.de
http://www.geoportal.rlp.de
More information about the Mapbender_users
mailing list