2017-04-23 67 views
0

我想根據多個頂點將網格劃分爲多個部分。本質上,我想要一個網格切割成300個垂直部分,每個部分都有剩餘部分。Maya:無法編寫腳本將網格劃分爲相等部分

我已經完成了大部分(我可以得到垂直/面等),但我無法找到一個優雅的方式迭代通過提取的網格。

我正在使用polyChipOff,它沒有返回值,因爲它沒有返回值,所以它是完全創建的對象,我沒有處理,所以我不能繼續從上一塊刪除,因爲它沒有更長的存在。

有關如何改善這一點的建議?

我想過在新場景中對所有網格進行迭代(在開​​始時緩存它們),或者使用scriptJob來檢測新建的對象。這兩個人都顯得非常冒險,所以如果任何人有任何建議,都會好奇。

回答

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) 
+0

啊挺有意思的,我也沒多想重複共享相同VERT順序。這似乎可能比我想要的慢一點,但你永遠不知道。我會嘗試一下並比較! – Rymbrant