用作者编写的椭圆类可以绘制任意方向的任意长短半轴椭圆,可以设置椭圆线型和粗细。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)下面是利用CWzjEllipse类是绘制椭圆的代码:
const double PI = 3.14159265;
//获取绘图设备环境
CDC* pDC = GetDC();
//定义椭圆对象
CWzjEllipse ell;
//绘制红色椭圆花瓣
for (int i = 0; i 4; i++)
{
//设置长短半轴长
ell.SetAB(80, 30);
//设置长轴方位
ell.SetLongAxisAngle(PI / 4 * i);
//设置椭圆中心坐标
ell.SetOffsetXY(100, 100);
//设置画笔
ell.SetPen(pDC, RGB(255, 0, 0));
//绘制椭圆
ell.Draw();
}
//椭圆长短轴构造椭圆
CWzjEllipse ell2(80, 50);
ell2.SetLongAxisAngle(PI * 5 / 7);
ell2.SetOffsetXY(250, 100);
//设置画笔,椭圆宽为3
ell2.SetPen(pDC, RGB(0, 255, 0), 3);
ell2.Draw();
//椭圆长断半轴和长轴方位和中心坐标构造椭圆
CWzjEllipse ell3(80, 50, PI * 1.23, 250, 100);
//设置画笔,虚线椭圆
ell3.SetPen(pDC, RGB(0, 0, 255), 2, 1);
ell3.Draw();