• mayaPython中函数运用*args,**kwargs 。重命名贴图


    maya中使用函数,重命名贴图。

    *得到的是元组。

    def process_all_textures(*args):
    	print (args[0],args[1:])
    
    tx1 = cmds.shadingNode('file', asTexture=True)
    tx2 = cmds.shadingNode('file', asTexture=True)
    tx3 = cmds.shadingNode('file', asTexture=True)
    tx4 = cmds.shadingNode('file', asTexture=True)
    tex_list = [tx1,tx2,tx3,tx4]
    
    process_all_textures('grass_',tex_list)
    #('grass_', ([u'file1', u'file2', u'file3', u'file4'],))
    
    process_all_textures('grass_',*tex_list)
    #('grass_', (u'file1', u'file2', u'file3', u'file4'))
    

    ** 键值字典  

    setdefault() 字典对象使用的函数。第一个位置是键,第二个位置没有值,则返回值None。

    import maya.cmds as cmds
    
    def process_all_textures(**kwargs):
    	pre = kwargs.setdefault('prefix','my_')
    	texture = kwargs.setdefault('texture_node')
    	print ('%s%s'%(pre,texture))
    process_all_textures()
    #my_None
    
    process_all_textures(prefix='aa_')
    #aa_None
    process_all_textures(texture_node=texture)
    #my_file3
    
    tx1 = cmds.shadingNode('file', asTexture=True)
    arg_dict = {'prefix':'grass','texture_node':tx1}
    process_all_textures(**arg_dict)
    #grassfile1
    

      

     

    pre没有指定prefix值。就会用my_代替。

    texture没有指定,会用None代替

    也可以用**字典传递给函数
    process_all_textures(**arg_dict)

    返回值 return

    可以处理命令啊

    这里创建一个file贴图,然后重命名。

    import maya.cmds as cmds
    texture = cmds.shadingNode('file',asTexture=True)
    
    def process_all_textures(**kwargs):
        prefix = kwargs.setdefault('prefix','my_')
        texture = kwargs.setdefault('texture_node')
        return cmds.rename(texture,'%s%s'%(prefix,texture))
    texture = process_all_textures(texture_node = texture)
    print texture
    
    #my_file1
    

      

  • 相关阅读:
    Nginx使用
    MySQL 分区
    php PDO预处理
    php
    php
    linux 下编译安装MySQL
    php 工厂模式
    MySQL 权限管理
    hadoop集群安装20181016(20111130:前面太忙,没有写完,后面继续)
    JavaScript函数参数翻转——连接多个数组——zip、zipwith
  • 原文地址:https://www.cnblogs.com/3lina/p/10304091.html
Copyright © 2020-2023  润新知