0
我覺得這應該是一件簡單的事情,但似乎無法找到正確的命令。我有一些代碼可以生成polyCubes的隨機分佈,我需要刪除y值大於10的任何代碼,以及任何x值小於-7和大於+7的代碼。有沒有辦法使用Python代碼來做到這一點?瑪雅Python - 刪除指定區域外的對象
編輯:某些代碼:
import maya.cmds as cmds
import random
import math
cmds.select(all=True)
cmds.delete()
zzz = 18
def SMGShot():
holes = []
x = 1
y = 1
xCoordinate = random.uniform(0,5)
yCoordinate = random.uniform(0,0.5)
x = (xCoordinate)
y = (yCoordinate)
for number in range(zzz):
xStep = random.uniform(-1,0)
yStep = random.uniform(0,1)
x = (x+xStep)
y = (y+yStep)
bulletHole = cmds.polyCube(w = 0.1, d = 0.1, h = 0.1)
holes.append(bulletHole[0])
cmds.move(x, y, 0)
SMGShot()
這些生成的立方體,我需要任何隨機產生將超過10上y和下-7 /過7 x上要被刪除。
添加的代碼作爲一個編輯到原來的問題。謝謝! – Arazmis
是否有任何具體的原因來產生這些不需要的polycubes?如果沒有理由這樣做,您可以在SMGShot函數的最後三行附加一個'if'語句來選擇您希望保留的那些語句。 – user1919235
是的,不幸的。我的完整程序非常長(並且有點混亂),所以我不想全部上傳,但是我製作的是一款遊戲的子彈噴霧發生器。用戶輸入數據,例如到目標的距離和發射的子彈數量,這些數據用於在子彈擊中牆壁時產生傳播。 (我目前正在使用多維數據集,但我要爲最終的程序建模和導入孔)。由於每次輸入不同的數據,以及擴散生成的輕微隨機特性,立方體有時只會出現在牆外,有時會很好。 – Arazmis