- Removed 2D wind and replaced with 3D wind arrow.

#story[1276]
This commit is contained in:
Zhi You Tan
2017-09-28 04:13:44 +13:00
parent 270326ea77
commit 72fe8c4881
9 changed files with 619 additions and 454 deletions
@@ -20,8 +20,6 @@ import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.geometry.Point2D;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.SubScene;
import javafx.scene.chart.LineChart;
@@ -48,26 +46,22 @@ import javafx.scene.shape.Polyline;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import javafx.stage.StageStyle;
import javax.swing.ImageIcon;
import seng302.model.ClientYacht;
import seng302.model.ClientYacht.PowerUpListener;
import seng302.model.RaceState;
import seng302.model.mark.CompoundMark;
import seng302.model.mark.Mark;
import seng302.model.stream.xml.parser.RaceXMLData;
import seng302.model.token.Token;
import seng302.model.token.TokenType;
import seng302.utilities.Sounds;
import seng302.visualiser.GameView3D;
import seng302.visualiser.controllers.annotations.ImportantAnnotationController;
import seng302.visualiser.controllers.annotations.ImportantAnnotationDelegate;
import seng302.visualiser.controllers.annotations.ImportantAnnotationsState;
import seng302.visualiser.controllers.cells.WindCell;
import seng302.visualiser.controllers.dialogs.FinishDialogController;
import seng302.visualiser.fxObjects.ChatHistory;
import seng302.visualiser.fxObjects.assets_2D.WindArrow;
import seng302.visualiser.fxObjects.assets_3D.BoatObject;
import seng302.visualiser.fxObjects.assets_3D.ModelFactory;
import seng302.visualiser.fxObjects.assets_3D.ModelType;
/**
* Controller class that manages the display of a race
@@ -112,8 +106,8 @@ public class RaceViewController extends Thread implements ImportantAnnotationDel
private ComboBox<ClientYacht> yachtSelectionComboBox;
@FXML
private Text fpsDisplay;
@FXML
private ImageView windImageView;
// @FXML
// private ImageView windImageView;
@FXML
private Label windDirectionLabel;
@FXML
@@ -122,6 +116,8 @@ public class RaceViewController extends Thread implements ImportantAnnotationDel
private Label positionLabel, boatSpeedLabel, boatHeadingLabel;
@FXML
private ImageView velocityIcon, handlingIcon, windWalkerIcon, bumperIcon, badRandomIcon;
@FXML
private VBox windArrowVBox;
//Race Data
private Map<Integer, ClientYacht> participants;
@@ -211,6 +207,26 @@ public class RaceViewController extends Thread implements ImportantAnnotationDel
}
}
});
initialiseWindArrow();
}
/**
* Initialise wind arrow cell.
*/
private void initialiseWindArrow() {
Pane pane = null;
FXMLLoader loader = new FXMLLoader(
getClass().getResource("/views/cells/WindCell.fxml"));
loader.setController(new WindCell());
try {
pane = loader.load();
} catch (IOException e) {
e.printStackTrace();
}
windArrowVBox.getChildren().add(pane);
}
public void showFinishDialog(ArrayList<ClientYacht> finishedBoats) {
@@ -582,7 +598,7 @@ public class RaceViewController extends Thread implements ImportantAnnotationDel
*/
private void updateWindDirection(double direction) {
windDirectionLabel.setText(String.format("%.1f°", direction));
windImageView.setRotate(direction);
// windImageView.setRotate(direction);
}
/**