vs2013如何实现画直线的功能
bool Bresenham(int x1,int y1,int x2,int y2)
{
/*
int nX1 = x1;
int nY1 = y1;
int nX2 = x2;
int nY2 = y2;
int nDx = abs(nX2 - nX1);
int nDy = abs(nY2 - nY1);
bool bYDirection = false;
if (nDx 0 ? 1 : -1;
int nIncreY = (nY2 - nY1) > 0 ? 1 : -1;
int nCurX = nX1;
int nCurY = nY1;
int nTwoDY = 2 * ...全部
bool Bresenham(int x1,int y1,int x2,int y2)
{
/*
int nX1 = x1;
int nY1 = y1;
int nX2 = x2;
int nY2 = y2;
int nDx = abs(nX2 - nX1);
int nDy = abs(nY2 - nY1);
bool bYDirection = false;
if (nDx 0 ? 1 : -1;
int nIncreY = (nY2 - nY1) > 0 ? 1 : -1;
int nCurX = nX1;
int nCurY = nY1;
int nTwoDY = 2 * nDy;
int nTwoDyDx = 2 * (nDy - nDx);
int nIniD = 2 * nDy - nDx;
while (nCurX != nX2) // nCurX == nX2 can not use in bitmap
{
if(nIniD SetPixel(nCurY, nCurX, RGB(0, 0, 255));
}
else
{
//pDC->SetPixel(nCurX, nCurY, RGB(0, 0, 255));
}
nCurX += nIncreX;
}
*/
return true;
}。
收起