Saturday, January 31, 2009

Scripts - Recap Script

//this script recaps scripts from the previous class and adds the "if...else" statement
//make sure to rename the first object "stage0"


float $rotate_y = 15.2;

int $i = 1;
while ($i < 30){
//refresh the screen
currentTime $i;

//defines my rotation
$rotate_z = $i * 3;

//if statement
if ($i < 15){
$rotate_z = $rotate_z - 2;
} else {
$rotate_z = $rotate_z - (rand(4));
}

//define object names
//by using $objectprevious, the duplicate command in the next section makes sure to duplicate the previous object
string $objectname = ("stage" + $i);
string $objectprevious = ("stage" + ($i - 1));

//other commands
duplicate -rr -n $objectname $objectprevious;
move -r 0 0.18 0 $objectname;
rotate -r -os 0 0 $rotate_z $objectname;

//count
$i = $i + 1;
}

Scripts - Stage10

//this script gives an example of the syntax to select a part of an object - in this case an isoparm on a nurbs surface
//defines the locaiton of the isoparm
float $isoparmloc = .3;

int $i = 1;
while ($i < 10){

//selects a random floating point number between 0 & 1 to be used when adding an isoparm
$isoparmloc = rand(1);

//defines the string to call out isoparm by name - in this case an isoparm in the u direction
//at the randomly generated number from the previous line
string $isoparm = ("nurbsPlane1.u[" + $isoparmloc + "]");

//adds an isoparm to the surface that is selected at
insertKnotSurface -ch 1 -nk 1 -add 1 -ib 0 -rpo 1 $isoparm;

//counts
$i = $i + 1;
}

Scripts - Stage9

//this script allows you to multiply select multiple (random) faces on a polygon model for further manipulation


int $i = 1;
while ($i < 200){

//picks a random face number
int $facenum = rand(239);

//defines the name of face
string $facename = ("pCylinder1.f[" + $facenum + "]");

//adds that face to the current selection
select -tgl $facename;

$i = $i + 1;
$i++;
}

Thursday, January 29, 2009

Notes on the following Scripts from Peter Zuspan

Keep in mind these scripts are for syntax
they don't look good
that's your job

Scripts - Stage1

// basic script copied directly from the script editor after executing a command manually

duplicate -rr;
move -r 0 -0.275236 0 ;
rotate -r -os 0 0 7.464724 ;

Scripts - Stage2

//this script introduces variables

float $rotate = 12.2;
//int $int = 1;
//string $string = "pCube";

duplicate -rr;
move -r 0 -0.275236 0 ;
rotate -r -os 0 0 $rotate ;

Scripts - Stage3

//this script introduces a while loop

float $rotate = 6.5;
//int $int = 1;
//string $string = "pCube";

int $i = 1;
while ($i<50){
//duplicate, move and rotate
duplicate -rr;
move -r 0 -0.275236 0 ;
rotate -r -os 0 0 $rotate ;


//counts
$i = $i + 1;
}

Scripts - Stage4

//this script redefines the variable in reference to $i (the while loop counter)
// it also introduces the trick of "currentTime $i" to refresh the screen to view the action

float $rotate = 6.5;
//int $int = 1;
//string $string = "pCube";

int $i = 1;
while ($i<50){
//trick to refresh the frame
currentTime $i;

$rotate = (1 * $i) + 2;

//duplicate, move and rotate
duplicate -rr;
move -r 0 -0.275236 0 ;
rotate -r -os 0 0 $rotate ;


//counts
$i = $i + 1;
}

Scripts - Stage5

// this script introduces the rand() function

float $rotate = 6.5;
//int $int = 1;
//string $string = "pCube";

int $i = 1;
while ($i<50){
//trick to refresh the frame
currentTime $i;

//$rotate = (1 * $i) + 2;
$rotate = rand(2);

//duplicate, move and rotate
duplicate -rr;
move -r 0 -0.275236 0 ;
rotate -r -os 0 0 $rotate ;


//counts
$i = $i + 1;
}

Scripts - Stage6

//this script introduces calling out objects by name in commands using strings
//it also has a problem...we solve it in the next one

float $rotate = 6.5;
//int $int = 1;
string $objectname;


int $i = 1;
while ($i<50){
//trick to refresh the frame
currentTime $i;

//$rotate = (1 * $i) + 2;
$rotate = (rand(10)) - 2;

//define object name variable
//$objectname = pCube1;
$objectname = ("pCube" + $i);


//duplicate, move and rotate
duplicate -rr $objectname;
move -r 0 -0.275236 0 $objectname;
rotate -r -os 0 0 $rotate $objectname;


//counts
$i = $i + 1;
}

Scripts - Stage7

//this version solves the move problem and adds a move command in the x direction

float $rotate = 6.5;
//int $int = 1;
string $objectname;


