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 閱讀(3927) 評論(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

          支持一下  回復  更多評論   

          主站蜘蛛池模板: 安平县| 汉寿县| 吉水县| 尼木县| 印江| 泽普县| 汝南县| 沽源县| 舞钢市| 永春县| 安岳县| 藁城市| 汝南县| 华阴市| 东乌| 石家庄市| 商河县| 仁寿县| 衡南县| 小金县| 宝兴县| 岳池县| 五华县| 屏山县| 义马市| 景德镇市| 松阳县| 呼玛县| 商河县| 永济市| 城步| 黑水县| 怀远县| 苏尼特右旗| 新泰市| 海晏县| 咸宁市| 永德县| 罗源县| 大英县| 永靖县|