def optionsWindow():
	"""This function creates an options window for inserting parents above all items in the selection list."""
	# create the main interface
	if cmds.window(kInsertOptionsWindow, q=True, ex=True):
		cmds.deleteUI(kInsertOptionsWindow)
	mainWindow = cmds.window(kInsertOptionsWindow, title='%s Options' % kToolName, menuBar=True, wh=(545,350))
	
	# build the menu bar
	cmds.menu(label='Help')
	amui.helpMenuItem(kToolName, __file__)
	amui.aboutMenuItem(kToolName, kVersionNumber, kVersionDate)
	
	mainForm = cmds.formLayout(nd=100)
	
	# build the section to get information about the new parents
	if_prefixName = cmds.textFieldGrp(text='', label='Prefix of New Parents:')
	if_suffixName = cmds.textFieldGrp(text='_xForm', label='Suffix of New Parents:')
	if_locatorScale = cmds.floatSliderGrp(v=1.0, min=0.0, max=10.0, fmn=0.0, fmx=100.0, label='Parent Locator Scale:', field=True)
	
	# position the input fields for the new parents
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_prefixName, 'left', 30), (if_prefixName, 'top', 5)], attachNone=[(if_prefixName, 'right'), (if_prefixName, 'bottom')])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_suffixName, 'left', 30)], attachNone=[(if_suffixName, 'right'), (if_suffixName, 'bottom')], attachControl=[(if_suffixName, 'top', 5, if_prefixName)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_locatorScale, 'left', 30)], attachNone=[(if_locatorScale, 'right'), (if_locatorScale, 'bottom')], attachControl=[(if_locatorScale, 'top', 5, if_suffixName)])
	
	# create the buttons to execute the script
	cmd_create='amTools.rigging.insertParents.doOptions (\"%s\", \"%s\", \"%s\")' % (if_prefixName, if_suffixName, if_locatorScale)
	amui.threeButtonLayout(mainForm, mainWindow, cmd_create)
	
	cmds.showWindow(mainWindow)
def optionsWindow():
	"""This function creates an options window for making ribbons along selected hair curves."""
	# create the main interface
	if cmds.window(kExposeTransformOptionsWindow, q=True, ex=True):
		cmds.deleteUI(kExposeTransformOptionsWindow)
	mainWindow = cmds.window(kExposeTransformOptionsWindow, title='%s Options'%kToolName, menuBar=True, wh=(545,350))
	
	# build the menu bar
	cmds.menu(label='Help')
	amui.helpMenuItem(kToolName, __file__)
	amui.aboutMenuItem(kToolName, kVersionNumber, kVersionDate)
	
	mainForm = cmds.formLayout(nd=100)
	
	# build the section to get information about the new expose transform node
	if_referenceObject = cmds.textFieldGrp(label='Reference Object:')
	if_rotateOrder = cmds.optionMenuGrp(label='Output Rotate Order:')
	cmds.menuItem(label='xyz')
	cmds.menuItem(label='yzx')
	cmds.menuItem(label='zxy')
	cmds.menuItem(label='xzy')
	cmds.menuItem(label='yxz')
	cmds.menuItem(label='zyx')
	if_axis = cmds.floatFieldGrp(v1=0, v2=0, v3=1, nf=3, pre=4, label='Axis on Object:')
	if_referenceAxis = cmds.floatFieldGrp(v1=0, v2=0, v3=1, nf=3, pre=4, label='Axis on Reference:')
	if_normalizeAxes = cmds.checkBoxGrp(v1=1, label='Normalize Axes:')
	
	# position the input fields for the new parents
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_referenceObject, 'left', 30), (if_referenceObject, 'top', 5)], attachNone=[(if_referenceObject, 'right'), (if_referenceObject, 'bottom')])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_rotateOrder, 'left', 30)], attachNone=[(if_rotateOrder, 'right'), (if_rotateOrder, 'bottom')], attachControl=[(if_rotateOrder, 'top', 5, if_referenceObject)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_axis, 'left', 30)], attachNone=[(if_axis, 'right'), (if_axis, 'bottom')], attachControl=[(if_axis, 'top', 5, if_rotateOrder)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_referenceAxis, 'left', 30)], attachNone=[(if_referenceAxis, 'right'), (if_referenceAxis, 'bottom')], attachControl=[(if_referenceAxis, 'top', 5, if_axis)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_normalizeAxes, 'left', 30)], attachNone=[(if_normalizeAxes, 'right'), (if_normalizeAxes, 'bottom')], attachControl=[(if_normalizeAxes, 'top', 5, if_referenceAxis)])
	
	# create the buttons to execute the script
	cmd_create = 'amTools.rigging.exposeTransform.doOptions ("%s", "%s", "%s", "%s", "%s")'%(if_referenceObject, if_rotateOrder, if_axis, if_referenceAxis, if_normalizeAxes)
	amui.threeButtonLayout(mainForm, mainWindow, cmd_create)
	
	cmds.showWindow(mainWindow)
