Q100277: Python을 통해 새 노드를 생성하고 배치하는 방법

팔로우

요약

이 문서에서는 Python 명령을 통해 노드 그래프에서 새로 생성된 노드를 배치하는 방법을 설명합니다.

Katana의 스크립팅 및 노드 작업 방법에 대한 자세한 내용은 Katana 개발자 가이드 Katana 노드 작업 섹션을 참조하세요 .

추가 정보


Python을 통해 노드 생성

다음 Python 명령을 사용하여 Katana 에서 노드를 생성할 수 있습니다.

NodegraphAPI.CreateNode( nodeType , parent )

어디:

  • nodeType은 사용 가능한 노드 목록에 나타나는 노드 이름입니다. 노드 그래프 탭 위에 마우스를 놓고 버튼을 누르면 이 목록에 액세스할 수 있습니다.
  • 상위는 노드 그래프 내의 루트 노드 또는 그룹 노드일 수 있습니다. 상위 노드가 없으면 생성하려는 노드가 UI에 표시되지 않습니다.

예를 들어 노드 그래프에 CameraCreate 노드를 추가하려면 다음 명령을 사용합니다.

node = NodegraphAPI.CreateNode("CameraCreate", NodegraphAPI.GetRootNode())

기본 노드 위치

Python을 통해 새 노드를 생성하면 항상 노드 그래프의 중앙에 배치되며 노드 위치는 (0,0)입니다. 이는 현재 노드 그래프 탭에 표시되는 노드 그래프 부분의 중앙에 항상 있는 것은 아니며, 새 노드를 찾으려면 뷰포트를 이동해야 할 수도 있습니다.

이 기본 동작은 다음 Python 명령에 해당합니다.

NodegraphAPI.SetNodePosition(node, (0,0))

Python을 통해 노드 그래프에서 노드 위치 지정

현재 노드 그래프 뷰포트의 중앙에 새 노드를 배치하려면 다음 Python 명령을 사용하여 노드 그래프의 보이는 부분을 쿼리하고 노드를 배치할 수 있습니다.

root = NodegraphAPI.GetRootNode() 
pos = NodegraphAPI.GetViewPortPosition(root)
# this returns a tuple containing the position and scale of the view information of a group network. This works because the Root node is also a Group node

node = NodegraphAPI.CreateNode("CameraCreate", root)
NodegraphAPI.SetNodePosition(node, (pos[0][0], pos[0][1]))

이와 관련하여 문제가 발생하는 경우 지원 티켓을 열고 문제에 대해 알려주고 지금까지 수행한 문제 해결 단계를 알려주십시오.

지원 티켓을 여는 방법에 대한 자세한 내용은 Q100064: 지원 티켓을 올리는 방법을 참조하세요 .

    우리는 문제로 불편을 끼쳐 드려 죄송합니다

    이유를 알려주세요