Gaussian Curvature
The development of geometry began by measuring the world as discrete objects. Moving beyond measuring nature, it evolved into reasoning, calculation, and mathematics. Platonic solids were one of the most elegant and beautiful ideas reached by geometry. Pondering why there are only five of them was a tribute to collective human intelligence. Earlier in this blog, we modeled polyhedra, like the Platonic solids, using geometric construction methods. This process was like solving a puzzle. To construct a point whose distances from specific reference points are known, we intersected spheres (trilateration). Remember how precise and rational the geometric construction method is. By connecting the points we found, we created edges, faces, and ultimately closed objects. While making these models, we defined sub-objects such as vertices, edges, and faces.
When defining geometric objects on a computer through their relationships with sub-objects, we utilized a concept called Boundary Representation (B-Rep). This concept is not merely a modeling method; these boundary conditions determine where the inside of solid objects ends and where the outside begins. In Rhino, by using the SHIFT+CTRL combination on the keyboard, we can select and edit the sub-objects of a cube. By moving the edges along an axis using the Gumball, we can create different polyhedra.
Infinity?
So what are the sub-objects of a sphere? What are the differences and similarities between a sphere and an icosahedron? Both define a closed volume. As B-Reps, they are objects with an inside and an outside. A sphere has no vertices or edges; it has a smooth, curved surface. The faces of an icosahedron, however, are flat. The vertices of an icosahedron lie on a sphere. Its faces are connected to one another, but because they connect at an angle (breaking), vertices and edges are formed. If you remember, those with more faces, like the Archimedean solids, gradually began to resemble a sphere. If there were a polyhedron with an infinite number of vertices, would it somehow become a sphere? Infinite? And we thought an icosahedron was complex! Is a sphere a shape with infinite vertices and edges? Then how is Rhino able to draw a sphere on the screen?
For our computers with finite capacity, the only way to display a sphere on the screen is by dividing it into a large number of small planar pieces and showing it to us without us noticing. Let’s draw and convert a sphere in Rhino into a coarse mesh object using the Mesh command, zoom in, and examine its sub-objects. Let’s overlap it with the non-mesh sphere and see the differences. If even our advanced computer can only visualize the simplest shapes like a sphere by cheating, how was it possible to define this and all other conceivable curvilinear forms long before computer technology even existed?
We use mathematics to talk about infinity. As you might remember from high school math, calculus makes it possible to perform operations involving infinitely small quantities. When calculus is adapted to geometry, the concept of infinity ceases to be frightening or unsolvable. That is why the subject we need to work on to understand curvature is differential geometry. As an answer to the question we just asked, it was this branch of mathematics that enabled infinite shapes to be analyzed centuries before computers even existed.
To understand the differential geometry of surfaces, one of the first and most important subjects we must focus on is curvature. To examine the curvature of a sphere and other shapes, we must look at these objects more deeply, not from an external space, but from within the object itself (intrinsically). We had noticed that the sphere possesses characteristics different from the Platonic solids. The most prominent of these features was that the surface is a single closed curved surface without edges or vertices. Let’s get a little closer to the sphere to understand its curvature. For example, let’s open an empty canvas in Grasshopper and place a Sphere component. Let’s control its radius with a Number Slider. Let’s set the maximum value of the Number Slider to a very high number, like 100000. I want the camera to stay on the sphere. Therefore, by using a Negative and a Construct Point component, let’s make the center of the sphere move in the -Z direction as it grows.

