[mapserver-users] WFS bbox/intersect etc query from custom projection to EPSG:4326
Rahkonen Jukka (MML)
jukka.rahkonen at maanmittauslaitos.fi
Thu Nov 25 01:12:42 PST 2021
(resending to the list without the original mail, list has rather (too?) strict size limits, 40 KB)
Hi,
Perhaps you fell into the infamous axis order trap. With WFS 1.1.x and 2.0 the coordinates of EPSG:4326 most be in latitude-longiture oreder. I modified you mapfile a bit for my test data that are in EPSG:3067, and this request
http://localhost:8060/cgi-bin/mapserv.exe?map=c:/ms4w_data/wfstest.map&service=WFS&version=2.0.0&request=GetFeature&TypeNames=ms:testi_virolaisille&BBOX=60.1870614692821,24.9810192523929,60.2794267964524,25.1561900521738,urn:ogc:def:crs:EPSG::4326
finds buildings from the database. The SQL that Mapserver generates is:
[Thu Nov 25 10:23:51 2021].654000 msPostGISLayerWhichShapes query: SELECT "fid"::text,"id"::text,"mtk_id"::text,"sijaintitarkkuus"::text,"aineistolahde"::text,"alkupvm"::text,"kohdeluokka"::text,"korkeustarkkuus"::text,"kayttotarkoitus"::text,"kerrosluku"::text,"pohjankorkeus"::text,"korkeusarvo"::text,ST_AsBinary(("geom"),'NDR') as geom,"fid"::text FROM rakennus WHERE "geom" && ST_GeomFromText('POLYGON((388034.000000002 6673671.81841385,388034.000000002 6684239.6439825,398034 6684239.6439825,398034 6673671.81841385,388034.000000002 6673671.81841385))',3067)
Notice that the re-projected polygon seems to be the envelope of the rotated bbox from the transformation and therefore it is bigger than the polygon that would be achieved by connecting the projected corner points as this test with gdaltranform shows.
gdaltransform -s_srs epsg:4326 -t_srs epsg:3067
24.9810192523929 60.1870614692821
388034.000000002 6673956 0
25.1561900521738 60.279426796452
398033.999999999 6683955.99999996 0
I add also my mapfile, I apologize that it is just a fast modification of some old mapfile and is not the cleanest possible.
MAP
CONFIG "MS_ERRORFILE" "/ms4w_data/ms_error.txt"
EXTENT 19970 6597278 749676 7785300
PROJECTION
"init=epsg:3067"
END
OUTPUTFORMAT
NAME "OGRGML"
DRIVER "OGR/GML"
FORMATOPTION "STORAGE=stream"
FORMATOPTION "LCO:COORDINATE_PRECISION=10"
END
OUTPUTFORMAT
NAME "GeoJSON"
DRIVER "OGR/GEOJSON"
MIMETYPE "application/json; subtype=geojson; charset=utf-8"
FORMATOPTION "STORAGE=stream"
FORMATOPTION "FORM=SIMPLE"
FORMATOPTION "LCO:COORDINATE_PRECISION=10"
END
LAYER
NAME "testi_virolaisille"
STATUS ON
DEBUG 10
TYPE polygon
PROJECTION
"init=epsg:3067"
END
METADATA
"ows_title" "viro_testi"
"ows_abstract" "viro_testi"
"wfs_getfeature_formatlist" "GeoJSON"
# "gml_featureid" "id"
"gml_include_items" "all"
# "gml_types" "auto"
"wfs_srs" "EPSG:3067 EPSG:3857 EPSG:4326"
END
CONNECTIONTYPE POSTGIS
CONNECTION "host=localhost port=5432 dbname= user= password= "
DATA "geom from rakennus using SRID=3067"
CLASS
STYLE
COLOR 255 0 0
END
END
END
WEB
MINSCALE 10
MAXSCALE 1550000
METADATA
"wms_title" "wfs_test"
"wfs_onlineresource" http://localhost:8060/cgi-bin/mapserv.exe?map=c:\ms4w_data\wfstest.map
"wms_srs" "EPSG:4326 EPSG:900913 EPSG:3857 EPSG:31370"
"wms_enable_request" "*"
"wms_feature_info_mime_type" "text/html"
"wms_format" "image/png"
"wfs_title" "wfs_test"
"wfs_srs" "EPSG:3067 EPSG:3857 EPSG:4326"
"wfs_enable_request" "*"
"wfs_precision" "10"
#"wfs_feature_info_mime_type" "text/html"
END
END
END
-Jukka Rahkonen-
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20211125/b7f3f0b9/attachment.htm>
More information about the MapServer-users
mailing list