commands.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:config 作者: mindbender-studio 项目源码 文件源码
def auto_connect_assets(src, dst):
    """Attempt to automatically two assets

    Arguments:
        src (str): Name of source reference node
        dst (str): Name of destination reference node

    Raises:
        StopIteration on missing in_SET

    """

    in_set = None

    for node in cmds.referenceQuery(dst, nodes=True):
        if node.endswith("in_SET"):
            in_set = node
            break

    for input_transform in cmds.sets(in_set, query=True):
        mbid = cmds.getAttr(input_transform + ".mbID")
        input_shape = cmds.listRelatives(input_transform, shapes=True)[0]

        for output_transform in lib.lsattr("mbID", value=mbid):

            ref = cmds.referenceQuery(output_transform, referenceNode=True)
            if ref != src:
                continue

            print("Connecting %s -> %s" % (output_transform, input_transform))
            output_shape = cmds.listRelatives(output_transform, shapes=True)[0]

            try:
                auto_connect(output_transform, input_transform)
            except RuntimeError:
                # Already connected
                pass

            try:
                auto_connect(output_shape, input_shape)
            except RuntimeError:
                # Already connected
                pass
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号