C语言编程 (不好意思我只有20分):)

来源:百度知道 编辑:UC知道 时间:2024/05/11 21:24:11
设计一个类分层结构来标识集合形状,列如圆形,三角形和正方形.概括SHAPE分层结构的公共数据成员和成员函数.实现非成员函数DRAW().它获取SHAPE类型的函数,并绘制图形.

类的设计可以参考的很多,这个是我的简单理解,就是类似这个
based on MFC
class shape
{
public:
int style; //用不同的数字代表不同的图形
CPoint[3]; //记录三角形的每个顶点
int len; //bianchang
int r; //banjing
}
绘图则是一个超级复杂(我是说基于win32的)
具体可以参见windows程序设计第五版
我大概说一下
首先要建立一个客户区,然后在客户区中使用画刷绘图
Windows中七个用来画带边缘的填入图形的函数

Rectangle
直角矩形

Ellipse
椭圆

RoundRect
圆角矩形

Chord
椭圆周上的弧,两端以弦连接

Pie
椭圆上的饼图

Polygon
多边形

PolyPolygon
多个多边形

呼叫wm_paint消息,如果用mfc based application则修改onDraw函数
使用pDC->函数名进行绘图,相关参数可以看看msdn
给一个范例
LINEDEMO.C

/*---------------------------------------------------------

LINEDEMO.C -- Line-Drawing Demonstration Program

(c) Charles Petzold, 1998

----------------------------------------------------------*/