designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Delaunay Triangulation on Surface

March 26, 2015 | Algorithms
#delaunay-triangulation #grasshopper #parametric-surface

This is a useful tip both to solve some of the problems with custom surface subdivisions, and to explain the uses of parametric surface evaluations (the U, V, W thing) and the practical use of data lists.

Delaunay Triangulation on Surface delaunay-triangulation, grasshopper

Step 1: Put your points inside 0,0,0 and 1,1,0 so that the resulting coordinates can easily be converted to U and Vs. In the example, we are putting some random points between 0,0 and 1,1 using the Populate2d component.

Delaunay Triangulation on Surface parametric-surface, delaunay-triangulation

Step 2: Then make whatever you want with these points. For example, we can create a Voronoi subdivision or Delaunay triangulation, or just draw something with a polyline there. This will be the drawing that is to be mapped onto the surface.

Delaunay Triangulation on Surface grasshopper, parametric-surface

Step 3: Explode the curves generated in Step 2 so that we’ll have the vertex connectivity sequences as a data list (or tree).

Delaunay Triangulation on Surface delaunay-triangulation, grasshopper

Step 4: Just evaluate the surface using the vertex coordinates as U, and V values. Now the points should be on the surface if you choose “reparameterize” for the S input.

Delaunay Triangulation on Surface parametric-surface, delaunay-triangulation

Step 5: Finally join these mapped points again as a polyline to see that the explode operation did a good job in maintaining the order of the vertices so that we could easily re-create the curves on the surface.

Grasshopper definition (GHX)Download

Cite this post

Yazar, T. (2015, March 26). Delaunay Triangulation on Surface. designcoding. Retrieved August 24, 2026, from https://www.designcoding.net/delaunay-on-surface/

Related Posts

Landscape Extensions Final: Digital Sketch

February 1, 2015

This is the final Grasshopper sketch of our graduate studio conducted together with Fulya Akipek at Yıldız Technical University Computational Design Unit. The project was about designing parametric “Landscape Extensions” at Kabataş Park in İstanbul. I hope I’ll be able to post the actual student works and the material system, but now; only the final result of the digital sketch we’ve developed together with students is presented here. This was a kind of “sketchy” definition that came up as an…

Delaunay Exercise

June 28, 2013

After becoming a ready-made component in Grasshopper, the Delaunay triangulation lost its popularity quickly. It used to be a nice problem of computational geometry for designers obsessed with scripting.  Last month, Benay reminded me of the method of circle checking. She showed her Rhinoscript that creates circles from point triplets and checks if a point is inside or not. Today I studied this in Grasshopper to see if I can handle the required point combinations quickly. However, my first attempt…

Delaunay Triangulation with Rhino Python

July 27, 2017

Boris Nikolayevich Delaunay was a Russian mathematician and mountain climber. He developed the Delaunay triangulation, which is a method in computational geometry. It is a triangulation of a set of points such that no point is inside the circumcircle of any triangle formed by the points. It’s widely used in computer graphics and mesh generation. In 2013, I made the brute force code in Rhino Python which is a slow solution to this problem. It used to be a nice…

Interlocking Structure with Boolean

August 23, 2026

You are seeing the last of the interlocking system trials that I have previously tested in two exercises. If you remember, in our first trial, we were drawing interlocking joinery details on cross-sections using closed curves, without any solid modeling. And here is the most advanced one, I guess. In this exercise, however, we are creating a solid model that incorporates these interlocking details. This time, we will look at how to construct the same system using Boolean operations. Boolean…

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…

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #rhino-python
    • #polyhedra
    • #tutorial
    • #robot
    • #tessellation
    • #rhinoceros
    • #boolean
    • #kuka-prc
    • #design-object
    • #image-sampler
    • #relief
    • #terrain
    • #sandblasting
    • #stone
    • #dome
    • #parametric-curve
    • #animation
    • #art
    • #aperiodic
    • #tiling
  • 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