Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaFXでポリライン(Polyline)を作成する方法をわかりやすく解説

ポリライン(Polyline)とは、同一平面上に存在する複数の線分をつなげて構成される「開いた図形」のことです。つまり、ポリラインは終点が始点につながらない(閉じられていない)という点を除けば、ポリゴンと同じものです。

JavaFXでは、ポリラインは javafx.scene.shape.Polyline クラスによって表現されます。このクラスを利用することで、自由な形状の折れ線グラフやパスなどを簡単に描画できます。

ポリラインを作成する手順

JavaFXでポリラインを作成するには、以下の手順に従います。

  1. Polylineクラスをインスタンス化する — まず、new Polyline() でオブジェクトを生成します。
  2. 各線分の始点と終点の座標を設定する — 座標はコンストラクタの引数として渡す方法と、getPoints() メソッドを使う方法の2通りがあります。以下のように addAll() にX座標・Y座標を交互にカンマ区切りで指定します。
polyline.getPoints().addAll(new Double[]{ X1, Y1, X2, Y2, ... });
  1. 作成したノード(図形)をGroupオブジェクトに追加する — 最後に、シーンに表示できるようグループへ登録します。

サンプルコード

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.shape.Polyline;

public class DrawingPolyLine extends Application {
    public void start(Stage stage) {
        // ポリラインの生成
        Polyline polyline = new Polyline();
        // 各頂点の座標を設定
        polyline.getPoints().addAll(new Double[]{
            150.0, 200.0, 410.0, 200.0, 250.0, 50.0, 250.0, 230.0 });
        // 線のスタイルを設定
        polyline.setStrokeWidth(8.0);
        polyline.setStroke(Color.DARKSLATEGREY);
        // シーンの設定
        Group root = new Group(polyline);
        Scene scene = new Scene(root, 595, 300, Color.BEIGE);
        stage.setTitle("Drawing Polyline");
        stage.setScene(scene);
        stage.show();
    }
    public static void main(String args[]){
        launch(args);
    }
}

このコードでは、4つの頂点 (150, 200)(410, 200)(250, 50)(250, 230) を順番に結ぶ折れ線を描画しています。setStrokeWidth() で線の太さを8.0に、setStroke() でダークスレートグレーの色を指定しているため、はっきりと見える線になります。

実行結果

JavaFXでポリライン(Polyline)を作成する方法をわかりやすく解説

プログラムを実行すると、背景がベージュ色のウィンドウ上に、指定した座標を結んだ太い折れ線が表示されます。このように Polyline クラスを使えば、座標のリストを渡すだけで柔軟な折れ線図形を描くことができます。

  1. JavaFXでスライダー(Slider)を作成する方法をわかりやすく解説

    JavaFXのSliderクラスとはJavaFXには、Sliderと呼ばれるクラスが標準で用意されています。このクラスは、連続的な範囲の値を表示・選択できるスライダーコンポーネントを表します。スライダーは、数値が表示される「トラック」と、その上を移動して値を指し示す「つまみ(サム)」で構成されています。コンストラクタやプロパティを通じて、スライダーの最大値・最小値・初期値を自由に指定することが可能です。スライダーの作成手順JavaFXでスライダーを作成する基本の手順は以下の通りです。Sliderクラスをインスタンス化する — 最小値・最大値・初期値を引数に指定できます。必要なプロパティを設定す

  2. 【JavaFX】2つのつまみを持つスライダー(RangeSlider)を作成する方法

    スライダーとは、連続した値の範囲を視覚的に表示するためのUIコンポーネントです。トラック上には数値が表示されており、その値を指し示す「つまみ(サム)」がトラックに沿って移動します。スライダーには最大値・最小値・初期値を自由に設定することができます。 標準のJavaFXスライダーの限界 JavaFXが標準で提供するスライダーには、つまみは1つしかありません。最小値と最大値の両方を選択できる「2つのつまみを持つスライダー」を作成したい場合は、外部ライブラリである org.controlsfx.control を利用する必要があります。 手順1:Maven依存関係を追加する このライブラリを使用す