为PostGIS DB中的2D渲染优化3D数据

时间:2019-03-29 16:58:40

标签: 3d postgis computational-geometry topology zbuffer

我的 PostGIS 数据库中有3D模型。该数据基本上是大部分来自Autocad DXF的大三角形面集合。

我将其用于基于THREEJS的Webapp中的可视化,并且效果很好。但是我有基于OpenLayers的2D视图。 OpenLayers WebGL渲染器不好(无法用于线条和多边形)。我使用vectortiles(直接由postgis生产)进行clint-vector渲染,使用mapserver进行server-raseter渲染。

两种方法都可以,但是显示的边缘过多(有时在使用MVT时浏览器内存使用存在问题)。我需要“优化”我的3D数据以最小化“吞吐量”。 我想我可以为此做两件事:

1)合并共面的面;

2)裁剪不可见的面孔(看起来像z缓冲区算法,但用于正交相机的矢量数据)。

我试图用postgis来做这两件事,但是即使在预处理阶段,使用它的速度也非常慢。 我正在寻找一些好的建议。可能是我需要使用PostGIS拓扑系统或群集。但是我找不到任何好的文档/示例。

1 个答案:

答案 0 :(得分:0)

我喜欢这样:

  1. 不是渲染简单的网格,而是渲染许多正方形。
  2. 调整widthSegments和heightSegments
  3. 在.json中导出数据
  4. 将数据分配给网格

它这样做: http://glayve.com/relief/verdon.html