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

          支持一下  回復  更多評論   

          主站蜘蛛池模板: 顺昌县| 台北市| 芒康县| 平阳县| 手游| 宜州市| 凉城县| 尤溪县| 台山市| 深圳市| 民勤县| 化隆| 湟中县| 太仓市| 永年县| 家居| 九寨沟县| 宜君县| 札达县| 监利县| 那坡县| 潍坊市| 旅游| 壶关县| 黎城县| 清河县| 垫江县| 东港市| 新安县| 扎鲁特旗| 潼南县| 西城区| 徐汇区| 饶平县| 白朗县| 吉木萨尔县| 嘉禾县| 湛江市| 丰都县| 上蔡县| 尉氏县|