Ejemplo n.º 3
0
def optionsWindow():
    """This function creates an options window for making ribbons along selected hair curves."""
    # create the main interface
    if cmds.window(kMakeRibbonsOptionsWindow, q=True, ex=True):
        cmds.deleteUI(kMakeRibbonsOptionsWindow)
    mainWindow = cmds.window(kMakeRibbonsOptionsWindow,
                             title='%s Options' % kToolName,
                             menuBar=True,
                             wh=(545, 465))

    # build the menu bar
    cmds.menu(label='Help')
    amui.helpMenuItem(kToolName, __file__)
    amui.aboutMenuItem(kToolName, kVersionNumber, kVersionDate)

    mainForm = cmds.formLayout(nd=100)

    # build the section to get information about the new ribbons
    if_width = cmds.floatSliderGrp(v=3.0,
                                   min=0.0,
                                   max=100,
                                   fmn=0.0,
                                   fmx=100,
                                   label='Width:',
                                   field=True)
    if_divisionsType = cmds.radioButtonGrp(
        label='Compute Divisions:',
        labelArray2=['Statically', 'Dynamically'],
        numberOfRadioButtons=2,
        select=2)
    if_divisions = cmds.intSliderGrp(v=1,
                                     min=1,
                                     max=100,
                                     fmn=0,
                                     fmx=100,
                                     label='Divisions:',
                                     field=True,
                                     en=False)
    if_divisionsPerUnit = cmds.floatSliderGrp(v=0.5,
                                              min=0.0,
                                              max=10.0,
                                              fmn=0.0,
                                              fmx=100,
                                              label='Divisions per Unit:',
                                              field=True)
    cmds.radioButtonGrp(
        if_divisionsType,
        e=True,
        cc=('amTools.modeling.makeRibbons.doRadioDivisions("%s", "%s", "%s")' %
            (if_divisionsType, if_divisions, if_divisionsPerUnit)))
    if_taper = cmds.floatSliderGrp(v=1.0,
                                   min=0.0,
                                   max=15.0,
                                   fmn=0.0,
                                   fmx=15.0,
                                   label='Taper:',
                                   field=True)
    if_frontTwist = cmds.floatSliderGrp(v=0.0,
                                        min=-180.0,
                                        max=180.0,
                                        fmn=-360.0,
                                        fmx=360.0,
                                        label='Front Twist:',
                                        field=True)
    if_lengthTwist = cmds.floatSliderGrp(v=0.0,
                                         min=-180.0,
                                         max=180.0,
                                         fmn=-180.0,
                                         fmx=180.0,
                                         label='Length Twist:',
                                         field=True)
    if_upVector = cmds.floatFieldGrp(v1=0,
                                     v2=1,
                                     v3=0,
                                     nf=3,
                                     pre=4,
                                     label='Base Up Vector:')

    # position the input fields for the new parents
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_width, 'left', 30), (if_width, 'top', 5)],
                    attachNone=[(if_width, 'right'), (if_width, 'bottom')])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_divisionsType, 'left', 30)],
                    attachNone=[(if_divisionsType, 'right'),
                                (if_divisionsType, 'bottom')],
                    attachControl=[(if_divisionsType, 'top', 5, if_width)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_divisions, 'left', 30)],
                    attachNone=[(if_divisions, 'right'),
                                (if_divisions, 'bottom')],
                    attachControl=[(if_divisions, 'top', 5, if_divisionsType)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_divisionsPerUnit, 'left', 30)],
                    attachNone=[(if_divisionsPerUnit, 'right'),
                                (if_divisionsPerUnit, 'bottom')],
                    attachControl=[(if_divisionsPerUnit, 'top', 5,
                                    if_divisions)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_taper, 'left', 30)],
                    attachNone=[(if_taper, 'right'), (if_taper, 'bottom')],
                    attachControl=[(if_taper, 'top', 5, if_divisionsPerUnit)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_frontTwist, 'left', 30)],
                    attachNone=[(if_frontTwist, 'right'),
                                (if_frontTwist, 'bottom')],
                    attachControl=[(if_frontTwist, 'top', 5, if_taper)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_lengthTwist, 'left', 30)],
                    attachNone=[(if_lengthTwist, 'right'),
                                (if_lengthTwist, 'bottom')],
                    attachControl=[(if_lengthTwist, 'top', 5, if_frontTwist)])
    cmds.formLayout(mainForm,
                    edit=True,
                    attachForm=[(if_upVector, 'left', 30)],
                    attachNone=[(if_upVector, 'right'),
                                (if_upVector, 'bottom')],
                    attachControl=[(if_upVector, 'top', 5, if_lengthTwist)])

    # build the section to get information for the uv generation options
    uvFrame = eval(
        'cmds.frameLayout(collapsable=True, label="UV Generation Options:" %s)'
        % amui.__frameAlignCenter__)
    uvForm = cmds.formLayout(nd=100)

    if_uvScale = cmds.floatSliderGrp(v=1.0,
                                     min=0.0,
                                     max=1.0,
                                     fmn=-1.0,
                                     fmx=1.0,
                                     label='UV Scale:',
                                     field=True,
                                     en=False)
    if_uvScaleType = cmds.radioButtonGrp(
        label='UV Normalization:',
        labelArray3=['None', 'Longest', 'Shortest'],
        numberOfRadioButtons=3,
        select=2)
    cmds.radioButtonGrp(
        if_uvScaleType,
        e=True,
        cc=('amTools.modeling.makeRibbons.doRadioUVs("%s", "%s")' %
            (if_uvScaleType, if_uvScale)))
    if_uvPinLocation = cmds.radioButtonGrp(label='Pin UVs:',
                                           labelArray2=['Top', 'Bottom'],
                                           numberOfRadioButtons=2,
                                           select=2)

    # position the input fields for the uv generation options
    cmds.formLayout(uvForm,
                    edit=True,
                    attachForm=[(if_uvScale, 'left', 30),
                                (if_uvScale, 'top', 5)],
                    attachNone=[(if_uvScale, 'right'), (if_uvScale, 'bottom')])
    cmds.formLayout(uvForm,
                    edit=True,
                    attachForm=[(if_uvScaleType, 'left', 30)],
                    attachNone=[(if_uvScaleType, 'right'),
                                (if_uvScaleType, 'bottom')],
                    attachControl=[(if_uvScaleType, 'top', 5, if_uvScale)])
    cmds.formLayout(uvForm,
                    edit=True,
                    attachForm=[(if_uvPinLocation, 'left', 30)],
                    attachNone=[(if_uvPinLocation, 'right'),
                                (if_uvPinLocation, 'bottom')],
                    attachControl=[(if_uvPinLocation, 'top', 5, if_uvScaleType)
                                   ])

    cmds.setParent('..')  # Go up to uvForm
    cmds.setParent('..')  # Go up to mainForm

    # position the frame for the uv generation options
    cmds.formLayout(mainForm,
                    edit=True,
                    attachPosition=[(uvFrame, 'left', -1, 0),
                                    (uvFrame, 'right', -1, 100)],
                    attachControl=[(uvFrame, 'top', 5, if_upVector)],
                    attachNone=[(uvFrame, 'bottom')])

    # create the buttons to execute the script
    cmd_create = 'amTools.modeling.makeRibbons.doOptions ("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s")' % (
        if_width, if_divisionsType, if_divisions, if_divisionsPerUnit,
        if_taper, if_frontTwist, if_lengthTwist, if_upVector, if_uvScale,
        if_uvScaleType, if_uvPinLocation)
    amui.threeButtonLayout(mainForm, mainWindow, cmd_create)

    cmds.showWindow(mainWindow)
