绘制实心圆

先看绘圆的代码:

<span style="font-size:18px;">	//Draw Circle use brush
	CBrush   brush1(RGB(255,0,0));    //red 
	old   =   pDC->SelectObject(&brush1);    
	CRect   cRect;    
	cRect.SetRect(0,0,0,0);  //圆心是(0,0)  
	cRect.InflateRect(50,50);        //半径是50 
	pDC->Ellipse(cRect);    
	pDC->SelectObject(old);</span>

第二行:因为要绘实心圆,所以画图工具选择CBrush,首先设置一个Brush,如第二行所示,画刷的颜色在其后面的COLORREF类参数RGB()中设定;

第三行:让之前定好的DC(pDC)选择新的画刷,并将就画刷指针给之前定义的CBrush指针old;

第四行:定义一个CRect类的具体对象cRect;

第五行:用CRect类的InflateRect函数来设置之前定义矩形的大小,在这个程序中就是设置圆心的位置,前两个参数是矩形左上角坐标,后两个参数是矩形右下角坐标,当前两个参数的值和后两个参数值一样时,该矩形大小为零,如cRect.SetRect(20,50,20,50),圆心就定在了坐标为20,50这个点;

第六行:用CRect类的InflateRect函数来设置之前定义矩形的高度和宽度,在这个程序中就是设置圆的半径;

第七行:用CDC类中画椭圆的函数Ellipse来画圆,只要将之前定义的矩形当参数付给Ellipse函数即可;

第八行:最后还原原来的画刷;


总结:画圆用CDC类的画椭圆函数即可,其中先通过CRECT类定义一个正方形,正方形的起始点和终止点设成一样即定义圆心,再将正方形拉宽拉高,拉宽拉高的值就是圆半径,最后将这个正方形当参数付给画椭圆的函数即可。

            如要画空心圆,只要将画图工具选成画笔就好,空心圆的空心程度,可以通过设置画笔的线宽来实现。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值