Fire is now rotated and standing up-write. Found problem with fire not being directly on the boat. #story[1292]
This commit is contained in:
@@ -25,6 +25,7 @@ import javafx.scene.paint.Material;
|
||||
import javafx.scene.paint.PhongMaterial;
|
||||
import javafx.scene.shape.MeshView;
|
||||
import javafx.scene.shape.Shape3D;
|
||||
import javafx.scene.transform.Rotate;
|
||||
import javafx.scene.transform.Translate;
|
||||
import javafx.util.Callback;
|
||||
import network.Messages.Enums.RaceStatusEnum;
|
||||
@@ -355,6 +356,7 @@ public class RaceViewController extends Controller {
|
||||
|
||||
FireParticle fire = new FireParticle();
|
||||
viewSubjects.add(fire);
|
||||
fire.rotateView((double) -90, fire.getPosition().getX(), fire.getPosition().getY(), fire.getPosition().getZ(), Rotate.X_AXIS);
|
||||
|
||||
|
||||
// Track this boat's movement with the new subject
|
||||
@@ -366,6 +368,7 @@ public class RaceViewController extends Controller {
|
||||
boatModel.setZ(gpsConverter.convertGPS(boat.getPosition()).getY());
|
||||
|
||||
//Set up fire particles
|
||||
//fire.setHeading(boat.getBearing().degrees());
|
||||
fire.setX(gpsConverter.convertGPS(boat.getPosition()).getX());
|
||||
fire.setZ(gpsConverter.convertGPS(boat.getPosition()).getY());
|
||||
|
||||
|
||||
@@ -36,17 +36,6 @@ public class FireParticle extends Subject3D {
|
||||
|
||||
MeshView fireSurface = new MeshView(plane);
|
||||
|
||||
|
||||
fireSurface.setRotationAxis(new Point3D(1, 0, 0));
|
||||
fireSurface.translateXProperty().setValue(-10);
|
||||
fireSurface.translateZProperty().setValue(-10);
|
||||
|
||||
fireSurface.rotateProperty().setValue(90);
|
||||
|
||||
fireSurface.translateXProperty().setValue(10);
|
||||
fireSurface.translateZProperty().setValue(10);
|
||||
|
||||
|
||||
fireSurface.setMaterial(material);
|
||||
fireSurface.setMouseTransparent(true);
|
||||
fireSurface.toFront();
|
||||
@@ -56,4 +45,12 @@ public class FireParticle extends Subject3D {
|
||||
return fireSurface;
|
||||
}
|
||||
|
||||
public void rotateView(Double angle, Double pivotX, Double pivotY, Double pivotZ, Point3D axis){
|
||||
Rotate rotate = new Rotate(angle, axis);
|
||||
rotate.setPivotX(pivotX);
|
||||
rotate.setPivotY(pivotY);
|
||||
rotate.setPivotZ(pivotZ);
|
||||
this.getMesh().getTransforms().add(rotate);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user