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))
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))
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))
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 }
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 }
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])
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])
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)')
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