I’ve meandered around a bit more and not been documenting… Let’s do some catchup.
I searched and found this on github a while ago:
And after a couple of adjustments got it to run. It’s a set of scripts meant to convert a Canadian digital elevation format to stl. I found some data, got it to run and generated an stl file.
I then imported the stl into OpenSCAD and got to see what it made.
Looks like we’re heading in the right direction.
Now I’m reading more about gdal and going to use that to read GeoTiff, and then write my own version of the STL outputter. I think what the github project above did is pretty decent, but I’ve got some idea.
gdal_translate -projwin -123.8, 47.97 -123.6 47.7 n47_w124_1arc_v2.tif mto.tif
I found someone who is doing what I want to do, and doing it very well. This does not deter me.
Also, it looks like I’m headed in a correct direction, tools wise:
Model created using GDAL, NetPBM, Gmsh, Carve, MeshLab, and other custom software
Source of digital elevation data: U.S. Geological Survey
The USGS home page is http://www.usgs.gov/
brew install gdal
(and all of the complaining associated with that)
1. Lat: 47.9000, Lon: -123.8000
2. Lat: 47.9000, Lon: -123.6000
3. Lat: 47.7000, Lon: -123.6000
4. Lat: 47.7000, Lon: -123.8000
An outline of work to, with a lot of hand waving:
Get data. Assume this data fully contains my target area. Starting with SRTM from http://earthexplorer.usgs.gov/ . I’m going to start with GeoTIFF, it seems like something of a standard.
I’ve downloaded a 25MB chunk—it’s sitting there on disk, staring at me. I’m imagining downloading all the data and having a globe at my figure tips. One thing at a time.
Trim data. Let’s work with a subset of the data tile sent by usgs. No idea how to do this, yet.
Make an lat-lon box, we should chose a sample area. GDAL
http://www.gdal.org/ - the Geospation Data Abstraction Layer looks important.
Convert data. We are shooting for a STL (STereoLithography) format, OpenSCAD can import it.
Import data. Get it into OpenSCAD.
Make a block. Make a shape that is a block with the top face being the elevation of Mt. Olympus. There will be some scaling to make it interesting.
- Choose a lat-lon box. Figure out expected elevation range.
- Find a way to trim a GeoTIFF into a smaller GeoTIFF. Maybe a tiff editor can do it!
- Read GeoTIFF in, write STL out.
I have a long list of interesting projects that I’m pretty sure I’ll never get to. I write them down to give them a place to live and occasionally day dream about them. I’ve had multiple projects spring up this last year around the Olympic Mountains and have decided I need to get more intimate with them. What this means for me: data!
I want to print terrain for my first project. This means jumping into to different fields, GIS and 3D printing, that I know nothing about.
I’ve been slowly accumulating sources of information about both of these and today at a friend’s crafting parlor I jumped down a rabbit hole of GIS websites. I’ve learned there is much more out there then I need to get this done and my approach today was neither depth or breadth focus, I just wandered everywhere and I’m exhausted.
Next up I’m going to do the same sort of dive for 3D printing. Hopefully this will be a bit simpler, at least a shallower pool to paddle in. As I learn a bit about each, I look forward to crafting connections to realize some data-driven printing. I’m not the first, some of this might be wheel-rounding, but I look forward to see what I can learn.
I have a series of dreams in my head for what I might do with this project but to start I’m going to go simple: I want to print a single block with Mt. Olympus on top. I’d like the work I do to be able to extend to more terrain, but getting to a data-created block will be my big step 1.
i bought snowshoes and a handlebar bag and a campsite! BAM!