private void loadScenario(Scenario scRsp) { Map<String, Node> nodes = new HashMap<>(); for (Node n : scRsp.getNet().getNodesList()) { nodes.put(n.getId(), n); } Set<String> handled = new HashSet<>(); for (Link l : scRsp.getNet().getLinksList()) { Node from = nodes.get(l.getFromNodeId()); Node to = nodes.get(l.getToNodeId()); StringBuffer b1 = new StringBuffer(); StringBuffer b2 = new StringBuffer(); b1.append(from.getId()); b1.append('_'); b1.append(to.getId()); String id = b1.toString(); b2.append(to.getId()); b2.append('_'); b2.append(from.getId()); String refId = b2.toString(); LinkInfo i = new LinkInfo(); i.x0 = from.getX(); i.y0 = from.getY(); i.x1 = to.getX(); i.y1 = to.getY(); i.width = l.getCapacity() * 3; // LinkInfoPoly p = new LinkInfoPoly(); // double dx = (to.getX() - from.getX()); // double dy = (to.getY() - from.getY()); // double length = Math.sqrt(dx * dx + dy * dy); // dx /= length; // dy /= length; // double x0 = from.getX() - dy * l.getCapacity() / 2; // double y0 = from.getY() + dx * l.getCapacity() / 2; // double x1 = from.getX() + dy * l.getCapacity() / 2; // double y1 = from.getY() - dx * l.getCapacity() / 2; // double x2 = to.getX() + dy * l.getCapacity() / 2; // double y2 = to.getY() - dx * l.getCapacity() / 2; // double x3 = to.getX() - dy * l.getCapacity() / 2; // double y3 = to.getY() + dx * l.getCapacity() / 2; // p.x = new double[] { x0, x1, x2, x3, x0 }; // p.y = new double[] { y0, y1, y2, y3, y0 }; // double area = l.getLength() * l.getCapacity(); i.area = area; // // this.linkPolys.put(l.getId(), p); this.linkInfos.put(l.getId(), i); if (handled.contains(refId)) { continue; } handled.add(id); this.drawer.addLineStatic( from.getX(), from.getY(), to.getX(), to.getY(), 192, 192, 192, 255, 0, 3 * l.getCapacity()); } }