我想编写一个脚本,它将采用多个对象,将各自的枢轴居中,然后将y中的枢轴转换为0。
以下是我目前尝试的两种变体:
string $sel[] = `ls -sl -typ transform`;
string $obj;
for ($obj in $sel) {
CenterPivot
setAttr ($obj + ".scalePivot") -ty 0;
setAttr ($obj + ".rotatePivot") -ty 0;
}
和
string $sel[] = `ls -sl -typ transform`;
string $obj;
for ($obj in $sel) {
xform -cp;
xform -piv 0 -0.098814 0;
}
在第二个脚本中,平移y移动到零(从起始位置开始-0.098814)但是z和x移动远离源对象的中心。
答案 0 :(得分:0)
string $sel[] = `ls -sl -typ transform`;
string $obj;
for ($obj in $sel)
{
xform -ws -cp;
xform -ws -piv 0 -0.098814 0;
}
我认为,添加世界空间将解决您的问题。
答案 1 :(得分:0)
如果我理解正确的话:
for( $i in `ls -sl`){
select $i;
xform -ws -cp;
$p = `xform -q -piv -ws`;
xform -ws -piv $p[0] 0 $p[2];}