demo/disjoint_paths_demo.cc
changeset 2391 14a343be7a5a
parent 2207 75a29ac69c19
child 2392 4bbeaf115cdb
equal deleted inserted replaced
2:c44bc44e9d8c 3:80f1fa4dd2a6
     1 /* -*- C++ -*-
     1 /* -*- C++ -*-
     2  *
     2  *
     3  * This file is a part of LEMON, a generic C++ optimization library
     3  * This file is a part of LEMON, a generic C++ optimization library
     4  *
     4  *
     5  * Copyright (C) 2003-2006
     5  * Copyright (C) 2003-2007
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     8  *
     8  *
     9  * Permission to use, modify and distribute this software is granted
     9  * Permission to use, modify and distribute this software is granted
    10  * provided that this copyright notice appears in all copies. For
    10  * provided that this copyright notice appears in all copies. For
    68   preflow.run();
    68   preflow.run();
    69 
    69 
    70   cout << "Number of edge disjoint paths: " << preflow.flowValue() << endl;
    70   cout << "Number of edge disjoint paths: " << preflow.flowValue() << endl;
    71 
    71 
    72   graphToEps(graph, "edge_disjoint_paths.eps").
    72   graphToEps(graph, "edge_disjoint_paths.eps").
    73     title("edge disjoint path").copyright("(C) 2006 LEMON Project").drawArrows().
    73     title("edge disjoint path").copyright("(C) 2003-2007 LEMON Project").drawArrows().
    74     edgeColors(composeMap(functorMap(color), flow)).
    74     edgeColors(composeMap(functorMap(color), flow)).
    75     coords(coords).autoNodeScale().run();
    75     coords(coords).autoNodeScale().run();
    76 
    76 
    77 
    77 
    78   cout << "The paths are written into edge_disjoint_paths.eps" << endl;
    78   cout << "The paths are written into edge_disjoint_paths.eps" << endl;
    94 
    94 
    95   cout << "Number of node disjoint paths: " << spreflow.flowValue() << endl;
    95   cout << "Number of node disjoint paths: " << spreflow.flowValue() << endl;
    96 
    96 
    97 
    97 
    98   graphToEps(sgraph, "node_disjoint_paths.eps").
    98   graphToEps(sgraph, "node_disjoint_paths.eps").
    99     title("node disjoint path").copyright("(C) 2006 LEMON Project").drawArrows().
    99     title("node disjoint path").copyright("(C) 2003-2007 LEMON Project").drawArrows().
   100     edgeColors(composeMap(functorMap(color), sflow)).
   100     edgeColors(composeMap(functorMap(color), sflow)).
   101     coords(SGraph::combinedNodeMap(coords,
   101     coords(SGraph::combinedNodeMap(coords,
   102 				   shiftMap(coords,
   102 				   shiftMap(coords,
   103 					    dim2::Point<double>(5, 0)))).
   103 					    dim2::Point<double>(5, 0)))).
   104     autoNodeScale().run();
   104     autoNodeScale().run();