Efeitos JavaFX - entrada de cor

O efeito de entrada de cor fornece a mesma saída de desenhar um retângulo e preenchê-lo com cores. Ao contrário de outros efeitos, se esse efeito for aplicado a qualquer nó, ele exibe apenas uma caixa retangular (não o nó). Este efeito é usado principalmente para passar como uma entrada para outros efeitos.

Por exemplo, ao aplicar o efeito de mesclagem, ele requer um objeto do tipo de efeito como entrada. Lá podemos passar isso como uma entrada.

A classe chamada ColorInput do pacote javafx.scene.effectrepresenta o efeito de entrada de cor. Esta classe contém quatro propriedades, a saber -

  • x- Esta propriedade é do tipo duplo; ele representa a coordenada x da posição da entrada de cor.

  • y- Esta propriedade é do tipo duplo; ele representa a coordenada y da posição da entrada de cor.

  • height- Esta propriedade é do tipo duplo; representa a altura da região que deve ser preenchida com a cor.

  • width- Esta propriedade é do tipo duplo; representa a largura da região que deve ser preenchida com a cor.

  • paint- Esta propriedade é do tipo Paint; ele representa a cor com a qual a região de entrada deve ser preenchida.

Exemplo

A seguir está um exemplo que demonstra o efeito de entrada de cor. Aqui, estamos criando uma entrada de cor com as dimensões 50, 400 (altura, largura) na posição 50, 140 e preenchendo-a com a cor CHOCOLATE.

Estamos criando um retângulo e aplicando esse efeito a ele. Salve este código em um arquivo com o nomeColorInputEffectExample.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.effect.ColorInput; 
import javafx.scene.paint.Color; 
import javafx.scene.shape.Rectangle; 
import javafx.stage.Stage; 
         
public class ColorInputEffectExample extends Application { 
   @Override  
   public void start(Stage stage) {            
      //creating a rectangle 
      Rectangle rectangle = new Rectangle();
      
      //Instantiating the Colorinput class 
      ColorInput colorInput = new ColorInput();         
       
      //Setting the coordinates of the color input 
      colorInput.setX(50); 
      colorInput.setY(140); 
      
      //Setting the height of the region of the collor input 
      colorInput.setHeight(50); 
      
      //Setting the width of the region of the color input 
      colorInput.setWidth(400); 
      
      //Setting the color the color input 
      colorInput.setPaint(Color.CHOCOLATE);  
      
      //Applying coloradjust effect to the Rectangle 
      rectangle.setEffect(colorInput);    
         
      //Creating a Group object  
      Group root = new Group(rectangle);   
               
      //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); 
   }
}

Compile e execute o arquivo java salvo no prompt de comando usando os comandos a seguir.

javac ColorInputEffectExample.java 
java ColorInputEffectExample

Ao ser executado, o programa acima gera uma janela JavaFX conforme mostrado abaixo.