由于实际PDA应用中,需要一些曲线显示,而现有的控件不能满足要求,所以自己只好尝试着设计一些类库满足当前的需要.
一.基本的需求:
向量图
功能要求:
● 标题(背景颜色,前景颜色,字体)
● 图背景颜色
● 坐标点(显示标题,角度(0-360),颜色)
● 图例(是否显示,颜色) // 次要属性
● 可以修改坐标点的颜色,角度,标题等。(标识索引值)
实现方案:
波形图(XY图)
功能要求:
● X轴(字体颜色,标题值)
● Y轴(字体颜色,标题值)
● 标题(背景颜色,前景颜色,字体)
● 图背景颜色
● 曲线系列(曲线1,曲线2...)
● 曲线:添加点(X轴值,Y轴值),曲线颜色
● XY轴的标度:0, max, 中间标度
● 图例(颜色,显示)
实现方案:
二.类的设计与实现
类图UML表示:分3部分
第一部分:
第二部分:
第三部分:
** 主要涉及几个类 : **
图表类 : chart 从 System.Windows.Form.Control 继承下来的
子类 LineChart ,vectorChart
元素集合类 :BaseElementCollection 系列类集合 , 系列可以为点 , 向量等
子类 Points,VectorCollection,LineSerials
图表元素类 : BaseElement 与集合类关联起来
子类 Vector,Point,LineSerial
存在的问题 : 不能动态改变图表的类型 , 如在 Vector 和其它图表类型之间切换 .