int $i = 1;
while ($i<50){
//trick to refresh the frame
currentTime $i;

//define rotate
//$rotate = (1 * $i) + 2;
$rotate = (rand(10)) - 2;

//define move value
float $move_y = .2 * $i;
float $move_x = .1 * $i;

//define object name variable
//$objectname = pCube1;
$objectname = ("pCube" + $i);


//duplicate, move and rotate
duplicate -rr $objectname;
move -r $move_x $move_y 0 $objectname;
rotate -r -os 0 0 $rotate $objectname;


//counts
$i = $i + 1;
}

Scripts - Stage8

//this version introduces manipulating object parts - verticies, planes, etc.

float $rotate = 6.5;
//int $int = 1;
string $objectname;


int $i = 1;
while ($i<50){
//trick to refresh the frame
currentTime $i;

//define rotate
//$rotate = (1 * $i) + 2;
$rotate = (rand(10)) - 2;

//define move value
float $move_y = .2 * $i;
float $move_x = .1 * $i;

//define object name variable
//$objectname = pCube1;
$objectname = ("pCube" + $i);


//duplicate, move and rotate
duplicate -rr $objectname;
move -r $move_x $move_y 0 $objectname;
rotate -r -os 0 0 $rotate $objectname;


//move vertex
//move -r 0 -0.137064 0 pCube1.vtx[0];
move -r 0 (-0.05 * $i) 0 ("pCube" + $i + ".vtx[0]");


//counts
$i = $i + 1;
}

MEL Script Editor

I found a very nice MEL Script Editor that allows you to execute MEL Scripts directly from the editor. It also as syntax coloring, command list (to auto complete), parameter list, interactive description (by placing the mouse pointer over a command) and the best thing is that it is free (the Learning Edition)
You can download it from here




Wednesday, January 28, 2009

Jesus Mateo/Kittybelle Rivera







General Guidelines

Co- and Prerequisite
Students entering Computer Practices in Design II must have taken and passed Computer Practices in Design I with a grade of C or better. Students failing to meet these prerequisite will be issued an administrative drop from Practices in Design II.
Meeting Time
Tuesdays 11:00am to 12:15pm, room #175, PCA
Thursdays 11:00am to 12:15pm, room #175, PCA
Course Evaluation
Students will be evaluated upon performance in the assignments. While a satisfactory grade in the course may be attained by the completion of all work required to the satisfaction of the professor, individual initiative and investigation of design and research issues that extend beyond the basic requirements are strongly encouraged.

Grades:
94-100= A 87-89= B+ 80-83= B- 74-76= C 67-69= D+ 60-63= D-
90-93= A- 84-86= B 77-79= C+ 70-73= C- 64-66= D 0-59= F

Attendance Guidelines:
Attendance and class participation are required at all class meetings. (see Course Schedule) Every absence is 20% off the attendance and participation grade. Four (4) unexcused absences automatically result in a failing grade for the course. Every day you are late, you will receive half (1/2) an absence. An acceptable excused absence is defined by the student having missed class due to extraordinary circumstances beyond his or her control and must be accompanied with written proof. In the event that you have missed a class, you are responsible for all the material covered. If you have any questions you contact your professor at the above phone number or you may leave a message at the School of Architecture Main Office (tel. 305-348-3181) located at VH 212. A sign in sheet is made for each class. It is the student’s responsibility to write their initials next to their name. Failure to do so will be marked as an absence.
Student Work
The School of Architecture reserves the right to retain any and all student work for the purpose of record, exhibition and instruction. All students are encouraged to photograph and/or copy all work for personal records prior to submittal to instructor.
Students Rights and Responsibilities:
It is the student's responsibility to obtain, become familiar with and abide by all Departmental, College and University requirements and regulations. These include but are not limited to:
-The Florida International University Catalog Division of Student Affairs Handbook of Rights and Responsibilities of Students.
-Department Curriculum and Program Sheets
-Department Policies and Regulations
Student with Special Needs:
Students who may need auxiliary aids or services to ensure access to academic program should register with the Office Disability Services for Students.
Civility Clause:
Students are expected to treat one another with a high degree of civility and respect. Students can and should expect the same from the instructor. If a student fails to act responsibly or disrupts the
class or impedes instruction he or she may be asked to leave the class and will be held responsible for all the information missed through this absence.

COURSE SCHEDULE:

Calendar dates are subject to change. Please contact appropriate offices for verification and updates. This calendar includes Official University holidays. Faculty is encouraged to make accommodations for students who wish to observe religious holidays. Students should make their request know at the beginning of the semester in writing. The instructor reserves the right to implement changes to this schedule as required.

