# Generative Design Variations M.3.2.3 A second coördinate system

I quote the Generative Design book here: ‘Especially with complicated formulas, it’s easiest to keep track of the original grid and the three-dimensional form using two different coördinate systems: one for the original two-dimensional grid and another for the positions in the three-dimensional space. From now on, u and v will be used to represent the axes of the grid coördinate system, x, y, and z will continue to be used for the three-dimensional space. The values uMin, uMax, vMin and vMax are used to define the value range for u and v. The introduction of a second coördinate system becomes especially noticeable in the source code, in the new names for some variables.’ Here is the original code:
M_3_2_03

I have made a summary page on Flickr. Almost all images I made during this assignment can be found there.
GDV_M_3_2_3

And because none of the programs I changed work in JavaScript you can find my variations of the original code if you click on the previews of this loftmatic page.
GDV_M_3_2_3_Home

I found it very confusing to introduce a second coördinate system. And why using u for horizontal an v for the vertical grid definition? V I could understand as an abbreviation of vertical. But U for horizontal? I changed that to H for the global variable H_GridDefinition. But maybe after working with those two coordinate systems it will all fall in its place. We will see. I used the same tactics as in the earlier examples. Repeated the shape four times. Which lead to a bit boring setup if you ask me. Increased the H & V_GridDefinition to 300. But in a later stage I found a GridDefinition of 400 better. I changed that afterwards. And because I need sometimes to zoom in and out of an object I gave the up and down key’s zoom functionality.
M_3_2_03_GDV_01

Increasing the H & V Min and MaxValueRange from 40 to 80 leads to a combination of the four objects. Which on itself leads to interesting patterns.
M_3_2_03_GDV_02

Rotated the four rectangles 45 degrees.
M_3_2_03_GDV_03

Instead of rotate I used a combination of rotateX and rotateY in this example.
M_3_2_03_GDV_04

I increased the H & V GridDefinition to 600. Increased it again to 800. I think this is hard work for my system. The response is very tiresome. But it gives interesting images. And that is where I am after.
M_3_2_03_GDV_05

I have thrown all my earlier copied objects away until there was only one left. It would be interesting to see what you can do with just one object. I increased the z-value 6 times.
M_3_2_03_GDV_06

Added a second copy of the same object. The only difference is that it is rotated at the x-axis for 90 degrees.
M_3_2_03_GDV_07

Added a third copy of the same object. The only difference is that it is rotated at the y-axis for 90 degrees.
M_3_2_03_GDV_08

I have now five identical objects intersecting each other. The first one is not rotated at all. Second one is rotated on the x-side for 90 degrees. The third one rotated on the y-side for 90 degrees. Forth rotated-y 135 degrees and the fifth shape is y-rotated for 225 degrees.
M_3_2_03_GDV_09

I could add two more shapes to this which complete the object. Added a shape rotated x with a rotation of 135 degrees and one shape rotated on the x with a rotation of 225.
M_3_2_03_GDV_10