Archinect
anchor

MELSCRIPTS AND ALGO-RYTHMS COLLECTION

Kristix You! Black Emperor

Here are the only 2 melscripts I found here and there.
The first one I never tried, and the second I couldn't make it work!!!
Any of you algo-architects have any idea how to make them work OR BETTER, DO YOU HAVE ANY SCRIPT OF THIS KIND THAT WORKS!!!
Personally I love the way advanced ark studio of gsapp http://www.arch.columbia.edu/gsap/46946///?data=true!work!current_studios.php?semester=2005-01-01!46946
I wonder if this kind of scripts work just like the space tool in 3dStudioMax!!!
I say, there should be any of those students under Alonso who have those scripts, c'mon , share share share with all us who want to feel the fresh breez of "one button architecture", and aren't able to afford a 30000$ seminar at Columbia!
Ciao




it's an old one,,but by far still one of the best scripts ever

/* Filename: mwCoffeeBreak.mel

mwCoffeeBreak v1
Matt Wood, 24 Oct 2000
matt@mattwood3d.com

This script simulates a fictitious processing task which
could take minutes, hours or even days. Thus, the weary and
oppressed Maya operator is afforded an opportunity to
confidently stride out for a coffee, bag of chips, yard of
ale or "whatever", without fear of retribution from angry
management or colleagues.

Don't let the "data loss" warning scare you; it's all part of
the dazzling art of illusion.

Suggestions for v2 most welcome.


Limitations:

It's rubbish.


*/


global proc mwCoffeeBreak()
{
if (`window -ex mwCoffeeBreakWin`)
deleteUI mwCoffeeBreakWin;

window -ip -s 1 -in "Coffe Break" -w 322 -h 150 -title "Coffee Break" mwCoffeeBreakWin;
string $form1=`formLayout`;
string $rc3 =`columnLayout`;
text "How long is your break going to be?";
setParent ..;

string $rc2 =`columnLayout`;
string $timeRadio = `radioCollection`;
string $rbMins = `radioButton -label minutes -select`;
string $rbHours = `radioButton -label hours`;
string $rbDays = `radioButton -label days`;

setParent $form1;
string $b1 =`button -label "Go" -c ("mwCBGo(\`radioCollection -query -select "+$timeRadio+"\`)")`;
string $b2 =`button -label "Cancel" -c "mwCBCancel"`;

formLayout -edit
-attachForm $rc2 right 5
-attachForm $rc2 left 120
-attachForm $rc2 top 30
-attachForm $rc3 right 5
-attachForm $rc3 left 5
-attachForm $rc3 top 10
-attachForm $b1 left 5
-attachForm $b1 bottom 5
-attachPosition $b1 right 2 50
-attachForm $b2 right 5
-attachForm $b2 bottom 5
-attachPosition $b2 left 2 50
$form1;

showWindow mwCoffeeBreakWin;

}

global proc mwCBGo(string $selectedTimeRadio)

{
int $nodes = 1000+rand(10000);
string $timeUnit = `radioButton -query -label $selectedTimeRadio`;
string $cancelResult;
deleteUI mwCoffeeBreakWin;
waitCursor -state on;
do
{
confirmDialog -t Maya -m ("Processing "+$nodes+" nodes. This operation may take a few "+$timeUnit+"...") -b "Cancel";
$cancelResult = `confirmDialog -t "Warning" -m "Aborting this process may result in data loss. Are you sure you want to do this?" -b "Yes" -b "No" -cb "No"`;
}
while($cancelResult != "Yes");
waitCursor -state off;
}

global proc mwCBCancel()

{
deleteUI mwCoffeeBreakWin;
}












And here it is another from materialsystems.org Honeycomb scrupt!!!

//This script attempts to create a honeycomb structure from the input
//of various variables based on a given open surface. The variables
//include the number of cells in both U and V directions and the cell
//height. At the moment, the script does not allow multiple cell layers,
//variable cell height, or selection of honeycomb pattern types. The
//current pattern is based on starting at the U and V min and drawing
//towards the U and V max. Basically a diagonal pattern.

//Set-up the UI
string $window = `window -w 500 -h 200 -title "Honeycomb Script" HoneycombWindow`;

columnLayout -adjustableColumn true;

floatSliderGrp -label "Number of Grid Points in the U Direction:"
-field true
-cw 1 200
-minValue 1
-maxValue 100
-v 10
-pre 0
-s 1
slider1;

