2015-07-06 2 views
1

Я использовал следующий код, основанный на информации, предоставленной в help.autodesk.com для выполнения MAXScript в Python:Функция MAXScript «WM3_MC_BuildFromNode» в Python

import MaxPlus 
test = MaxPlus.FPValue() 
#The target node has only one morpher and I want to retrieve it using 
# .morpher[1] 
bool = MaxPlus.Core.EvalMAXScript("WM3_MC_BuildFromNode $node.morpher[1] 1 $target", test) 
print bool 

Если я печатаю булевый, это всегда печать: "ложный". Однако следующий код работает (он же оператор печати возвращает истину):

import MaxPlus 
test = MaxPlus.FPValue() 
#The target node has only one morpher 
bool = MaxPlus.Core.EvalMAXScript("WM3_MC_BuildFromNode $node.morpher 1 $target", test) 
print bool 

Однако я не могу использовать последний код, так как это должно быть возможно в моем коде, что узел имеет несколько Морферов. Есть ли лучший способ использования Python api для maxscript (я не нашел метод) или может кто-нибудь дать предложения о том, как можно улучшить первый код.

Спасибо

ответ

0

Решение моей проблемы:

MaxPlus.Core.EvalMAXScript(WM3_MC_BuildFromNode(for mod in $node.modifiers where isKindOf mod Morpher collect mod)[1] 3 $target) 

Это решение будет найдено Swordslayer на AUTODESK форуме для 3ds Max

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