top / index / prev / next / target / source

2012-09-21 diary: [JavaFX] Path 線の描画【Path をもちいたレンダリング】

いがぴょんの日記 日記形式でつづる いがぴょんコラム ウェブページです。

[JavaFX] Path 線の描画【Path をもちいたレンダリング】

JavaFX 2 には、いくつかの図の描画用 API があります。ここで示すのは、Path をもちいたレンダリング機能を提供してくれる API を用いた描画の例です。 Java7u7 以降であれば、Java/jre/lib 以下の「jfxrt.jar」を参照ライブラリーに追加するだけで、以下の JavaFX 2 プログラムをコンパイルすることができます。(実行時には特に設定などは必要ありません)

Eclipse の場合には「外部 JAR の追加」により、JRE 以下の「jfxrt.jar」を選択して追加します。

<sample/Sample001.java>

package sample;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.ClosePath;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
import javafx.stage.Stage;

/**
 * 線を引く JavaFX 2 サンプル 【Path をもちいたレンダリング】
 */
public class Sample001 extends Application {
  @Override
  public void start(final Stage primaryStage) {
    primaryStage.setTitle("Draw test by Path");

    final Group root = new Group();

    {
      final Path path = new Path();
      root.getChildren().add(path);

      path.getElements().addAll(new MoveTo(5, 195), new LineTo(195, 5),
          new ClosePath());
      path.setFill(null);
      path.setStroke(Color.RED);
      path.setStrokeWidth(3);
    }

    {
      final Path path = new Path();
      root.getChildren().add(path);

      path.getElements().addAll(new MoveTo(5, 5), new LineTo(195, 195),
          new ClosePath());
      path.setFill(null);
      path.setStroke(Color.YELLOWGREEN);
      path.setStrokeWidth(3);
    }

    primaryStage.setScene(new Scene(root, 200, 200));
    primaryStage.show();
  }

  public static void main(final String[] args) {
    launch(args);
  }
}

登場キーワード


この日記について