Rex Mao

分享java技术与生活

java画图程序技术小结(一) 程序结构问题

         这个软件是我大二时的图形学课程设计,是个矢量图形的绘制软件。发来给初学者参考。
         主要功能:
         实现点、线段、折线、圆、椭圆、矩形、圆弧、多边形、填充图形、字符串等的定义和交互绘制。
         实现线型、线宽、颜色的选择。
         实现画布的定义及保存。


         程序结构:

程序的主要功能均由类PaintPanel完成,该类继承自JtextArea。(用它是为了实现画布的大小调整的滚动条,以后介绍)

PaintPanel中主要成员:

ArrayList shape 保存当前画布上的图形对象

ArrayList undo  保存用于撤消操作的图形对象  

Color bgCol    背景颜色

BufferedImage offScreenImg   后台图象

Graphics2D offScreenG       后台Graphics对象

Clipboard cb;   剪切板(由系统剪切板实例化)

   程序中定义接口:CusShape,主要有一些操作图形的基本方法,比如,绘制,位置控制,颜色控制(具体可看代码)
   其他图形均继承java.awt中的对应的类(主要是使用其中的交叉判断函数intersects,用于图形的鼠标选取),并实现Serializable,CusShape。
   图形在程序中都以接口CusShape形式出现,以画的图形存储在ArrayList中。

   我是通过这个软件的设计才明白多态的,以前都是理论上的,经过实践才知道面向对象的好处。这个软件编写的时候我对java还不是很了解,所以有的结构不是很合理,写出来就是给初学者做个参考,看到有很多同学都在找画图板的设计,我会给出程序和简单的设计文档。

posted on 2007-04-23 10:11 Rex Mao 阅读(3907) 评论(4)  编辑  收藏 所属分类: 技术

评论

# re: java画图程序技术小结(一) 程序结构问题 2007-04-23 19:24 me

我们正在做这个课题,程序虽然简单,但对于我们这些大二才接触java的学生来说却有点难度。希望能继续写下去  回复  更多评论   

# re: java画图程序技术小结(一) 程序结构问题[未登录] 2007-10-05 14:00 king

都是TDM牛比啊~!!!!!!!我555555555~GG!  回复  更多评论   

# re: java画图程序技术小结(一) 程序结构问题 2008-06-30 22:53 tinn

看不到程序  回复  更多评论   

# re: java画图程序技术小结(一) 程序结构问题 2009-02-10 11:03 lzq

支持一下  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航: