Search in sources :

Example 46 with StackPane

use of javafx.scene.layout.StackPane in project FXyzLib by Birdasaur.

the class SpheroidTest method start.

@Override
public void start(Stage stage) {
    Group spheroidGroup = new Group();
    for (int i = 0; i < 50; i++) {
        Random r = new Random();
        //A lot of magic numbers in here that just artificially constrain the math
        float randomMajorRadius = (float) ((r.nextFloat() * 300) + 50);
        float randomMinorRadius = (float) ((r.nextFloat() * 300) + 50);
        int randomDivisions = (int) ((r.nextFloat() * 64) + 1);
        Color randomColor = new Color(r.nextDouble(), r.nextDouble(), r.nextDouble(), r.nextDouble());
        Spheroid sm = new Spheroid(randomDivisions, randomMajorRadius, randomMinorRadius, randomColor);
        sm.setDrawMode(DrawMode.LINE);
        double translationX = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationX *= -1;
        }
        double translationY = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationY *= -1;
        }
        double translationZ = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationZ *= -1;
        }
        Translate translate = new Translate(translationX, translationY, translationZ);
        Rotate rotateX = new Rotate(Math.random() * 360, Rotate.X_AXIS);
        Rotate rotateY = new Rotate(Math.random() * 360, Rotate.Y_AXIS);
        Rotate rotateZ = new Rotate(Math.random() * 360, Rotate.Z_AXIS);
        sm.getTransforms().addAll(translate, rotateX, rotateY, rotateZ);
        spheroidGroup.getChildren().add(sm);
    }
    root.getChildren().add(spheroidGroup);
    System.out.println(spheroidGroup.getChildren().size());
    camera = new PerspectiveCamera(true);
    cameraTransform.setTranslate(0, 0, 0);
    cameraTransform.getChildren().addAll(camera);
    camera.setNearClip(0.1);
    camera.setFarClip(10000.0);
    camera.setFieldOfView(42);
    camera.setTranslateZ(cameraDistance);
    cameraTransform.ry.setAngle(-45.0);
    cameraTransform.rx.setAngle(-10.0);
    //add a Point Light for better viewing of the grid coordinate system
    PointLight light = new PointLight(Color.WHITE);
    cameraTransform.getChildren().add(light);
    light.setTranslateX(camera.getTranslateX());
    light.setTranslateY(camera.getTranslateY());
    light.setTranslateZ(camera.getTranslateZ());
    root.getChildren().add(cameraTransform);
    Scene scene = new Scene(new StackPane(root), 1024, 668, true, SceneAntialiasing.BALANCED);
    scene.setCamera(camera);
    scene.setFill(Color.BLACK);
    initFirstPersonControls(scene);
    stage.setTitle("Hello World!");
    stage.setScene(scene);
    stage.show();
}
Also used : Group(javafx.scene.Group) Rotate(javafx.scene.transform.Rotate) Color(javafx.scene.paint.Color) Spheroid(org.fxyz.shapes.Spheroid) PerspectiveCamera(javafx.scene.PerspectiveCamera) Scene(javafx.scene.Scene) Random(java.util.Random) PointLight(javafx.scene.PointLight) Translate(javafx.scene.transform.Translate) StackPane(javafx.scene.layout.StackPane)

Example 47 with StackPane

use of javafx.scene.layout.StackPane in project FXyzLib by Birdasaur.

the class TrapezoidTest method start.

@Override
public void start(Stage stage) {
    shapeGroup.getChildren().clear();
    generateShapes();
    root.getChildren().add(shapeGroup);
    camera = new AdvancedCamera();
    controller = new FPSController();
    camera.setNearClip(0.1);
    camera.setFarClip(10000.0);
    camera.setFieldOfView(42);
    camera.setController(controller);
    Scene scene = new Scene(new StackPane(root), 1024, 668, true, SceneAntialiasing.BALANCED);
    scene.setCamera(camera);
    scene.setFill(Color.BLACK);
    controller.setScene(scene);
    scene.setOnKeyPressed(event -> {
        KeyCode keycode = event.getCode();
        if (keycode == KeyCode.SPACE) {
            shapeGroup.getChildren().clear();
            generateShapes();
        }
    });
    stage.setTitle("Random Trapezoids!");
    stage.setScene(scene);
    stage.show();
    stage.setFullScreen(false);
    stage.setFullScreenExitHint("");
}
Also used : AdvancedCamera(org.fxyz.cameras.AdvancedCamera) FPSController(org.fxyz.cameras.controllers.FPSController) KeyCode(javafx.scene.input.KeyCode) Scene(javafx.scene.Scene) StackPane(javafx.scene.layout.StackPane)

Example 48 with StackPane

use of javafx.scene.layout.StackPane in project FXyzLib by Birdasaur.

the class CapsuleTest method start.

