I have used Gismo successfully to create terrain. It downloads terrain data via Opentopography. But I have not found an option to specify my own files. The description of at least one Gismo component mentions that terrain can be created with Ladybug. I have installed Ladybug, but again I’m lost.
Hi @feklee
Indeed Gismo does not have component to load custom terrain files. It can generate automatically a terrain for defined location/address and radius.
The functionality to open a terrain file is actually possible via Gismo’s “Terrain Generator” component’s source code. But I still haven’t exposed it as a new Gismo component.
I processed the sample tile 2026-02-13+08_dsm.tif from JAXA’s ALOS Global Digital Surface Model (terms of use):
I registered an account by following the instruction on the AW3D30 page.
I downloaded a tile covering the area from 20°N 110°E to 25°N 115°E: N020E110_N025E115
This is near Xingping, China. In this area are the mountains found on the 20 Yuan bank note. Unfortunately, the data in that region is not very good. Various of the more interesting mountain tops are missing. They might be too steep to be scanned by the ALOS satellite imaging system. Anyhow, some of the data inside the tile is usable. And this is just for purpose of demonstrating the process anyhow.
I extracted the tile. Of the sub-tiles contained within, I picked ALPSMLC30_N024E110_DSM.tif for processing.
First it needed to be converted from degrees to UTM coordinates (meters). I used GDAL:
Heron can use the EPSG:32652 coordinate system by setting it with the HeronSRS component. In this case, I’ve set Rhino’s EarthAnchorPoint to be the origin of EPSG:32652 so that your cropping rectangle works with the coordinates you provided, but the results will be very far from the origin, which can cause some floating point errors if you want to do more with the mesh later. I’d recommend setting the EAP to the center of your area of interest and can show you how to do this if you’d like.
The definition takes the DSMs from the folder you provided and warps them to vrt files (small reference files to the originals set to the given coordinate system) using Heron’s GdalWarp component, a wrapper for the GDAL Warp command line. Once you have this list of vrt files, the ImportTopo component can combine them into one dataset and crop it down with the given boundary. GDAL is good at handling all this data without loading them all into memory.
This methodology allows you to reference and crop all the DSM files at once with very little overhead and to use an arbitrary cropping boundary that crosses over tiles.
Given the desire to use tiled datasets here, the GdalMerge or GdalBuildVrt capabilities of Gdal would come in handy. I can look into adding them to Heron’s components.
Thank you, but this is not urgent. At the moment, I am just playing around, though I might use it for a project in the future.
Note that I had some issues with stability, or I did something wrong. For part of the day, ImportTopo just didn’t want to work. It always reported an out of bounds error. ITL had no issues. Perhaps there is some race condition with SetEAP, because later – after a restart of my system – it worked again. In all cases, I had the Rhino file set to meters.