3D Printed Geographies – Techniques and Examples

As a follow-up to my post on “Geospatial Data Preparation for 3D Printed Geographies” (19 Sept 2015), I am providing an update on the different approaches that I have explored with my colleague Dr. Claire Oswald for our one-year RECODE grant entitled “A 3D elevation model of Toronto watersheds to promote citizen science in urban hydrology and water resources”. The tools that we have used to turn geospatial data into 3D prints include the program heightmap2stl; direct loading of a grey scale image into the Cura 3D modeling software; the QGIS plugin DEMto3D; the script shp2stl.js; and a workflow using Esri’s ArcScene for 3D extraction, saving in VRML format, and translating this file into STL format using the MeshLab software.

The starting point: GIS and heightmap2stl

Being a GIS specialist with limited knowledge of 3D graphics or computer-aided design, all of the techniques used to make geospatial data printable rely heavily on the work of others, and my understanding of the final steps of data conversion and 3D print preparation is somewhat limited. With this in mind, the first approach to convert geospatial data, specifically a digital elevation model, used Markus Fussenegger’s Java program heightmap2stl, which can be downloaded from http://www.thingiverse.com/thing:15276/#files and used according to detailed instructions on “Converting DEMs to STL files for 3D printing” by James Dittrich of the University of Oregon. The process from QGIS or ArcGIS project to greyscale map image to printable STL file was outlined in my previous post at http://gis.blog.ryerson.ca/2015/09/19/geospatial-data-preparation-for-3d-printed-geographies/.

Quicker and not dirtier: direct import into Cura

The use of the heightmap2stl program in a Windows environment requires a somewhat cumbersome process using the Windows command line and the resulting STL files seemed exceedingly large, although I did not systematically investigate this issue. I was therefore very pleased to discover accidentally that the Cura software, which I am using with my Lulzbot Taz 5 printer, is able to load greyscale images directly.

The following screenshot shows the available parameters after clicking “Load Model” and selecting an image file (e.g. PNG format, not an STL file). The parameters include the height of the model, height of a base to be created, model width and depth within the available printer hardware limits, the direction of interpreting greyscale values as height (lighter/darker is higher), and whether to smoothen the model surface.

ormdem_oakridges_east_74m-Cura-import-settings

The most ‘popular’ model created using this workflow is our regional watershed puzzle. The puzzle consists of a baseplate with a few small watersheds that drain directly into Lake Ontario along with a set of ten separately printed watersheds, which cover the jurisdiction of the Toronto and Region Conservation Authority (TRCA).

Controlling geographic scale: QGIS plugin DEMto3D

Both of the first two approaches have a significant limitation for 3D printing of geography in that they do not support controlling geographic scale. To keep track of scale and vertical exaggeration, one has to calculate these values on the basis of geographic extent, elevation differential, and model/printer parameters. This is where the neat QGIS plugin DEMto3D comes into play.

As can be seen in the following screenshot, DEMto3D allows us to determine a print extent from the current QGIS project or layer extents; set geographic scale in conjunction with the dimension of the 3D print; specify vertical exaggeration; and set the height at the base of the model to a geographic elevation. For example, the current setting of 0m would print elevations above sea level while a setting of 73m would print elevations of the Toronto region in relation to the surface level of Lake Ontario. One shortcoming of DEMto3D is that vertical exaggeration oddly is limited to a factor of 10, which we found not always sufficient to visualize regional topography.

dem2stl-settings_150k-scale_10-exagg_0-base_humber-watershed

Using DEMto3D, we recently printed our first multi-part geography, a two-piece model of the Oak Ridges Moraine that stretches over 200km in east-west direction to the north of the City of Toronto and contains the headwaters of streams running south towards Lake Ontario and north towards Lake Simcoe and the Georgian Bay. To increase the vertical exaggeration for this print from 10x to 25x, we simply rescaled the z dimension in the Cura 3D printing software after loading the STL file.

Another Shapefile converter: shp2stl

The DEMto3D plugin strictly requires true DEM data (as far as I have found so far), thus it would not convert a Shapefile with building heights for the Ryerson University campus and surrounding City of Toronto neighbourhoods, which I wanted to print. Additionally, the approach using a greyscale image of campus building heights and one of the first two approaches above also did not work, as the 3D buildings represented in the resulting STL files had triangulated walls.

