目标
参考 Downloading Digital Elevation Data (SRTM) from USGS EarthExplorer - YouTube 学习从USGS上下载真实世界高度图数据。并尝试导入Houdini。
USGS:https://earthexplorer.usgs.gov/
0. 注册账号并登录
如果还没有账号,需要在这里注册账号,确认邮件。
随后登录。
1. 划定区域
首先,划定一片区域。(注意:此区域并非是最后下载的地形高度图数据的区域,因为最后下载的高度图是分块的,此区域仅表示在哪个区域搜索地图块)
打开USGS官网,在左侧第一个分栏 “Search Criteria” 中划定区域。
鼠标左键点击,以时针方向即可画一片区域。
2. 选择 Data Set
点击第二个分页 “Data Sets”。
关于 Data Set 的含义,目前不了解。
这里只是为了获得高度场数据,因此我选了与教程一样的:
3. 下载数据
点击 Results按钮(或者分页选择“Results”)
等待加载数据。。。
加载完成后,可以在左侧看到地图块数据。可以点击小脚丫图标显示其对应的位置:
点击下载
选择格式。目前我对这些格式并不了解,所以还是选了与教程一样的:
下载后得到一个 .tif 格式的图片:
4. 导入Houdini
在Houdini中使用 HeightField File 节点加载tif图片。
最初,它应该是平的。这是正常的,毕竟没有告诉他单位。
所以问题是,这个tif图片所代表的长宽是多少,而其值又对应什么高度呢?
先说结论,如果不要求特别精确的话,可以:
- Size 设置为 111
- Height Scale 设置为 30
效果:
这里的两个数值是这么得出的:
5*. 确定数据的尺寸
首先,对于平面方向:
可以查看数据的信息:
可以知道其长宽是1个经度与1个纬度。
- 对于纬度,大约是111km
- 对于经度,赤道部分大约是111km,离赤道越远就越小。这里也粗略视为111km。(实际需要再乘算 cos(纬度))
对于垂直方向:
我比较怀疑tif文件格式里是有关于其值对应的真实高度的信息的,只是Houdini里看不到。但是使用QGIS是可以看到的。比如我加载这个图片,就能看到:
而tif图片中的值,可以使用 HeightField Remap 节点的计算范围功能:
这样,就可以知道图片中的最大值 0.159823 对应于 真实高度 4891米。
所以说,缩放就是 4891/0.159823 。大约就是30km。(我还试了另一个地块,其缩放值也大约是30km)