ميل: كيف يمكنني تحديد مستجيب نهائي لمقبض IK معين؟

StackOverflow https://stackoverflow.com/questions/1386976

  •  21-09-2019
  •  | 
  •  

سؤال

في كل مرة أقوم فيها بإنشاء مقبض IK جديد في Maya عبر MEL ، فإنه ينشئ مستجيبًا نهائيًا يسمى "effector1" ، أو "effector2" ، اعتمادًا على ما هو موجود في مشهد بلدي. لا أريد الاعتماد على اسم المستجيب التلقائي ، لذلك أتساءل عما إذا كانت هناك طريقة لإما:

أ) اسم المستجيب في وقت إنشاء مقبض IK ، أو

ب) حدد المستجيب لمقبض IK معين في MEL.

أي مساعدة سيكون موضع تقدير كبير، وذلك بفضل!

هل كانت مفيدة؟

المحلول

إليك كيف يمكنك الحصول على المستجيب النهائي لإعادة تسمية مقبض معين يدعى Ikhandle1:

string $ee = `ikHandle -q -endEffector ikHandle1`; 
// Result: effector1 //  
rename $ee "mynewname"; 
// Result: mynewname //

نصائح أخرى

أعلم أن هذا متأخر حقًا ، لكنني صنعت نصًا جديدًا بمساعدة إجابة KB لإعادة تسميته وفقًا لما تم تسميته بالفعل. فقط في حالة ظهور أي شخص هذا في المستقبل.

//selects all IKHandles
select `ls -type ikHandle`;
//stores them in an array
string $handles[] = `ls -sl`;

//for each item in the array,
for($handle in $handles)
{
    //create a new name by adding "_effector" to the end
    string $newName = ($handle + "_effector");        
    //find the effector and store that name in a variable
    string $efName = `ikHandle -q -endEffector $handle`; 
    //rename the effector
    rename $efName $newName;

}

إذا كنت لا تريد إعادة تسمية الكل تعامل IK ، ببساطة التعليق على السطر الأول من التعليمات البرمجية ،

select `ls -type ikHandle`;

حدد جميع المقابض التي تريد إعادة تسمية الرمز وتشغيله.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top