In looking for a direct converter from Shapefile geometries to STL, I found Doug McCune’s shp2stl script at https://github.com/dougmccune/shp2stl and his extensive examples and explanations in a blog post on “Using shp2stl to Convert Maps to 3D Models“. This script runs within the NodeJS platform, which needs to be installed and understood – the workflow turned out to be a tad too complicated for a time-strapped Windows user. Although I managed to convert the Ryerson campus using shp2stl, I never  printed the resulting model due to another, unrelated challenge of being unable to add a base plate to the model (for my buildings to stand on!).

Getting those walls straight: ArcScene, VMRL, and Meshlab

Another surprise find, made just a few days ago, enabled the printing of my first city model from the City of Toronto’s 3D massing (building height) dataset. This approach uses a combination of Esri’s ArcScene and the MeshLab software. Within ArcScene, I could load the 3D massing Shapefile (after clipping/editing it down to an area around campus using QGIS), define vertical extrusion on the basis of the building heights (EleZ variable), and save the 3D scene in the VRML format as a *.wrl (“world”) file. Using MeshLab, the VRML file could then be imported and immediately exported in STL format for printing.

While this is the only approach included in this post that uses a commercial tool, ArcScene, it is likely that the reader can find alternative workflow based on free/open-source software to extrude Shapefile polygons and turn them into STL, whether or not this requires the intermediate step through the VRML format.

In Search of the Mother of GIS?

My thoughts on Panel Session: 1475 Gender & GIScience, at AAG 2016.

Guest post by Dr. Victoria Fast (@vvfast)

Roger Tomlinson has passed, and Mike Goodchild is in (a very active) retirement. So, this panel made me consider: are we searching for a new father of GIS? In fact, do we need a father of GIS? Would a mother of GIS balance the gender scales? It seems all disciplines need leaders, and the powerful panellists in this session—populated with many of my mentors and leaders in the field, including Renee Sieber, Nadine Schuurman, Sarah Elwood, Agnieszka Leszczynski, Britta Ricker, and Matthew Wilson—demonstrates that we indeed have strong leadership in GIScience. This mostly female panel is a reminder that, in fact, there are many influential female scholars. But do we hear these influences? Do we hear them equally? Have we heard them in the past? Based on the discussion in this session, the answer in overwhelmingly ‘no’.

The discussion in this session revolved around the ways in which our science has been heavily masculinized, epitomized by the commonly accepted ‘Father of GIS’ notion. The discipline has been dominated by all-male panels, focused on programming and physical science, subdued critical or theoretical work, and “straight up misogyny in GIScience” (Renee Sieber’s words). Female scholars are less frequently cited, underrepresented as researchers in the field, and almost absent in the representation of the history of the discipline.

This made me think of deep-rooted masculinization I have faced in my GIS journey, as a student and now as an educator. Issues related to working in the ‘old boys club’ aside, masculinization was especially predominant when I taught a second year Cartography course. The textbook “Thematic Cartography and Geovisualization” contains a chapter of the History of Cartography. Without sounding ‘…ist’ myself, the chapter largely recognized the contribution of older, white males. I didn’t feel comfortable teaching my students that narrow history of Cartography, so instead went looking for my own resources to populate a ‘History of Cartography’ lecture.

I was delightfully surprised that there are so many resources available that show multi-faceted sides of cartography (and GISci more broadly). These perspectives and resources are often shared via disparate sources in journal articles, blogs, and discussion forums. For example, Monica Stephens has a great publication on Gender and the Geoweb in Geojournal [2013, 78(6)]. City Labs also has a great series on the Hidden Histories of Maps Made by Women (thanks for sharing Alan McConchie): http://www.citylab.com/design/2016/03/women-in-cartography-early-north-america/471609/. Unfortunately, they refer to it as the “little seen contributions to cartography”, but panels like this help address that while they’re little seen, they are highly impactful contributions. Over time, these blog posts, journal articles, and conference panels will (hopefully) amass and make their way to more formalized forms of textbook knowledge. (There was a great deal of interest by those attending this session in a published version of these compiled resources. Given the overwhelming response, I’m considering compiling a manuscript… stay tuned.)

I recognize that it is impossible to undo the deep-rooted masculinization that has persisted in GIScience. However, we can change how we address it moving forward. Let’s recognize that we don’t need a father (or mother) of GIS; we need leaders, visionaries, and mentors of all shapes, sizes, colours, backgrounds, and genders. I challenge all those who are GI Professionals in training to look for the untold story, the hidden history of GIS, and the little-seen influences on the discipline. I challenge those who teach GIS to go beyond the ‘truth’ presented in the textbooks. And lastly, I want to conclude by saying thank you to the powerful female mentors on this panel and ones not represented here; mentors who transcend the need for a ‘Mother of GIS’.