坐标轴排序¶
空间参考系的定义包括用于解释坐标的轴顺序的指示。中定义了许多投影空间参照系统 north/east 正式命令 EPSG
定义,但被解释为 east/north
按早期版本的 WFS
协议。
WFS 1.0.0
:提供地理坐标east/north
并且可能不信任是否尊重EPSG定义轴顺序。WFS 1.1.0
:遵守EPSG定义定义的轴顺序。WFS 2.0.0
:遵守EPSG定义定义的轴顺序。
强制内容进入 east/north
订单的目的是为了便于开发人员使用 x/y 命令。然而,这一决定带来了无尽的困惑,并在 WFS
.
备注
一些空间参考系统,例如极坐标赤平图,没有 east
或 west
因为他们在轴心有一根杆子。
当客户在不同的 WFS
版本。为了减少混淆并提高互操作性,GeoServer在指定空间参考系统时采用了以下准则,以避免歧义。
表现 |
坐标轴顺序 |
解释 |
---|---|---|
|
经度/纬度 |
假设 |
|
经度/纬度 |
严格的 |
|
经纬度 |
严格的 |
|
经纬度 |
严格的 |
SRSList轴顺序¶
比较空间参考系定义 EPSG:4326
:
同样的方法可以用来检查GeoServer支持的任何空间参考系统的定义。
备注
正式的 EPSG
定义提供用于解释坐标值的轴顺序。GeoServer使用的内部表示并不总是尊重 EPSG
提供轴顺序。
在上面的例子中 EPSG:4326
定义为 north/east 轴顺序,而内部表示具有 east/north
秩序。
启动选项 -Dorg.geotools.referencing.forceXY=true
用于将GeoServer配置为在 east/north 坐标轴顺序。我们建议默认值为 true
以匹配做出这一假设的广泛客户。
图层轴顺序¶
默认数据目录包含以下数据集,说明此问题:
shapefile/states.shp
`:按x/y顺序存储的数据:MULTIPOLYGON (((-121.664154 38.169369,-121.781296 38.066856, ...
shapefiles/states.prj
::GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]]
发布为
topp:states
空间参考系EPSG:4326
.
要查看此层是如何发布的,请执行以下操作:
导航到 Edit Layer 第页
topp:states
.定位 Native SRS 然后点击 GCS_WGS_1984 链接以显示GeoServer如何解释
PRJ
文件在上面。这个
PRJ
未提供轴顺序,GeoSever已填写假设。这描述了 x/y 与我们的数据匹配的顺序,我们可以不经修改使用它。本地SRS顶部:州¶
定位 Declared SRS 然后点击 EPSG:WGS 84... 链接以查看用于发布此内容的定义。
这是
EPSG:4326
如上面的SRSList所示,它还描述了 x/y 订单匹配我们的数据。这个定义提供了更易读的名称以及附加的AUTHORITY
可能有助于客户端应用程序的信息。声明的SRS顶部:州¶
这个 SRS Handling 设置为
Force declared
完全忽略提供的 Native SRS 定义和使用 Declared SRS .强制声明的SRS处理顶部:州
WFS 1.0轴顺序¶
GetCapabilities 描写 topp:states
使用:
http://localhost:8080/geoserver/ows?service=wfs&version=1.0.0&request=GetCapabilities
<FeatureType><Name>topp:states</Name>
<Title>USA Population</Title>
<Abstract>This is some census data on the states.</Abstract>
<Keywords>census, united, boundaries, state, states</Keywords>
<SRS>EPSG:4326</SRS>
<LatLongBoundingBox minx="-124.731422" miny="24.955967" maxx="-66.969849" maxy="49.371735" />
</FeatureType>
WFS 1.0描述了纬度/经度的界限,您可以将其与 minx 和 maxx 有经度,还有 miny 和 maxy 有自由度。
WFS 1.0版 GetFeature 请求默认为GML2输出,默认为 EPSG:4326
用于发布图层的空间参照系统:
WFS 1.0默认值:http://localhost/本地主机:8080/geoserver/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=topp%3states&featureId=states.1
GML2输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs><gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> -88.071564,37.51099 -88.087883,37.476273
WFS 1.0输出格式GML3¶
GML3.1(默认
EPSG:4326
):GML3输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
GML3.1重投影到
EPSG:4326
GML3输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883
GML 3.1重新提交给
urn:x-ogc:def:crs:EPSG:4326
GML3.1输出使用
urn:x-ogc:def:crs:EPSG:4326
参考和数据的y/x顺序:<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 1.0输出格式GML32¶
GML3.2标准:
GML32输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing> <gml:posList>-88.071564 37.51099 -88.087883 37.476273
GML3.2重投影到
EPSG:4326
:GML32输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
GML3.2重投影到
urn:x-ogc:def:crs:EPSG:4326
:GML3.2输出使用
urn:x-ogc:def:crs:EPSG:4326
参考和数据的y/x顺序:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing><gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 1.1轴顺序¶
GetCapabilities 描写 topp:states
使用:
http://localhost:8080/geoserver/ows?service=wfs&version=1.1.0&request=GetCapabilities
<FeatureType>
<Name>topp:states</Name>
<Title>USA Population</Title>
<Abstract>This is some census data on the states.</Abstract>
<ows:Keywords>
<ows:Keyword>census</ows:Keyword><ows:Keyword>united</ows:Keyword><ows:Keyword>boundaries</ows:Keyword><ows:Keyword>state</ows:Keyword><ows:Keyword>states</ows:Keyword>
</ows:Keywords>
<DefaultSRS>urn:x-ogc:def:crs:EPSG:4326</DefaultSRS>
<ows:WGS84BoundingBox>
<ows:LowerCorner>-124.731422 24.955967</ows:LowerCorner>
<ows:UpperCorner>-66.969849 49.371735</ows:UpperCorner>
</ows:WGS84BoundingBox></FeatureType>
WFS 1.1描述了 WGS84BoundingBox
作为x/y顺序的上下角。
警告
这个组合与 DefaultSRS
定义和 LowerCorner
和 UpperCorner
协调顺序,可能会混淆客户端应用程序。
结果与WFS 1.1.0实现规范GetCapabilities示例相匹配。
WFS 1.1版 GetFeature 请求默认为GML3输出,默认为 urn:x-ogc:def:crs:EPSG:4326
用于发布图层的空间参照系统:
WFS 1.1默认值:
GML3.1输出使用
urn:x-ogc:def:crs:EPSG:4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 1.1重投影到
EPSG:4326
:GML3.1输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
备注
这个 srsName 和 posList 坐标顺序一致。
此方法可用于强制x/y顺序。
WFS 1.1重投影到
urn:x-ogc:def:crs:EPSG:4326
:GML3.1输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 1.1输出格式GML2¶
GML2号:
GML2输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按y/x顺序排列:<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon><gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> 37.51099,-88.071564 37.476273,-88.087883
GML2重投影到
EPSG:4326
:GML2输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> -88.071564,37.51099 -88.087883,37.476273
备注
这个 srsName 和 posList 坐标顺序一致。
此方法可用于强制x/y顺序。
WFS 1.1输出格式GML3¶
GML3号:
GML3.1输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
GML3重投影到
EPSG:4326
:GML3.1输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考文献, but has changed the data to x/y order :<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
备注
这个 srsName 和 posList 坐标顺序一致。
此方法可用于强制x/y顺序。
GML3重投影到
urn:x-ogc:def:crs:EPSG:4326
GML3.1输出使用
urn:x-ogc:def:crs:EPSG:4326
参考和数据的y/x顺序:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
备注
这个 srsName 和 posList 坐标顺序一致。
此方法可用于强制x/y顺序。
WFS 1.1输出格式GML32¶
GML3.2标准:
GML32输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember><gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing> <gml:posList>37.51099 -88.071564 37.476273 -88.087883
GML3.2重投影到
EPSG:4326
:GML32输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing> <gml:posList>-88.071564 37.51099 -88.087883 37.476273
GML3.2重投影到
urn:x-ogc:def:crs:EPSG:4326
:GML3.2输出使用
urn:x-ogc:def:crs:EPSG:4326
参考和数据的y/x顺序:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior> <gml:LinearRing><gml:posList>37.51099 -88.071564 37.476273 -88.087883
WFS 2.0轴顺序¶
GetCapabilities 描写 topp:states
使用:
http://localhost:8080/geoserver/ows?service=wfs&version=2.0.0&request=GetCapabilities
<FeatureType>
<Name>topp:states</Name>
<Title>USA Population</Title>
<Abstract>This is some census data on the states.</Abstract>
<ows:Keywords>
<ows:Keyword>census</ows:Keyword><ows:Keyword>united</ows:Keyword><ows:Keyword>boundaries</ows:Keyword><ows:Keyword>state</ows:Keyword><ows:Keyword>states</ows:Keyword>
</ows:Keywords>
<DefaultCRS>urn:ogc:def:crs:EPSG::4326</DefaultCRS>
<ows:WGS84BoundingBox>
<ows:LowerCorner>-124.731422 24.955967</ows:LowerCorner>
<ows:UpperCorner>-66.969849 49.371735</ows:UpperCorner>
</ows:WGS84BoundingBox>
</FeatureType>
WFS 2.0描述了 WGS84BoundingBox
作为x/y顺序的上下角。
警告
这个组合与 DefaultSRS
定义和 LowerCorner
和 UpperCorner
协调顺序,可能会混淆客户端应用程序。
结果与WFS 2.0getcapabilities示例相匹配。
WFS 2.0版 GetFeature 请求默认为GML3.2输出,默认为 urn:ogc:def:crs:EPSG::4326
用于发布图层的空间参照系统:
WFS 2.0默认值:
GML3.2输出使用
urn:ogc:def:crs:EPSG::4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior><gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 2.0重投影到
EPSG:4326
:GML3.2输出使用
http://www.opengis.net/gml/srs/epsg.xml#4326
参考,数据按x/y顺序排列:<gml:MultiSurface srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior><gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
WFS 2.0重投影到
urn:ogc:def:crs:EPSG::4326
http://localhost:8080/geoserver/ows?service=WFS&version=2.0.0&request=GetFeature&typeNames=topp%3Astates&featureId=states.1&srsName=urn:ogc:def:crs:EPSG::4326GML3.2输出使用
urn:ogc:def:crs:EPSG::4326
参考,数据按y/x顺序排列:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"> <gml:exterior><gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883 37.442852
WFS 2.0输出格式GML2¶
GML2号:
<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> 37.51099,-88.071564 37.476273,-88.087883
GML2重投影到
EPSG:4326
:<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> -88.071564,37.51099 -88.087883,37.476273
备注
这个 srsName 和 posList 坐标顺序一致。
此方法可用于强制x/y顺序。
GML2重投影到
urn:x-ogc:def:crs:EPSG:4326
:<gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates decimal="." cs="," ts=" "> 37.51099,-88.071564 37.476273,-88.087883
WFS 2.0输出格式GML3¶
GML3号:
<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
GML3重投影到
EPSG:4326
:<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
警告
这种组合不一致 srsName 和 posList 协调顺序,可能会混淆需要有效GML3文档的应用程序。
此方法可用于强制x/y顺序。
GML3重投影到
urn:x-ogc:def:crs:EPSG:4326
:<gml:MultiSurface srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:surfaceMember> <gml:Polygon> <gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
WFS 2.0输出格式GML32¶
GML32号:
<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"><gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883
GML32重投影到
EPSG:4326
:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"><gml:exterior> <gml:LinearRing> <gml:posList> -88.071564 37.51099 -88.087883 37.476273
警告
这种组合不一致 srsName 和 posList 协调顺序,可能会混淆需要有效GML3文档的应用程序。
此方法可用于强制x/y顺序。
GML32重投影到
urn:x-ogc:def:crs:EPSG:4326
:<gml:MultiSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="states.1.the_geom"> <gml:surfaceMember> <gml:Polygon gml:id="states.1.the_geom.1"><gml:exterior> <gml:LinearRing> <gml:posList> 37.51099 -88.071564 37.476273 -88.087883