designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

#parametric-surface

49 posts

Point Waves

May 29, 2023

Here is another basic exercise in Grasshopper. This exercise “Point Waves” creates wave-like deformations on the grids of points. The major function of the definition is to calculate the distances from every point of a grid to an attractor point, with the help of Distance (Dist). Then it sorts them from the smallest to the largest (= closest to farthest) with the Sort List (Sort) component. This component takes and matches two lists of the same size, called key (K)…

Interlocking Structures Revisited

April 10, 2023

I studied the interlocking joint details in Grasshopper here and here. This time, the interlocking structures were revisited with a cleaner code and an in-depth explanation. I believe that this is a very good educational exercise for learning the potential of the native Grasshopper components. The Preparations The Region Difference (RDiff) component is used to create the interlocking detail of a surface that is contoured with bi-directional spacing. In the first part of the code, after contouring our surface in…

Design Mathematics Student Works

May 22, 2019

Below are some of the student works from the 2018 course: Design Mathematics. The final project of the course was about experimenting the designerly creativity. This included utilizing the mathematical concepts and objects studied throughout the semester. This was a rather open-ended homework question. But in the following years, I am not planning to repeat it. Because it becomes difficult to assess the learning outcome from open-ended homework within such a strict course content. Ayşenur Gençsoy experimented with the tool…

Canopy of Vector Fields

April 26, 2015

Utilizing “Force Field” components of Grasshopper to show my students how it is easy to develop flexible surfaces in design. The classical parametric canopy design is introduced in this video: In vector calculus, a vector field is an assignment of a vector to each point in a subset of space. A vector field in the plane, for instance, can be visualized as a collection of arrows with a given magnitude and direction each attached to a point in the plane….

Delaunay Triangulation on Surface

March 26, 2015

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. 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. Step 2: Then make whatever you…

Bend

December 16, 2013

Bending is an easy operation in Rhino and Rhinoscript, however, Grasshopper did not include that particular transformation (along with cage editing) yet. I tried to simulate the bending transformation by using native Grasshopper components. First, surface projections and pulls did not work at all, because I wanted to simulate a real bending effect without changing the surface area or edge lengths. Then, the Surface Morph component seemed to handle this issue, but it became an interesting challenge to put the…

A Tip About Using Pipe Component

November 18, 2013

While looking at the student works of my 2009 class, I realized that in some cases, the “pipe” component takes a considerable amount of time to execute even on fast computers. Students mostly create pipes to model structural frame systems such as canopies and facade frames. Therefore, the path of the pipe is usually linear (not curved). I decided to calculate the performances of three approaches that could be used to make pipes in Grasshopper. One was the good old…

Defective Use of Algorithms: TPI Disability

June 24, 2013

This is based on my failure of creating an optimum solution for planar polygonal subdivisions. There is a method called Tangent Plane Intersection (TPI), explained briefly here (sometimes similar algorithms are called “planar remeshing” and  “variational shape approximation”) which is effectively used in the Trada pavilion (here). I tried to implement a similar method using only native Grasshopper components and no recursion, but it quickly became much more complicated than I thought. It was based on the simple idea that…

Snub Square Surface

February 20, 2013

For the last 10 days, I’ve been searching for a proper algorithm for representing surfaces using planar shapes. It is obvious that triangulation is an answer but there is an interesting research topic of planar remeshing using shapes other than quads, hexagons, or any other regular polygons. Especially in computer graphics, such things refer to the optimization of models to decrease the load of GPUs. In the Grasshopper community, this has also been discussed and there is a great implementation…

Breaststroke Surface Revisited

January 24, 2013

Previous studies on trigonometric surface equations showed me an interesting alternative. This is the modification of the breaststroke surface definition. This time, I’m trying to fix the equation and change input values in a fashion that the waves of the surface are not symmetrical. Here are a few experiments on it; (Size, 44.8, X=10, Y=5, animating X’s from 0 to 32) (Size: 42, X=7, Y=5, animating X’s from 0 to 32) The equation is (cos(y²) – sin((x/5)-y²)) * 10. This…

« 1 2 3 4 5 »
  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #hilbert
    • #descartes
    • #relief
    • #dual
    • #text
    • #stone
    • #spiral
    • #mosque
    • #maxscript
    • #tangent
    • #sinan
    • #cuboctahedron
    • #rammed-earth
    • #buckminster-fuller
    • #unrolling
    • #snub-square
    • #designcoding
    • #archimedean-solid
    • #hotwire-cutting
    • #fractal
  • 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