3D Printing with LiDAR Data
My fascination with maps, especially relief maps, goes back to childhood. Both of my parents were teachers: maps were all over the house. In college for my senior fine arts project I made a relief map of a hypothetical location out of wood. Today there’s easy and affordable access to laser cutters and 3D printers, and their potential applications appear endless. While a Data Innovation Fellow at the Vermont Center for Geographic Information and a member at Generator, a Burlington maker space, I’ve found how the mapping and maker worlds intersect through the 3D modeling and printing of terrain and data. As someone working in digital-only Geographic Information Systems (GIS) I was intrigued by the potential of creating analog, material representations. It took about 2 months to get comfortable with the equipment, process and printing. I learned a ton along the way. In turns out that geospatial data is perfect for 3D printing for several reasons:
Accuracy — Hand carving topography inherently has errors. Digital models can be as accurate as the original data, which can be astounding in LiDAR.
Scaling — Depending on the use case a map may need to be really large or small. 3D printing makes it easy to scale a model without losing accuracy.
Customization — Editing digital objects is not as simple as scribbling on a paper map, but the things you can do with it are much greater.
View — Picking up a 3D model and being able to rotate it can tell you so much more than a flat map. How and where would water flow? What ridges may shadow another?
Virtual Reality — The 3D models used to make prints can also be used to make VR environments. The opportunities to explore a virtual world with embedded data completely change how one can experience GIS data.
Comprehension — GIS professionals are often sharing their findings with those who are not familiar with the complicated world of GIS. Handing someone a physical object they can touch, explore and experience makes it much easier for storytelling and understanding.
There are a lot of interesting reasons to explore 3D printing, but there are also difficulties:
Time — 3D printing takes time. Prints can range from 1 to 14 hours depending on the size. An error in printing can mean having to restart it from the beginning, no fixing on the fly.
Durability — There are an increasing number of filament types that go into a 3D printer. Some are more durable than others, may have unique finishes, or can be flexible. That being said, filament likely not as strong as extruded plastic or resin.
Cost — The biggest cost for printing is the printer, then the filament. Printers can range from $200 to literally millions of dollars. The price for printers is falling quite rapidly overall to be easily attainable. I have primarily worked on a Prusa i3 Mk3 and the quality, flexible bed, and ease of use has been amazing.
Finish — 3D printers were made to make rapid prototypes. They were not originally meant to be production machines. The lines from filament will show and there is a mix of post-production methods required to make it a presentable object.
The biggest hurdle was just sitting down and making my first print. The combination of the 3D modeling and slicing software was intimidating. The first couple of prints I made were horrible but they got much better when I refined what I was printing and changed printers. A spool of filament is usually in the $20–$30 range and will last for many prints — making mistakes is costlier in time of printing rather than materials.
How 3D Printing Works
There are a variety of printers now available. Good kinds to know are Fused Deposition Modeling (FDM), Stereolithography (SLA) and Selective Laser Sintering (SLS). Each uses different methods to build an object by depositing material one layer at a time.
FDM is one of the most common printers and was used for all the models shown here. This kind of printer is fed with a spool of material, heated to the correct temperature and laid on top of the previous layer. The plastic fuses with itself to make a single piece. There are a variety of materials that can be used, from plastic to wood and metal composites. Supports are often added to help with overhanging sections.
SLA uses a liquid resin pool that is then carefully exposed to light to harden the resin in the desired pattern. The model is raised out of the resin bath as each layer is added. It is faster than FDM because it can do a single layer in one shot, rather than having to move the nozzle to trace the whole object, but the smell of the resin can be unpleasant and curing process is more complicated.
SLS is similar to SLA in that is uses light, or lasers specifically, to build each layer but they are in a powder pool instead of liquid resin. The laser fuses the particles together, then a new layer of power is swiped on top, and that is fused again. The versatility and durability of the finished product is impressive, and all powder that is not fused can be reused.
There is array of documentation of the printers, material and methods for 3D printing, YouTube is a great resource for learning more. The key thing to remember is that 3D printers create physical objects by building them layer by layer.
3D filaments are special types of plastics called thermoplastics. They become flexible once heated to the right temperature. Filament types have been rapidly growing, with some including wood, metal or other unique chemicals. There has been a growing market for Nylon filaments, and some of the flexible filaments are fascinating to see. Spools are measured by weight so depending on the type of filament the overall length may vary. The two most popular types are ABS (Acrylonitrile Butadiene Styrene) and PLA (Polylactic Acid).
ABS is tough and has impact-resistant properties with moderate flexibility. It needs a heated bed due to its higher melting temperature (210°C — 250°C). It has of a petroleum base, is not recyclable and can produce gases during printing.
PLA is made from organic materials, namely cornstarch and sugarcane. With a lower temperature than ABS (180°C — 230°C) it is not as strong but it can produce better finished surfaces. It is also recyclable.
Getting the Data
I have been focused on LiDAR (Light Detection and Ranging) which is a remote sensing method that uses light in the form of a pulsed laser for a highly accurate measurement of surfaces. The accuracy of LiDAR is very high, within centimeters sometimes, which means the detail is incredible. It allows for the creation of derivative products, such as contours, slope, aspect and hillshade.
LiDAR is usually created by equipment attached to planes and flown over the requested region but there are also tripod mounted LiDAR for smaller scans (Like recording a bridge or embankment) and of course the version on top of self-driving cars.
There are several types of LiDAR derived products, the most important are DEM (Digital Elevation Model) / DTM’s (Digital Terrain Model) that show the bare Earth, and DSM ‘s (Digital Surface Model) that show trees, houses, etc. These are created by processing the massive point cloud data into raster GIS files. There is a wide variety of places to find LiDAR data, the State of Vermont has an extensive LiDAR library for the entire state (https://geodata.vermont.gov/). This explains the LiDAR program:
VCGI Lidar Program | Vermont Center for Geographic Information The USGS has a map viewer that can show you available data sources for GIS data, including LiDAR and even had a download function.
The National Map - Advanced Viewer Washington and Oregon have some great LiDAR resources and great topography for printing.
There are even more resources out there, share yours in the comments!
Prepping the Data
For brevity I will only go through making models using QGIS and the plugin called DEMto3D. This plugin can take DEM/DTM/DSM’s and turn them into a STL file, one of several file types that can be used in 3D printing. This plugin is straight forward to use, and it is one of the first tools that links GIS data and 3D printing. DEMto3D allows one to export DEM to STL format to make GIS data ready for 3D printing.
Load the correct terrain model
Open the plugin
Set the extents of what you wish to 3D print: Either specify coordinates, select the full extent of a layer or manually specify coordinates
Set spacing (mm). 0.2mm has been working well but with DSM the details can get a bit intense
Setting the size of the model in millimeters will automatically populate the other size field and scale
Height sets what height the base starts on the 3D model. I usually prefer to cut it in a 3D modelling software instead of in here
Click Export to STL and it will build the file to a directory of your choosing
Slice for Printing
Each 3D printer has an accompanying software package for taking a 3D model and converting it to a printing path. This process is called slicing and is often saved in the format called G-Code. The software determines the shape of each slice, the structure of supports and the infill (the amount of filament used for the interior of solid objects). Tweaking the scaling, print detail and fill parameters will be a bit different for each printer. The default settings on the Prusa that I am using has been good but be sure the slicing software is set to the correct material that will be used in the actual print, e,g, PLA, PET, Nylon, etc.
For a terrain model slicing can be quick to create, but a DSM with houses and trees takes a lot more time to generate. The infill setting is worth adjusting as bases can consume a large amount of filament for little gain. I generally use the default of 20% which produces fairly good results but the taller the base the costlier the print both in time and materials.
Each 3D printer has a specific set of instructions. Be sure to read what came with your printer to verify the correct steps to start printing. For those with heated beds, the printing process begins with preheating everything to the correct settings for the filament. Ensure that the filament is correctly loaded and that the previous filament has been cleared from the nozzle. Once the print is started I usually wait until the first layer is half done before walking away, but that is because the Prusa has been very reliable. It may be worth watching the process for a lot longer with other printers There are many options when it comes to what you can create on a 3D printer with LiDAR data, but DEM/DTM models arguably have the biggest immediate reward . The printed products are fascinating to explore. Below are several iterations of prototypes for of given data sets.
At 4,393 feet above sea level Mount Mansfield is the tallest mountain in Vermont, and one I have climbed many times over the years. It made for a great test print given that high quality LiDAR-derived data from VCGI is freely available. Below is the progression of prints, starting small and then gradually growing the size of the prints that revealed more detail.
The greatest problem I encountered was that if buildings in the printed model are smaller than the nozzle size the print becomes a blob. In other words, there is a minimal viable size for the model based on the printer you are using. Once you figure out that lower size limit it is amazing what you can see.
3D printing was hailed as a revolution several years back, but outside of industrial applications it has not emerged as such. At the same time the tools are getting faster, more efficient and produce much high quality products for far cheaper.
For me the real power in 3D printing GIS data is in engaging people with the resulting object, especially those who lack technological skills. Physically handling the landscape can get people to think about it in a whole new way and explore without a mastery of ArcGIS, QGIS or other programs.
By extension there is inherently an opportunity in taking these same models and putting them into Virtual Reality/Augmented Reality. The software to make 3D prints is the same used for all the computer generate imagery and games. Porting GIS data into VR/AR opens up a whole new world of accessible smart decision-makingTo edit the way your blog feed looks on your site, hover over your blog feed and click on Design. Here, you can pick from different layouts. If you add a blog feed section to a different page on your website, you can pick a design that’s different from your main blog page.