After completing the code, let’s make observations by changing the Number Slider value. When the sphere is small relative to us, we can examine it from the outside. When it grows, it appears flatter to us. Eventually, it can grow so large (or we can get so close to the surface) that it may begin to appear completely flat to us. Note that our perceiving it as flat didn’t make the sphere flat. The curvature of the sphere is the same. The sphere is still the same sphere. So, if we didn’t know that the component we placed was a Sphere or hadn’t seen its small version, could we realize that the form we are looking at is a sphere? How?
Geography is Destiny
Our planet also looks like a sphere to someone looking at it from the outside, but we don’t really notice this much. You have probably heard that the sizes of countries on maps are inaccurate. Maps of planets cannot be made completely accurately. It is geometrically impossible to transfer a spherical shape onto a two-dimensional flat paper without tearing or folding it. Imagine trying to spread an orange peel onto a flat table in a single piece, without leaving any gaps; the peel will inevitably tear somewhere.
Now, let’s observe this error on the computer as well. It is possible to observe this error even in a triangle drawn on the sphere. What is the sum of the interior angles of a triangle on a flat plane? If we cannot map a sphere flatly, we should be able to observe this error in the interior angles of a triangle drawn on it. We created a code for this purpose. Download the file from the link below and open it in Grasshopper. Let’s run it by connecting a Sphere, an MD Slider, an Evaluate Surface, and a Number Slider. Here, Evaluate Surface will play a key role in terms of calculation and will be a component we frequently use in the future. This code draws an equilateral triangle at the point we determine on the surface using the MD Slider and calculates the sum of its interior angles. No matter where we look, we can see that the sum of the interior angles of the triangle on the sphere is greater than 180 degrees.


Curvature
Now, let’s create a ruled surface using the Point, Line, and Loft components. Let’s also analyze this surface with our code. Finally, let’s make a cylinder using a Circle, a Z vector, and an Extrude component, and analyze it as well. Let’s try to understand how the triangles look while on the surface, and in which cases the sum of their interior angles is 180 degrees, and in which cases it is less than or greater than 180 degrees.
Now, we will create a general algorithm that models surfaces with different curvature characteristics. Let’s build the code step by step in Grasshopper that draws a simple curve in two directions and turns them into a surface with the Sweep component. We can build this algorithm in Grasshopper using the Panel, Number Slider, Construct Point, Merge, Interpolate, Vector2P, and Move components. In the sweep operation, we will use two curves consisting of three points each as profiles. We will control the direction of the resulting curve by moving the midpoint of the curves up and down. Similarly, we define another curve as a rail curve. By controlling the directions these two curves are facing, we can create peaks, pits, or Pringles-like surfaces.

Once the algorithm is ready, let’s connect the resulting surfaces to the code that draws triangles on them. If you noticed, the curvature of the surface is related to the direction and curvature of the curves we designed for the sweep operation. These are called the principal curvatures of this surface. When the mathematician Euler applied calculus to geometric surfaces in the 1750s, he calculated principal curvatures to define the externally visible curvatures of surfaces. What kind of relationship can we establish when we move the triangles across the surface? Let’s note the behavior of the triangles when the profile curves face the same direction, opposite directions, or when at least one of them is flat. As you will notice, the product of the signs of the two curves forming the surface gives important information about the curvature of the surface. This property, called Gaussian curvature, is simply the product of the principal curvatures. This definition of curvature answers many of the questions we have been looking for from the beginning. Surfaces whose principal curvatures face the same direction have positive Gaussian curvature, while those facing different directions have negative Gaussian curvature. Surfaces where one of the principal curvatures is zero (flat) have zero Gaussian curvature (because multiplying any number by zero is zero anyway). This curvature is an intrinsic property of the surface, independent of its dimensions and the ambient space we look at it from.
What is the Use of it?
What use will this information have? This information answers some of the questions we struggled to answer above. Can we realize that we are standing on a sphere, just by being on it, without ever stepping outside the form? Yes. Why? Because without leaving the surface, we can gain information about the surface by adding up the interior angles of the triangles we draw. By using the Gaussian product, we can state whether the surface has zero, positive, or negative curvature. In this way, we can prove that we are standing on a spherical object by making measurements on the surface without even leaving our planet.
A surface tends to preserve its Gaussian curvature. The pizza slice example is a classic illustration of this. When you hold a slice you took from a planar pizza (zero Gaussian curvature) by its edge, its tip will sag downwards. This sagging will be in a single direction, and in this way, the zero curvature will remain unchanged. When you don’t want it to sag, you give it curvature in the other direction by gently squeezing the slice in your hand. Therefore, since the object tends not to change its zero-curvature character, when you squeeze it and give it curvature in the other direction, the tip of the slice will become flat again, preserving the zero curvature.
All jokes aside, this information is the most effective way for us to analyze the developability of a surface and its panelability with planes. We cannot unfold the Earth onto a plane (map) without tearing it, because its curvature is not zero, like in a cylinder. The measurement that proves a cylinder is developable is that its Gaussian curvature is zero.





