首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mapnik没有渲染postgis multipolygonzm?

mapnik没有渲染postgis multipolygonzm?
EN

Stack Overflow用户
提问于 2013-05-13 01:48:27
回答 1查看 893关注 0票数 3

所以我加载了一堆NHD数据,几何图形最终为MultiPolygonZM (对于其他表,则为pointZM和areaZM )

代码语言:javascript
复制
  way geometry(MultiPolygonZM,900913)

我已经测试了查询及其直接针对数据库运行时返回的数据。这是我的风格:

代码语言:javascript
复制
<Style name="waterways">
  <Rule>
    <LineSymbolizer stroke="blue" stroke-width="3" />
  </Rule>
</Style>
<Layer name="waterways" status="on">
  <StyleName>waterways</StyleName>
  <Datasource>
    <Parameter name="table">
    (select way
     from nhd_waterbody)
    as waterway
    </Parameter>
    <Parameter name="type">postgis</Parameter>
    <Parameter name="port">5432</Parameter>
    <Parameter name="user">gisuser</Parameter>
    <Parameter name="dbname">gis</Parameter>
    <Parameter name="estimate_extent">false</Parameter>
    <Parameter name="extent">-20037508,-19929239,20037508,19929239</Parameter>
  </Datasource>
</Layer>

但是我不能让mapnik (2.10版)来渲染它。来自mapnik和qgis (v1.8)的osm数据渲染得很好(它的标准MultiPolygon,而不是4d)。其他人有过类似的经历吗?这是一个几何问题,还是仅仅是一个转移注意力的问题?有没有办法让mapnik在渲染时输出任何类型的调试信息?

蒂娅!

--兰迪

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-13 10:45:19

一些地理信息系统程序,例如QGIS,在内部使用ST_Force_2D从高维数据类型生成二维图形。我不确定Mapnik如何处理这些几何图形,但我怀疑它们可能不受支持。此外,一定要仔细检查范围,因为这经常被忽视。

如果你实际上没有使用更高的维度,那么删除它们!对于PostGIS 2.0:

代码语言:javascript
复制
ALTER TABLE my_table
    ALTER COLUMN way TYPE geometry(MultiPolygon,900913) USING ST_Force_2D(way);

对于PostGIS 1.x,请参阅this answer

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16510338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档