Maya 脚本命令

版权声明:转载请注明出处。 https://blog.csdn.net/Neil_001/article/details/83064100
//帧数相关

int $m=(((`currentTime -q`)-(`playbackOptions -q -min`))/(`playbackOptions -q -max`)*100);
$b= "rendering: ";
for($i=0;$i<=25;$i++){
$b += ($m/4<$i)?".":"#";
}
trace($b+" "+$m+"% ("+`file -q -sn`+")");

// a test
float $frames_total = `playbackOptions -q -max`;
// Result: 300 // 
float $area_z = $z_max - $z_min;
// Result: 427.200134 // 
float $act_z = $area_z - $agent_l_z;
// Result: 402.281355 // 
float $act_unit = $act_z / ($frames_total /2 /10);
// Result: 26.818757 // 
int $move_num = int($frames_total/2/10);
// Result: 15 // 
int $i=0;
// Result: 0 // 

for($i=1;$i<=15; $i++){
	currentTime ($i*10);
	move -r 0 0 $act_unit;
	setKeyframe;
};


//

string $transformInScene[] = `ls -typ transform`;

float $coor[] = `objectCenter -gl pCube1`; //世界坐标

size($coor) //数组的大小

float $Min[] = `getAttr ("pCube1" + ".boundingBoxMin")`;


vector $v = `getAttr "pCube1.boundingBoxMin"`;
vector $v1 = `getAttr "pCube1.boundingBoxMax"`;

print($v1 - $v);


ls -sn -type transform -v;
// Result: pCube1 pCylinder1 pPyramid1 pSphere1 // 


move -r 10 1 1 "pSphere1";


currentTime 10;
move -r 10 10 10;
setKeyframe;

//////////////////////////////////////////////////////////////////////////////



vector $v1_0 = `getAttr "pCylinder1.boundingBoxMin"`;
vector $v1_1 =  `getAttr "pCylinder1.boundingBoxMax"`;
vector $v1 = `objectCenter -gl pCylinder1`;
// Result: <<29.911315, 0.490727, 10.28121>>  // 
vector $v0_d = $v0_1 - $v0_0;
// Result: <<225.204939, 225.204939, 225.204939>>  // 
vector $v1_d = $v1_1 - $v1_0;
// Result: <<14.090104, 14.090103, 14.090107>>  // 
$float m = max($v1_d.x+$v0_d.x, max(v1_d.y+v0_d_y, v1_d.z+v0_d.z));
// Error: $float m = max($v1_d.x+$v0_d.x, max(v1_d.y+v0_d_y, v1_d.z+v0_d.z)); // 
// Error: Syntax error // 
$float $m = max($v1_d.x+$v0_d.x, max(v1_d.y+v0_d_y, v1_d.z+v0_d.z));
// Error: $float $m = max($v1_d.x+$v0_d.x, max(v1_d.y+v0_d_y, v1_d.z+v0_d.z)); // 
// Error: Syntax error // 
$float $m = max(v1_d.y+v0_d_y, v1_d.z+v0_d.z);
// Error: $float $m = max(v1_d.y+v0_d_y, v1_d.z+v0_d.z); // 
// Error: Syntax error // 
$float $m = max($v1_d.x+$v0_d.x, max($v1_d.y+$v0_d.y, $v1_d.z+$v0_d.z));
// Error: $float $m = max($v1_d.x+$v0_d.x, max($v1_d.y+$v0_d.y, $v1_d.z+$v0_d.z)); // 
// Error: Syntax error // 
$float $m = max($v1_d.y+$v0_d.y, $v1_d.z+$v0_d.z);
// Error: $float $m = max($v1_d.y+$v0_d.y, $v1_d.z+$v0_d.z); // 
// Error: Syntax error // 
$v1_d.x;
// Error: $v1_d.x; // 
// Error: Syntax error // 
print($v1_d.x);
14.090104print($v1_d.x+$v0_d.x);
239.295044print($v0_d);
225.204939 225.204939 225.204939select -r pCylinder1 ;
$v1_0;
// Error: $v1_0; // 
// Error: Syntax error // 
print($v1_0);
22.866263 -6.554324 3.236157print($v1_1);
36.956367 7.535778 17.326264print($v1_1+$v1_0);
59.822629 0.981454 20.562421print($v1_1-$v1_0);
14.090104 14.090103 14.090107$v1_d = $v1_1 - $v1_0;
// Result: <<14.090104, 14.090103, 14.090107>>  // 
print($v0_d);
225.204939 225.204939 225.204939print($v0_0);
-132.824804 -113.374293 -175.974011print($v0_1);
92.380135 111.830646 49.230928select -r pSphere1 ;
$v0_0 = `getAttr pShpere1.boundingBoxMin`;
// Error: No object matches name: pShpere1.boundingBoxMin // 
$v0_0 = `getAttr "pShpere1.boundingBoxMin"`;
// Error: No object matches name: pShpere1.boundingBoxMin // 
select -r pSphere1 ;
$v0_0 = `getAttr "pSphere1.boundingBoxMin"`;
// Result: <<12.012832, -2.874071, -3.14505>>  // 
$v0_1 = `getAttr "pSphere1.boundingBoxMax"`;
// Result: <<38.207366, 22.874071, 23.145047>>  // 
$v0_d = $v0_1 - $v0_0;
// Result: <<26.194534, 25.748141, 26.290097>>  // 
$v = ($v0_d + $v1_d)/2;
// Result: <<20.142319, 19.919122, 20.190102>>  // 
max($v);
// Error: Invalid call to "max".  Check number and types of arguments expected by the procedure. // 
float $d = max(max($v.x, $v.y), $v.z);
// Result: 20.190102 // 
print($v0);
-20.222334 -0.771823 -63.371541print($v1);
29.911315 0.490727 10.28121dot($v0,$v1);
// Result: -1256.791506 // 
$vv = dot($v0,$v1);
// Result: -1256.791506 // 
mag($vv);
// Error: Invalid call to "mag".  Check number and types of arguments expected by the procedure. // 
mag($v1-$v0);
// Result: 89.10502 // 
print($v);
20.142319 19.919122 20.190102print($v0_d);
26.194534 25.748141 26.290097print($v1_d);
14.090104 14.090103 14.090107select -cl  ;
select -r pSphere1 ;
print($v0);
-20.222334 -0.771823 -63.371541$v0 = `objectCenter -gl pSphere1`;
// Result: <<25.110099, 10, 9.999998>>  // 
mag($v1-$v0);
// Result: 10.656314 // 
$v = ($v1_d+$v0_d)/2;
// Result: <<20.142319, 19.919122, 20.190102>>  // 
float $d = max($v.x, max($v.y, $v.z));
// Result: 20.190102 // 
float $d1 = mag($v1-$v0);
// Result: 10.656314 // 
print($d1<$d);
1print($d1>=$d);

猜你喜欢

转载自blog.csdn.net/Neil_001/article/details/83064100