WEEK 1
January 06-08 Lecture: Precedents and General Introduction to Digital Techniques
WEEK 2
January 13-15 Tutorial: Maya interface, nurbs modeling and construction history
WEEK 3
January 20 Tutorial: Nurbs modeling – Basic spline geometry and editing
January 22 Workshop delivered by Jose Gonzalez of Softlab – Digital fabrication
Exercise due: Spatial module and variations of a primitive
WEEK 4
January 27 Tutorial: Polygons modeling – editing and parametric control
January 29 Scripting Workshop by Peter Zuspan
January 30 Scripting Workshop by Peter Zuspan
January 31 Scripting Workshop by Peter Zuspan
WEEK 5
February 03-05 Tutorial: Calibration of joinery for component affiliation
Exercise due (Thursday): Module pair with spatial joint
WEEK 6
February 10-12 Tutorial: Deformers, editing, rendering
WEEK 7
February 17-19 Tutorial: Component aggregation/chain deployment
WEEK 8
February 24 Desk critique
February 26 MIDTERM: Group presentations and fabrication study models
WEEK 9
March 03-05 Tutorial: Rhino – active profile taxonomies and adjustment of sections
WEEK 10
March 10-12 Component detail/ornament: structure + skin – part to whole relationship
Exercise due: multiple chains evolved to field condition/membrane
WEEK 11
March 17-19 Spring Break – University Closed
WEEK 12
March 24-26 Tutorial: Blend shape and animated snapshot
WEEK 13
March 31 Final adjustment of group projects and set-up of models for 3D output
April 02 Desk critique
WEEK 14
April 07 Fabrication
April 09 FINAL REVIEW

Note: This schedule may be adapted to include an additional Workshop on Rhino Scripting and parametric modeling, upon confirmation.

Links and Resources:

* Autodesk Maya: http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=7635018
* Autodesk Learning Tools: http://www.alias.com/glb/eng/learningtools/learning_tools.jsp
* The Gnomon Workshop: http://www.thegnomonworkshop.com/
* Learning Maya: http://www.amazon.com/Learning-Maya-Foundation-
AliasTools/dp/1894893743/sr=1-1/qid=1159292645/ref=pd_bbs_1/002-60678712212819?ie=UTF8&s=books
* The Gnomon Workshop: http://www.thegnomonworkshop.com/
* Maya Tutorial Database: http://www.learning-maya.com/index.php
* Highend3d: http://www.highend3d.com/
* CGSociety: http://forums.cgsociety.org/
* Generative Components: http://www.smartgeometry.org/
* Digital Fabrication: http://digfab.blogspot.com/

Bibliography – Digital Practices

AD – Folding in Architecture (J.Kipnis – G.Lynn)
AD – Contemporary Techniques in Architecture (A.Rahim)
AD – Contemporary Processes in Architecture (A.Rahim)
AD – Versioning: Evolutionary Techniques in Architecture (SHOP)
Digital Tectonics (Leach, Turnbull, Williams)
PRAXIS – New Technologies:// New Architectures
Animate Form (G.Lynn)
NOX machining Architectures (Lars Spuybroek)
Phylogenesis Foreign Office Architects
Catalytic Formations: Digital Design in Architecture (A.Rahim)
Architecture in the Digital Age – Design and Manufacturing (Branko Kolarevic)
COLANI The Art of Shaping the Future (A.Bangert)
Diagram Diaries (P.Eisenman)
CODEX (P.Eisenman)
TRACING EISENMAN (P.Eisenman)

Websites – Digital Practices and Fabrication

FOREIGN OFFICE ARCHITECTS - www.f-o-a.net
ARCHI-TECTONICS - www.archi-tectonics.com
KOLATAN/MACDONALD - www.kolatanmacdonaldstudio.com
GREG LYNN/FORM - www.glform.com
REISER + UMEMOTO - www.reiser-umemoto.com
SHOP - www.shoparc.com
UNSTUDIO - www.unstudio.com
ALI RAHIM - www.c-a-p.net
HERNAN DIAZ ALONSO – www.xefirotarch.com
ASYMPTOTE – www.asymptote.net
EISENMAN – www.eisenmanarchitects.com
DECOI – www.decoi.org
NEIL M. DENARI – www.nmda-inc.com
JAKOB + MACFARLANE – www.jakobmacfarlane.com
WILLIAM MASSIE – www.massiearchitecture.com
JURGEN MAYER H. – www.jmayerh.de
NOX – www.noxarch.nl
JOEL SANDERS – www.joelsandersarchitect.com
SERVO – www.s-e-r-v-o.com
SYSTEMARCHITECTS – www.systemarchitects.net
SOTAMAA Architecture Design - www.sotamaa.net
GRAMAZIO & KOHLER - http://www.gramaziokohler.com
ALISA ANDRASEK: BIOTHING - http://biothing.org/wiki/doku.php?id=home&do=backlink
EZCT - http://www.ezct.net/
LABDORA - http://labdora.com/index-proj.html
IJP - http://www.ijpcorporation.com/index.htm
SUBDV - http://www.subdv.com/
SITU STUDIO - http://www.situstudio.com/
MATERIALISE - http://www.materialise-mgx.com/#
SOFTLAB - http://www.softlabnyc.com/
IWAMOTOSCOTT - http://www.iwamotoscott.com/ISARhome.html

MAKING WAVES - KARLA BARRERA