Create terrain from HGT elevation data?

I downloaded elevation data possibly based on data from the SRTM Space Shuttle mission: Contained in the zip archive are .hgt files.

How do I best convert that to terrain in Rhino?

My current strategy:

  1. Convert HGT to grayscale height map image.

  2. Using heightfield create surface from image.

At the moment I’m stuck at point 1. The two conversion programs that I tried crashed on Windows 7 X64:

Finally, I was able to convert from HGT to bitmap using a Windows application called VTBuilder.

When we were looking for “free” worldwide terrain data, I found a couple of sites that you could download 90 meter resolution section as ASCII grid files - albeit with a non-standard format for the header. I wrote a special importer for the files.

Here is one

90 meters is pretty low-res, one elevation point every 90 meters (3 arc seconds). 1 arc second data (~30 m) is not available everywhere in the world. Eventually I gave up on the project because it was too difficult/unreliable to get data…

I still have the ASCII importer (python) for that site’s data if you decide you might want it…


Thanks, @Helvetosaur, for the suggestion. However, to be honest, that data doesn’t seem to add anything. With the HGTs, I already have that. In the meantime, I find VTBuilder to be quite a nice tool to generate height maps. When importing HGTs, it puts them in the right position on a world map. I then select a region with the Area Tool, and Sample Elevation then allows me to merge the area that I selected into one rectangular layer. This layer I export to BMP, and then it’s ready for heightfield.

Now, I’m looking for areal images as texture.

I have tried VTBuilder. There is possible to export height map to image. But there is problem with coordinate system. If I have HGT with Geographic (World Geodetic System 1984) and convert layer to Mercator (World Geodetic System 1984), in VTBuilder every thing is ok, but exported image is still not in Mercator. Do you know how to export heightmap to image with Mercator coordinate system? Thanks

Unfortunately, I don’t know.


Why don’t you use Elk in Grasshopper? You can use the HGT files directly, no need to convert them. You can work with other file types too, even Open Street Map data. I’ve had very good results with Elk.

Hi @kraken,

You can also try Gismo Grasshopper plugin.
You do not import anything: just define the address, or latitude/longitude coordinates of your location, and the radius. Gismo will then automatically generate terrain and 3d buildings for that location.
Check the installation instructions in here.

1 Like

Hi, I don`t need 3D model, only what I need is grayscale heightmap in image in mercator coordinate system.

Hi @kraken,

Which Mercator coordinate system?
WGS 84 / World Mercator?


Can you attach your .hgt file please? (149.6 KB)

Check the attached file below. (151.8 KB)

VTBuilder throw error “Couldn’t import data from that file”

Maybe there is discrepancy with the HGT driver version used in VTBuilder and the SaoMiguel.hgt that I attached. SaoMiguel.hgt opens with no problem in QGIS:

Try the tiff version: (151.8 KB)

Hi, I tried open hgt in QGIS and it works. Is there possibility to fill in unknown areas via partial derivatives like VT builder?

Hi. Probably there is. But I have no idea how to do it in QGIS. Maybe you can ask a question about it on