Creating STLs from USGS datasets

For Christmas 2013 I did several designs involving the natural landscape of a location in upstate Pennsylvania. This particular model was cast out of solid (lead-free) pewter, mounted on a stained bass wood base engraved with scale information.

To provide the raw data for this model I used the USGS 1/9 arc second topographic maps (~3m resolution). Unfortunately the toolchain for this scenario is sorely underdeveloped, but I was able to get it working using MicroDEM and Zsurf4.

The USGS topographic data is available free on the USGS Store. I found the National Elevation Dataset easier to work with then GeoPDF. MicroDEM is apparently the software of choice to interpret this data according to my cartographer friend. That said, this isn’t the most robust piece of software I’ve ever seen so I’d recommend installing it on a VM (for instance, it only works correctly when installed to c:\microdem\). You’ll also need to extract FWTools to c:\microdem\fwtools\ to parse the USGS file format.

Open the .img file in MicroDEM as a DEM file (File -> Open -> Open DEM). Confusingly if you open it as an Image file, it just returns a black screen.

Zoom in on whatever section you plan to use. There is very little in terms of land markers in this view, you’ll probably have to do everything by recognizing the topography of the area. The USGS download page will help here as it has a lot more labeled data.

Once you’ve got the selection looking correct, you need to export a grayscale picture that represents only the height data. The picture you see now is a false-color shading intended to represent a sunlight source, and using it as a surface will result in a very skewed model with lots of drop-outs and every sunward surface registering as higher than the dark sides.

Click “Modify”, then “Elevation”. Change Display Colors to “Gray scale (monochrome)”. There are two options now, you can export the file with the scale left on for later reference and remove the scale before converting to a surface, or you can remove the scale by right clicking the picture, clicking “Legends/Marginalia”, and uncheck “Scale Bar”. If you try and convert the image to a surface without removing the scale, it’ll be embedded as the high/low points in relief. Finally right click the image, click “Save Image”, and save it to a .BMP file.

Zsurf4 can be used to convert grayscale height maps to IGES surfaces (.IGS), which a bunch of CAD programs can handle. I just did guess-and-check to figure out most of the settings when doing the translation. The USGS data is of high enough quality that you can turn most of the smoothing options way down and get better quality. You’ll probably have to bump Scale Z quite a bit to get it looking right. When you click “Process”, the IGS file will be found as srf.igs in the source bitmap folder.

Now that I have a surface, I imported it into SolidWorks. Next I drew a box around the surface and extruded a solid terminating when it intersects the surface. The surface can now be deleted and a new cube is cut out of the bottom side of the existing solid, leading to a “floor” that intersects the original (now deleted) surface allowing a void at the lowest points. This gives the impression of a lake and outflow complementing the natural lay of the land. Finally, a new solid is extruded from the now trimmed base, giving more definition on the bottom of the model.

The last thing I need to do to finish the model is figure out what the scale ended up being between the model and the real landscape. If you didn’t leave the scale on the original image, use MicroDEM and hit Calculate -> Distance to measure the real world distance of your landscape. Next, Calculate -> Elevations -> Elevations--extremes will give you the tall & short points in your model for calculating height scales. If you took off some of the bottom of the model like I did above, you’ll have to manually check some height points and calculate it appropriately. This model ended up being 1:15,000 X-Y and 1:5,000 Z. The different scales was an ascetic choice, a consistent scale looks a little too flat for this model.