Demonstrates using JavaFX controls with Processing default window’s draw() using familiar code.
import javafx.scene.canvas.Canvas;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.Pane;
import javafx.scene.control.Slider;
import javafx.scene.control.ColorPicker;
import javafx.scene.paint.Color;
Canvas canvas;
StackPane root;
Pane pane;
Slider slider;
ColorPicker colorPicker;
void setup(){
size(600,600,FX2D);
surface.setTitle("JavaFX DotView in Default Wnd");
canvas = (Canvas)surface.getNative();
root = (StackPane)canvas.getParent();
pane = new Pane();
root.getChildren().add(pane);
slider = new Slider(20, 500, 10);
slider.setLayoutX(190);
slider.setLayoutY(20);
pane.getChildren().add(slider);
colorPicker = new ColorPicker();
colorPicker.setLayoutX(400);
colorPicker.setLayoutY(15);
colorPicker.setValue(Color.GREEN);
pane.getChildren().add(colorPicker);
}
void draw(){
background(209);
float r = (float)colorPicker.getValue().getRed()*255;
float g = (float)colorPicker.getValue().getGreen()*255;
float b = (float)colorPicker.getValue().getBlue()*255;
fill(r,g,b);
circle(width/2, height/2, (float)slider.getValue());
}
Output: