mirror of
https://github.com/michaelrausch/Party-Parrots-At-Sea.git
synced 2026-05-09 06:18:44 +00:00
Fixed 3d tests
This commit is contained in:
@@ -1,13 +1,17 @@
|
||||
package seng302.visualiser;
|
||||
|
||||
import com.interactivemesh.jfx.importer.stl.StlMeshImporter;
|
||||
import javafx.animation.AnimationTimer;
|
||||
import javafx.application.Application;
|
||||
import javafx.geometry.Point3D;
|
||||
import javafx.scene.Camera;
|
||||
import javafx.scene.Group;
|
||||
import javafx.scene.PerspectiveCamera;
|
||||
import javafx.scene.PointLight;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.scene.SceneAntialiasing;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.paint.PhongMaterial;
|
||||
import javafx.scene.shape.MeshView;
|
||||
import javafx.scene.transform.Rotate;
|
||||
import javafx.scene.transform.Scale;
|
||||
import javafx.scene.transform.Translate;
|
||||
@@ -35,34 +39,39 @@ public class test3d extends Application {
|
||||
primaryStage.setScene(scene);
|
||||
primaryStage.show();
|
||||
|
||||
// StlMeshImporter importer = new StlMeshImporter();
|
||||
// importer.read(getClass().getResource("/meshes/boat_hull.stl"));
|
||||
// MeshView boat = new MeshView(importer.getImport());
|
||||
// boat.setMaterial(new PhongMaterial(Color.BEIGE));
|
||||
//
|
||||
// importer = new StlMeshImporter();
|
||||
// importer.read(getClass().getResource("/meshes/boat_mast.stl").toString());
|
||||
// MeshView mast = new MeshView(importer.getImport());
|
||||
// mast.setMaterial(new PhongMaterial(Color.BEIGE));
|
||||
//
|
||||
// importer = new StlMeshImporter();
|
||||
// importer.read(getClass().getResource("/meshes/boat_sail.stl").toString());
|
||||
// MeshView sail = new MeshView(importer.getImport());
|
||||
// sail.setMaterial(new PhongMaterial(Color.WHITE));
|
||||
StlMeshImporter importer = new StlMeshImporter();
|
||||
importer.read(test3d.class.getResource("/meshes/high_poly_boat.stl").toString());
|
||||
MeshView boat = new MeshView(importer.getImport());
|
||||
boat.setMaterial(new PhongMaterial(Color.GREENYELLOW));
|
||||
|
||||
// gameObjects.getChildren().addAll(boat, mast, sail);
|
||||
importer = new StlMeshImporter();
|
||||
importer.read(getClass().getResource("/meshes/boat-mast.stl").toString());
|
||||
MeshView mast = new MeshView(importer.getImport());
|
||||
mast.setMaterial(new PhongMaterial(Color.GREENYELLOW));
|
||||
|
||||
gameObjects.getTransforms().add(new Scale(40, 40,40));
|
||||
gameObjects.getTransforms().add(new Translate(10, 10,0));
|
||||
importer = new StlMeshImporter();
|
||||
importer.read(getClass().getResource("/meshes/sail_centered.stl").toString());
|
||||
MeshView sail = new MeshView(importer.getImport());
|
||||
sail.setMaterial(new PhongMaterial(Color.LIGHTGREY));
|
||||
|
||||
gameObjects.getChildren().addAll(boat, mast, sail);
|
||||
|
||||
gameObjects.getTransforms().add(new Scale(25, 25,25));
|
||||
gameObjects.getTransforms().add(new Translate(15, 20,0));
|
||||
gameObjects.getTransforms().addAll(
|
||||
new Rotate(90, new Point3D(0,0,1)),
|
||||
new Rotate(90, new Point3D(0, 1, 0))
|
||||
);
|
||||
|
||||
PointLight light = new PointLight();
|
||||
light.setLightOn(true);
|
||||
light.getTransforms().add(new Translate(10, 10, -50));
|
||||
root3D.getChildren().add(light);
|
||||
// PointLight light = new PointLight();
|
||||
// light.setLightOn(true);
|
||||
// light.getTransforms().add(new Translate(15, 20, 0));
|
||||
//
|
||||
// PointLight light2 = new PointLight();
|
||||
// light2.setLightOn(true);
|
||||
// light2.getTransforms().add(new Translate(30, 40, 0));
|
||||
|
||||
// root3D.getChildren().addAll(light);
|
||||
|
||||
scene.setOnKeyPressed(event -> {
|
||||
switch (event.getCode()) {
|
||||
@@ -80,5 +89,14 @@ public class test3d extends Application {
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
AnimationTimer animationTimer = new AnimationTimer() {
|
||||
@Override
|
||||
public void handle(long now) {
|
||||
sail.getTransforms().add(new Rotate(0.5, 0, -1.36653, 0, new Point3D(0, 0, 1)));
|
||||
}
|
||||
};
|
||||
|
||||
animationTimer.start();
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user