2009-08-25 2 views
0

나는 두 픽셀 사이의 모든 픽셀의 값을 얻기 위해 두 개의 CGPoint 사이를 이동하려고합니다. 지금부터 혼란스러운 재귀적인 혼란이 있기 때문에 더 간단한 해결책을 찾고자합니다.사이에 모든 픽셀의 값을 얻기 위해 두 CGPoint 사이를 이동 하시겠습니까?

문제는 두 점 사이를 lerping하면 두 점 사이에 점이 생기는 것입니다. 이제부터는 두 그룹의 포인트가 있습니다.

더 쉬운 방법이 있습니다.

답변

1

두 지점 사이에 선을 그리는 것과 같은 소리가납니다. 그리고 실제로, 중간 지점을 재귀 적으로 선택하거나 "한 번에 조금씩"두 지점 사이를 이동하는 것과 같은 직접적인 접근 방식은 그리 매력적이지 않습니다.

http://en.wikipedia.org/wiki/Bresenham's_line_algorithm

알고리즘의 핵심 기능은 두 점을보고 Y를 X에서 또는 라인이 대부분 이동 여부를 결정하는 것입니다 : 당신이 작업에 Breshenham의 선 그리기 알고리즘을 적용 할 수 있습니다 확신 즉, "대부분 X"는 라인이 수평에 가깝다는 것을 의미하고 "대부분 Y"는 수직에 가깝다는 것을 의미합니다. 그런 다음 모든 반복을 통해 새 픽셀이 제공되고 필요에 따라 X (또는 Y) 방향의 픽셀 수가 정확하게 이동됩니다.

그리고 멋진 방법입니다.

관련 문제