SuperTool 작성
SuperTools의 Katana 파이썬으로 작성되었으며 제안 된 규칙은 형식과 기능이 두 개의 개별 클래스로 정의된다는 것입니다. xxxNode 과 xxxEditor 각각 (어디에서 xxx 도구 이름입니다 (예 : GafferThree). Editor 클래스는 API 함수를 사용하여 내부 네트워크를 수정하는 UI를 제공하는 반면 Node 클래스는 노드 자체와 공용 스크립팅 API를 정의합니다.
SuperTools에 대한 대부분의 정보는 수퍼 툴그러나 SuperTool 작성에 대한 기본 사항은 계속하십시오.
제안 된 규칙에 따라 SuperTool의 내부 파일 구조는 다음과 같습니다.
HelloSuperTool
├─ __init__.py └─ v1 ├─ __init__.py ├─ Editor.py ├─ Node.py ├─ ScriptActions.py └─ Upgrade.py
SuperTool의 파일은 다음과 같습니다.
• Node.py -노드 자체와 공개 스크립팅 API. Python 탭.
• Editor.py -Qt4 UI (일괄 처리 또는 스크립팅 모드가 아닌 대화식 GUI에서만 가져옵니다).
• ScriptActions.py -노드 API의 일부가 아닌 유용한 함수. 이 노드는 노드와 편집기에서 모두 가져 오기 때문에 GUI 코드를 포함 할 수 없습니다.
• Upgrade.py -노드 업그레이드를위한 스텁. 이를 통해 이전 버전의 노드와 호환됩니다.
노트 : 스크립트 모드에서 노드를 스크립팅 할 수 있으려면 노드와 UI를 완전히 분리해야합니다.
그룹 또는 SuperTools 내에 노드의 이름 공간이 없습니다. 초기 이름으로 노드에 안정적으로 액세스하려면 다음과 같은 표현식을 사용해야합니다.
getNode ( '병합') .getName ()
노드 이름이 바뀌면 Katana 모든 getNode ( 'xxx') 호출을 찾고 적절하게 이름을 바꿉니다.
다음에서 SuperTool 작성을 보여주는 예제 소스 코드를 찾을 수도 있습니다.
$KATANA_HOME/plugins/Resources/Examples/SuperTools/ImageCoordinate.
이 특정 예제는 SuperTool이 커스텀 Qt 위젯을 사용하고 KatanaModel-View-Controller 시스템. 또한 이미지를로드 할 수있는 간단한 SuperTool을 제공합니다 (.jpg 또는 .gif)와 이미지 내 좌표를 선택하십시오. 그런 다음 SuperTool의 내부 노드 네트워크를 사용하여 좌표가 장면 그래프로 다시 공급됩니다.
도움이되지 않은 죄송합니다
왜 도움이되지 않습니까? (해당되는 모든 것을 체크하세요)
의견을 보내 주셔서 감사합니다.
찾고있는 것을 찾을 수 없거나 워크 플로에 대한 질문이있는 경우 시도해보십시오 파운드리 지원.
학습 내용을 개선 할 수있는 방법에 대한 의견이 있으시면 아래 버튼을 사용하여 설명서 팀에 이메일을 보내십시오.
의견을 보내 주셔서 감사합니다.