Added View3D control for rendering 3D shapes under a PerspectiveCamera, which is not currently working.

#story[1196]
This commit is contained in:
Connor Taylor-Brown
2017-08-30 01:30:05 +12:00
parent d630788a14
commit cf838f2072
5 changed files with 77 additions and 143 deletions
@@ -0,0 +1,49 @@
package visualiser.model;
import javafx.animation.AnimationTimer;
import javafx.scene.Group;
import javafx.scene.PerspectiveCamera;
import javafx.scene.SubScene;
import javafx.scene.layout.Pane;
import javafx.scene.shape.Box;
import javafx.scene.shape.CullFace;
import javafx.scene.transform.Rotate;
/**
* Created by connortaylorbrown on 30/08/17.
*/
public class View3D extends Pane {
SubScene scene;
PerspectiveCamera camera;
Box box;
public View3D() {
scene = new SubScene(this, 500, 500);
camera = new PerspectiveCamera();
scene.setCamera(camera);
}
public void spinBox() {
camera.getTransforms().add(new Rotate(-20, Rotate.X_AXIS));
box = new Box(50,50,50);
box.setTranslateX(100);
box.setTranslateY(100);
box.setCullFace(CullFace.BACK);
Rotate ry = new Rotate(0, 0,0,0, Rotate.Y_AXIS);
box.getTransforms().add(ry);
this.getChildren().add(camera);
this.getChildren().add(box);
AnimationTimer rotation = new AnimationTimer() {
@Override
public void handle(long now) {
ry.setAngle(ry.getAngle() + 0.1);
}
};
rotation.start();
}
}