본문 바로가기

Pixel

[Draw Line Algorithm] 1. 기본(2) 총정리 [Draw Line Algorithm] 1. 기본(2) 총정리 by superSC 2010/01/06 14:20 scripter.egloos.com/2302052 덧글수 : 0 우선 직선의 방정식은 위와 같다. (공통수학의 정석 554p) 두점 p1 , p2 을 알고 있을때 두점의 방정식이다. m 은 기울기 이다. 즉 x점과 y점의 변화량이다. 그리고 이 공식에는 x1 과 x2는 같지 않을때 이다. 이때는 값이 무한대가 되거나 에러가 난다. 그래서 적절한 예외 처리를 해주어야 한다. 공식을 적용하여 보면 우선 기본적인 m이 -1보다 크고 1보다 작을때 이다. for 루프로 찍혀질 점(자취) _x의 영역을 잡고 범위 안에서 자취_y를 계산 하여 비트맵 데이터의 점을 찍는다. 이때 직선 방정식의 해의 범위가.. 더보기
[Draw Line Algorithm] 1. 기본(1) [Draw Line Algorithm] 1. 기본(1) XNA 에 별다른 비트맵 API가 없다는것을 알고 , 한번 픽셀을 다루기로 했다. 우선 브레슨햄 알고리즘 에 들어가기 전에 일반적인 선을 그리는 알고리즘을 살펴 보아야 하겠다. 먼저 우리가 비트맵에 선을 긋기 위해서는 일반적으로 두점을 필요로 한다. (물론 한점과 기울기를 이용할수도 있겠지만 특별한 경우가 아니라면 정확한 포인팅이 가능한 두점을 이용한다) 우선 고등학교 기초 수학에 보면 두점을 알때 직선 방정식은 .. (공통수학의 정석 p554) p0(x0 , y0) 와 p1(x1,y1) 을 알때 직선의 방정식은 Y - y0 = ( y1 - y0 / x1 - x0 ) * ( X - x0) (단 , x1 != x0) 이러하다. 기본적인 Y = m*X .. 더보기