import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.PerspectiveCamera;
import javafx.scene.Scene;
import javafx.scene.SceneAntialiasing;
import javafx.scene.paint.Color;
import javafx.scene.paint.PhongMaterial;
import javafx.scene.shape.Sphere;
import javafx.stage.Stage;

public class MeshDepth3DBug extends Application {

    @Override
    public void start(Stage primaryStage) {

        Sphere left = new Sphere(100);
        left.setMaterial(new PhongMaterial(Color.RED));
        left.setTranslateX(-100);
        left.setTranslateZ(-50);

        Sphere center = new Sphere(100); // Width, Height, Depth
        center.setMaterial(new PhongMaterial(Color.BLUE));

        Sphere right = new Sphere(100);
        left.setMaterial(new PhongMaterial(Color.GREEN));
        right.setTranslateX(100);
        right.setTranslateY(50);

        Group root = new Group(center, left, right);
        Scene scene = new Scene(root, 600, 400, true, SceneAntialiasing.BALANCED);

        // 4. Set up a camera to view the 3D scene
        PerspectiveCamera camera = new PerspectiveCamera(true);
        camera.setTranslateZ(-500);
        camera.setFarClip(5000);
        camera.setFieldOfView(42);
        scene.setCamera(camera);

        primaryStage.setTitle(System.getProperty("prism.order"));
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }

}
