1

(新编码器)我正在尝试创建一个基本的 GUI,它允许用户创建一个球体并选择半径和旋转。我设法做半径但是我有点卡住了旋转;xform 命令。就像我说的那样,半径有效,但旋转无效。

继承人的图形用户界面:https ://gyazo.com/5f3626443334da1abdecaea434fe4e03

任何帮助表示赞赏:)

这是我的代码:

import maya.cmds as cmds

def shapeTool ():
    ram = 'RenamerWin'
    if cmds.window(ram, q = True, exists =True):
        cmds.deleteUI(ram)

    ram = cmds.window("RenamerWin",t = "Shape Tool", w=300, h=300)
    cmds.columnLayout(adj = True)
    cmds.separator(h=20)
    cmds.text("Welcome to the Shape Creator")
    cmds.separator(h=20)

    sphR = cmds.intSliderGrp(l = "Radius", min =0, max = 10, field = True)
    sphA = cmds.intSliderGrp(l = "Rotate", field = True)

    def mySphere(_):
        mySphereRadius = cmds.intSliderGrp(sphR , q= True,value =True)
        mySphereRotate = cmds.intSliderGrp(sphA , q= True,value =True)
        finalSphere = cmds.polySphere(r=mySphereRadius, n = "mySphere")
        finalSphere = cmds.xform( r=True, ro=(0, 90, 0) )

    cmds.button(l = "Create a Sphere",c=mySphere)
    cmds.showWindow(ram)

shapeTool()
4

1 回答 1

0
  1. 您的旋转功能将始终将新球体在 Y 轴上旋转 90 度。这是意图吗?它忽略了旋转滑块。
  2. 如所写,它将旋转您创建的球体——但为了清楚起见并了解真正发生的事情,您可能想要这样做:

    finalSphere, finalShape = cmds.polySphere(r=mySphereRadius, n = "mySphere") cmds.xform(finalSphere, r=True, ro=(0, mySphereRotate, 0))

于 2017-03-11T19:45:51.943 回答