-------- 유니코드
#-*- coding: cp949 -*-
-------- 간단한 for 구문 예시
jointList = cmds.ls( sl=1 )
multiNode = cmds.ls( sl=1 )
for i in jointList:
cmds.connectAttr( multiNode[0] + '.mainCtrl', i + '.visibility' )
------------ enumerate 예시
enumerate는 ( index, value )를 튜플로 출력
value = [3, 4, 7]
for ( i, j ) in enumerate( value ):
value[i] = 2 * j
print value
--------- 어떤 이름이 포함된 물체들 선택
conList = cmds.ls( '*D_Point_parentConstraint*' )
cmds.select( conList )
# 그냥
cmds.select( '*D_Point_parentConstraint*' )
#해도 되는듯?
--------- 특정한 노드들 선택
list = cmds.ls( type='brush' )
for i in list:
cmds.setAttr( i + '.turbulenceType', 0 )
---------- for 구문과 length
import maya.cmds as cmds
cubes = cmds.ls( sl=1 )
for x in range( 0, len( cubes ) ):
cmds.spaceLocator ( p=(0, x * 4, 0), n = 'yaho' + '_0' + str( x ) )
#yaho 라는 스트링과 x의 int형을 합치려면 x를 str()으로 감싸주어야한다
----------- obj 파일 mb로 바꿔 저장
#-*- coding: cp949 -*-
import maya.cmds as cmds
pathA = 'Y:/2011_HankookTire/3D_project/share/scenes/realfow/dongkook/0227/'
for i in range( 4, 10 ):
cmds.file( ( str( pathA ) + str( i ) + '.obj' ),f=1, o=1, typ='OBJ' )
cmds.file( f=1, save=True, de=True, type='mayaBinary' )
----------- 각각의 값에 2씩 더하기
value = [3, 4, 7]
for i in range( len(value) ):
value[i] = value[i] + 2
print value
-------------- 리스트 추가,삭제 등
list = cmds.ls( sl=1 )
list.append( 'pCube10' ) ##리스트 한개 추가
list.extend( ['pCube10','melong'] ) ##리스트 여러개 추가 []주의
list.insert( 1, 'pCube10' ) ##원하는 위치에 추가
list += ['pCube10' ] ##+=를 이용하여 추가가능 []쳐주면 그대로 들어가고
list += 'pCube10' ##[]없으면 한글자씩(p,C,u,b,e.....)들어감
-------------- 현재 선택된 렌더레이어이름 알아오기
cmds.editRenderLayerGlobals( q=1, crl=1 )
-------------- 아래 메쉬들 모두 렌더 스무스2로
selObj = cmds.ls( sl=1 )
meshObj = cmds.listRelatives( selObj, ad=1, type='shape' )
for i in meshObj:
cmds.setAttr( i + '.useSmoothPreviewForRender', 0 )
cmds.setAttr( i + '.smoothLevel', 0 )
cmds.setAttr( i + '.renderSmoothLevel', 2 )