0

我想根据多个顶点将网格分割成多个部分。本质上,我想要一个网格切割成 300 个垂直的部分,每个部分都有剩余的部分。

我已经完成了大部分工作(我可以获得顶点/面等),但我无法找到一种优雅的方式来迭代提取的网格。

我正在使用 polyChipOff,它对它切碎的面没有返回值,所以它是创建的全新对象,我无法处理,所以我不能继续从前一块切开,因为它不再存在。

关于如何更好地解决这个问题的任何建议?

我考虑过遍历场景中的所有网格以获得新的(在开始时缓存它们)或使用 scriptJob 来检测正在制作的新对象。这两个看起来都很老套,所以很好奇是否有人有建议。

4

1 回答 1

0

你可以试试这个方法:

import maya.cmds as cmds

shape = cmds.listRelatives(p=True)
object = cmds.listRelatives(a, p=True)
selectedFace = cmds.ls(sl=True)

cmds.select(object[0] + '.f[:]', tgl=True)
unselecetedFace = cmds.ls(sl=True)

duplicated = cmds.duplicate(object, un=True)[0]
cmds.delete(duplicated, ch=True)
cmds.delete(selectedFace)

for i in range(len(unselecetedFace)):
    unselecetedFace[i] = unselecetedFace[i].replace(object[0],duplicated)

cmds.delete(unselecetedFace)
cmds.select(duplicated)
于 2017-04-23T08:14:32.800 回答