3D Printing of The Oroville Dam

A 2.941Mb PDF of this article as it appeared in the magazine complete with images is available by clicking HERE

Raised relief maps, terrain models or 3D maps are not new. They have been around in different manufacturing techniques and materials since the existence of the first civilizations. Since the 18th century until the last years of the 20th century the techniques used to create these 3D maps have remained basically the same. These techniques were mainly handcrafted, and involved several materials (a good link for the history and techniques: www.terrainmodels.com).

At EOSGIS I have selected Fused Filament 3D printers (FF 3d printer) to make bespoke 3D models using Earth sciences data of any type: elevation, cartography, geology, Lidar, GIS and CAD.

Making the decision about which type of 3D printer to choose was not just a matter of price or the flexibility of software and hardware, but to aspects related with the earth sciences data formats and its possible conversion into 3D objects. In the end, all this is about printing geo-data in 3D, and the 3D printer software can just load a limited number of 3D object formats: mainly STL, AMF and wavefront obj. These are the most common formats any 3D printer software will read. All of them have something in common: the objects must be manifold (in plain English: a 3D closed volume).

I decided to challenge me and my 3D printing process: Suppose that for some reason I need to make a 3D model because of a major global issue in a rush. Can this be done? So looking at the TV news the first "geographical" news I saw was the one about the Oroville dam.

As an example application of 3D printing, the Oroville Dam 3D printed model took 5 hours to get printed. It’s not a big model: 19,5 cm width x 19 cm length x 3,3 cm height (7,6 in x 7,4 in x 1,3 in) https://sketchfab.com/EOSGIS. The model has a vertical exaggeration of 2.5 X to enhance the relief, since it covers an area of 5.94 Km x 5.78 Km and it is only about 350 meters from the lowest to the highest point. (There is no rule of thumb but that of aesthetic appearance)

The first thing was locating the Dam within California (google helped with this). I saved the location as a KML file so I would not lose the location once in the GIS program. Second step was about searching what data was available. I was sure that the USGS will have DEMs and Orthoimages. I wanted to know what maximum resolution I may download for free and if there exist any LiDAR data.

