MayaPlugin C++ 아웃라이너

5820 단어 C++maya
아웃라이너에 표시하고 있는 특정 오브젝트 줘! 목록에서 좋기 때문에 줘!
defaultObjectSet가 취하고 싶다고 가정한다.



줘. 어딘가에 전화하십시오.

test.cpp
    Printf("---- name start ----- ");

    MItDependencyNodes Itdag;
    for (; !Itdag.isDone(); Itdag.next())
    {
        MFnDependencyNode dn;
        dn.setObject(Itdag.item());
        const char *nodeName = dn.name().asChar();
        Printf("ThisName:/ %s\n", nodeName);
    }

    Printf("---- name end ----- ");


MItDependencyNodes 를 사용하면 윤곽에 나오는 놈 전부 취득할 수 있다!

아래 VisualStudio의 출력 결과. 적자는 사내 플러그인이므로


괜찮아. 왜? 아웃라이너에는 5정도밖에 없었어?

그것은 아웃 라이너의 디스플레이의 표시 항목 때문입니다.


그 밖에도 데포로 여러가지 체크 들어있으니 주의해 주세요.
아니, DAG Objects Obnly 상태의 것을 원한다. 필터를 걸 수 없습니까?

걸릴 수 있어.

test.cpp
    Printf("---- name start -----\n ");

    MItDependencyNodes Itdag(MFn::Type::kSet); //単体走査タイプ指定
    for (; !Itdag.isDone(); Itdag.next())
    {
        MFnDependencyNode dn;
        dn.setObject(Itdag.item());
        const char *nodeName = dn.name().asChar();
        Printf("ThisName:/ %s\n", nodeName);
    }

    Printf("---- name end -----\n ");

초기화시에 타입 지정하면 필터링할 수 있어. 그 밖에도 복수 지정이라도 할 수 있지만 MItType계의 필터 클래스가 있기 때문에 거기에 MIntArray계로 지정할 수 있었을 것이다. 번거롭기 때문에 누군가 써주세요.
중요한 것은 여기서
MItDependencyNodes Itdag(MFn::Type::kSet);//단위 스캔 유형 지정
MFn::Type::kSet을 지정했지만 왜 KSet입니까?

애트리뷰트를 보면 objectSet: 어쨌든 있어. 이들은 kSet이 될거야. 왜 KobjectSet이 아닌가? 그런 곳이야 AutDesk!


visual studio의 표시 결과



업데이트로 부르기 때문에 여러 번 표시되지만
대체로 맞았기 때문에 좋다.

중요한 것은 MItDependencyNodes 클래스



그 밖에도 MIt계는 많이 있다!It라는 것은 이터레이터의 약어입니다. 돌려서 주사하기 때문에 가볍지 않다.
Maya2018의 공식 참조를 보면 좋다. 영어이기 때문에 읽고 싶지 않지만. 다이쇼의 정보원은 여기.
htp // // lp. 어쨌든 sk. 코m/ゔぃえw/마야우 L/2018/JP응/? 굿 d=__cp_레 f_cぁ s_m_g 등 ph_에아와 r_인후_hml



안녕

좋은 웹페이지 즐겨찾기