2016-02-11 3 views
0

Я не могу понять, что происходит. Если открыть Maya 2016 создать четыре nurbsCircles и запустить этот сценарий, у вас есть это:MEL/Python родительская команда перемещает фигуры непредсказуемо

Shapes changed their location scale and rotation

// MEL 

makeIdentity -apply true -t 1 -r 1 -s 1 -n 0 -pn 1 nurbsCircle1 nurbsCircle2 nurbsCircle3 nurbsCircle4 ; 
parent -r -s nurbsCircle2|nurbsCircleShape2 nurbsCircle1 ; 
parent -r -s nurbsCircle3|nurbsCircleShape3 nurbsCircle1 ; 
parent -r -s nurbsCircle4|nurbsCircleShape4 nurbsCircle1 ; 

# Python 

import maya.cmds as mc 

mc.makeIdentity(mc.ls(sl = 1), 
       apply = True, 
       t = 1, r = 1, s = 1, n = 0) 

mc.parent('nurbsCircle3|nurbsCircleShape3', 
      'nurbsCircle2|nurbsCircleShape2', 
      'nurbsCircle4|nurbsCircleShape4', 
      'nurbsCircle1',s = 1,r = 1) 
+0

Я попытался воспроизвести ошибку, оба сценария здесь тоже. – DrHaze

ответ

0

Проблема в том, что формы, которые являются нижестоящими к тому же преобразование каким-то образом инстанс их предыдущих преобразований , и когда скрипт выполняет это задание и удаляет предыдущие узлы и формы преобразования даже после того, как родительский учет в новый узел преобразования все еще изменил его преобразование.

Таким образом, решение: родительские формы для одного узла преобразования, используя parent -add -r -s [objects], затем дублируйте этот новый узел и только тогда вы можете удалить все старые узлы.

Очень запутанный, но он работает

 Смежные вопросы

  • Нет связанных вопросов^_^