def optionsWindow():
	"""This function creates an options window for making ribbons along selected hair curves."""
	# create the main interface
	if cmds.window(kMakeRibbonsOptionsWindow, q=True, ex=True):
		cmds.deleteUI(kMakeRibbonsOptionsWindow)
	mainWindow = cmds.window(kMakeRibbonsOptionsWindow, title='%s Options'%kToolName, menuBar=True, wh=(545,465))
	
	# build the menu bar
	cmds.menu(label='Help')
	amui.helpMenuItem(kToolName, __file__)
	amui.aboutMenuItem(kToolName, kVersionNumber, kVersionDate)
	
	mainForm = cmds.formLayout(nd=100)
	
	# build the section to get information about the new ribbons
	if_width = cmds.floatSliderGrp(v=3.0, min=0.0, max=100, fmn=0.0, fmx=100, label='Width:', field=True)
	if_divisionsType = cmds.radioButtonGrp(label='Compute Divisions:', labelArray2=['Statically', 'Dynamically'], numberOfRadioButtons=2, select=2)
	if_divisions = cmds.intSliderGrp(v=1, min=1, max=100, fmn=0, fmx=100, label='Divisions:', field=True, en=False)
	if_divisionsPerUnit = cmds.floatSliderGrp(v=0.5, min=0.0, max=10.0, fmn=0.0, fmx=100, label='Divisions per Unit:', field=True)
	cmds.radioButtonGrp(if_divisionsType, e=True, 
		cc=('amTools.modeling.makeRibbons.doRadioDivisions("%s", "%s", "%s")'%(if_divisionsType, if_divisions, if_divisionsPerUnit)))
	if_taper = cmds.floatSliderGrp(v=1.0, min=0.0, max=15.0, fmn=0.0, fmx=15.0, label='Taper:', field=True)
	if_frontTwist = cmds.floatSliderGrp(v=0.0, min=-180.0, max=180.0, fmn=-360.0, fmx=360.0, label='Front Twist:', field=True)
	if_lengthTwist = cmds.floatSliderGrp(v=0.0, min=-180.0, max=180.0, fmn=-180.0, fmx=180.0, label='Length Twist:', field=True)
	if_upVector = cmds.floatFieldGrp(v1=0, v2=1, v3=0, nf=3, pre=4, label='Base Up Vector:')
	
	# position the input fields for the new parents
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_width, 'left', 30), (if_width, 'top', 5)], attachNone=[(if_width, 'right'), (if_width, 'bottom')])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_divisionsType, 'left', 30)], attachNone=[(if_divisionsType, 'right'), (if_divisionsType, 'bottom')], attachControl=[(if_divisionsType, 'top', 5, if_width)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_divisions, 'left', 30)], attachNone=[(if_divisions, 'right'), (if_divisions, 'bottom')], attachControl=[(if_divisions, 'top', 5, if_divisionsType)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_divisionsPerUnit, 'left', 30)], attachNone=[(if_divisionsPerUnit, 'right'), (if_divisionsPerUnit, 'bottom')], attachControl=[(if_divisionsPerUnit, 'top', 5, if_divisions)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_taper, 'left', 30)], attachNone=[(if_taper, 'right'), (if_taper, 'bottom')], attachControl=[(if_taper, 'top', 5, if_divisionsPerUnit)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_frontTwist, 'left', 30)], attachNone=[(if_frontTwist, 'right'), (if_frontTwist, 'bottom')], attachControl=[(if_frontTwist, 'top', 5, if_taper)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_lengthTwist, 'left', 30)], attachNone=[(if_lengthTwist, 'right'), (if_lengthTwist, 'bottom')], attachControl=[(if_lengthTwist, 'top', 5, if_frontTwist)])
	cmds.formLayout(mainForm, edit=True, attachForm=[(if_upVector, 'left', 30)], attachNone=[(if_upVector, 'right'), (if_upVector, 'bottom')], attachControl=[(if_upVector, 'top', 5, if_lengthTwist)])
	
	# build the section to get information for the uv generation options
	uvFrame = eval('cmds.frameLayout(collapsable=True, label="UV Generation Options:" %s)'%amui.__frameAlignCenter__)
	uvForm = cmds.formLayout(nd=100)
	
	if_uvScale = cmds.floatSliderGrp(v=1.0, min=0.0, max=1.0, fmn=-1.0, fmx=1.0, label='UV Scale:', field=True, en=False)
	if_uvScaleType = cmds.radioButtonGrp(label='UV Normalization:', labelArray3=['None', 'Longest', 'Shortest'], numberOfRadioButtons=3, select=2)
	cmds.radioButtonGrp(if_uvScaleType, e=True, cc=('amTools.modeling.makeRibbons.doRadioUVs("%s", "%s")'%(if_uvScaleType, if_uvScale)))
	if_uvPinLocation = cmds.radioButtonGrp(label='Pin UVs:', labelArray2=['Top', 'Bottom'], numberOfRadioButtons=2, select=2)
	
	# position the input fields for the uv generation options
	cmds.formLayout(uvForm, edit=True, attachForm=[(if_uvScale, 'left', 30), (if_uvScale, 'top', 5)], attachNone=[(if_uvScale, 'right'), (if_uvScale, 'bottom')])
	cmds.formLayout(uvForm, edit=True, attachForm=[(if_uvScaleType, 'left', 30)], attachNone=[(if_uvScaleType, 'right'), (if_uvScaleType, 'bottom')], attachControl=[(if_uvScaleType, 'top', 5, if_uvScale)])
	cmds.formLayout(uvForm, edit=True, attachForm=[(if_uvPinLocation, 'left', 30)], attachNone=[(if_uvPinLocation, 'right'), (if_uvPinLocation, 'bottom')], attachControl=[(if_uvPinLocation, 'top', 5, if_uvScaleType)])
	
	cmds.setParent('..') # Go up to uvForm
	cmds.setParent('..') # Go up to mainForm
	
	# position the frame for the uv generation options
	cmds.formLayout(mainForm, edit=True, attachPosition=[(uvFrame, 'left', -1, 0), (uvFrame, 'right', -1, 100)], attachControl=[(uvFrame, 'top', 5, if_upVector)], attachNone=[(uvFrame, 'bottom')])
	
	# create the buttons to execute the script
	cmd_create = 'amTools.modeling.makeRibbons.doOptions ("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s")'%(if_width, if_divisionsType, if_divisions, if_divisionsPerUnit, if_taper, if_frontTwist, if_lengthTwist, if_upVector, if_uvScale, if_uvScaleType, if_uvPinLocation)
	amui.threeButtonLayout(mainForm, mainWindow, cmd_create)
	
	cmds.showWindow(mainWindow)