public static void postProcess(ProcessLayouter layouter, ProcessModel model) { // special handling for certain model types if (layouter instanceof SugiyamaLayoutAlgorithm && model instanceof ClassModel) { SugiyamaLayoutAlgorithm _layouter = (SugiyamaLayoutAlgorithm) layouter; setDockingPoints(model, _layouter); } List<EdgeInterface> _edgesToRoute = layouter.getUnroutedEdges(); if (_edgesToRoute != null) { for (EdgeInterface edge : _edgesToRoute) { if (edge instanceof ProcessEdgeAdapter) { ProcessEdge _e = ((ProcessEdgeAdapter) edge).getEdge(); model.getUtils().getRoutingPointLayouter().optimizeRoutingPoints(_e, _e.getSource()); } } } }