我正在用python编写maxscript,下面的代码抛出一个类型错误:

import MaxPlus

res = MaxPlus.Core.GetRootNode()
#This is just as example that I use the first child.
child = MaxPlus.INode.GetChild(res,0)

morpherFP = MaxPlus.FPValue()
MaxPlus.Core.EvalMAXScript("Morpher()", morpherFP)
morpher = MaxPlus.FPValue.Get(morpherFP)

MaxPlus.INode.AddModifier(child, morpher)

从MaxScript侦听器,我总是收到以下错误:
在方法“INode_AddModifier”中键入“exceptions.TypeError”,参数2的类型为“Autodesk::Max::Modifier”
而变形器的类型是可设置动画的(变形器),并且可设置动画是修改器的一个子类。有人能帮我一下吗?
提前谢谢你

最佳答案

我想我找到了一个可能的解决方案(我只知道MaxScript侦听器不会抛出错误):

import MaxPlus

res = MaxPlus.Core.GetRootNode()
#I use the first child as example
child = MaxPlus.INode.GetChild(res,0)
morpher = MaxPlus.Factory.CreateObjectModifier(MaxPlus.ClassIds.Morpher)
MaxPlus.INode.AddModifier(child, morpher)
# the following also seems to work aka it does not throw any errors
child.InsertModifier(morpher,1)

如果不正确,或者有更容易理解的方法,请告诉我。

关于python - Maxscript Python addModifier,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31180088/

10-13 03:16