setStrokeメソッドによる線属性の設定

広告

図形を描画する時の線に関する設定方法を確認します。線の太さや線の形状などの設定を行うことができます。

線の属性を設定するには図形が描画される前にGraphics2Dクラスで用意されている「setStroke」メソッドを使って線に関する属性を設定します。

Graphics2D コンテキストの Stroke を設定します。

パラメータ:
  s - 描画プロセスで Shape をストロークで 描画するために使われる Stroke
    オブジェクト

引数にはStrokeインターフェースを実装したクラスのオブジェクトを指定します。

BasicStrokeクラス

Strokeインターフェースを実装したクラスとしてBasicStrokeクラスが用意されています。このクラスのオブジェクトに対して様々な線に関する設定を行っていくことになります。

BasicStrokeクラスのクラス図は次のようになっています。

  • java.lang.Object
  • java.awt.BasicStroke
  • public class BasicStroke extends Object implements Stroke

コンストラクタは次の5つが用意されています。

コンストラクタ
BasicStroke()
すべての属性にデフォルト値を使って新しい BasicStroke を構築します。
BasicStroke(float width)
指定された線幅と、先端およびライン接合のスタイルのデフォルト値を使って、実線で BasicStroke を構築します。
BasicStroke(float width, int cap, int join)
指定された属性を持つ実線の BasicStroke を構築します。
BasicStroke(float width, int cap, int join, float miterlimit)
指定された属性を持つ実線の BasicStroke を構築します。
BasicStroke(float width, int cap, int join, float miterlimit, float[] dash, float dash_phase)
指定された属性を持つ新しい BasicStroke を構築します。

具体的な利用方法は次のページ以降で詳しく見ていきますが利用方法は次のような感じとなります。

public void paintComponent(Graphics g){
  Graphics2D g2 = (Graphics2D)g;

  BasicStroke wideStroke = new BasicStroke(4.0f);
  g2.setStroke(wideStroke);
}

( Written by Tatsuo Ikura )