Jelajahi Sumber

Fixed Africa Bug

dominik 8 tahun lalu
induk
melakukan
eeb4664af5

+ 5 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/ButtonManager.java

@@ -97,12 +97,11 @@ public final class ButtonManager {
 	 * @param event
 	 */
 	public static void centerMapAction(ActionEvent event) {
-		if (GraphDisplayManager.getCurrentLayer().equals(Layer.SYMBOL)) {
-			HashSet<GeoPosition> positions = new HashSet<GeoPosition>(WorldView.waypoints.size());
-			WorldView.waypoints.forEach((w) -> positions.add(w.getPosition()));
-			
-			WorldView.internMapViewer.zoomToBestFit(positions, 1);
-		}
+		HashSet<GeoPosition> positions = new HashSet<GeoPosition>(WorldView.waypoints.size());
+		WorldView.waypoints.forEach((w) -> positions.add(w.getPosition()));
+		
+		WorldView.showAllWaypoints(positions);
+		
 	}
 
 	/**

+ 7 - 2
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/WorldView.java

@@ -171,6 +171,8 @@ public class WorldView {
 		
 		ArrayList<Point2D> points = new ArrayList<Point2D>(positions.size());
 		
+		internMapViewer.setZoom(1);
+		
 		internMapViewer.calculateZoomFrom(positions);
 		
 		positions.forEach((geoPos) -> points.add(internMapViewer.convertGeoPositionToPoint(geoPos)));
@@ -197,9 +199,12 @@ public class WorldView {
 			}
 		}
 		
-		Rectangle2D rect = new Rectangle2D(minX, minY, maxX - minX, maxY - minY);
+		Rectangle2D rect = new Rectangle2D(minX, minY, maxY - minY, maxX - minX);
+		
+		double xPos = rect.getMinX() + rect.getHeight() / 2;
+		double yPos = rect.getMinY() + rect.getWidth() / 2;
 		
-		Point2D center = new Point2D.Double(rect.getWidth() / 2, rect.getHeight() / 2);
+		Point2D center = new Point2D.Double(xPos, yPos);
 		
 		internMapViewer.setCenterPosition(internMapViewer.convertPointToGeoPosition(center));