1

我正在寻找从地形高程数据中渲染一些图像,并且想知道这种事情的最佳工具是什么。基本上我想从不同的位置和角度生成一座山的图像。图像可能有些粗糙和简单。

我已经使用了很多 GDAL 命令行工具,而 gdaldem 在创建自上而下的阴影地形图方面做得很好,但我还没有发现任何可以实现不同相机方向的东西。

我正在考虑的两种一般方法是:

  • 使用 GDAL python 绑定和针孔相机的方程并推出我自己的解决方案。如果可能的话,我想避免这样做:)
  • 使用现有工具来渲染图像,或者至少生成一个 3d 网格,这样我就可以用另一种方式渲染它
4

3 回答 3

1

您可以使用 Numpy/Scipy 中的 Delaunay 三角测量例程来获取您要寻找的网格;但这仍然只是在推出您自己的完整解决方案的漫长道路上的第一步。

就此而言,考虑仅使用数字地形数据,并通过任何临时方案将四个相邻点的每个四边形划分为两个三角形。那不是“3-D网格”吗?换句话说,要创建一个三角形网格(用于额外的 3D 渲染):

  • 考虑将地形栅格上的每个点连接到其四个邻居(N、S、E、W);
  • 此外,将每个四边形与另一对对角线相邻对分开。(例如:“分类使用 SW-NE 对角线”,或“使用均值更接近四边形中所有四个点均值的对角线”。)

Matplotlib 具有渲染这样的网格的能力,但是对于合理的地形补丁,您可能需要的点数量可能几乎完全淹没了 matplotlib 的动态特征(平移和缩放;甚至 3D 的旋转)。

于 2016-02-29T16:15:13.107 回答
-1

在推出自己的项目之前,您可能需要查看虚拟地形项目。该项目的目标是促进创建工具,以便以交互式 3D 数字形式轻松构建现实世界的任何部分。.. 工具及其源代码可免费共享,以帮助加速必要技术的采用和开发。

于 2016-03-01T18:21:52.500 回答
-1

我认为GrassGIS可能能够做你想做的事情。

你可以在这里查看 GrassGIS 可以做什么的一些截图。

于 2016-02-29T19:14:24.740 回答