designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

#rhino-python

43 posts

Modeling the Gyroid Solid

March 30, 2024

Gyroid is a popular triply-periodic minimal surface. Although it is a mathematical entity, designers and architects like its approximations very much. We used an interpretation of Gyroid in the rammed-earth structure: “Common-action Wall” in 2017. In that project, we utilized its spatial quality of dividing the space into two intertwining and symmetrical volumes. By making one of these volumes solid, I left the other void. So, in this tutorial, I am going to explain modeling the Gyroid Solid by utilizing…

Wandering Simulator

March 9, 2024

In 1986, Craig Reynolds developed an algorithm aiming to model the flocking behavior of birds, which remains a cult method used in flock simulations today. In my initial study, the bird-oids (boids) have no rules or limitations, just chilling randomly on the screen. I call this initial version Wandering Simulator. There are several reasons why this fundamental simulation is difficult in Grasshopper and Python, our parametric design interface. In Grasshopper (data flow modeling), pushing the back doors a bit is…

Coding the Dodecahedron

March 7, 2024

Here is a method for coding the dodecahedron and all its irregular variants in Grasshopper as quickly as possible. I utilized the golden ratio rectangles, usually used to construct the sister polyhedron, the icosahedron. However, the magic component of the Grasshopper, the Faceted Dome rescued me again to generate the dual of it, the dodecahedron. This is a special platonic solid, which has 12 regular pentagonal faces. There are several techniques that I generally prefer to use in Grasshopper. You…

B-Spline Construction

January 25, 2024

I have been studying the Bezier-De Casteljau algorithm for several years. Last week, I finally managed to understand and implement B-Spline Construction in Rhino and Grasshopper Python code, using the Cox-De Boor algorithm. This algorithm calculates the effect of control points on a B-Spline with many control points. After this, I am not limited to the degree+1 control points. This animation shows both algorithms working together. This Rhino Python code in a Grasshopper definition can handle three tasks. The first…

Hilbert Curve

January 16, 2024

The Hilbert Curve, also referred to as the Hilbert space-filling curve, was initially introduced by the German mathematician David Hilbert in 1891. It is a continuous fractal curve, presenting a variation of the space-filling Peano curves uncovered by Giuseppe Peano in 1890. After a study on the mathematical background of this curve, I implemented a Python code into Grasshopper Python. However, I wanted to explore more variations by playing with the algorithm. This is why, the resulting Grasshopper definition can…

Bezier Function Extractor

December 26, 2023

Today’s curve is the beautiful Bezier curve. A series of linear interpolations between the coordinates of control points describe a Bezier curve. So, I created a simple tool in Grasshopper called Bezier Function Extractor to experiment with this elegant construction. In the linear form (degree 1) the linear interpolation between 2 points (P1 and P2). The point at parameter t (0<= t <= 1); Q = tP1 + (1-t)P2. In the second degree, we need three points (P1, P2, and…

Parquet Deformations add-on

May 4, 2023

This is my first experiment on developing add-ons for Grasshopper. There are two components in the “Parquet Deformations” add-on. These are the ghuser files coded in Python. So, they can work by just dragging and dropping to the Grasshopper canvas. These first two components of the toolset are more like helpers while designing Parquet Deformations. I introduced some of my re-generations of classical parquet deformations here and here and in a book chapter here. The Loft Component of Parquet Deformations…

Map Cleaner Script

December 3, 2022

The dwg format maps in Turkey are often problematic. You need to clean these for architectural studios. Maps mostly contain height information of buildings. But the contours of the buildings are distorted and polylines are generally exploded. The map of the region where we worked in the studio I conducted in the Fall 2021 term was also problematic. I created a Map Cleaner Script in Rhino Python and converted the building drawings on the map into solid 3D models. We…

Fourier Series

November 14, 2022

This is my first experiment with the Fourier Series in Grasshopper using Python. This is a technique to decompose functions into their frequency components. Fourier series have a wide range of applications in physics and engineering. What makes it especially fascinating, however, is the visual intuition it offers. It looks like a kind of mathematical “magic” that emerges from the geometry of frequency. I explored several excellent visual explanations online, including those by Coding Train, 3Blue1Brown, and Mathologer, each offering…

Vector Projection and Angle

December 21, 2021

In this session, I will add two new methods to the Vector class. I think this will finish the basics for the vectors. In the future, we are going to need several new methods like adding multiple vectors and interpolation. But for now, I think this would be sufficient to further advance into parametric curves and surfaces. These new methods will be based on the dot product method we created in the last post. I will add the vector projection…

« 1 2 3 4 5 »
  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #animation
    • #noise
    • #rhombus
    • #wittgenstein
    • #processing
    • #responsive
    • #anemone
    • #laser-cutting
    • #attractor
    • #rammed-earth
    • #art
    • #aluminium
    • #rhombicosidodecahedron
    • #puzzle
    • #paneling
    • #maxscript
    • #paper
    • #le-corbusier
    • #text
    • #music
  • 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