floatSliderGrp -label "Number of Grid Points in the V Direction:"
-field true
-cw 1 200
-minValue 1
-maxValue 100
-v 10
-pre 0
-s 1
slider2;

text -label "Note: For closed surfaces, enter values that are multiples of 3" -align "left";
string $ProgressBar1 = `progressBar -maxValue 100 -width 300 ProgressBar1`;
string $ProgressBar2 = `progressBar -maxValue 100 -width 300 ProgressBar2`;

//Create the button.
//
string $button = `button -w 100 -label "Run" -c honeycomb`;

showWindow $window;




global proc honeycomb()
{
float $Udiv;
$Udiv = `floatSliderGrp -q -v slider1`;

float $Vdiv;
$Vdiv = `floatSliderGrp -q -v slider2`;



// Set the name for the selected surface.

string $object[]= `ls -sl`;
string $surface = $object[0];



//Here is where the user determines the number of divisions in the U and V directions.

//float $Udiv = 33;
//float $Vdiv = 21;


float $maxdiv = max($Udiv,$Vdiv);

progressBar -e -maxValue $maxdiv ProgressBar1;
progressBar -e -maxValue $maxdiv ProgressBar2;

//Establish the array of float values for both U and V divisions.

float $Uvalue[];
float $Vvalue[];

for ($i = 0; $i
$Uvalue[$i] = 1/$Udiv * $i;
print ("The value of U at " + $i + " is: " + $Uvalue[$i] + "\n");
}


for ($i = 0; $i $Vvalue[$i] = 1/$Vdiv * $i;
print ("The value of V at " + $i + " is: " + $Vvalue[$i] + "\n");
}

print("U array has a size of " + size($Uvalue) + ".\n" );
print("V array has a size of " + size($Vvalue) + ".\n" );


//Create the float array and the float variables that will dynamically contain the xyz coordinates of the grid points.

float $coord[3];
float $sx, $sy, $sz, $ex, $ey, $ez;
string $curveZero[];
string $curve1, $curve2, $curve3, $curve4;

//Begin loop for all DHDV-type curves (Diagonal/Horizontal/Diagonal/Vertical) on surface.


for ($i = 0; $i
progressBar -e -pr $i ProgressBar1;

int $u = 1;
int $v = $i+1;

//Create the starting curve of the polylineA_$i (Diagonal)

$coord = `pointOnSurface -u $Uvalue[0] -v $Vvalue[$i] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[0] + ", " + $Vvalue[$i] + "\n");

if (($u) > ($Udiv) || ($v) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

$curveZero[$i] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;


//Loop that completes polylineA_$i

while ($u
//check for range and then draw horizontal line

if (($v+1) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v+1] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+1) > ($Udiv) || ($v+2) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v+2] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+2) > ($Udiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+2] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+3) > ($Udiv) || ($v+3) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}

$u = 1;
$v = $i+2;

//Create the starting curve of the polylineB_$i (vertical)

if (($v) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[0] -v $Vvalue[$v] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[0] + ", " + $Vvalue[$v] + "\n");

if (($u) > ($Udiv)) break;
$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

$curveZero[$i+1] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;



//Loop that completes polylineB_$i



while ($u
//check for range and then draw diagonal line

if (($u+1) > ($Udiv) || ($v+1) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v+1] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw horizontal line

if (($v+2) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v+2] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+2) > ($Udiv) || ($v+3) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+3] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+3) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}

$u = 0;
$v = $i+2;

//Create the starting curve of the polylineC_$i (horizontal)

if (($v) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

if (($v+1) > ($Vdiv)) break;
$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v+1] + "\n");

$curveZero[$i+1] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;



//Loop that completes polylineC_$i



while ($u
//check for range and then draw diagonal line

if (($u+1) > ($Udiv) || ($v+2) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v+2] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+2) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+2] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+3) > ($Udiv) || ($v+3) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw horizontal line

if (($v+4) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+4] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+4] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}




}




//Begin loop for all DVDH-type curves (Diagonal/Vertical/Diagonal/Horizontal) on surface.


for ($i = 0; $i
progressBar -e -pr $i ProgressBar2;

int $u = $i+1;
int $v = 1;

//Create the starting curve of the polylineA_$i (Diagonal)

$coord = `pointOnSurface -u $Uvalue[$i] -v $Vvalue[0] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[$i] + ", " + $Vvalue[0] + "\n");

if (($u) > ($Udiv) || ($v) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

$curveZero[$i] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;


//Loop that completes polylineA_$i

while ($u
//check for range and then draw horizontal line

if (($u+1) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+2) > ($Udiv) || ($v+1) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+1] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+2) > ($Udiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+2] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+3) > ($Udiv) || ($v+3) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}

