【问题标题】:Maya python check if mesh has animationMaya python检查网格是否有动画
【发布时间】:2021-07-27 23:04:42
【问题描述】:

我正在遍历 Maya 中的选定对象,并尝试检查它们是否具有变换或变形动画。有没有办法检查这个?我发现了如何检查变换动画,但不知道如何检查变形动画,这将是基于顶点的动画或骨骼驱动的动画。

import maya.cmds as cmds


def hasTransformAnimation(transform):
    if cmds.objExists(transform):
        animAttributes = cmds.listAnimatable(transform)
        for attribute in animAttributes:
            numKeyframes = cmds.keyframe(attribute, query=True, keyframeCount=True)
            if numKeyframes > 0:
                return True
    return False


def hasDeformationAnimation(transform):
    return False



sel = cmds.ls(sl=True, l=True, type=('transform'))
for o in sel:
    print('Transform', o, hasTransformAnimation(o))
    print('Deformation', o, hasDeformationAnimation(o))

【问题讨论】:

    标签: python maya


    【解决方案1】:

    我通过简单地检查变换节点是否具有与变换属性的传入连接或网格形状是否具有连接到inMesh 属性的传入连接来完成此操作。此方法的唯一缺点是您无法查看几何图形是真的动画还是静态的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-08
      • 1970-01-01
      • 2013-07-14
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      相关资源
      最近更新 更多