Trying to get the name of a newly created node without having to use a
certain workaround. Im adding a light shader with DL_createSurfaceShader.
This creates uber_surfaceN depending on whats in the scene. Then Im doing
more stuff in the same loop. How do I capture the name?
import maya.cmds as cmds
import maya.mel as mel
def checkGeo():
objNames = cmds.ls(sl=1)
if objNames:
geoShapes = cmds.ls(geometry=1)
if geoShapes:
geoTransforms = cmds.listRelatives(geoShapes, p=1)
if 'lockedGeo1' in geoTransforms:
for i in objNames:
cmds.select(i)
createSurfaceShader()
cmds.select(clear=1)
def createSurfaceShader():
mel.eval('$selected_geo = `ls -sl`')
mel.eval('$selected_geo_shape = `listRelatives -children -shapes
$selected_geo[0]`')
mel.eval('DL_setObjectAttrib(DL_createSurfaceShader("uber_surface", 0),
"surface", $selected_geo_shape)')
--
view archives: http://groups.google.com/group/python_inside_maya
change your subscription settings:
http://groups.google.com/group/python_inside_maya/subscribe