自制3D显示引擎六:填充三角形

//fill triangle
int[] x={1,2,3};
int[] y={2,1,3};
int j,k;
int min,max;


for(j=0;j<3;j++){
k=(j+1+3)%3;
pline(x[j],y[j],x[k],y[k]);
}
//边框已生成
int l=min(min(x[0],x[1]),x[2]);
int r=max(max(x[0],x[1]),x[2]);
int u=min(min(y[0],y[1]),y[2]);
int d=max(max(y[0],y[1]),y[2]);
int nn,oo;
for(nn=l;nn<=r;nn++){
min=r+1;max=l-1;
for(oo=u;oo<=d;oo++){
if(pics[nn][oo]==1){min=oo;break;}
}
for(oo=d;oo>=u;oo--){
if(pics[nn][oo]==1){max=oo;break;}
}


for(oo=min;oo<=max;oo++){
pics[nn][oo]=setpci;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值