五边形顶点坐标_任意给定五边形的5个顶点坐标,利用多边形填充的扫描算法,编写程序生成一个实心五边形...

//

// 功能: 填充多边形

//

// 参数: lpPoints: 指向顶点坐标数组的指针,数组类型为POINT,多边形由它们顺次封闭连接得到

// nCount: 顶点的个数

// nColor: 填充的颜色 默认为黑色

// pDC: 设备句柄指针

//

// 返回: 无返回值

//

// 说明: 可以是边相交的多边形

//

//

void FillPolygon(LPPOINT lpPoints,int nCount, CDC *pDC, int nColor/*=0*/)

{

// 检查参数合法性

ASSERT_VALID(pDC);

ASSERT(lpPoints);

ASSERT(nCount>2);

ASSERT(nColor>=0);

// 边结构数据类型

typedef struct Edge{

int ymax; // 边的最大y坐标

float x; // 与当前扫描线的交点x坐标

float dx; // 边所在直线斜率的倒数

struct Edge * pNext; // 指向下一条边

}Edge, * LPEdge;

int i=0,j=0,k=0;

int y0=0,y1=0; // 扫描线的最大和最小y坐标

LPEdge pAET=NULL; // 活化边表头指针

LPEdge * pET=NULL; // 边表头指针

pAET=new Edge; // 初始化表头

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值