2012-04-27 5 views
2

UIBezierPath 객체를 사용하여 도형을 그릴 수 있습니다. 이제 이것을 사용하여 그린 다른 모양을 식별하려고합니다. 직사각형, 정사각형, 삼각형, 원 등. 다음으로하고 싶은 것은 사용자가 특정 도형을 선택할 수 있어야하며 전체 도형을 화면의 다른 위치로 이동할 수 있어야한다는 것입니다. 실제 요구 사항은 훨씬 더 복잡하지만, 내가 이것을 많이 만들 수 있다면 나머지 부분을 해결할 수 있습니다.UIBezierPath를 사용하여 그린 다른 모양을 식별 할 수 있습니까?

시작하는 방법에 대한 제안이나 링크 또는 요점은 언제나 환영합니다. 모든 모양을 처리하기 위해 별도의보기를 작성하려고하지만 어떻게 할 수는 없습니까?

감사합니다.

+0

나는 또한 동일한 해결책을 찾고있다. 해결책을 찾으면 게시하십시오. –

+0

도형을 식별 할 수 있습니까? – RMRAHUL

답변

0

저는 David Gelphman의 석영 프로그래밍을 권장합니다. 당신이 알려진 직교 점에 의해 정의 된 직선을 만들 수 CGContextAddLineToPoint 사용자를 사용하는 경우

: "경로 그리기"자신의 장에서

그는 교차로를 제공한다 "경로 건설 프리미티브"에 대한 섹션이 있습니다. 기본 수학을 사용하여 이러한 점에 의해 정의 된 기하학적 모양을 추론 할 수 있습니다.

당신이 사용하는 경우 CGContextAddCurveToPoint곡선 라인 알려진 점으로 정의하고, 당신은 여전히 ​​적어도를 결정하는 기본적인 수학을 사용할 수 있도록 내가 그 선이 점을 통해 를 실행 것이라고 확신 할 수있는 사용자 형성되는 형태의 근사치.

그러나 CGContextAddQuadCurveToPoint을 사용하는 경우 점은 그려진 곡선의 외부에 프레임 워크 을 정의합니다. 탄젠트를 따라 곡선에 의해 형성된 모양을 결정하기 위해서는보다 진보 된 수학이 필요합니다.

Gelphman도 경계 상자를 가져 와서 지정된 점이 경로 안에 있는지 확인하는 것과 같은 "경로 유틸리티 함수"에 대해 설명합니다.

완료된 경로를 이동하는 데 대해서는 CGContextTranslateCTM을 사용하는 것이 좋습니다.

관련 문제