I have always been a huge Renault fan. They are one of the companies that inspired me to learn how to write algorithms. Unfortunately, I have not had the pleasure of working there so take this deconstructing of the Renault Trezor hex pattern surface as my own interpretation.
We will be working with Alias, Rhino, Grasshopper and Lunchbox. Lunchbox is a plugin for Grasshopper written by Nathan Miller.
Modeling in Alias
I am much faster and fluent in Alias, than I am in Rhino so I do all my modeling inside Alias. I quickly modeled a surface that has the general shape and feel of the Trezor front end.
Importing Into Rhino/Grasshopper
Here all I did was add the surface into my algorithm, apply hexagonal cells and patch the cells with a surface. As you can see, the result wasn’t exactly what we are looking for. What is happening is the surface is curved and the control points/CV’s are not equally distributed.
Rebuilding the input surface for equal distribution
This is a common problem and there are many ways to fix it. The method I used this time was a bit unconventional, I am sure there is a better way. If you are a Grasshopper expert and are reading this, please don’t be afraid to write me a message. I am always learning and looking for tips.
The logic behind this is extracting ISO curves that are equally space length and height-wise. Then making a surface based on that curve network. Even though I have made a much ‘heavier’ surface, it is based on equally spaced curves. So once we add that new surface back to our hex pattern tool set. We get this:
Here we have the basic surface treatment found in the Renault Trezor. Once I finished this I decided to keep pushing this design and adding more complex design elements.
I wanted to add a secondary design element so I used a curve as a way to control that. The logic behind this is that I’m measuring the distance between the center of the cell and the curve I just placed. Then I remap their distance in a scale of 0 to 1. This way I can tell my algorithm to separate the closest 25th percent.
Scale And Move Based On Distance To Curve
Once I isolate the cells, I can add further components just to those. The logic behind this step is that I tell Rhino to get those cells and measure the distance to that curve. Then I remap those numbers into other parts of the algorithm. Now I can tell Grasshopper to scale my openings relative to the distance to the curve. Using that same logic, I am telling it to move the cells back. This gives us a nice gradual change in the design.
The Power Of Algorithms
Now that the algorithm is complete I wanted to further illustrate the potential of Grasshopper. The following were all done only changing numbers around, they are almost instant and are great for design changes. I’ll start with the one we did.
Using The Same Algorithm With Different Surfaces And Curves
That’s the true beauty of approaching design and modeling with algorithms. Once you have written it, you can use it in many other projects. All I have to do is add the new surface and curves. Mathematically speaking, this gives my design an infinite amount of different iterations almost instantly.
I can see myself using this for environmental design — using the openings to control the indoor lighting. This is why I decided to spend those countless hours learning a brand new approach to modeling. It gives me almost endless opportunities to design and make what is in my head. I have never regretted it and it has helped me work in some of the best automotive design studios in the world.
Final Word
I want to make clear that this is meant as a way to give insight to the process. I made it to help people understand the logic behind these types of algorithms. There are plenty of steps I didn’t go over because that would take way too long. It took me close to three years to become proficient in Grasshopper. I didn’t talk about the stuff that had to do with branch and data tree management.
I hope you enjoyed this article and remember to follow or add me. And if you are a looking for some help, I am open to new opportunities.