求助,如何把這個代碼改進為適合所有斜率的直線演算法?
uj5u.com熱心網友回復:
void lineBres(int x0, int y0, int xEnd, int yEnd){
int dx = fabs(xEnd - x0), dy = fabs(yEnd - y0);
int p = 2 * dy - dx;
int twoDy = 2 * dy, twoDyMinusDx = 2 * (dy - dx);
int x, y;
if (x0 > xEnd)
{
x = xEnd;
y = yEnd;
xEnd = x0;
}
else
{
x = x0;
y = y0;
}
glVertex2i(x, y);
while (x < xEnd)
{
x++;
if (p < 0)
p += twoDy;
else
{
y++;
p += twoDyMinusDx;
}
glVertex2i(x, y);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/77450.html
標籤:新手樂園
上一篇:求大神幫忙