I did not find any LiDAR data for the complete area I want to represent, but at the USGS National Map (https:// viewer.nationalmap.gov) I found lots of data types. I decided to download the NED 10 ft elevation DEMs and the USGS Topo 1:24K maps. These maps are downloadable in geoPdf format (so they have the projection, datum , units information to get them into a GIS). These pdf files are arranged internally with several layers, so I can show or hide the layers I don’t want to be included in the 3D map. And, one of the layers is an orthophoto. The good thing for a rush of the geoPdf maps provided by the USGS is that they are already edited in a final readable map (I don’t have to design the map). So for a rush, I have all the required data to make a good map: the DEM, the map and the orthophoto.

The DEM was loaded into a GIS (QGIS) with the map and orthophotos. For the map I hid the frame, grid, legend, and some other minor layers. Then I began to play around looking for the best area to depict. It’s a big dam, so I decided not to frame it completely or the scale would be too small (I need to play around the 1:24K scale of the USGS Topo Maps). I decided to focus on the dam front, where the problem is, so I exported the DEM to a 3D object format (wavefront obj). The resolution of the DEM is 10ft, more than enough for the final scale of the map (around 1:33.000) and I had to generalize the DEM to a lower resolution, about 20 ft per pixel.

Usually GIS software is not prepared to output clean 3D objects usable by 3D programs. The first thing you will discover with the simplest 3D geodata, a Digital Elevation Model, is that the result of exporting it to a 3D object can result in a huge object that is difficult to manipulate in a 3D program. It will need some preprocessing with other software before having a usable object. Other data types: vectors, points, point clouds, will require further preprocessing tasks to make them usable.

You can use commercial software, but sometimes the best preprocessing software are those little utilities that someone created to solve a little task. Even the ones that you can program yourself (if you know some programming language).

To get the whole picture about 3D printing geodata, the diagram above will help.

3D Program
This model was later imported into a 3D program (blender) for the next processing tasks. Unfortunately 3D programs do not manage correctly (or at all) geo-coordinates (lat/lon, UTM, Mercator,..) These programs are not prepared to work with either long decimal numbers or huge coordinate numbers. We must transform every geodata object to another usable coordinate system, a "local" one, somewhat like what surveyors do.

The final 3D printed object must maintain the cartographic or real world characteristics too. If we are printing a relief map, it must allow us to measure distances, angles, areas, and heights. If we are printing a building model it must be to scale.

The final challenge when printing 3D maps is to maintain its cartographic characteristics. If it does not, we are just printing a toy.

These are the good and bad points about using geodata and maintaining its properties from the beginning of a 3d printing project. At EOSGIS I begin preparing all the data in such a way that simplifies its integration. Preprocessing the data into a coherent format, coordinate system, projection, and scale allows me to integrate new geodata later. The workflow developed at EOSGIS are the steps to fill the gap between GIS and 3d software.

As mentioned above, the GIS coordinates are too big for a 3D program so I transformed the model units to centimeters, since that is what the final real model will be in. Once the model is placed in the 3D software, corrected to make it manifold, cleaned some errors within faces and edges and designed a frame around now it is ready to be sent to the slicing software. Up to this point, it took around 2 hours to compile the data and integrate it in the GIS and 2 hours preparing it in the 3D software.

These programs cut the 3d object in thin slices so the 3d printer can print it. A main difference with CNC machines is that 3d printers allow printing objects like bridges, roofs, and hollow objects. The thinner the slice (layer) the higher the detail in the Z direction. To achieve high detail in the X,Y axes you will need a thinner nozzle. The thinner the layer (slice) the longer the printing process will take (hours) since it will require lots Slicing These programs cut the 3d object in thin of slices to complete the object.

Slicing the object took about 30 minutes slices of trial and error around some parameters I played around within the software. I used Slic3r, a freeware program with lots of options. It previews how the object will be printed using the parameters the user enters. And there are a lot of them, so a little modification can make the difference about the printing time and the final object quality. It took me some months playing around with this slicer and others (ie: cura) to have a clear idea of how each parameter affects the final results.

Once the object is sliced, It can be sent to the 3D printer. When the printer has this file its time to look at printing and fingers crossed everything works fine on the hardware side.

Knowing in depth the parameters to use in a slicing software, with a specific 3d printer for a 3d object is something that requires trial and error. It will take some time to control all the parameters for a certain application, sometimes you can get discouraged. It depends on the 3d object, the software and…the machine calibration. If you are in a rush… Don’t try it.

Most FF printers sold today use one extruder. This means, you can print with one color. Two extruder printers are becoming common. Three extruders or more are rare. At EOSGIS I have set up a printer with a color mixing extruder, which is the one I normally use. This type of extruder allows to mix colored filaments to obtain the other rainbow colors. It requires more fine tuning and setup, but allows wider 3d printing possibilities, especially for raised relief maps.

This map was printed as a whole, but a bigger scale map, may allow to place infrastructure elements, buildings, archeological etc… from other sources (Lidar, CAD, GIS). These extra elements can be printed separately and then placed over the map. It’s a matter of printing them to scale and knowing where they should be placed. If everything is correctly organized within the project, all elements should fit in place without problems.

Printing a 3D map of about 20 cm x 20 cm using the default most common settings requires several hours (at least 9 hours). We have fine-tuned our workflow to minimize the required time up to a 60%. Sometimes, you may have a failure while the piece is printed (hardware failure). This may be a hard setback, making you lose several hours of printing and material. This is something I have considered at EOSGIS: Is it worth the time to get a big 3D printer to print really big pieces or is it better to print little pieces of maps and then stitch them? I prefer to design the models as pieces, but this is a personal decision.

I am still trying to control my imagination about what can be done, and since 3d printing takes time to finish a model, I can’t play around making demo tests of everything. The clue is the 3D, for example: use old maps as overlays in 3D, use cities’ Lidar data and underground information (utilities) so the user can uncover/open it and see the underground, use 3D geological data to make models that can be opened from the ground to the earth’s or planet interior, 3D archaeological sites from point cloud data.

Fernando J. Sanchez Menendez is a freelance cartographer and consultant. He founded EOSGIS (Earth Observation Sciences & Geographic Information Systems) in 1998 and studied the Astronomy and Geodesy specialty at the Mathematics faculty in Madrid (UCM). The concept was to fill the gap between geosciences data and general public or publishers (Multimedia) maintaining all the scientific data within eye catching maps, graphics or 3D views. He has performed consulting jobs for engineering companies, but his most known works are for book and magazine publishers such as History National Geographic, GEO, Viajar, Oxford University Press, Random House, Visit Scotland … http://www.eosgis.com or several map examples at http://www.cartography.me, e-mail: fsanchez@eosgis.com

A 2.941Mb PDF of this article as it appeared in the magazine complete with images is available by clicking HERE