Example #1
0
def get_plugin_shapes():
    """
    Get all currently available plugin shapes
    :return: dictionary
    """
    filters = cmds.pluginDisplayFilter(query=True, listFilters=True)
    labels = [
        cmds.pluginDisplayFilter(f, query=True, label=True) for f in filters
    ]
    return dict(zip(labels, filters))
Example #2
0
File: lib.py Project: ldunham1/pype
def get_plugin_shapes():
    """Get all currently available plugin shapes

    Returns:
        dict: plugin shapes by their menu label and script name

    """
    filters = cmds.pluginDisplayFilter(query=True, listFilters=True)
    labels = [cmds.pluginDisplayFilter(f, query=True, label=True) for f in
              filters]
    return OrderedDict(zip(labels, filters))
Example #3
0
def get_plugin_shapes():
    """
    Get all currently available plugin shapes
    
    :return: a collection of plugin shapes with their menu name and 
    program name
    :rtype: dict
    """
    filters = cmds.pluginDisplayFilter(query=True, listFilters=True)
    labels = [
        cmds.pluginDisplayFilter(f, query=True, label=True) for f in filters
    ]
    return OrderedDict(zip(labels, filters))
Example #4
0
def parse_view(panel):
    """Parse the scene, panel and camera for their current settings

    Example:
        >>> parse_view("modelPanel1")

    Arguments:
        panel (str): Name of modelPanel

    """

    camera = cmds.modelPanel(panel, query=True, camera=True)

    # Display options
    display_options = {}
    for key in DisplayOptions:
        if key in _DisplayOptionsRGB:
            display_options[key] = cmds.displayRGBColor(key, query=True)
        else:
            display_options[key] = cmds.displayPref(query=True, **{key: True})

    # Camera options
    camera_options = {}
    for key in CameraOptions:
        camera_options[key] = cmds.getAttr("{0}.{1}".format(camera, key))

    # Viewport options
    viewport_options = {}

    # capture plugin display filters first to ensure we never override
    # built-in arguments if ever possible a plugin has similarly named
    # plugin display filters (which it shouldn't!)
    plugins = cmds.pluginDisplayFilter(query=True, listFilters=True)
    for plugin in plugins:
        plugin = str(plugin)  # unicode->str for simplicity of the dict
        state = cmds.modelEditor(panel, query=True, queryPluginObjects=plugin)
        viewport_options[plugin] = state

    for key in ViewportOptions:
        viewport_options[key] = cmds.modelEditor(panel,
                                                 query=True,
                                                 **{key: True})

    viewport2_options = {}
    for key in Viewport2Options.keys():
        attr = "hardwareRenderingGlobals.{0}".format(key)
        try:
            viewport2_options[key] = cmds.getAttr(attr)
        except ValueError:
            continue

    return {
        "camera": camera,
        "display_options": display_options,
        "camera_options": camera_options,
        "viewport_options": viewport_options,
        "viewport2_options": viewport2_options
    }
Example #5
0
def parse_view(panel):
    """Parse the scene, panel and camera for their current settings

    Example:
        >>> parse_view("modelPanel1")

    Arguments:
        panel (str): Name of modelPanel

    """

    camera = cmds.modelPanel(panel, query=True, camera=True)

    # Display options
    display_options = {}
    for key in DisplayOptions:
        if key in _DisplayOptionsRGB:
            display_options[key] = cmds.displayRGBColor(key, query=True)
        else:
            display_options[key] = cmds.displayPref(query=True, **{key: True})

    # Camera options
    camera_options = {}
    for key in CameraOptions:
        camera_options[key] = cmds.getAttr("{0}.{1}".format(camera, key))

    # Viewport options
    viewport_options = {}

    # capture plugin display filters first to ensure we never override
    # built-in arguments if ever possible a plugin has similarly named
    # plugin display filters (which it shouldn't!)
    plugins = cmds.pluginDisplayFilter(query=True, listFilters=True)
    for plugin in plugins:
        plugin = str(plugin)  # unicode->str for simplicity of the dict
        state = cmds.modelEditor(panel, query=True, queryPluginObjects=plugin)
        viewport_options[plugin] = state

    for key in ViewportOptions:
        viewport_options[key] = cmds.modelEditor(
            panel, query=True, **{key: True})

    viewport2_options = {}
    for key in Viewport2Options.keys():
        attr = "hardwareRenderingGlobals.{0}".format(key)
        try:
            viewport2_options[key] = cmds.getAttr(attr)
        except ValueError:
            continue

    return {
        "camera": camera,
        "display_options": display_options,
        "camera_options": camera_options,
        "viewport_options": viewport_options,
        "viewport2_options": viewport2_options
    }
