【发布时间】:2023-03-06 12:21:01
【问题描述】:
我目前正在尝试为 DAG 节点的每个子对象赋予不同的颜色。当我在组件选择模式下选择每个子对象/元素(但不是全部)然后在其上运行脚本时,它会起作用。但是选择整个网格对我不起作用。我已经尝试过不同种类的 listRelatives 但没有一个奏效。我可以进入对象并获取每个顶点,但它们没有按连通性分组。
def assignDMat(self,*args):
#selection = self.selector()
selection = cmds.ls(selection=True)
for j in range(0, len(selection)):
cmds.polyColorPerVertex(selection[j], r=0, g=0, b=0, cdo=True)
cmds.polyColorPerVertex(selection[j], r=random.uniform(0,1), cdo=True)
新代码:
import maya.cmds as cmds
import random
selection = cmds.ls(selection=True)
cmds.polySeparate(selection)
for i in range(0,len(selection)):
obj=cmds.listRelatives(selection[i])
print(len(obj))
for j in range(0,len(obj)-1):
cmds.polyColorPerVertex(obj[j], r=0, g=0, b=0, cdo=True)
cmds.polyColorPerVertex(obj[j], r=random.uniform(0,1), cdo=True)
cmds.polyUnite(("polySurface*"), n="Result", ch=False)
【问题讨论】: