【发布时间】:2019-08-20 16:15:45
【问题描述】:
我的 PostGIS 数据库中有 3D 模型。这些数据基本上是来自 Autocad DXF 的大量三角形面。
我用它在基于 THREEJS 的 webapp 中进行可视化,它运行良好。但我有基于 OpenLayers 的 2D 视图。 OpenLayers WebGL 渲染器不好(不适合线条和多边形)。我使用vectortiles(直接由postgis 生成)进行clint-vector 渲染,使用mapserver 进行服务器raseter 渲染。
这两种方法都有效,但我显示的边缘过多(有时我在使用 MVT 时会遇到浏览器内存使用问题)。我需要“优化”我的 3D 数据以最小化“吞吐量”。 我想我可以为此做两件事:
1) 合并共面面;
2) 切割不可见的人脸(看起来像 z-buffer 算法,但适用于正交相机的矢量数据)。
我尝试用 postgis 做这两件事,但即使在预处理阶段使用它也非常缓慢。 我正在寻找一些好的建议。可能我需要使用 PostGIS 拓扑系统或集群。但我没有找到任何好的文档/示例。
【问题讨论】:
标签: 3d postgis computational-geometry topology zbuffer