gui/graph-displayer.cc
changeset 1612 64f983f5a7d5
parent 1512 e54392395480
child 1616 78704393218d
equal deleted inserted replaced
4:613a5a47dd0a 5:31e14dd4a7ea
     1 #include <all_include.h>
     1 #include "all_include.h"
     2 #include <mapstorage.h>
     2 #include "mapstorage.h"
     3 #include <main_win.h>
     3 #include "main_win.h"
     4 #include <libgnomecanvasmm.h>
     4 #include <libgnomecanvasmm.h>
     5 #include <libgnomecanvasmm/polygon.h>
     5 #include <libgnomecanvasmm/polygon.h>
     6 
     6 
     7 #define MAIN_PART
     7 #define MAIN_PART
     8 
     8 
    35   node_property_defaults.resize(NODE_PROPERTY_NUM);
    35   node_property_defaults.resize(NODE_PROPERTY_NUM);
    36   node_property_defaults[N_RADIUS]=20.0;
    36   node_property_defaults[N_RADIUS]=20.0;
    37   node_property_defaults[N_COLOR]=100;
    37   node_property_defaults[N_COLOR]=100;
    38   node_property_defaults[N_TEXT]=0;
    38   node_property_defaults[N_TEXT]=0;
    39 
    39 
    40   if(argc<2)
       
    41   {
       
    42       std::cerr << "USAGE: gd <input filename.lgf>" << std::endl;
       
    43       return 0;
       
    44   }
       
    45 
       
    46   Coordinates coosvector;
       
    47 
       
    48   Graph g;
       
    49 
       
    50   CoordinatesMap cm(g);
       
    51   Graph::EdgeMap<double> cap(g), map1(g), map2(g), map3(g), map4(g);
       
    52   Graph::NodeMap<double> nodedata (g);
       
    53 
       
    54   //we create one object to read x coordinates
       
    55   //and one to read y coordinate of nodes and write them to cm NodeMap.
       
    56   XMap <CoordinatesMap> xreader (cm);
       
    57   YMap <CoordinatesMap> yreader (cm);
       
    58 
       
    59   //reading in graph and its maps
       
    60 
       
    61   std::ifstream is(argv[1]);
       
    62 
       
    63   GraphReader<Graph> reader(is, g);
       
    64   reader.readNodeMap("coordinates_x", xreader);
       
    65   reader.readNodeMap("coordinates_y", yreader);
       
    66   reader.readNodeMap("data", nodedata);
       
    67   reader.readEdgeMap("cap", cap);
       
    68   reader.readEdgeMap("map1", map1);
       
    69   reader.readEdgeMap("map2", map2);
       
    70   reader.readEdgeMap("map3", map3);
       
    71   reader.readEdgeMap("map4", map4);
       
    72   reader.run();
       
    73 
       
    74   //initializing MapStorage with the read data
       
    75 
       
    76   MapStorage ms(g);
       
    77   ms.addNodeMap("data",&nodedata);
       
    78   ms.addEdgeMap("cap",&cap);
       
    79   ms.addEdgeMap("map1",&map1);
       
    80   ms.addEdgeMap("map2",&map2);
       
    81   ms.addEdgeMap("map3",&map3);
       
    82   ms.addEdgeMap("map4",&map4);
       
    83 
       
    84   //initializing GUI
    40   //initializing GUI
    85 
    41 
    86   Gnome::Canvas::init();
    42   Gnome::Canvas::init();
    87   Gtk::Main app(argc, argv);
    43   Gtk::Main app(argc, argv);
    88 
    44 
    89   MainWin mainwin("Displayed Graph", g, cm, ms);
    45   MainWin mainwin("Displayed Graph");
    90   app.run(mainwin);
    46   app.run(mainwin);
    91 
    47 
    92   return 0;
    48   return 0;
    93 }
    49 }