designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Curvature Map on Terrains

September 17, 2026 | Algorithms
#computational-geometry #curvature #design-education #grasshopper #terrain #visualization

This is the last of the site analysis tools we previously used in first-year architecture education. As you may recall, we previously introduced a tool that generates topographies based on specific parameters. Afterward, we examined two tools that perform slope and flow analyses on these topographies. Today, we are presenting a tool that analyzes curvature. This topic actually constitutes one of the interesting intersection points between architectural design and differential geometry. Curvature is not something architects normally observe directly on a topography; they are mostly concerned with slope. However, in this educational experiment, we saw that reading curvature on the site as well contributes to both fields.

Curvature Map on Terrains animation

Curvature is a measure of how much a geometric object deviates from being flat at a point. Of course, this definition falls short. Surface curvature is divided into two: mean curvature and Gaussian curvature. We use Gaussian curvature in this studio setup. This curvature measures the amount and characteristic of bending at any point on a surface, giving valuable spatial information. It is the product of the two principal curvatures. In positive Gaussian curvature, the principal curvatures (you can think of them as two mutually perpendicular cross-sectional curves of the surface) bend in the same direction. In other words, at these points, the surface orients entirely to one side of the tangent plane, just like a dome or a pit. Shapes like spheres and ellipsoids have positive Gaussian curvature everywhere. In negative Gaussian curvature, the principal curvatures bend in opposite directions. At these points, the surface resembles a saddle; the tangent plane intersects the surface. A hyperboloid, or a Pringles, has negative Gaussian curvature. In zero Gaussian curvature, at least one of the principal curvatures is zero, meaning the cross-section taken in that direction is a straight line. Naturally, the result of the multiplication is also zero. A characteristic of such surfaces is that they are developable. Shapes like cylinders and cones can therefore be unrolled onto a plane.

Curvature Map on Terrains Grasshopper definition

One of Carl Friedrich Gauss‘s most important discoveries, this theorem reveals that Gaussian curvature is an intrinsic property. That is, if you bend a surface without stretching, tearing, or compressing it (for example, rolling up a flat piece of paper into a cylinder), the Gaussian curvature remains constant even if the surface’s shape in 3D space changes from an external perspective. This is why you can flatten a cylinder-shaped piece of paper back onto a completely flat table without tearing it, whereas you cannot flatten an orange peel in the shape of a sphere without tearing it, because the sphere’s Gaussian curvature is non-zero.

Curvature Map on Terrains computational-geometry, curvature

In architecture, it is a concept that must be known, especially in the production of complex geometries, surface panelization, and predicting the structural behavior of shell structures. This Grasshopper code generates a color-coded Gaussian Curvature map on a surface. This can be used as information alongside other analyses when making design decisions. Students used this code to identify and present more enclosed and open, accessible regions on their sites. From a pedagogical perspective, such concepts should not remain limited to geometry classes but should be directly usable in the studio.

Grasshopper definition (GH)Download

Cite this post

Yazar, T. (2026, September 17). Curvature Map on Terrains. designcoding. Retrieved September 18, 2026, from https://www.designcoding.net/curvature-map-on-terrains/

Related Posts

Flow Map on Terrains

September 11, 2026

We previously looked at the terrain generator script we used in projects with first-year architecture students over here. Later on, we added a few analysis modules to this tool. You might remember the slope analysis tool from this link. Today’s topic is another type of analysis: flow. The idea for this code wasn’t actually mine; I developed it by looking at an existing script based on Serkan Uysal’s suggestion. Unfortunately, I don’t know who originally wrote it. Keeping track of…

Slope Map on Terrains

August 18, 2026

I previously shared the Grasshopper definition for terrain generation that we used in last year’s Basic Design studio. One of the goals of this project was to take the first step toward developing students’ skills in understanding, processing, and utilizing terrain data as a design input. To support this objective, we provided them with small supplementary tools. One of these tools was the slope map. As you can see, this is quite a simple Grasshopper definition. It computes the slope…

Terrain Generator

August 13, 2026

Last year, for the midterm assignment in our first-year basic design studio, we gave our students a range of different, randomly generated contexts to work with. For this purpose, I developed a small Grasshopper tool that makes the graph of a function look as much like a terrain model as possible. This tool is not really a procedural terrain generator. I would genuinely like to build one, someday. What we have here is simply a function surface. At the inputs,…

Terrain Modeling

July 19, 2023

Here is a short tutorial on getting help from Grasshopper in physical terrain modeling. It is a classical architectural terrain modeling process. Let’s see how Grasshopper can help us with this. Part 1: Terrain modeling for Laser cutter The terrain model entered in the Brep data store in this application is a closed/solid model. For now, you can also use ready-made components such as Cone or Sphere (Sph) to quickly produce a solid model. In this application, after we obtained…

Site Modeling

March 26, 2015

Site models could be calculated for laser cutting easily using Grasshopper’s native components. This definition was a practical one we created in the Parametric Modeling course to see that Grasshopper could also be utilized to prepare fabrication documents not generating design outcomes. However, this definition is a draft one and could be improved more by putting labels inside of each cut piece, trimming the edges properly and so on. It is good news for students at least that they have a…

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #rhino-python
    • #polyhedra
    • #robot
    • #tessellation
    • #kuka-prc
    • #parametric-surface
    • #dual
    • #parakeet
    • #pattern
    • #simulation
    • #vector-field
    • #growth
    • #boolean
    • #linear-algebra
    • #sandblasting
    • #stone
    • #dome
    • #parametric-curve
    • #animation
    • #art
  • Search

  • Support designcoding!

  • Enjoying designcoding? Support me on Patreon to keep it growing. Thank you!

  • copyright 2026 designcoding.net | about | privacy policy | end user license agreement