public void verticeMouseDragged(MouseEvent e) { if (SwingUtilities.isLeftMouseButton(e)) { if (currentVertex != null) { Point diff = Vector2DHelper.SubstractVector(e.getPoint(), previousPoint); currentVertex.setLocation(Vector2DHelper.AddVector(currentVertex.getLocation(), diff)); previousPoint = e.getPoint(); repaint(); } } else if (SwingUtilities.isRightMouseButton(e)) { if (tempLine != null) { tempLine.setPoint2(e.getPoint()); repaint(); } } }
public void verticeMouseReleased(MouseEvent e) { if (tempLine != null) { for (Vertex vertex : graph.getVertices()) { if (vertex == currentVertex) continue; if (vertex.contains(e.getPoint())) { Edge edge = new Edge(currentVertex, vertex); addEdge(edge); break; } } tempLine = null; repaint(); } currentVertex = null; }
public synchronized boolean deleteTile(int x, int y) { Station tempStation = null; for (Station station : allStations) { if (station.checkPosition(x, y)) { tempStation = station; break; } } allStations.remove(tempStation); Vertex tempVertex = null; for (Vertex vertex : allVertexes) { if (vertex.checkPosition(x, y)) { tempVertex = vertex; break; } } allVertexes.remove(tempVertex); return true; }
public void verticeMousePressed(MouseEvent e) { if (e.getClickCount() == 2) { for (Edge edge : graph.getEdges()) { if (edge.contains(e.getPoint())) { String input = DialogHelpers.showInPutDialog("Input", "Enter cost: "); try { int number = Integer.parseInt(input); edge.setCost(number); repaint(); } catch (NumberFormatException e1) { // e1.printStackTrace(); } } } return; } if (SwingUtilities.isLeftMouseButton(e)) { for (Vertex vertex : graph.getVertices()) { if (vertex.contains(e.getPoint())) { currentVertex = vertex; previousPoint = e.getPoint(); return; } } for (Edge edge : graph.getEdges()) { if (edge.contains(e.getPoint())) {} } } else if (SwingUtilities.isRightMouseButton(e)) { for (Vertex vertex : graph.getVertices()) { if (vertex.contains(e.getPoint())) { currentVertex = vertex; tempLine = new Line(); tempLine.setPoint1(e.getPoint()); } } } }
void selectTile(int x, int y) { selectedVertex = null; selectedStation = null; for (Vertex vertex : allVertexes) { if (vertex.checkPosition(x, y)) { selectedVertex = vertex; break; } } for (Station station : allStations) { if (station.checkPosition(x, y)) { selectedStation = station; break; } } if (selectedVertex != null) { this.mapMakerView.getShowDataPanel().getNewPodcarButton().setEnabled(true); } else { this.mapMakerView.getShowDataPanel().getNewPodcarButton().setEnabled(false); } }
void createVertex(int x, int y) { for (Vertex vertex : allVertexes) { if (vertex.checkPosition(x, y)) { return; } } Vertex newVertex = new Vertex("N" + x + "_" + y, x, y); allVertexes.add(newVertex); for (Vertex checkVertex : allVertexes) { int diffX = Math.abs(checkVertex.getxPosition() - newVertex.getxPosition()); int diffY = Math.abs(checkVertex.getyPosition() - newVertex.getyPosition()); if ((diffX == 1) != (diffY == 1)) { if ((diffX == 0) != (diffY == 0)) { checkVertex.addAdjacentVertex(newVertex); } } } }
synchronized void toggleAdjecent(int x, int y) { Vertex tempAdjecentVertex = null; for (Vertex adjecentVertex : selectedVertex.getAdjacencyList()) { if (adjecentVertex.getxPosition() == x && adjecentVertex.getyPosition() == y) { tempAdjecentVertex = adjecentVertex; break; } } if (tempAdjecentVertex != null) { selectedVertex.getAdjacencyList().remove(tempAdjecentVertex); return; } Vertex tempNewAdjecentVertex = null; for (Vertex vertex : allVertexes) { if (vertex.checkPosition(x, y)) { tempNewAdjecentVertex = vertex; } } selectedVertex.getAdjacencyList().add(tempNewAdjecentVertex); }
public void addVertex(Vertex vertex) { graph.addVertex(vertex); vertex.setName(String.valueOf(graph.getVerticesCount())); repaint(); }