@Override
public void start(Stage stage) {
    Group capsuleGroup = new Group();
    for (int i = 0; i < 50; i++) {
        Random r = new Random();
        //A lot of magic numbers in here that just artificially constrain the math
        float randomRadius = (float) ((r.nextFloat() * 100) + 25);
        float randomHeight = (float) ((r.nextFloat() * 300) + 75);
        Color randomColor = new Color(r.nextDouble(), r.nextDouble(), r.nextDouble(), r.nextDouble());
        Capsule cap = new Capsule(randomRadius, randomHeight, randomColor);
        cap.setEmissiveLightingColor(randomColor);
        cap.setEmissiveLightingOn(r.nextBoolean());
        cap.setDrawMode(r.nextBoolean() ? DrawMode.FILL : DrawMode.LINE);
        double translationX = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationX *= -1;
        }
        double translationY = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationY *= -1;
        }
        double translationZ = Math.random() * 1024 * 1.95;
        if (Math.random() >= 0.5) {
            translationZ *= -1;
        }
        Translate translate = new Translate(translationX, translationY, translationZ);
        Rotate rotateX = new Rotate(Math.random() * 360, Rotate.X_AXIS);
        Rotate rotateY = new Rotate(Math.random() * 360, Rotate.Y_AXIS);
        Rotate rotateZ = new Rotate(Math.random() * 360, Rotate.Z_AXIS);
        cap.getTransforms().addAll(translate, rotateX, rotateY, rotateZ);
        capsuleGroup.getChildren().add(cap);
    }
    root.getChildren().add(capsuleGroup);
    camera = new AdvancedCamera();
    controller = new FPSController();
    camera.setNearClip(0.1);
    camera.setFarClip(10000.0);
    camera.setFieldOfView(42);
    camera.setController(controller);
    Scene scene = new Scene(new StackPane(root), 1024, 668, true, SceneAntialiasing.BALANCED);
    scene.setCamera(camera);
    scene.setFill(Color.BLACK);
    controller.setScene(scene);
    stage.setTitle("Hello World!");
    stage.setScene(scene);
    stage.show();
    stage.setFullScreen(true);
    stage.setFullScreenExitHint("");
}
Also used : Group(javafx.scene.Group) Rotate(javafx.scene.transform.Rotate) Color(javafx.scene.paint.Color) FPSController(org.fxyz.cameras.controllers.FPSController) Capsule(org.fxyz.shapes.Capsule) Scene(javafx.scene.Scene) Random(java.util.Random) AdvancedCamera(org.fxyz.cameras.AdvancedCamera) Translate(javafx.scene.transform.Translate) StackPane(javafx.scene.layout.StackPane)

Example 49 with StackPane

use of javafx.scene.layout.StackPane in project intellij-community by JetBrains.

the class StudyBrowserWindow method initComponents.

private void initComponents() {
    Platform.runLater(() -> {
        myPane = new StackPane();
        myWebComponent = new WebView();
        myWebComponent.setOnDragDetected(event -> {
        });
        myEngine = myWebComponent.getEngine();
        if (myShowProgress) {
            myProgressBar = makeProgressBarWithListener();
            myWebComponent.setVisible(false);
            myPane.getChildren().addAll(myWebComponent, myProgressBar);
        } else {
            myPane.getChildren().add(myWebComponent);
        }
        if (myLinkInNewBrowser) {
            initHyperlinkListener();
        }
        Scene scene = new Scene(myPane);
        myPanel.setScene(scene);
        myPanel.setVisible(true);
        updateLaf(LafManager.getInstance().getCurrentLookAndFeel() instanceof DarculaLookAndFeelInfo);
    });
    add(myPanel, BorderLayout.CENTER);
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
Also used : DarculaLookAndFeelInfo(com.intellij.ide.ui.laf.darcula.DarculaLookAndFeelInfo) WebView(javafx.scene.web.WebView) Scene(javafx.scene.Scene) StackPane(javafx.scene.layout.StackPane)

Example 50 with StackPane

use of javafx.scene.layout.StackPane in project jabref by JabRef.

the class MathSciNetPaneView method getPane.

StackPane getPane() {
    StackPane root = new StackPane();
    ProgressIndicator progress = new ProgressIndicator();
    progress.setMaxSize(100, 100);
    WebView browser = new WebView();
    // Quick hack to disable navigating
    browser.addEventFilter(javafx.scene.input.MouseEvent.ANY, javafx.scene.input.MouseEvent::consume);
    browser.setContextMenuEnabled(false);
    root.getChildren().addAll(browser, progress);
    mathSciNetId.getExternalURI().ifPresent(url -> browser.getEngine().load(url.toASCIIString()));
    // Hide progress indicator if finished (over 70% loaded)
    browser.getEngine().getLoadWorker().progressProperty().addListener((observable, oldValue, newValue) -> {
        if (newValue.doubleValue() >= 0.7) {
            progress.setVisible(false);
        }
    });
    return root;
}
Also used : ProgressIndicator(javafx.scene.control.ProgressIndicator) WebView(javafx.scene.web.WebView) StackPane(javafx.scene.layout.StackPane)

Aggregations

StackPane (javafx.scene.layout.StackPane)63 Scene (javafx.scene.Scene)34 Insets (javafx.geometry.Insets)15 BorderPane (javafx.scene.layout.BorderPane)12 Label (javafx.scene.control.Label)9 Parameter (aima.gui.fx.framework.Parameter)8 SimulationPaneBuilder (aima.gui.fx.framework.SimulationPaneBuilder)8 FlowPane (javafx.scene.layout.FlowPane)8 VBox (javafx.scene.layout.VBox)6 JFXButton (com.jfoenix.controls.JFXButton)5 Group (javafx.scene.Group)5 MapPaneCtrl (aimax.osm.gui.fx.viewer.MapPaneCtrl)4 ArrayList (java.util.ArrayList)4 Platform (javafx.application.Platform)4 Node (javafx.scene.Node)4 Button (javafx.scene.control.Button)4 Color (javafx.scene.paint.Color)4 WebView (javafx.scene.web.WebView)4 JFXHamburger (com.jfoenix.controls.JFXHamburger)3 JFXTextField (com.jfoenix.controls.JFXTextField)3