该陈述来自实用的Maya编程书。作者后来继续在我理解的type()
和dir()
函数中使用xform和shape作为参数。
>>> xform, shape = pmc.polySphere()
为什么/如何使xform和shape都等于pmc.polysphere?..它们不是多余的,因为在实例化球体时仍然创建了transform和shape节点吗?以后在创建其他形状时会引起复杂性吗?
xform在脚本编辑器中是蓝色的,这意味着什么,如何将其用作变量名?
最佳答案
再扩大一点答案。
您可能希望执行pmc.polySphere()
仅会给您其变换,但实际上会返回其变换和形状节点的列表:[nt.Transform(u'pSphere1'), nt.PolySphere(u'polySphere1')]
您可以像这样分配变量:
sphereObj = pmc.polySphere()
xform = sphereObj[0]
shape = sphereObj[1]
但是,一次性将列表解压缩并分配给变量的代码更具可读性和Python风格:
xform, shape = pmc.polySphere()
只要您知道列表的长度,就可以将其设置为单行:
a, b, c, d = [1, 2, 3, 4]
大多数时候,尽管您可能只需要转换,所以您也可以始终这样做:
xform = pmc.polySphere()[0]