|
|
|
|
@ -2,6 +2,7 @@ package visualiser.Controllers;
|
|
|
|
|
|
|
|
|
|
import com.interactivemesh.jfx.importer.stl.StlMeshImporter;
|
|
|
|
|
import eu.hansolo.medusa.*;
|
|
|
|
|
import eu.hansolo.medusa.events.UpdateEvent;
|
|
|
|
|
import javafx.animation.AnimationTimer;
|
|
|
|
|
import javafx.application.Platform;
|
|
|
|
|
import javafx.collections.FXCollections;
|
|
|
|
|
@ -97,6 +98,7 @@ public class RaceViewController extends Controller {
|
|
|
|
|
private @FXML AnchorPane infoWrapper;
|
|
|
|
|
private @FXML AnchorPane lineChartWrapper;
|
|
|
|
|
private @FXML StackPane speedPane;
|
|
|
|
|
private @FXML AnchorPane raceAnchorPane;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Displays a specified race.
|
|
|
|
|
@ -106,6 +108,7 @@ public class RaceViewController extends Controller {
|
|
|
|
|
* @param isHost is user a host
|
|
|
|
|
*/
|
|
|
|
|
public void startRace(VisualiserRaceEvent visualiserRace, ControllerClient controllerClient, Boolean isHost) {
|
|
|
|
|
|
|
|
|
|
this.visualiserRace = visualiserRace;
|
|
|
|
|
this.raceState = visualiserRace.getVisualiserRaceState();
|
|
|
|
|
this.controllerClient = controllerClient;
|
|
|
|
|
@ -208,7 +211,7 @@ public class RaceViewController extends Controller {
|
|
|
|
|
* Create speedometer
|
|
|
|
|
*/
|
|
|
|
|
private void initialiseSpeedometer() {
|
|
|
|
|
gauge = GaugeBuilder.create().title("Speedometer").subTitle("Speed").unit("Knots").skinType(Gauge.SkinType.FLAT).build();
|
|
|
|
|
gauge = GaugeBuilder.create().prefSize(200, 200).title("Speedometer").subTitle("Speed").unit("Knots").skinType(Gauge.SkinType.FLAT).build();
|
|
|
|
|
gauge.setValueColor(Color.WHITE);
|
|
|
|
|
gauge.setTitleColor(Color.WHITE);
|
|
|
|
|
gauge.setSubTitleColor(Color.WHITE);
|
|
|
|
|
@ -216,6 +219,7 @@ public class RaceViewController extends Controller {
|
|
|
|
|
gauge.setUnitColor(Color.WHITE);
|
|
|
|
|
gauge.setMaxValue(40);
|
|
|
|
|
fGauge = FGaugeBuilder.create()
|
|
|
|
|
.prefSize(200, 200)
|
|
|
|
|
.gauge(gauge)
|
|
|
|
|
.gaugeDesign(GaugeDesign.METAL)
|
|
|
|
|
.gaugeBackground(GaugeDesign.GaugeBackground.CARBON)
|
|
|
|
|
@ -642,6 +646,11 @@ public class RaceViewController extends Controller {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
gauge.setValue(raceState.getBoat(raceState.getPlayerBoatID()).getCurrentSpeed());
|
|
|
|
|
for (VisualiserBoat boat : boatInfoTable.getItems()){
|
|
|
|
|
if(raceState.getPlayerBoatID()==boat.getSourceID()){
|
|
|
|
|
gauge.setTitle("Position: " + boatInfoTable.getItems().indexOf(boat)+1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (BoatNotFoundException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|