designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

#grasshopper

271 posts

Cycloidal Toolpath Planning for Robotic Sandblasting

August 5, 2026

Today, Efecan and I attached the sandblasting device to the robotic arm. The device sprays a special sandblasting material onto surfaces using air pressure. Thus, it is used for cleaning moldy and dirty surfaces in buildings under restoration. Under normal conditions, the sandblasting gun is controlled manually. If the cleaning is too light, it remains insufficient, but it shouldn’t be so intense as to erode the stone either. Normally, the operator performs this control visually. Here, the potential uses for…

Dual Polyhedra in Grasshopper

October 7, 2025

Exploring dual polyhedra in Grasshopper is an interesting topic. In this post, I try to generate the dual of any polyhedron using Rhino Python and possibly Grasshopper. I developed this code for Rhino Python earlier here, and now I have converted it into a Grasshopper-Python component for better usability. I start the process by breaking the polyhedron into individual faces and gathering the corner points of each face. These points become the vertices of the dual polyhedron. Then, for each…

String Art in Rhino Python

June 19, 2025

String art is a cool art technique that combines geometry and aesthetics to recreate images using lines between pins. Here is a good reference to start studying it. In this post, I explored a custom Rhino Python script designed for Rhinoceros 7 and 8. It transforms a grayscale image into a dense web of threads. The algorithm analyzes the darkest areas of the image and connects pins in a circular layout to form compositions. The script begins by converting a…

Differential Growth

June 16, 2025

Differential growth is a process where different parts of a structure grow at different rates, leading to complex forms. After watching this, I decided to try it in Grasshopper. Here, differential growth mimics this behavior by applying rules such as Repulsion to avoid crowding or overlapping, Cohesion to keep parts connected or within a range, and Insertion to add new elements when a part stretches too far. The algorithm I present here simulates a differential growth process starting from a…

Socolar Tiling

May 10, 2025

An aperiodic tiling is a pattern that covers the plane without ever repeating itself (i.e., it is non-periodic). A few special shapes, arranged according to specific rules, can cover the entire plane, but the resulting pattern never repeats exactly. I challenged myself on a 3-day coding sprint to create a general-purpose script in Grasshopper that could generate these tilings. I set Socolar Tiling as my first target. This link contains great information about this and many other aperiodic tilings. Socolar…

Discrete Fourier Transform

May 8, 2025

The Fourier Transform is a powerful mathematical technique that allows us to analyze the different frequency components within a signal or shape. Its discrete version, the Discrete Fourier Transform (DFT), is used when working with numerical data. I studied the Fourier Series here before. One of the most fascinating aspects of the DFT is that it can represent a signal or shape using rotating circles (or vectors). Each circle corresponds to a specific frequency, amplitude, and phase. When connected in…

Evolutionary Optimization of Tilings

April 19, 2025

In large-scale projects, calculating tiling layouts for wall, floor, and ceiling surfaces becomes even more critical. Evolutionary optimization of these tilings seemed to be a viable approach yesterday. Considering how time-consuming and labor-intensive this process can be, I tried using Galapagos, an old but often overlooked feature in Grasshopper, which might be particularly useful in this situation. Galapagos provides an alternative interface for evolutionary optimization within Grasshopper. It works by minimizing or maximizing a fitness value you define, using parameters…

Goldberg Polyhedra

April 11, 2025

Although it appears simple, Goldberg Polyhedra in Grasshopper became a tough challenge, which I like a lot. I spent about 24 hours attempting to generate these polyhedra. I started with Goldberg’s original method. This creates an equilateral triangle using coordinates denoted as m and n on a hexagonal grid. Then, we place this triangle onto the faces of an icosahedron. Finally, we project them onto a concentric sphere. We can create many polyhedra by changing the values of m and…

Chamfered Polyhedra

April 2, 2025

I had been researching Goldberg Polyhedra for a while. While exploring how to perform chamfer operations in Grasshopper, I found some interesting results. I want to share them with you. In this Grasshopper project, I reused my previous work, where I built a dodecahedron using the golden ratio. Essentially, all I did was add the Fillet Edge component. I don’t use this component much, so I learned it through this process. At one point, I realized I had created a…

ASCII Art in Grasshopper

August 24, 2024

ASCII art is a graphic design technique that uses characters from the ASCII (American Standard Code for Information Interchange) set to create images, symbols, and designs. This form of art involves arranging text characters to form a visual representation of objects, scenes, or abstract patterns. I first encountered this art form in the 90s through readme text files and computer games. Years later, attempting to automate it in Grasshopper was a lot of fun. My initial goal was to calculate…

« 1 2 3 4 5 6 7 8 9 10 11 12 … 26 27 28 »
  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #pvc-hose
    • #aperiodic
    • #buckyball
    • #hyperbolic
    • #octahedron
    • #landscape
    • #graph-mapper
    • #circle
    • #puzzle
    • #parametric-curve
    • #geodesic
    • #lissajous
    • #tensegrity
    • #photoshop
    • #nesting
    • #kuka-prc
    • #dome
    • #voronoi
    • #hyperbolic-paraboloid
    • #grid
  • 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