MakeExtrudedQuad MEL

From scripting
Revision as of 07:21, 22 April 2017 by Nickpisca (talk | contribs) (Created page with " global proc string[] MakeExtrudedQuad(vector $Vec1, vector $Vec2, vector $Vec3, vector $Vec4, float $RadVal) { //Nick Pisca 0001d 2011 //vector $Vec1 = <<0,2,3>>; vector...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
global proc string[] MakeExtrudedQuad(vector $Vec1, vector $Vec2, vector $Vec3, vector $Vec4, float $RadVal) {
	//Nick Pisca 0001d 2011
	//vector $Vec1 = <<0,2,3>>; vector $Vec2 = <<2,4,2>>; vector $Vec3 = <<-2,0,6>>; vector $Vec4 = <<8,-3,0>>; float $RadVal = 0.2;
	//MakeExtrudedQuad $Vec1 $Vec2 $Vec3 $Vec4 0.4;
	
	string $Circ[] = `circle -c 0 0 0 -nr 0 0 1 -sw 360 -r $RadVal -d 3 -ut 0 -tol 0.01 -s 8 -ch 1`; 
	string $CArr[3]; string $ExArr[3]; string $TempArr[7];
	$CArr[0] = `curve -d 1 -p ($Vec1.x) ($Vec1.y) ($Vec1.z) -p ($Vec2.x) ($Vec2.y) ($Vec2.z) -k 0 -k 1`;
	$CArr[1] = `curve -d 1 -p ($Vec2.x) ($Vec2.y) ($Vec2.z) -p ($Vec3.x) ($Vec3.y) ($Vec3.z) -k 0 -k 1`;
	$CArr[2] = `curve -d 1 -p ($Vec3.x) ($Vec3.y) ($Vec3.z) -p ($Vec4.x) ($Vec4.y) ($Vec4.z) -k 0 -k 1`;
	$CArr[3] = `curve -d 1 -p ($Vec4.x) ($Vec4.y) ($Vec4.z) -p ($Vec1.x) ($Vec1.y) ($Vec1.z) -k 0 -k 1`;	
	
	for ($t=0;$t<size($CArr);$t++) {
		string $Ex1[] = `extrude -ch true -rn false -po 0 -et 2 -ucp 1 -fpt 1 -upn 1 -rotation 0 -scale 1 -rsp 1 ($Circ[0]) ($CArr[$t])`;
		ApplyColorToObjectSafe($Ex1[0], "blinn", 0.9, 0.9, 0.8, ("GRIDSHAD_"), $t);
		$TempArr[$t] = $CArr[$t]; $TempArr[($t+4)] = $Ex1[0];
	}
	
	return $TempArr;
}



More information on applying materials, read pages 128-133 in YSYT.

For information on NURBS, read pages 43-49, 109-116 in YSYT.