Example #6
0
def restoreEditorViewVars(ed):

    if not cmds.optionVar(q='playblastOverrideViewport'):
        return

    global pbViewVars
    for key, value in pbViewVars.items():
        if not key == 'pluginObjects':
            eval('cmds.modelEditor(ed, e=True, ' + key + '=' + str(value) + ')')
        else:
            pluginFilters = cmds.pluginDisplayFilter(q=True, listFilters=True)
            for fltr in pluginFilters:
                show = fltr in value
                cmds.modelEditor(ed, e=True, pluginObjects=[fltr, show])
Example #7
0
def setupPlayblastView(ed):

    if not cmds.optionVar(q='playblastOverrideViewport'):
        return

    cmds.modelEditor(ed, e=True, nurbsCurves=cmds.optionVar(q='playblastShowNURBSCurves'))
    cmds.modelEditor(ed, e=True, nurbsSurfaces=cmds.optionVar(q='playblastShowNURBSSurfaces'))
    cmds.modelEditor(ed, e=True, polymeshes=cmds.optionVar(q='playblastShowPolyMeshes'))
    cmds.modelEditor(ed, e=True, subdivSurfaces=cmds.optionVar(q='playblastShowSubdivSurfaces'))
    cmds.modelEditor(ed, e=True, planes=cmds.optionVar(q='playblastShowPlanes'))
    cmds.modelEditor(ed, e=True, lights=cmds.optionVar(q='playblastShowLights'))
    cmds.modelEditor(ed, e=True, cameras=cmds.optionVar(q='playblastShowCameras'))
    cmds.modelEditor(ed, e=True, joints=cmds.optionVar(q='playblastShowJoints'))
    cmds.modelEditor(ed, e=True, ikHandles=cmds.optionVar(q='playblastShowIKHandles'))
    cmds.modelEditor(ed, e=True, deformers=cmds.optionVar(q='playblastShowDeformers'))
    cmds.modelEditor(ed, e=True, dynamics=cmds.optionVar(q='playblastShowDynamics'))
    cmds.modelEditor(ed, e=True, fluids=cmds.optionVar(q='playblastShowFluids'))
    cmds.modelEditor(ed, e=True, hairSystems=cmds.optionVar(q='query playblastShowHairSystems'))
    cmds.modelEditor(ed, e=True, follicles=cmds.optionVar(q='query playblastShowFollicles'))
    cmds.modelEditor(ed, e=True, nCloths=cmds.optionVar(q='playblastShowNCloths'))
    cmds.modelEditor(ed, e=True, nParticles=cmds.optionVar(q='playblastShowNParticles'))
    cmds.modelEditor(ed, e=True, nRigids=cmds.optionVar(q='playblastShowNRigids'))
    cmds.modelEditor(ed, e=True, dynamicConstraints=cmds.optionVar(q='playblastShowDynamicConstraints'))
    cmds.modelEditor(ed, e=True, locators=cmds.optionVar(q='playblastShowLocators'))
    cmds.modelEditor(ed, e=True, dimensions=cmds.optionVar(q='playblastShowDimensions'))
    cmds.modelEditor(ed, e=True, pivots=cmds.optionVar(q='playblastShowPivots'))
    cmds.modelEditor(ed, e=True, handles=cmds.optionVar(q='playblastShowHandles'))
    cmds.modelEditor(ed, e=True, textures=cmds.optionVar(q='playblastShowTextures'))
    cmds.modelEditor(ed, e=True, strokes=cmds.optionVar(q='playblastShowStrokes'))
    cmds.modelEditor(ed, e=True, motionTrails=cmds.optionVar(q='playblastShowMotionTrails'))
    cmds.modelEditor(ed, e=True, pluginShapes=cmds.optionVar(q='playblastShowPluginShapes'))
    cmds.modelEditor(ed, e=True, manipulators=cmds.optionVar(q='playblastShowManipulators'))
    cmds.modelEditor(ed, e=True, clipGhosts=cmds.optionVar(q='playblastShowClipGhosts'))
    cmds.modelEditor(ed, e=True, greasePencils=cmds.optionVar(q='playblastShowGreasePencils'))
    cmds.modelEditor(ed, e=True, cv=cmds.optionVar(q='playblastShowCVs'))
    cmds.modelEditor(ed, e=True, hulls=cmds.optionVar(q='playblastShowHulls'))
    cmds.modelEditor(ed, e=True, grid=cmds.optionVar(q='playblastShowGrid'))
    cmds.modelEditor(ed, e=True, hud=cmds.optionVar(q='playblastShowHUD'))
    cmds.modelEditor(ed, e=True, sel=cmds.optionVar(q='playblastShowSelectionHighlighting'))
    cmds.modelEditor(ed, e=True, imagePlane=cmds.optionVar(q='playblastShowImagePlane'))

    pluginFilters = cmds.pluginDisplayFilter(q=True, listFilters=True)
    playblastExclude = []
    if cmds.optionVar(exists='playblastShowPluginObjects'):
        playblastExclude.append(cmds.optionVar(q='playblastShowPluginObjects'))
    for fltr in pluginFilters:
        show = fltr in playblastExclude
        cmds.modelEditor(ed, e=True, pluginObjects=[fltr, show])
