修飾子與參數
public abstract void translate(int x, int y)
public abstract void translate(double tx, double ty)
translate() 的兩個參數 (paramenter) 版本都沒有回傳值 (return value) , x 、 y 等都是非物件 (object) 的 int 型態 (type) 常數, tx 、 ty 等都則是非物件的 double 型態常數 。
舉例如下
import java.awt.*; import java.awt.event.*; import java.awt.geom.*; public class Graphics2DDemo10 extends Canvas { public static void main(String[] args) { Frame frame = new Frame("AWTDemo"); frame.addWindowListener(new AdapterDemo()); frame.setSize(200, 200); Graphics2DDemo10 canvas = new Graphics2DDemo10(); frame.add(canvas, BorderLayout.CENTER); frame.setVisible(true); } public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g; g2.draw(new Rectangle(30, 30, 100, 100)); g2.translate(20, 20); g2.draw(new Rectangle(30, 30, 100, 100)); } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:Graphics2DDemo10.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */
此例在 paint() 方法中畫圖,先將 Graphics 型態的參數 g 強制轉換成 Graphics2D 型態,然後畫出兩個 Rectangle ,中間呼叫 rotate() 將第二個 Rectangle 進行位移
public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g; g2.draw(new Rectangle(30, 30, 100, 100)); g2.rotate(60, 85, 85); g2.draw(new Rectangle(30, 30, 100, 100)); }
編譯後執行,結果如下
中英文術語對照 | |
---|---|
類別 | class |
方法 | method |
回傳值 | return value |
型態 | type |
物件 | object |
參數 | parameter |
您可以繼續參考
繪圖
相關目錄
Java API 分類導覽
Java 教材
首頁
參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/Graphics2D.html
沒有留言:
張貼留言