2013-02-27 5 views
1

EP 커브 도구를 사용하여 커브를 만들었습니다. 그럼 난 다음 MEL을 사용하여이 곡선의 제어점의 월드 공간 좌표를 조회하려고 명령 :Maya에서 MEL을 사용하여 커브의 제어점의 월드 공간 좌표를 쿼리하는 방법

:

createNode curveInfo; 
connectAttr curveShape1.worldSpace curveInfo1.inputCurve; 
getAttr "curveInfo1.cp[*]"; 

하지만 그냥 이력서는 오브젝트 공간 좌표 인쇄 같은 결과는 말한다 마야 문서를 Acoording

// Result: 0 0 0 1 0 0 2 0 0 3 0 0 // 
는 "곡선"명령은 여기에 문서에서 조각이다, 월드 공간 위치를 조회하는 데 사용할 수 있습니다

createNode curveInfo가;

connectAttr curveShape1.worldSpace curveInfo1.inputCurve;

getAttr "curveInfo1.knots [*]";

//이 시퀀스는 곡선 정보 노드를 만들고, 정보 노드를 곡선에 연결하고 곡선 정보 노드를 사용하여 곡선의 매듭 점 벡터를 쿼리합니다. 곡선 정보 노드를 사용하여 월드 공간 CV 값 및 호 길이와 같은 다른 속성을 쿼리 할 수 ​​있습니다.

"커브"명령을 사용하여 세계 공간 위치를 쿼리하는 방법은 무엇입니까?

"xform"명령을 사용해 보았지만 커브에서 작동하지 않는 것으로 보입니다. 결과는 같다 :

xform -q -t -ws curve1; 
// Result: 0 0 0 // 
+0

* xform * 명령이 예상대로 작동하면 shape 객체 변형 노드의 변형을 제공합니다. 참고 : curve1은 곡선 노드의 이름이 아니며, 변형의 이름입니다. 마야는 아티스트의 관점에서 볼 때 데이터로 작업하는 것이 더 멋지게 만들기 위해 노드의 별칭 지름길을 가지고 있습니다. – joojaa

답변

2

가장 쉬운 방법은 pointPosition 명령 예를 : 사용하는 점 중 하나가 EP, 이력서, 자외선, PT 등 속성 수 있지만 함께

pointPosition -w object.ep[1] 

포인트 위치가 작동

한 번에 한 지점 씩만 쿼리하여 루프해야합니다.

노드에는 세계 또는 로컬 공간 좌표 (터프한 공간 변환 가능)의 개념이 없으며 원시 데이터 좌표 만 있습니다. 매듭은 커브가 어떻게 매개 변수화되는지를 정의하는 힘든 매듭을 찾는 것이 아닙니다. 일반적으로 Maya 문서는 객체 접근 모델에서 작동하기 때문에 초보 사용자에게 읽기가 약간 어렵습니다. 그래서 명령과 조작이 반드시 당신이 생각하는대로 행동하지는 않습니다. 오히려 많은 명령은 무언가에 접근하는 접근 자이며 접근자인 객체에서만 작동합니다. 커브 명령에는 정복 할 수있는 특성이 없으므로 쿼리 할 수 ​​없습니다.