描画
日本語 | 描画 |
英語 | paint、draw |
ふりがな | びょうが |
フリガナ | ビョウガ |
画面に図形や文字を描くこと。
画面上、特にウィンドウやアプレットに図形を描いたり文字を出力することを「描画する」という。
描画は、任意のタイミングで特定のウィンドウ等に「描画指示」を出す場合と、「再描画」する際に描画を行う場合の2通りがある。
通常のウィンドウ処理の場合は後者だが、ゲーム等の場合は前者の方法で描画する。
描画はGraphicsクラスを用いて行う。
Graphicsクラスには、直線を描くdrawLine()メソッド、長方形を描くdrawRect()メソッド、文字列を出力するdrawString()メソッド等が備わっており、これらのメソッドを用いて描画を行う。
Graphicsクラスそのものは、AWTであればComponentクラスのpaint()メソッドを、アプレットであればAppletクラスがComponentのサブクラスのため同じくpaint()メソッドを、オーバーライドすることで引数に渡されるため、これを用いて描画を行う。
この場合、paint()メソッドは再描画時に呼び出されるため、再描画を行う際に描画を行うことになる。
画面上、特にウィンドウやアプレットに図形を描いたり文字を出力することを「描画する」という。
描画は、任意のタイミングで特定のウィンドウ等に「描画指示」を出す場合と、「再描画」する際に描画を行う場合の2通りがある。
通常のウィンドウ処理の場合は後者だが、ゲーム等の場合は前者の方法で描画する。
描画はGraphicsクラスを用いて行う。
Graphicsクラスには、直線を描くdrawLine()メソッド、長方形を描くdrawRect()メソッド、文字列を出力するdrawString()メソッド等が備わっており、これらのメソッドを用いて描画を行う。
Graphicsクラスそのものは、AWTであればComponentクラスのpaint()メソッドを、アプレットであればAppletクラスがComponentのサブクラスのため同じくpaint()メソッドを、オーバーライドすることで引数に渡されるため、これを用いて描画を行う。
この場合、paint()メソッドは再描画時に呼び出されるため、再描画を行う際に描画を行うことになる。
参考サイト
// Sample.java
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
/**
* Eclipseで試す場合には、「デバッグ」の
* 「Java Applet」として新規に作成してください。
*/
public class Sample extends Applet
{
/**
* 再描画される際に呼び出されます。
*/
public void paint( Graphics g )
{
System.out.println( "Sample#paint()" );
// 赤い長方形を描きます。
g.setColor( Color.red );
g.drawRect( 10, 10, 40, 60 );
}
}
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
/**
* Eclipseで試す場合には、「デバッグ」の
* 「Java Applet」として新規に作成してください。
*/
public class Sample extends Applet
{
/**
* 再描画される際に呼び出されます。
*/
public void paint( Graphics g )
{
System.out.println( "Sample#paint()" );
// 赤い長方形を描きます。
g.setColor( Color.red );
g.drawRect( 10, 10, 40, 60 );
}
}
// Sample.java import java.applet.Applet; import java.awt.Color; import java.awt.Graphics; /** * Eclipseで試す場合には、「デバッグ」の * 「Java Applet」として新規に作成してください。 */ public class Sample extends Applet { /** * 再描画される際に呼び出されます。 */ public void paint( Graphics g ) { System.out.println( "Sample#paint()" ); // 赤い長方形を描きます。 g.setColor( Color.red ); g.drawRect( 10, 10, 40, 60 ); } }