Example #8
0
def storeEditorViewVars(ed):

    if not cmds.optionVar(q='playblastOverrideViewport'):
        return

    global pbViewVars
    for key in pbViewVars.keys():
        if key == 'pluginObjects':
            piObjects = []
            pluginFilters = cmds.pluginDisplayFilter(q=True, listFilters=True)
            for fltr in pluginFilters:
                if not cmds.modelEditor(ed, q=True, queryPluginObjects=fltr):
                    piObjects.append(fltr)
            pbViewVars[key] = piObjects
        else:
            pbViewVars[key] = eval('cmds.modelEditor(ed, q=True, ' + key + '=True)')
Example #9
0
def _applied_viewport_options(options, panel):
    """Context manager for applying `options` to `panel`"""

    options = dict(ViewportOptions, **(options or {}))

    # separate the plugin display filter options since they need to
    # be set differently (see #55)
    plugins = cmds.pluginDisplayFilter(query=True, listFilters=True)
    plugin_options = dict()
    for plugin in plugins:
        if plugin in options:
            plugin_options[plugin] = options.pop(plugin)

    # default options
    cmds.modelEditor(panel, edit=True, **options)

    # plugin display filter options
    for plugin, state in plugin_options.items():
        cmds.modelEditor(panel, edit=True, pluginObjects=(plugin, state))

    yield
Example #10
0
def _applied_viewport_options(options, panel):
    """Context manager for applying `options` to `panel`"""

    options = dict(ViewportOptions, **(options or {}))

    # separate the plugin display filter options since they need to
    # be set differently (see #55)
    plugins = cmds.pluginDisplayFilter(query=True, listFilters=True)
    plugin_options = dict()
    for plugin in plugins:
        if plugin in options:
            plugin_options[plugin] = options.pop(plugin)

    # default options
    cmds.modelEditor(panel, edit=True, **options)

    # plugin display filter options
    for plugin, state in plugin_options.items():
        cmds.modelEditor(panel, edit=True, pluginObjects=(plugin, state))

    yield