Java Examples for javafx.scene.SubScene

The following java examples will help you to understand the usage of javafx.scene.SubScene. These source code samples are taken from different open source projects.

Example 1
Project: code-of-gotham-master  File: StageUtil.java View source code
public Scene initScene(City city, PerspectiveCamera camera, String cityName) {
    Group root = new Group();
    buildCamera(root, camera);
    root.getTransforms().addAll(rxBox, ryBox, rzBox);
    subScene = new SubScene(root, SCENE_WIDTH, SCENE_HEIGHT, true, SceneAntialiasing.BALANCED);
    subScene.setCamera(camera);
    root.getChildren().add(city);
    // 2D
    BorderPane pane = new BorderPane();
    Pane toolBar = null;
    try {
        toolBar = new CityToolBarService().load(cityName);
    } catch (IOException e) {
        e.printStackTrace();
    }
    pane.setBottom(subScene);
    pane.setTop(toolBar);
    Scene scene = new Scene(pane, SCENE_WIDTH, SCENE_HEIGHT);
    subScene.heightProperty().bind(scene.heightProperty());
    subScene.widthProperty().bind(scene.widthProperty());
    return scene;
}
Example 2
Project: cirmlive-master  File: CiRMLive3d.java View source code
public Parent createContent() {
    BorderPane p = new BorderPane();
    HBox btBox = new HBox(50, leftBt, lookLeftBt, forwardBt, upBt, downBt, backBt, lookRightBt, rightBt);
    btBox.alignmentProperty().set(Pos.CENTER);
    p.setBottom(btBox);
    setUpButtons();
    PerspectiveCamera camera = new PerspectiveCamera(true);
    camera.getTransforms().add(cameraTranslate);
    camera.getTransforms().add(cameraRotate);
    camera.setFieldOfView(50);
    camera.setFarClip(10000);
    camera.setNearClip(1);
    p.setDepthTest(DepthTest.ENABLE);
    BorderPane cirmLiveUI = cirmLive.createSceneContent();
    cirmLiveUI.setCache(true);
    cirmLiveUI.setCacheShape(true);
    cirmLiveUI.setCacheHint(CacheHint.QUALITY);
    //cirmLiveUI.setSsetAlignment(camera, Pos.CENTER);
    //cirmLiveUI.setTranslateZ(500);
    //TODO root.getChildren().addAll(c, c2, c3);
    SubScene subScene = new SubScene(cirmLiveUI, 1600, 900, true, SceneAntialiasing.BALANCED);
    subScene.setFill(Color.CORAL);
    subScene.setCamera(camera);
    p.setCenter(subScene);
    return p;
}
Example 3
Project: JacpFX-misc-master  File: Demo4Component.java View source code
@PostConstruct
public void createUI() {
    Group sceneRoot = new Group();
    SubScene scene = new SubScene(sceneRoot, sceneWidth, sceneHeight);
    scene.setFill(Color.GREEN);
    camera = new PerspectiveCamera(true);
    camera.setNearClip(0.1);
    camera.setFarClip(10000.0);
    camera.setTranslateZ(-1000);
    scene.setCamera(camera);
    Rotate xRotate = new Rotate(0, 0, 0, 0, Rotate.X_AXIS);
    Rotate yRotate = new Rotate(0, 0, 0, 0, Rotate.Y_AXIS);
    Rotate zRotate = new Rotate(0, 0, 0, 0, Rotate.Z_AXIS);
    camera.getTransforms().addAll(xRotate, yRotate, zRotate);
    scene.addEventHandler(MouseEvent.ANY,  event -> {
        double mouseXnew = event.getSceneX();
        double mouseYnew = event.getSceneY();
        if (event.getEventType() == MouseEvent.MOUSE_DRAGGED) {
            double pitchRotate = xRotate.getAngle() + (mouseYnew - mouseYold) / rotateModifier;
            pitchRotate = pitchRotate > cameraYLimit ? cameraYLimit : pitchRotate;
            pitchRotate = pitchRotate < -cameraYLimit ? -cameraYLimit : pitchRotate;
            xRotate.setAngle(pitchRotate);
            double yawRotate = yRotate.getAngle() - (mouseXnew - mouseXold) / rotateModifier;
            yRotate.setAngle(yawRotate);
        }
        mouseXold = mouseXnew;
        mouseYold = mouseYnew;
    });
    final Cylinder cylinder = new Cylinder(50, 100);
    cylinder.setRotationAxis(Rotate.X_AXIS);
    cylinder.setRotate(45);
    cylinder.setTranslateZ(-200);
    final PhongMaterial greenMaterial = new PhongMaterial();
    greenMaterial.setDiffuseColor(Color.DARKGREEN);
    greenMaterial.setSpecularColor(Color.GREEN);
    final Box cube = new Box(50, 50, 50);
    cube.setMaterial(greenMaterial);
    final PhongMaterial redMaterial = new PhongMaterial();
    redMaterial.setDiffuseColor(Color.DARKRED);
    redMaterial.setSpecularColor(Color.RED);
    final Sphere sphere = new Sphere(50);
    sphere.setMaterial(redMaterial);
    cube.setRotationAxis(Rotate.Y_AXIS);
    cube.setRotate(45);
    cube.setTranslateX(-150);
    cube.setTranslateY(-150);
    cube.setTranslateZ(-150);
    sphere.setTranslateX(150);
    sphere.setTranslateY(150);
    sphere.setTranslateZ(-150);
    scene.addEventHandler(MouseEvent.ANY,  event -> {
        if (event.getEventType() == MouseEvent.MOUSE_PRESSED && event.isAltDown()) {
            PickResult pickResult = event.getPickResult();
            if (pickResult != null) {
                Node node = pickResult.getIntersectedNode();
                if (node != null) {
                    node.setVisible(false);
                }
            }
        }
    });
    final PhongMaterial blueMetal = new PhongMaterial();
    blueMetal.setDiffuseColor(Color.DARKBLUE);
    blueMetal.setSpecularColor(Color.BLUE);
    cylinder.setMaterial(blueMetal);
    scene.setOnKeyPressed( event -> {
        double change = cameraQuantity;
        KeyCode keycode = event.getCode();
        if (keycode == KeyCode.W) {
            camera.setTranslateZ(camera.getTranslateZ() + change);
        }
        if (keycode == KeyCode.S) {
            camera.setTranslateZ(camera.getTranslateZ() - change);
        }
        if (keycode == KeyCode.A) {
            camera.setTranslateX(camera.getTranslateX() - change);
        }
        if (keycode == KeyCode.D) {
            camera.setTranslateX(camera.getTranslateX() + change);
        }
        if (keycode == KeyCode.SPACE) {
            sphere.setVisible(true);
            cube.setVisible(true);
            cylinder.setVisible(true);
        }
    });
    sceneRoot.getChildren().addAll(cylinder, cube, sphere);
    tab.getChildren().add(scene);
    this.log.info("run on start of Demo4Component ");
}
Example 4
Project: FXyz-master  File: ShapeBaseSample.java View source code
private void buildSubScene() {
    subScene = new SubScene(root, sceneWidth, sceneHeight, true, SceneAntialiasing.BALANCED);
    //Color.web("#0d0d0d"));        
    subScene.setFill(Color.TRANSPARENT);
    subScene.setCamera(camera);
    subScene.setFocusTraversable(false);
    //First person shooter keyboard movement 
    subScene.setOnKeyPressed( event -> {
        double change = 10.0;
        if (event.isShiftDown()) {
            change = 50.0;
        }
        KeyCode keycode = event.getCode();
        if (keycode == KeyCode.W) {
            camera.setTranslateZ(camera.getTranslateZ() + change);
        }
        if (keycode == KeyCode.S) {
            camera.setTranslateZ(camera.getTranslateZ() - change);
        }
        if (keycode == KeyCode.A) {
            camera.setTranslateX(camera.getTranslateX() - change);
        }
        if (keycode == KeyCode.D) {
            camera.setTranslateX(camera.getTranslateX() + change);
        }
    });
    subScene.setOnMousePressed((MouseEvent me) -> {
        mousePosX = me.getSceneX();
        mousePosY = me.getSceneY();
        mouseOldX = me.getSceneX();
        mouseOldY = me.getSceneY();
        PickResult pr = me.getPickResult();
        if (pr != null && pr.getIntersectedNode() != null && pr.getIntersectedNode() instanceof Sphere && pr.getIntersectedNode().getId().equals("knot")) {
            distance = pr.getIntersectedDistance();
            sphere = (Sphere) pr.getIntersectedNode();
            isPicking.set(true);
            vecIni = unProjectDirection(mousePosX, mousePosY, subScene.getWidth(), subScene.getHeight());
        }
    });
    subScene.setOnMouseDragged((MouseEvent me) -> {
        mouseOldX = mousePosX;
        mouseOldY = mousePosY;
        mousePosX = me.getSceneX();
        mousePosY = me.getSceneY();
        mouseDeltaX = (mousePosX - mouseOldX);
        mouseDeltaY = (mousePosY - mouseOldY);
        if (isPicking.get()) {
            double modifier = (me.isControlDown() ? 0.01 : me.isAltDown() ? 1.0 : 0.1) * (30d / camera.getFieldOfView());
            modifier *= (30d / camera.getFieldOfView());
            vecPos = unProjectDirection(mousePosX, mousePosY, subScene.getWidth(), subScene.getHeight());
            Point3D p = new Point3D(distance * (vecPos.x - vecIni.x), distance * (vecPos.y - vecIni.y), distance * (vecPos.z - vecIni.z));
            sphere.getTransforms().add(new Translate(modifier * p.getX(), modifier * p.getY(), modifier * p.getZ()));
            vecIni = vecPos;
        } else {
            double modifier = 10.0;
            double modifierFactor = 0.1;
            if (me.isControlDown()) {
                modifier = 0.1;
            }
            if (me.isShiftDown()) {
                modifier = 50.0;
            }
            if (me.isPrimaryButtonDown()) {
                // +
                cameraTransform.ry.setAngle(((cameraTransform.ry.getAngle() + mouseDeltaX * modifierFactor * modifier * 2.0) % 360 + 540) % 360 - 180);
                // -
                cameraTransform.rx.setAngle(((cameraTransform.rx.getAngle() - mouseDeltaY * modifierFactor * modifier * 2.0) % 360 + 540) % 360 - 180);
            } else if (me.isSecondaryButtonDown()) {
                double z = camera.getTranslateZ();
                double newZ = z + mouseDeltaX * modifierFactor * modifier;
                camera.setTranslateZ(newZ);
            } else if (me.isMiddleButtonDown()) {
                // -
                cameraTransform.t.setX(cameraTransform.t.getX() + mouseDeltaX * modifierFactor * modifier * 0.3);
                // -
                cameraTransform.t.setY(cameraTransform.t.getY() + mouseDeltaY * modifierFactor * modifier * 0.3);
            }
        }
    });
    subScene.setOnMouseReleased((MouseEvent me) -> {
        if (isPicking.get()) {
            isPicking.set(false);
        }
    });
}
Example 5
Project: FXyzLib-master  File: BillBoardBehaviorTest.java View source code
private void createSubscene() {
    subScene = new SubScene(root, 800, 600, true, SceneAntialiasing.BALANCED);
    camera = new PerspectiveCamera(true);
    cameraTransform.setTranslate(0, 0, 0);
    cameraTransform.getChildren().addAll(camera);
    camera.setNearClip(0.1);
    camera.setFarClip(100000.0);
    camera.setFieldOfView(35);
    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);
    subScene.setCamera(camera);
    initFirstPersonControls(subScene);
    skyBox = new Skybox(new Image("http://www.zfight.com/misc/images/textures/envmaps/violentdays_large.jpg"), 100000, camera);
    //Make a bunch of semi random Torusesessses(toroids?) and stuff : from torustest
    Group torusGroup = new Group();
    for (int i = 0; i < 10; i++) {
        Random r = new Random();
        //A lot of magic numbers in here that just artificially constrain the math
        float randomRadius = (float) ((r.nextFloat() * 300) + 50);
        float randomTubeRadius = (float) ((r.nextFloat() * 100) + 1);
        int randomTubeDivisions = (int) ((r.nextFloat() * 64) + 1);
        int randomRadiusDivisions = (int) ((r.nextFloat() * 64) + 1);
        Color randomColor = new Color(r.nextDouble(), r.nextDouble(), r.nextDouble(), r.nextDouble());
        boolean ambientRandom = r.nextBoolean();
        boolean fillRandom = r.nextBoolean();
        if (i == 0) {
            torusGroup.getChildren().add(bill);
        }
        TorusMesh torus = new TorusMesh(randomTubeDivisions, randomRadiusDivisions, randomRadius, randomTubeRadius);
        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);
        torus.getTransforms().addAll(translate, rotateX, rotateY, rotateZ);
        //torus.getTransforms().add(translate);
        torusGroup.getChildren().add(torus);
    }
    root.getChildren().addAll(skyBox, torusGroup);
    rootPane.getChildren().add(subScene);
    //Enable subScene resizing
    subScene.widthProperty().bind(rootPane.widthProperty());
    subScene.heightProperty().bind(rootPane.heightProperty());
    subScene.setFocusTraversable(true);
}
Example 6
Project: JFXScad-master  File: MainController.java View source code
/**
     * Initializes the controller class.
     *
     * @param url
     * @param rb
     */
