2013-03-10 1 views
1

는 내가 CATransform3D가CATransform3DTranslate는 어떻게 번역합니까?

struct CATransform3D 
{ 
CGFloat m11, m12, m13, m14; 

CGFloat m21, m22, m23, m24; 

CGFloat m31, m32, m33, m34; 

CGFloat m41, m42, m43, m44; 
}; 

로 정의하고 애플 문서

CATransform3DTranslate 
Translate 't' by '(tx, ty, tz)' and return the result: t' = translate(tx, ty, tz) * t. 

내가 내 CATransform3DTranslate 방법을 구현하려는 것을 말한다 알지만, 어떻게 t를 계산하는 방법을 정확하게 모르는 '즉, self.layer.transform과 같은 변형이 있고 tx = 10, ty = tz = 0, t'를 계산하는 방법은 무엇입니까?

+1

정말로 알고 싶다면 [내 모든 수학에 관련된 나의 긴 게시물] (http://ronnqvi.st/the-math-behind-transforms/)을 권할 수 있습니다. –

+0

결과를 인쇄하고 직접 확인하십시오. –

답변

4

당신은 꼭 할 필요는 없습니다. 레이어에 CATransform3dMakeTranslation 메서드 만 사용하면 입력 값과 게임을 설정할 수 있습니다! CATransform3dMakeTranslation (CATransform3DMakeRotation과 같은)은 좌표 변경의 회전 변환 행렬을 갖는 모든 수학을 수행합니다. 원하는 모든 것이 3 차원 공간에서 레이어를 번역/회전/회전 변환하는 것이라면 매트릭스 자체에 대해 걱정할 필요가 없습니다.

관련 문제