지원 티켓 만들기
팔로우

Q100358 : Geolib3 클라이언트를 사용하여 파이썬을 통해 씬 그래프 위치의 속성을 쿼리하는 방법

개요

이 기사에서는 위치 속성과 같은 장면 그래프 데이터를 생성하고 파이썬을 사용하여 쿼리하는 방법에 대해 설명합니다.

추가 정보

사용자는 장면 그래프 위치에 속성 값을 쿼리하는 Python 스크립트를 작성하고자 할 수 있습니다. 이를 가능하게하려면 먼저 장면을 조리해야합니다. 요리사는 장면 그래프의 평가를 나타냅니다. 즉 장면 그래프 데이터를 계산하기 위해 노드 그래프를 평가해야합니다. 이 단계가 수행되지 않으면 속성 데이터가 존재하지 않으며 쿼리 할 수 없습니다.

이는 생성 될 장면 데이터를 요청할 수있는 Geolib3 클라이언트를 생성하여 수행 할 수 있습니다. 다음 예제를 참조하십시오 ( http://tomcowland.com/katana/archives/748 에서 가져옴 ).

# We first need to get a hold of the runtime the UI is using
runtime = FnGeolib.GetRegisteredRuntimeInstance()

# Transactions are used to batch together actions
txn = runtime.createTransaction()

# Make a client, and attach it to an Op in the tree, we get the Op from a reference to a Node.
client = txn.createClient()
op = Nodes3DAPI.GetOp(txn, NodegraphAPI.GetNode('Render'))
txn.setClientOp(client, op)

# Commit the transaction to the runtime, if we don't the client will exist, but won't yet be pointing to an Op
runtime.commit(txn)

그런 다음 클라이언트를 사용하여 위치를 요리하고 속성 값을 검사 할 수 있습니다 (예 : 카메라 위치 centerOfInterest 속성 가져 오기) .

location = client.cookLocation('/root/world/cam/camera')
attrs = location.getAttrs()
COI = attrs.getChildByName('geometry.centerOfInterest')
print COI.getValue()

Geolib3 및 런타임에 대한 자세한 내용은 위에 언급 된 블로그 게시물뿐 아니라 Katana 온라인 도움말의 Geolib 3 핵심 섹션을 참조하십시오.

도움이 되었습니까?
/

We're sorry to hear that!

Please tell us why.
5명 중 4명이 도움이 되었다고 했습니다.

댓글