2012-11-15 2 views
0

저는 cornerRadius = 100 인 circle CGRectMake (0.0, 0.0, 100.0, 100.0)를 가지고 있습니다.iOS 애니메이션으로 나침반의 방향을 iPhone으로 옮기는 방법은 무엇입니까?

해당 서클에서 이미지를 이동하고 싶습니다. 이미지는 원을 중심으로 이동하고 북쪽을 가리켜 야합니다. 다른 말로하면 나침반입니다. 표제는 회전하지 않고 원을 중심으로 움직입니다. 또한 나침반처럼 앞뒤로 움직이는 애니메이션이 필요합니다.

누구나 이와 비슷한 것을 구현했거나 제안이나 아이디어가 있습니까?

답변

1

대신에 전체 나침반과 크기가 같지만 상단 가장자리에있는 포인터와 완전히 다른 투명한 이미지가있을 것입니다.

그런 다음이 이미지가있는 UIImageView를 나침반에 올려 놓고 중심점 주위로 이미지를 회전 시키십시오.

그런 식으로 포인터가 항상 원을 따라 가고 좌표 대신 회전 각도를 다루기 때문에 북쪽을 가리키는 것이 더 쉽습니다. X를 계산하기 위해

는 원 대한 Y 좌표 ...

  • 당신은 원 = 반경 반경을 알고있다.
  • 당신은 회전 각도 = Θ를 안다. (각도는 항상 rads이다. 2Pi rads = 1 회전).

xcoord = radius * cos (theta).

y coord = radius * sin (theta).

그렇게해야합니다.

RAD를 도수로 변환해야 할 수 있습니다.

+0

좋은 아이디어이지만 나중에 작동하지 않습니다. 원을 타원으로 변환해야하므로 북쪽을 가리키는 이미지가 부숴집니다. – spacecash21

+0

그 경우에는 x, y 좌표로 필요한 각도를 바꾸는 함수를 작성합니다. trig 함수를 사용하여 변환해야합니다. 타원형 코드는 조금 더 어려울 수 있습니다. – Fogmeister

+0

모든 계산을 원에 적용한 다음 나중에 타원으로 변환 할 수 있습니다. 하지만 지금은 서클 부분에 어려움을 겪고 있습니다. – spacecash21

관련 문제