반응형
라인 드로우를 구현할때, openGL, DX, winDC 등을 사용할 수 없는경우,
바닥부터 맨땅에 코딩을 해야하는 경우가 생기더라.
그때를 위한 참고용 코드.
Void DrawLine(int x1, int y1, int x2, int y2) { int aX=0, aY=0; int cnt = 0; int dx = x2-x1; int dy = y2-y1; if(dx < 0) {addX = -1; dx = -dx;} else addX = 1; if(dy < 0) {addY = -1; dy = -dy;} else addY = 1; int x = x1; int y = y1; if(dx >= dy) { for(int i = 0 ; i < dx ; i++) { x += addX; cnt += dy; if(cnt >= dx) { y += addY; cnt -= dx; } drawPoint(x,y); } } else { for(int i = 0 ; i < dy ; i++) { y+= addY; cnt += dx; if(cnt >= dy) { x += addX; cnt -= dy; } darwPoint(x,y); } } } |
'Computer Programming > C,C++,MFC' 카테고리의 다른 글
[C++] std::lock_guard 기본 설명 및 예제 (0) | 2024.11.07 |
---|---|
[C++] std::vector 기본 설명 및 예제 (0) | 2024.11.06 |
[C/C++] C언어 입력함수 scanf (0) | 2017.02.15 |
[C/C++] Bit Field, 비트 변수 ':' (0) | 2017.02.13 |
[C/C++] fopen 함수의 옵션값 정리 (0) | 2016.11.10 |