用VC++6.0实现的
扫描线填充,裁剪算法及画线方法
CPen pen(PS_SOLID,1,fillcolor); //设置
扫描线所用笔的属性
CPen *old=pDC->SelectObject(&pen);
int j,k,s=0;
int p[9]; //每根
扫描线交点
int pmin=1000;
int pmax=0;
for(int i=0;i
扫描线遵守'“上开下闭”的原则
{
int b=0;
k=s;
for(j=k;j=edge[j].ymin)&&(scan<=edge[j].ymax))//判断扫描线与线段是否相交于顶点
{
int preNum = edge[j].num;
int nextNum = edge[j].num+1;
if (preNum==0)
preNum = inLength - 1;
else
preNum = preNum -1;
if (nextNum == inLength)
nextNum = 0;
if(scan==edge[j].ymax) //位于下顶点时,根据相临点的位置决定取几个点
{
if(inVertexArray[nextNum].y
1