import maya.cmds as cmds
from functools import partial
import os
script_dir = cmds.internalVar(userScriptDir=1)
LayerTree_dir = os.path.join (script_dir, ‘LayerTree’)
icons_dir = os.path.join (LayerTree_dir, ‘icons’)
file_name = os.path.join (icons_dir, ‘image_0.png’)
is printing
C:/Users/henry/Documents/maya/2020/scripts/LayerTree\icons\image_0.png
with inverted slashes, how to fix this?
Full code:
import maya.cmds as cmds
from functools import partial
import os
script_dir = cmds.internalVar(userScriptDir=1)
package_dir = os.path.join (script_dir, ‘package’)
icons_dir = os.path.join (package_dir, ‘icons’)
file_name = os.path.join (icons_dir, ‘image_0.png’)
def Base_layer(btn_num,*args):
items = [“Layer_1”, “Layer_2”, “Layer_3”, “Layer_4”]
if cmds.objExists('Base_layer'):
cmds.select('Base_layer')
cmds.showHidden('Base_layer')
update_Base_img(btn_num, 'image_1')
for item in items:
if cmds.objExists(item):
cmds.hide(item)
else:
pass
else:
cmds.rename('Mesh')
cmds.duplicate(n='Base_layer')
cmds.group(name='LayerTree')
cmds.delete('Mesh')
cmds.select('Base_layer')
print ("Base Layer stored")
update_Base_img(btn_num, 'image_1')
def update_Base_img(btn_num, status):
cmds.image(‘Base_{0}’.format(btn_num), e=1, i=’{0}.png’.format(status))
def myUI():
if(cmds.window('LayerTree', exists=True)):
cmds.deleteUI("LayerTree", window=True)
UIwin = cmds.window("LayerTree", title="LayerTree v1.0", iconName = "LayerTree", sizeable=False, w = 250, h = 120)
cmds.rowColumnLayout(numberOfColumns=3, columnWidth=[(1, 100),(2, 55),(3, 80)], columnOffset = [(2,'right',3)] )
for i in range(1):
cmds.button(label='Base layer', c=partial(Base_layer, i))
cmds.image('Base_{0}'.format(i), i='image_0.png')
cmds.setParent("..")
cmds.showWindow(UIwin)
myUI()