1个回答
展开全部
思路:画三个椭圆,然后分别旋转30度/90度/150度。
画图处理在onDraw()或onPaint()中处理。
先画横躺着的椭圆1,然后旋转30度,再画椭圆2,旋转60度,再画椭圆3,旋转60度。
请参考画旋转椭圆的方法:
//椭圆圆弧
Graphics graphics(this->m_hWnd);
Pen redPen(Color::Red,3);
Rect ellipseRect(10,10,200,100);
REAL startAngle=0.0f;
REAL sweepAngle=90.0f;
graphics.DrawArc(&redPen,ellipseRect/*定义弧形的矩形*/,startAngle/*开始角度*/,sweepAngle/*终止角度*/);
//旋转椭圆
Graphics graphics(this->m_hWnd);
Pen greenPen(Color(255,0,255,0),3);
graphics.RotateTransform(30);//旋转绘图平面,你需要旋转的角度
graphics.DrawEllipse(&greenPen,10+150,10+100,100,200);
画图处理在onDraw()或onPaint()中处理。
先画横躺着的椭圆1,然后旋转30度,再画椭圆2,旋转60度,再画椭圆3,旋转60度。
请参考画旋转椭圆的方法:
//椭圆圆弧
Graphics graphics(this->m_hWnd);
Pen redPen(Color::Red,3);
Rect ellipseRect(10,10,200,100);
REAL startAngle=0.0f;
REAL sweepAngle=90.0f;
graphics.DrawArc(&redPen,ellipseRect/*定义弧形的矩形*/,startAngle/*开始角度*/,sweepAngle/*终止角度*/);
//旋转椭圆
Graphics graphics(this->m_hWnd);
Pen greenPen(Color(255,0,255,0),3);
graphics.RotateTransform(30);//旋转绘图平面,你需要旋转的角度
graphics.DrawEllipse(&greenPen,10+150,10+100,100,200);
更多追问追答
追问
谢谢大侠,麻烦可不可以帮忙写一下在onDraw()和onPaint()中需要加入的代码啊?我基本没怎么学MFC,求直接加进去就可以出图的代码啊大神!!!
追答
我没有VC6。如果是初学mfc,不要先去搞画图,先把基本的画面控件搞明白。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询