Terrain in SketchUp I

The plug-in Terrain Reshaper redraws the mesh based on a user-defined grid of equilateral triangles.

In many projects that we do where real-world buildings are modeled, a flat ground plane is sufficient. However, there are times when representing the 3d nature of the site is interesting and/or important. In those cases, we work with digital terrain. Here are some examples of terrain models we've made:

In working with terrain on these projects and others, we have learned a few things about how to smooth out the modeling process. First off: don’t take terrain lightly! Introducing a 3d ground surface into your model makes changing almost anything about it more labor-intensive. Be ready for some ups and downs (get it?). It’s possible to spend many hours working on terrain only to have it end up looking weird and lumpy. But it’s also possible to make very accurate and evocative models using terrain if you know what you’re doing. This post will tell you how to get geographically relevant terrain in your model. Subsequent posts will contain tips for working with and modeling on top of terrain.

Modeling Terrain

There are three sources we typically use to get terrain into our models:
1. Google Earth
2. a CAD mesh
3. contour lines

The easiest way is to use Google Earth’s terrain mesh using Sketchup’s native Geolocate tool (File>Geo-location>Add Location) that allows you to navigate to any place on Earth and import both satellite imagery and terrain for that location. The precision of the terrain mesh is related to the size of the area you select: the smaller the area, the tighter the mesh. As you might expect, however, the accuracy of this terrain—even at Google’s most precise—is pretty suspect. Yeah, it gives a good idea of the general topography of the place, but it can’t be considered definitive.

A second, straightforward method of adding terrain to a model is by importing a 3D mesh directly from CAD (which requires Sketchup Pro). If you already have a mesh from a survey, this can be pretty quick and the results are as accurate and precise as the survey. Unfortunately, though, a mesh like this tends to looks craggy and not very ground-like. But fear not, I’ll talk about how you can fix that in a minute.

The third alternative is to use contour lines. Depending on the source of the contour lines, they can be more reliable than Google, but it’s an involved, multi-step process to create terrain from them. If you’re lucky and the lines are in some vector format, you can import them directly into SketchUp, which interprets each curved contour line as lots and lots of line segments. (Check the scale after you import to to make sure you’re working 1:1.) You’ll want to make each contour line selectable, so triple click on any segment to select all connected segments, and weld (you could also group them, but then you’d have to un-group them in order to use the Sandbox tool as discussed below). Once they’re all neatly welded (or grouped), move each contour line to its correct elevation. This can be quite tedious… be careful not to get distracted halfway up the mountain.

If all you have is contour lines on paper or some non-vector digital source, you’ve got no choice but to trace them. This also takes a bit of time and focus. You can do this directly in Sketchup, where you can control the size and quantity of line segments. But I find it faster and more pleasant to do it in Illustrator using the pen tool. You can export your Illustrator line work to dwg (groups in Illustrator are preserved, so do your grouping in Illustrator to keep your model tidy), and follow the same steps as above.

Phew! You’ve got some contour lines in 3d space, but now what? Select all those contours in SketchUp (ungroup at this point if necessary), go to Draw>Sandbox>From Contours, and watch the magic happen. Well, more likely, you’ll wait for a few minutes of processing time, and then breathe a sigh of disappointment at the jagged, lumpy results. This Sandbox tool just doesn’t work very well for anything but very regular, simple contours. You can turn on hidden geometry to get an idea of the problem: lots of different sizes of triangulated planes makes for an uneven-looking mesh.

Fortunately there is a plug-in called Terrain Reshaper (thanks again, Didier) that takes the irregular triangular network generated by the Sandbox, and redraws it using a best-fit grid of equilateral triangular planes. First it analyzes your mesh, suggests a grid size, gives you some options about layers and grouping, and then goes to work (for many minutes or even hours depending on the size of your mesh). Once it’s done, take a moment to appreciate the beautiful regularity of the triangles, then select the edges and soft/smooth/hide them. Terrain Reshaper compromises the precision of the terrain a little bit, but makes it look a lot better at all magnifications.

For more on working with terrain in SketchUp, this is an excellent reference.

Ady Leverette was a designer and a principal at Fat Pencil Studio between 2011 and 2018.