@Override
public void initialize(URL url, ResourceBundle rb) {
    //
    codeArea.textProperty().addListener(( ov,  oldText,  newText) -> {
        Matcher matcher = KEYWORD_PATTERN.matcher(newText);
        int lastKwEnd = 0;
        StyleSpansBuilder<Collection<String>> spansBuilder = new StyleSpansBuilder<>();
        while (matcher.find()) {
            spansBuilder.add(Collections.emptyList(), matcher.start() - lastKwEnd);
            spansBuilder.add(Collections.singleton("keyword"), matcher.end() - matcher.start());
            lastKwEnd = matcher.end();
        }
        spansBuilder.add(Collections.emptyList(), newText.length() - lastKwEnd);
        codeArea.setStyleSpans(0, spansBuilder.create());
    });
    EventStream<Change<String>> textEvents = EventStreams.changesOf(codeArea.textProperty());
    textEvents.reduceSuccessions(( a,  b) -> b, Duration.ofMillis(500)).subscribe( code -> {
        if (autoCompile) {
            compile(code.getNewValue());
        }
    });
    codeArea.replaceText("CSG cube = new Cube(2).toCSG()\n" + "CSG sphere = new Sphere(1.25).toCSG()\n" + "\n" + "cube.difference(sphere)");
    editorContainer.setContent(codeArea);
    subScene = new SubScene(viewGroup, 100, 100, true, SceneAntialiasing.BALANCED);
    subScene.widthProperty().bind(viewContainer.widthProperty());
    subScene.heightProperty().bind(viewContainer.heightProperty());
    PerspectiveCamera subSceneCamera = new PerspectiveCamera(false);
    subScene.setCamera(subSceneCamera);
    viewContainer.getChildren().add(subScene);
}
Example 7
Project: LeapV2-master  File: LeapV2.java View source code
@Override
public void start(Stage primaryStage) {
    listener = new LeapListener();
    controller = new Controller();
    controller.addListener(listener);
    AnchorPane pane = new AnchorPane();
    Scene scene = new Scene(pane, 800, 600, Color.BEIGE);
    final PerspectiveCamera camera = new PerspectiveCamera();
    camera.setFieldOfView(60);
    camera.getTransforms().addAll(cameraXRotate, cameraYRotate, cameraPosition);
    material = new PhongMaterial();
    material.setDiffuseColor(Color.GAINSBORO);
    material.setSpecularColor(Color.rgb(30, 30, 30));
    sphereMaterial = new PhongMaterial();
    sphereMaterial.setDiffuseColor(Color.GAINSBORO);
    sphereMaterial.setSpecularColor(Color.rgb(30, 30, 30));
    sphereMaterial.setSelfIlluminationMap(new Image(getClass().getResource("red.png").toExternalForm()));
    meshView = new Shape3D[3];
    meshView[0] = new MeshView(buildTriangleMesh(20, 20, 30, true));
    meshView[1] = new MeshView(buildTriangleMesh(20, 20, 30, false));
    for (int i = 0; i < 2; i++) {
        meshView[i].setMaterial(material);
        meshView[i].setTranslateX(300);
        meshView[i].setTranslateY(i == 0 ? -300 : 0);
        meshView[i].setTranslateZ(i == 0 ? 0 : -300);
        meshView[i].setDrawMode(DrawMode.LINE);
        meshView[i].setCullFace(CullFace.NONE);
    }
    meshView[2] = new Sphere(60);
    meshView[2].setMaterial(material);
    meshView[2].setDrawMode(DrawMode.FILL);
    meshView[2].setCullFace(CullFace.BACK);
    meshView[2].setTranslateX(160);
    meshView[2].setTranslateY(-60);
    meshView[2].setTranslateZ(-160);
    sphereBounds = meshView[2].localToScene(meshView[2].getBoundsInLocal());
    System.out.println("s0: " + meshView[2].getBoundsInLocal());
    System.out.println("s: " + sphereBounds);
    final Group parent = new Group(meshView);
    root.getChildren().addAll(parent);
    final PointLight pointLight = new PointLight(Color.ANTIQUEWHITE);
    pointLight.setTranslateX(0);
    pointLight.setTranslateY(-800);
    pointLight.setTranslateZ(-600);
    Cylinder axisX = new Cylinder(5, 700);
    axisX.setRotationAxis(Rotate.Z_AXIS);
    axisX.setRotate(90d);
    axisX.setTranslateX(250d);
    root.getChildren().add(axisX);
    Cylinder axisY = new Cylinder(5, 700);
    axisY.setTranslateY(-250d);
    root.getChildren().add(axisY);
    Cylinder axisZ = new Cylinder(5, 700);
    axisZ.setRotationAxis(Rotate.X_AXIS);
    axisZ.setRotate(90d);
    axisZ.setTranslateZ(-250d);
    root.getChildren().add(axisZ);
    root.getChildren().addAll(pointLight);
    Group root3D = new Group();
    root3D.getChildren().addAll(camera, root);
    SubScene subScene = new SubScene(root3D, 800, 600, true, SceneAntialiasing.BALANCED);
    subScene.setCamera(camera);
    pane.getChildren().addAll(subScene);
    final int minRoot = root.getChildren().size();
    final PhongMaterial materialFinger = new PhongMaterial();
    materialFinger.setDiffuseColor(Color.GOLDENROD);
    materialFinger.setSpecularColor(Color.rgb(50, 50, 50));
    final PhongMaterial materialArm = new PhongMaterial();
    materialArm.setDiffuseColor(Color.CORNSILK);
    materialArm.setSpecularColor(Color.rgb(30, 30, 30));
    listener.doneListProperty().addListener(( ov,  b,  b1) -> {
        if (b1) {
            // First, get a fresh copy of the bones, arms & joints collection
            List<Bone> bones = listener.getBones();
            List<Arm> arms = listener.getArms();
            List<Pair> joints = listener.getJoints();
            touch.set(false);
            Platform.runLater(() -> {
                // Now, on the JavaFX thread
                if (root.getChildren().size() > minRoot) {
                    // clean old bones
                    root.getChildren().remove(minRoot, root.getChildren().size() - 1);
                }
                // Iterate over the list adding the bones to the scene
                // If the collection changes there won't be any concurrent exception
                // as we are iterating over its copy.
                bones.stream().filter(( bone) -> (bone.isValid() && bone.length() > 0)).forEach(( bone) -> {
                    final Vector p = bone.center();
                    // create bone as a vertical cylinder and locate it at its center position
                    Cylinder c = new Cylinder(bone.width() / 2, bone.length());
                    c.setMaterial(materialFinger);
                    // translate and rotate the cylinder towards its direction
                    final Vector v = bone.direction();
                    Vector cross = (new Vector(v.getX(), -v.getY(), -v.getZ())).cross(new Vector(0, -1, 0));
                    double ang = (new Vector(v.getX(), -v.getY(), -v.getZ())).angleTo(new Vector(0, -1, 0));
                    c.getTransforms().addAll(new Translate(200 + p.getX(), -p.getY(), -p.getZ()), new Rotate(-Math.toDegrees(ang), 0, 0, 0, new Point3D(cross.getX(), -cross.getY(), cross.getZ())));
                    // add bone to scene
                    root.getChildren().add(c);
                    Sphere s = new Sphere(bone.width() / 2f * 1.2);
                    s.setMaterial(materialFinger);
                    s.getTransforms().addAll(new Translate(200 + p.getX(), -p.getY() + bone.length() / 2d, -p.getZ()), new Rotate(-Math.toDegrees(ang), 0, -bone.length() / 2d, 0, new Point3D(cross.getX(), -cross.getY(), cross.getZ())));
                    // add bone to scene
                    root.getChildren().add(s);
                    Sphere s2 = new Sphere(bone.width() / 2f * 1.2);
                    s2.setMaterial(materialFinger);
                    s2.getTransforms().addAll(new Translate(200 + p.getX(), -p.getY() - bone.length() / 2d, -p.getZ()), new Rotate(-Math.toDegrees(ang), 0, bone.length() / 2d, 0, new Point3D(cross.getX(), -cross.getY(), cross.getZ())));
                    // add bone to scene
                    root.getChildren().add(s2);
                    if (sphereBounds.intersects(s.localToScene(s.getBoundsInLocal())) || sphereBounds.intersects(s.localToScene(s2.getBoundsInLocal()))) {
                        touch.set(true);
                    }
                });
                if (touch.get()) {
                    meshView[2].setMaterial(sphereMaterial);
                } else if (((PhongMaterial) meshView[2].getMaterial()).getSelfIlluminationMap() != null) {
                    meshView[2].setMaterial(material);
                }
                arms.stream().filter( arm -> arm.isValid()).forEach( arm -> {
                    final Vector p = arm.center();
                    Cylinder c = new Cylinder(arm.width() / 2, arm.elbowPosition().minus(arm.wristPosition()).magnitude());
                    c.setMaterial(materialArm);
                    final Vector v = arm.direction();
                    Vector cross = (new Vector(v.getX(), -v.getY(), -v.getZ())).cross(new Vector(0, -1, 0));
                    double ang = (new Vector(v.getX(), -v.getY(), -v.getZ())).angleTo(new Vector(0, -1, 0));
                    c.getTransforms().addAll(new Translate(200 + p.getX(), -p.getY(), -p.getZ()), new Rotate(-Math.toDegrees(ang), 0, 0, 0, new Point3D(cross.getX(), -cross.getY(), cross.getZ())));
                    root.getChildren().add(c);
                });
                joints.stream().forEach( joint -> {
                    double length = joint.getV0().distanceTo(joint.getV1());
                    Cylinder c = new Cylinder(bones.get(0).width() / 4, length);
                    c.setMaterial(materialArm);
                    final Vector p = joint.getCenter();
                    final Vector v = joint.getDirection();
                    Vector cross = (new Vector(v.getX(), -v.getY(), -v.getZ())).cross(new Vector(0, -1, 0));
                    double ang = (new Vector(v.getX(), -v.getY(), -v.getZ())).angleTo(new Vector(0, -1, 0));
                    c.getTransforms().addAll(new Translate(200 + p.getX(), -p.getY(), -p.getZ()), new Rotate(-Math.toDegrees(ang), 0, 0, 0, new Point3D(cross.getX(), -cross.getY(), cross.getZ())));
                    root.getChildren().add(c);
                });
            });
        }
    });
    scene.addEventHandler(MouseEvent.ANY,  event -> {
        if (event.getEventType() == MouseEvent.MOUSE_PRESSED) {
            dragStartX = event.getSceneX();
            dragStartY = event.getSceneY();
            dragStartRotateX = cameraXRotate.getAngle();
            dragStartRotateY = cameraYRotate.getAngle();
        } else if (event.getEventType() == MouseEvent.MOUSE_DRAGGED) {
            double xDelta = event.getSceneX() - dragStartX;
            double yDelta = event.getSceneY() - dragStartY;
            cameraXRotate.setAngle(dragStartRotateX - (yDelta * 0.7));
            cameraYRotate.setAngle(dragStartRotateY + (xDelta * 0.7));
        }
    });
    primaryStage.setTitle("Skeletal Tracking with Leap Motion v2 and JavaFX 3D");
    primaryStage.setScene(scene);
    primaryStage.show();
}
Example 8
Project: classical-physics-master  File: Space.java View source code
public SubScene getSubScene() {
    return this.mainView;
}
Example 9
Project: fbx-importer-master  File: SubSceneContainer.java View source code
/**
     * Sets the sub-scene to be displayed inside this container.
     * 
     * @param subScene the {@link SubScene} of this container
     */
public void setSubScene(final SubScene subScene) {
    this.subScene = subScene;
    getChildren().add(subScene);
}
Example 10
Project: LiteRubikFX-master  File: Rubik.java View source code
public SubScene getSubScene() {
    return content.getSubScene();
}
Example 11
Project: JXTN-master  File: JFX.java View source code
/**
     * 建立新的{@link javafx.scene.SubScene}建構器。
     *
     * @return 新的{@link javafx.scene.SubSceneMaker}
     */
@SuppressWarnings({ "rawtypes", "unchecked" })
public static javafx.scene.SubSceneMaker<javafx.scene.SubScene, ?> subScene() {
    return new javafx.scene.SubSceneMaker();
}