Old pattern, New use: Perforation study w/backlit screen.
Tuesday, February 17, 2009
Sunday, February 8, 2009
Generative Components: 3
GC Sample.
Basic output, but interesting nonetheless.
The surface below is built from a field of lines, each of which has a variable length based on the location of a single control point. Translating the location of this point alters relationship to the field, each line then changing in response. The variables driving each line are similar, yet result in a surface that neither rises nor falls uniformly, but undulates in a seemingly random manner. This has been simplified to a series of polygons, easily output to a Fabrication file.
Generative Components: 2
The last post didn't center on Generative Components as I'd intended. Perhaps trying to chronicle something after spending an entire day learning it isn't the way to go. Perhaps talking about something, anything, directly after isolating yourself to it isn't the strategy. Take time to think and then formulate your thoughts. I digress.
The potential in GC is amazing. Those involved in formal design can tell you how much time is taken to refine, adjust and operate upon iterations of an idea. Weeks are easily spent building, editing and reworking studies both physical and digital. A tool that allows you alternate methods through this workflow would be a very fortunate thing. Contrasty, any tool is packaged with inherent limitations. Some see script-, code- or program- based design as limiting, taking away the freedom 'intrinsic' of pen, paper and creative thought. Indirectly, I agree. But what I find limiting is the enormous investment of time required to become minimally effective with any tool. Technology progresses; How many tools can or should we reasonably learn?
Generative Components? Maya? 3DsMax? Rhino, Maxwell, FormZ, Catia, Photoshop, Illustrator, Director, AutoCAD, Microstation, Ecotect, Revit? This isn't a new problem so much as a new medium. Watercolor, Welding, Charcoal, Ink(?).... each is a tool.
I'm working to wield a few more.
Labels:
design technology,
generative components,
rants
Saturday, February 7, 2009
Generative Components: 1

I've never been TO Hoboken. I've passed directly through it by foot, car and train, but never stopped to take it in. Imagine my surprise this morning as I found myself getting ready to spend the entire day there. 9 hours, a SIT lecture hall and Generative Components.
GC? Well.... it's complicated. In a good way. :P
Labels:
generative components,
jersey,
modeling,
parametric
Monday, February 2, 2009
script: triangulation
processing:
In exploring Processing, I find myself asking 'how can I make this more interesting?
In exploring Processing, I find myself asking 'how can I make this more interesting?
The constraint, one entirely on my part, is that of dimensionality. Processing provides quick and gratifying graphic stimulus, but hasn't allowed movement in 3-dimensions as I'd like. Part of it is ability. I'm an architect, not a programmer. The amount of time that I can reasonable dedicate to learning new scripting languages (new? any?) is pretty minimal.
The eventual goal would be to take a randomized (Triangle_Strip) as below, integrate some sort of Z-axis variation and present the work through perspective. At this point it's a tall order. More study to be done...
script: texture
processing:
a pattern study of texture.
each circle is connected via a thin transparent line which, through iteration, creates an additive visual grain. below is the result of 50k loops of this simple function.


int xW = 3360;
int yH = 1050;
void setup(){
background(150);
size(xW,yH);
}
void draw(){
// for (int i = 0; i <>
//noLoop();
int xRAN = int(random(0,xW));
int xCIR = int(random(10,100));
int xLEG = int(random(50,1200));
int xLEG2 = int(random(50,1200));
int rVAL = int(random(-8,8));
// drawINSTANCE (x-position, circle-radius, legnth)
drawINSTANCE(xRAN, xCIR, xLEG, xLEG2, rVAL);
// }
}
void drawINSTANCE(int xRAN, int xCIR, int xLEG, int LEG2, int rVAL)
{
//display settings
int R = int(random(100,255));
int G = int(random(100,255));
int B = int(random(100,255));
smooth();
stroke(0,20);
fill(255,90);
//end settings
//start
pushMatrix();
translate(xRAN,0);
line(0,0,0,xLEG);
ellipse(0,0,xCIR/8,xCIR/8);
pushMatrix();
translate(0,xLEG);
ellipse(0,0,xCIR/6,xCIR/6);
pushMatrix();
rotate(PI/rVAL);
line(0,0,0,xLEG);
translate(0,xLEG);
ellipse(0,0,xCIR/3,xCIR/3);
popMatrix();
popMatrix();
popMatrix();
if((frameCount % 10000) == 0) {
saveFrame("02test-########.tif");
}
}
Sunday, February 1, 2009
Subscribe to:
Posts (Atom)

