如何在VC中画一个正多边形?能够根据边数和外接圆半径画正多边形

nlmxiaoyuer 2008-10-25 03:07:56
如何在VC中画一个正多边形?能够根据边数和外接圆半径画正多边形
...全文
136 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
nlmxiaoyuer 2008-10-25
  • 打赏
  • 举报
回复
上面那条语句是什么意思?在这个程序里看不懂
int n=9; //正多边形边数
double fsin=sin(2*3.1415926/n);//这里不好意思,应该用弧度2pai不是360
double fcos=cos(2*3.1415926/n);
std::vector <POINT> vP;
POINT pt={200,0}; //第一个点
POINT ptInsert;
float x=0,y=0;
for(int i=0;i<n;++i)
{
ptInsert.x=pt.x+500; //因为原点在左上角,所以我统一偏移了
ptInsert.y=pt.y+400;
vP.push_back(ptInsert);
//(xCosA-ySinA,xSinA+yCosA)
x=float(pt.x*fcos-pt.y*fsin);
y=float(pt.x*fsin+pt.y*fcos);
pt.x=float(x);
pt.y=float(y);
}
pDC->Polygon(&(vP[0]),n);
nlmxiaoyuer 2008-10-25
  • 打赏
  • 举报
回复
std::vector <POINT> vP;

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