Javafx-bloom-effect

提供:Dev Guides
移動先:案内検索

JavaFXエフェクト-ブルーム

ブルーム効果を適用すると、ノードの一部のピクセルがグローになります。

パッケージ javafx.scene.effectBloom というクラスは、ブルーム効果を表します。 このクラスには2つのプロパティが含まれています-

  • input -このプロパティはEffect型であり、ブルーム効果への入力を表します。
  • threshold -このプロパティはdouble型です。これは、ノードのピクセルの輝度のしきい値を表します。 この値以上の明度を持つすべてのピクセルがグローになります。 しきい値の範囲は0.0〜1.0です。

以下は、ブルーム効果を示す例です。 「Welcome to finddevguides」というテキストを描画し、しきい値1.0でブルームエフェクトを適用します。

このコードを BloomEffectExample.java という名前のファイルに保存します。

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.Bloom;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;

public class BloomEffectExample extends Application {
   @Override
   public void start(Stage stage) {
     //Creating a Text object
      Text text = new Text();

     //Setting font to the text
      text.setFont(Font.font(null, FontWeight.BOLD, 40));

     //setting the position of the text
      text.setX(60);
      text.setY(150);

     //Setting the text to be embedded.
      text.setText("Welcome to finddevguides");

     //Setting the color of the text
      text.setFill(Color.DARKSEAGREEN);

     //Instantiating the Rectangle class
      Rectangle rectangle = new Rectangle();

     //Setting the position of the rectangle
      rectangle.setX(50.0f);
      rectangle.setY(80.0f);

     //Setting the width of the rectangle
      rectangle.setWidth(500.0f);

     //Setting the height of the rectangle
      rectangle.setHeight(120.0f);

     //Setting the color of the rectangle
      rectangle.setFill(Color.TEAL);

     //Instantiating the Bloom class
      Bloom bloom = new Bloom();

     //setting threshold for bloom
      bloom.setThreshold(0.1);

     //Applying bloom effect to text
      text.setEffect(bloom);

     //Creating a Group object
      Group root = new Group(rectangle, text);

     //Creating a scene object
      Scene scene = new Scene(root, 600, 300);

     //Setting title to the Stage
      stage.setTitle("Sample Application");

     //Adding scene to the stage
      stage.setScene(scene);

     //Displaying the contents of the stage
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

次のコマンドを使用して、コマンドプロンプトから保存したJavaファイルをコンパイルして実行します。

javac BloomEffectExample.java
java BloomEffectExample

実行時に、上記のプログラムは以下に示すようにJavaFXウィンドウを生成します。

ブルーム効果