INTRODUCTION
This project is a continuous work on my project 1 named TWIRL which is designed by Zaha Hadid. Based on the former work about building vertical surfaces, I draw ground pattern at this time.
Picture 1 – Perspective
Picture 2 – Ground Pavement Pattern
MODELING
MODELING
1. Locate the Center Points of Squares
1. Locate the Center Points of Squares
First, draw the boundary of the site and rotate it to form the boundary of all small squares.
Second, divide the square into several rows and columns, and get all intersection points of grids.
Third, create planar surfaces as borders to trim the grids. Then, get valuable points which can be central points of all small squares. Furthermore, remove all nulls from the data list.
Screenshot – 1
Second, divide the square into several rows and columns, and get all intersection points of grids.
Screenshot – 2
Screenshot – 3
2. Draw Squares in Different Sizes
2. Draw Squares in Different Sizes
After getting the central points, I try to draw all small squares by using Python. At the beginning, I edit codes in Rhino Python. During the process, I founded some limitation. Then, I turn to use Grasshopper Python and improve the codes.
After getting the central points, I try to draw all small squares by using Python. At the beginning, I edit codes in Rhino Python. During the process, I founded some limitation. Then, I turn to use Grasshopper Python and improve the codes.
2.1 Rhino Python
After baking all central points, I try to import the coordinates of these points firstly, by using GetObject and PointCoorinates.
Because, sizes of squares changed according to the distance between the central points of squares and vertical surfaces. And, the values of points, located in the data list, are following the sequence of grids. So, I choose Condition to draw these squares.
When a value of distance meet one condition, a square can be drawn by using AddPolyine. Each polyline is consisted of five points which means one corner point used repeatedly.
At last, rotate all small squares by using RotateObjects.
Screenshot – 5
After baking all central points, I try to import the coordinates of these points firstly, by using GetObject and PointCoorinates.
Because, sizes of squares changed according to the distance between the central points of squares and vertical surfaces. And, the values of points, located in the data list, are following the sequence of grids. So, I choose Condition to draw these squares.
When a value of distance meet one condition, a square can be drawn by using AddPolyine. Each polyline is consisted of five points which means one corner point used repeatedly.
At last, rotate all small squares by using RotateObjects.
Screenshot – 5
2.2 Grasshopper Python
In Rhino Python, codes need to be revised if I wanna change the value of parameters. While, in Grasshopper Python, sliders can be added to make an easy control. By using Range, scale of each square can be adjusted. Furthermore, the rotated angle can be controlled easily.
Screenshot – 6