BresenhamLine
来源:互联网 发布:移动网络解锁 编辑:程序博客网 时间:2024/06/01 08:17
#include < graphics.h > #include < math.h > void BresenhamLine(int x1, int y1, int x2, int y2);int main(void) { int gdriver = DETECT, gmode, errorcode; int bkcolor, midx, midy; initgraph( & gdriver, &gmode, ""); setcolor(RED); BresenhamLine(0, 0, 639, 479); getch(); closegraph(); return 0;}void BresenhamLine(int x1, int y1, int x2, int y2) { int color; int x, y, dx, dy, p; int delta1, delta2; x = x1; y = y1; dx = x2 - x1; dy = y2 - y1; p = dy + dy - dx; delta1 = dy + dy - dx - dx; delta2 = dy + dy; color = getcolor(); while (x <= x2) { putpixel(x, y, color); if (p > 0) { x++; y++; p += delta1; } else { x++; p += delta2; } }}
0 0