写项目要用到作图的工具,用mfc很麻烦。改了很久。计算扇形的面积没记清楚吃了大亏。辛好最终弄明白了。下边是代码。只要调用函数,正确传参就可以调用了。
这个图最多涉及到6个扇形,但是可以改其中的参数 numOfpie 就可以了。很灵活的
int compare(const void *a,const void * b) //重装qort函数
{
return (-(*(double*)a-*(double*)b));
}
void CalPoint(CPoint * p,int num,int r,CPoint main,double data[]) //计算点的位置 num<6
{
double _2IP=3.14*2;
int x0=p[0].x,y0=p[0].y;//开始的节点
int x1,y1,x2,y2;
int px=main.x,py=main.y;//圆心的计算
int lo;
for(int loop=1;loop<num;loop++)
{
lo=loop-1;
double bi=0.0;
if(data[lo]==1)
{
p[loop].x=x0;
p[loop].y=y0;
continue;
}
else if(data[lo]<0.25||data[lo]>0.75)
y1=y0;
else if(data[lo]==0.25||data[lo]==0.75)
{

本文介绍了一个使用MFC编写的画扇形的函数,该函数能够灵活地绘制多个扇形,并通过参数控制数量。代码中包含了计算扇形位置的函数,以及用于比较的排序函数。在实际项目中,可以通过调整参数来适应不同需求,如改变扇形数量。
最低0.47元/天 解锁文章
313

被折叠的 条评论
为什么被折叠?



