2017-09-28 4 views
0

특정 윈도우를 얻기위한 스크립트를 이미 만들었습니다. 윈도우의 문자열은 'gradientAttributeEditor'이고 스크립트를 통해 몇 가지 포인트를 만들려면 에디터에 액세스하고 싶습니다. 그러나 나는 어떻게 확신 할 수 없다.Maya Python : 그라데이션 애트리뷰트 에디터에서 포인트 편집

import maya.cmds as cmds 

def rampEditor(): 

    windows = cmds.lsUI(windows = True) 
    for x in windows: 
     if not x == "gradientAttributeEditor": 
      windows.remove(x) 
     else: 
      editor = x 

    print(windows) 

rampEditor() 

이것은 gradientAttributeEditor를 x에 넣습니다. 그러나 어떤 점을 설정하기 위해 이름을 얻는 것이 다소 어렵습니다./

그라디언트를 여는 방법을 모르는 사람도 있습니다 .AttributeEditor : 개체 프리미티브를 만들고이를 선택하고 FX 탭에서 nParticle 드롭 다운으로 이동하십시오 클릭 개체 채우기. 당신이 지금 particleShape를 선택하고 조 입자에 도착하고 포인트를 만들기위한 작은 화살표

This is the gradientAttributeEditor

+0

당신이 요구하는지 확실하지 오전; 그라디언트 편집기에서 컨트롤 포인트를 만들지 않습니까, 아니면 @ Achayan의 대답 에서처럼 "입자"를 만들고 싶습니까? – mapofemergence

+0

열려있는 gradientEditor를 찾고있는 스크립트를 원합니다. 버튼을 클릭하여 지수 곡선을 만듭니다. 문제는 편집기에 액세스하는 방법을 모르겠다는 것입니다. 스크립트는 가능한 범용으로 유지되어야하므로 particleSize 또는 wahtever에서 작업 할뿐만 아니라 지금 열려있는 gradientEditor에 대해 더 많은 작업을 수행해야합니다. 몇 가지 사항을 정리해 주시기 바랍니다. –

답변

1

을 lcik 경우에 당신은 정말 그냥 명령 자체를 사용 .. 내가 생각하는 창을 사용할 필요가 없습니다? 예를 들어

:

MC.setAttr("nParticleShape1.radiusScale[0].radiusScale_Position", 0.122) 
MC.setAttr("nParticleShape1.radiusScale[0].radiusScale_FloatValue", 0.460) 

MC.setAttr("nParticleShape1.radiusScale[1].radiusScale_Position", 0.5) 
MC.setAttr("nParticleShape1.radiusScale[1].radiusScale_FloatValue", 0.1)