$u = $i+2;
$v = 1;

//Create the starting curve of the polylineB_$i (horizontal)

if (($u) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[0] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[$v] + ", " + $Vvalue[0] + "\n");

if (($v) > ($Vdiv)) break;
$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

$curveZero[$i+1] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;



//Loop that completes polylineB_$i



while ($u
//check for range and then draw diagonal line

if (($u+1) > ($Udiv) || ($v+1) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v+1] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+2) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+1] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+3) > ($Udiv) || ($v+2) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+2] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw horizontal line

if (($v+3) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}

$u = $i+2;
$v = 0;

//Create the starting curve of the polylineC_$i (vertical)

if (($u) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u] -v $Vvalue[$v] -p $surface`;
$sx = $coord[0];
$sy = $coord[1];
$sz = $coord[2];
print ($Uvalue[$u] + ", " + $Vvalue[$v] + "\n");

if (($u+1) > ($Udiv)) break;
$coord = `pointOnSurface -u $Uvalue[$u+1] -v $Vvalue[$v] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+1] + ", " + $Vvalue[$v] + "\n");

$curveZero[$i+1] = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

$sx = $ex;
$sy = $ey;
$sz = $ez;



//Loop that completes polylineC_$i



while ($u
//check for range and then draw diagonal line

if (($u+2) > ($Udiv) || ($v+1) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+1] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+1] + "\n");

$curve1 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve1;
delete $curve1;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw horizontal line

if (($v+2) > ($Vdiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+2] -v $Vvalue[$v+2] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+2] + ", " + $Vvalue[$v+2] + "\n");

$curve2 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve2;
delete $curve2;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw diagonal line

if (($u+3) > ($Udiv) || ($v+3) > ($Vdiv))break;

