diff --git a/src/main/java/seng302/controllers/CanvasController.java b/src/main/java/seng302/controllers/CanvasController.java index a7ed44ad..b5642755 100644 --- a/src/main/java/seng302/controllers/CanvasController.java +++ b/src/main/java/seng302/controllers/CanvasController.java @@ -389,25 +389,24 @@ public class CanvasController { * Give all markers in the course an x,y location relative to a given reference with a known x,y location. Distances * are scaled according to the distanceScaleFactor variable. */ -// private void givePointsXY() { -// List allPoints = new ArrayList<>(raceViewController.getRace().getCourse()); -// List processed = new ArrayList<>(); -// RaceObject markGroup; -// -// for (Mark mark : allPoints) { -// if (!processed.contains(mark)) { -// if (mark.getMarkType() != MarkType.SINGLE_MARK) { -// GateMark gateMark = (GateMark) mark; -// markGroup = new MarkGroup(mark, findScaledXY(gateMark.getSingleMark1()), findScaledXY(gateMark.getSingleMark2())); -// raceObjects.add(markGroup); -// } else { -// markGroup = new MarkGroup(mark, findScaledXY(mark)); -// raceObjects.add(markGroup); -// } -// processed.add(mark); -// } -// } -// } + private void givePointsXY() { + List allPoints = StreamParser.getXmlObject().getRaceXML().getCompoundMarks(); + List processed = new ArrayList<>(); + RaceObject markGroup; + + for (XMLParser.RaceXMLObject.CompoundMark mark : allPoints) { + if (!processed.contains(mark)) { + if (mark.getMarkType() != MarkType.SINGLE_MARK) { + markGroup = new MarkGroup(mark, findScaledXY(mark.getMarks().get(0)), findScaledXY(mark.getMarks().get(1))); + raceObjects.add(markGroup); + } else { + markGroup = new MarkGroup(mark, findScaledXY(mark.getMarks().get(0))); + raceObjects.add(markGroup); + } + processed.add(mark); + } + } + } private Point2D findScaledXY (Mark unscaled) { return findScaledXY (minLatPoint.getLatitude(), minLatPoint.getLongitude(), diff --git a/src/main/java/seng302/models/stream/XMLParser.java b/src/main/java/seng302/models/stream/XMLParser.java index 6349d07f..181c1e2f 100644 --- a/src/main/java/seng302/models/stream/XMLParser.java +++ b/src/main/java/seng302/models/stream/XMLParser.java @@ -326,6 +326,7 @@ public class XMLParser { public Integer getMarkID() { return markID; } public String getcMarkName() { return cMarkName; } + public MarkType getMarkType() { return markType; } public ArrayList getMarks() { return marks; } public class Mark {