2015-01-02 11 views
1

내가 동적 UIBezierPath을하고 싶다는 다음 비디오로 변화 될 것으로 보인다동적 UIBezierPath

Example of Dynamic BezierPath

내가 먼저 다음 변경 포인트 나 배열을 변경 사이에 점의 배열을하고 선을 그립니다하려고 경로는하지만 나에게

for (int i=0; i<frame.size.width; i++) 
     { 
      [_screenPoints addObject:[NSValue valueWithCGPoint:CGPointMake(i, height)]]; 

     } 

사람이 나에게 그런 일을 만드는 방법 아이디어를 줄 수있는 완벽한 뷰를 제공하지 않는 이유는 무엇입니까?

답변

2

당신이 설명하는 것을 CAShapeLayer와 CGPath를 사용하여 할 수 있습니다. 그런 다음 CGPath에 대한 변경 사항을 애니메이션으로 만드는 CABasicAnimation을 만듭니다.

(CGPath는 UIBezierPaths의 기초가되는 핵심 재단 개체입니다. 당신이 CGPath 객체 작업에 사용하지 않는 경우가 UIBezierPath에서 CGPath를 얻을 수 있습니다.) 경로를 변경 애니메이션을하는 것입니다에

트릭 패스는 애니메이션 전후에 동일한 수와 유형의 제어점을 유지해야합니다. 따라서 게임 비디오를 게시 할 때 고정 된 수의 선분으로 경로를 나눌 수 있습니다 (5 개의 선분이라고합시다). 직선이 직선 일 때 직선을 이루는 5 개의 선분으로 연결된 연결 집합입니다. 그런 다음 다른 모양으로 애니메이션을 적용하려면 경로에서 제어점을 움직이십시오.

+0

안녕하세요, 제안하신 내용에 대한 예시 참조를 제공해 주실 수 있습니까? –

+0

나는 부드럽게 다각형을 만들어서 모양을 움직이는 Github에서 [RandomBlobs] (https://github.com/DuncanMC/RandomBlobs)라는 프로젝트를 가지고있다. 평활화 부분을 무시하고 코드의 변경 사항을 애니메이션으로 나타낼 수 있습니다. Objective-C로 작성되었지만 기본 아이디어를 제공해야합니다. –