UCSB MAT Computational Fabrication - Playing With Extrusion and Arrays

Introduction: UCSB MAT Computational Fabrication - Playing With Extrusion and Arrays

This is my first week assignment in Computational Fabrication with Prof. Jennifer Jacobs at UC Santa Barbara. In this assignment I utilized the tutorial provided by Dr. Jacobs to create procedural patterns using a grid. I explored various rule sets using boolean expressions. In particular I arrived at bitwise operators as providing unusual and evocative patterns. I also made a few adjustments to the code that was provided to aid in my pattern discovery process and to help get the desired output.

Settings for this image:

rx = 16
mod = 5
mtype = 4
distLow = 6.0
distHigh = 25.0

Step 1: Grasshopper Steps and Modifications

The image provided shows you the subtle modifications I made to the provided code.

  1. Instead of using a distance to create the Delaunay triangulations, I decided to use a range (see distLow and distHigh), as it afforded me more flexibility. With a low and a high parameter, I could control how many connections were being made regardless of how many points there were. This allowed me more esthetic variability.
  2. I also added printed output that gave me a quick reading of all of the parameters so that I could copy/paste them and use them to catalog my results.

Step 2: Code Changes: Print All Parameters

I added a piece of code that prints all parameters whenever I create a new model.

Step 3: Code: I Added Bitwise and Relational Expressions

Inspired by this post by programmer Martin Kleppe on Twitter, I decided to explore some bitwise boolean expressions to see what kinds of diverse patterns I could explore.

Step 4: I Created a Range Instead of a Single Distance

In order to facilitate creative exploration, I decided to create a range instead of a single distance.

One insight that I gained through this process is that this seems like it may be an integral part of Islamic geometry as well. Now that I've been able to explore this a bit, it seems like testing for ranges and connecting points only within certain parameters may be what gives some Islamic geometry its characteristic look.

Step 5: Complete Code

My complete code with modifications is available as a GitHub gist.

Step 6: Example 1

rx = 23
mod = 6
mtype = 3
distLow = 11.303
distHigh = 30.0

Step 7: Example 2

rx = 32
mod = 9
mtype = 4
distLow = 10.0
distHigh = 24.0

Step 8: Example 03

rx = 32
mod = 9
mtype = 6
distLow = 14.5
distHigh = 30.0

Step 9: Example 4

rx = 32
mod = 6
mtype = 4
distLow = 14.2
distHigh = 30.0

Step 10: Example 5

rx = 25
mod = 5
mtype = 3
distLow = 0.0
distHigh = 10.0

Be the First to Share

    Recommendations

    • Explore Science Challenge

      Explore Science Challenge
    • Home Decor Challenge

      Home Decor Challenge
    • Colors of the Rainbow Contest

      Colors of the Rainbow Contest

    2 Comments

    0
    StumpChunkman
    StumpChunkman

    2 months ago

    Very cool. What are you coding and vizualizing the code with?

    0
    masoodkamandy
    masoodkamandy

    Reply 2 months ago

    It’s Python within a Grasshopper node and outputting using Rhino.