Maya Python 如何用 for 循环中的多个收集点制作曲线
Maya Python How do I make a curve out of multiple collected points in a for loop
我有一个 forloop 来获取定位器列表中的所有位置,我需要此信息来创建所有点的曲线。但是当我把 cmds.curve 放在 forloop 中时,它会创建几条曲线,当我把它放在它外面时,列表中的最后一个位置只有一条曲线。
有人对此有解决方案吗?
for locator in state:
print("\t", locator)
translate_x_value = cmds.getAttr("%s.translateX" % locator)
translate_y_value = cmds.getAttr("%s.translateY" % locator)
translate_z_value = cmds.getAttr("%s.translateZ" % locator)
cmds.curve(p=translate_x_value,translate_y_value,translate_z_value))
您可能需要在循环外输入 cmds.curve() :
locatorOrder = ['loc1', 'loc2'...etc]
positionOrder = [cmds.pointPosition(i) for i in locatorOrder]
cmds.curve(p=positionOrder) # draw the curve between locators
我有一个 forloop 来获取定位器列表中的所有位置,我需要此信息来创建所有点的曲线。但是当我把 cmds.curve 放在 forloop 中时,它会创建几条曲线,当我把它放在它外面时,列表中的最后一个位置只有一条曲线。 有人对此有解决方案吗?
for locator in state:
print("\t", locator)
translate_x_value = cmds.getAttr("%s.translateX" % locator)
translate_y_value = cmds.getAttr("%s.translateY" % locator)
translate_z_value = cmds.getAttr("%s.translateZ" % locator)
cmds.curve(p=translate_x_value,translate_y_value,translate_z_value))
您可能需要在循环外输入 cmds.curve() :
locatorOrder = ['loc1', 'loc2'...etc]
positionOrder = [cmds.pointPosition(i) for i in locatorOrder]
cmds.curve(p=positionOrder) # draw the curve between locators