$coord = `pointOnSurface -u $Uvalue[$u+3] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+3] + ", " + $Vvalue[$v+3] + "\n");

$curve3 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve3;
delete $curve3;

$sx = $ex;
$sy = $ey;
$sz = $ez;

//check for range and then draw vertical line

if (($u+4) > ($Udiv)) break;

$coord = `pointOnSurface -u $Uvalue[$u+4] -v $Vvalue[$v+3] -p $surface`;
$ex = $coord[0];
$ey = $coord[1];
$ez = $coord[2];
print ($Uvalue[$u+4] + ", " + $Vvalue[$v+3] + "\n");

$curve4 = `curve -d 1 -p $sx $sy $sz -p $ex $ey $ez`;

attachCurve $curveZero[$i+1] $curve4;
delete $curve4;

$sx = $ex;
$sy = $ey;
$sz = $ez;

$u = ($u+3);
$v = ($v+3);


}


}
}

 
Oct 17, 05 6:43 am
Kristix You! Black Emperor

...hello...Can't believe nobody have some. It's not the treasure of pirates...c'mon...

Oct 18, 05 4:30 am  · 
 · 
a-f

It's your attitude that prevents me from posting anything. "One button architecture" ? Are you joking or what? In another forum you state that scripts are tools, and here it's clear you're not even interested in learning those tools.

Oct 18, 05 5:37 am  · 
 · 
archifreak

a-f: I think he was being ironic about the "one button" thing. Anyway, If it wasn't it would be great for people that don't have much access to that kind of investigation to take a look and experiment the scripts so tahat they know how things are done and generated

Oct 18, 05 5:50 am  · 
 · 
Kristix You! Black Emperor

Of course was being ironic about that, we've been so long over and over this argument that there is no more need to comment. Mine is just the desire to experiment this kind of generating of architecture like in Columbia uni (I live in FLORENCE).
I'm a student and for sure I'm not gonna make money with this stuff but just want to try what fascinates me, this is all a-f!! I learned maya, max, zbrush just for modelling experience in architecture and you really think I don't want to understand these tools or even make one!!!??
Anyway a-f thanks for posting.
Now I am preparing a seminar for this theme and when I'll get into anything of interesting will post here. Thank to any of you who is helpful

Oct 19, 05 9:09 am  · 
 · 
a-f

Sorry kristi, I'm in a slightly bad mood these days!

Oct 19, 05 9:15 am  · 
 · 
Kristix You! Black Emperor

Maybe me too will have a diploma with some blobish-liquid stuff...
so are you going to give contribution to this enormous collection!!?

Oct 19, 05 9:56 am  · 
 · 
el jeffe

"Probably one of de Certeau's clearest examples of the tactic may be found in his discussion of la perruque: "the worker's own work disguised as work for his employer" (25). De Certeau offers this pilfering, or what he more frequently terms "poaching," as an operational model of popular culture which might displace traditional modes of study which have emphasized "the past, the countryside, or primitive peoples" (Practice 25). Although de Certeau would read la perruque as a form of resistance in which the worker is able to "signify his [sic] own capabilities through his work and to confirm his solidarity with other workers or his family through spending time in this way" (25-6), a certain breakdown between tactic and strategy may be evident in that de Certeau notes how such improvisation may well take place with the acknowledgement of the boss who has chosen to turn a not-so-blind eye. Since the boss may continue to exercise a control over the situation by dictating the limits of the "blindness," la perruque may also, therefore, be read as an escape valve, an enclave in which the worker is permitted to fantasize liberty. In any case, the distinction between tactic and strategy may require more caution than de Certeau admits."

rock on.

Oct 19, 05 10:39 am  · 
 · 
Kristix You! Black Emperor

el jeffe, wrong thread man
Hey where's every body?!!
Wake up?
It's impossible you fot nothin!

Oct 24, 05 6:13 am  · 
 · 
mean prank riverbank

what's with the parametric and the algorithmic? i mean, your interests. all ya'll's interests. algorithmic and parametric blobs are not interesting. actually, no blobs are interesting. algorithmic and parametric form generation is exciting conceptually, but not in practice until you develop some control - not necessarily intention, just control. buy the book Complete Maya Programming: An Extensive Guide to MEL and C++ API by David Gould, read it in all it's monotony, and then get this one: Expressive Form: A Conceptual Approach to Computational Design by Kostas Terzidis to hone your control. as with parametric modeling/modelers you've got to know what you're doing, otherwise it's just crap that you happened upon, that i happened upon some website, that's pooped out of columbia.

ps, solidworks rocks

Oct 25, 05 3:38 am  · 
 · 
susan79

Does anybody have links to interesting prametric and algorythmic projects or images that were not just "pooped out", i.e. that are exciting conceptually and show more control?
Thanks!

Oct 25, 05 3:15 pm  · 
 · 
Kristix You! Black Emperor

eVo you must understand that experimenting this kind of parametric stuff doesn't mean
Thanks for advising those books!
Just a question; have you been through this kind of experiments in architecture for judging if it is worth spending time on it, of course interesting or not is a very personal taste.

Oct 27, 05 5:23 am  · 
 · 
mean prank riverbank

...actually I don't understand your question, er, the first line of your post...but generally i find parametric design very interesting for design/architecture but not so for algorithmic form generation - which is how it's typically used. it's personal, yes, but 'algorithmic architecture' won't take you any where by default but parametrics could. the best algorithms can do for you is create some false complexity...I could elaborate but you should experiment and soon you'll be burnt out on it. parametric table

Oct 28, 05 2:17 am  · 
 · 
Kristix You! Black Emperor

eVo you must understand that experimenting with this kind of parametric stuf doesn't mean for sure building. I't just the curiosity of trying this stuff everybody speaks of. Let's take it like a form of art! (rather than architecture, in this context)

This was my first part of post that I can't understand why is evaporated.
Actually about what you say I guess everybody can say alot: "but generally i find parametric design very interesting for design/architecture but not so for algorithmic form generation " Where is the difference between pure design research (in 3d sketches) and orgasmic algorithmic form generation (with a sure WOW effect-guarateed)? Guess all teachers at the Columbia too are some crazy blobers as they continou to make their students do researches on parametric form-architecture!!!!
"...won't take you any where by default but parametrics could"- this statement can be true, I never used any, and the point is that I wish I just tried, then I am sure I'll be able ti judge if parametric ark is the Grande Volta in architecture!
I think that algorithms and scripts make one able to control (or not) complexity of a design form, and that's a very exiting part of it, things that with banal modelling will take ages to achieve.
"I could elaborate but you should experiment and soon you'll be burnt out on it"- Do you really mean you could elaborate an algorithm or script cause I'm on fire baby!!! Will view the video later.

Oct 28, 05 5:20 am  · 
 · 

Block this user


Are you sure you want to block this user and hide all related comments throughout the site?

Archinect


This is your first comment on Archinect. Your comment will be visible once approved.

  • ×Search in: