graph-displayer.cc
branchgui
changeset 1 c69fedfbb9b3
child 4 e099638ff236
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/graph-displayer.cc	Wed May 11 16:55:18 2005 +0000
     1.3 @@ -0,0 +1,73 @@
     1.4 +#include <all_include.h>
     1.5 +#include <mapstorage.h>
     1.6 +#include <main_win.h>
     1.7 +#include <libgnomecanvasmm.h>
     1.8 +#include <libgnomecanvasmm/polygon.h>
     1.9 +
    1.10 +#define MAIN_PART
    1.11 +
    1.12 +std::string * property_strings;
    1.13 +double * property_defaults;
    1.14 +
    1.15 +
    1.16 +int main(int argc, char *argv[])
    1.17 +{
    1.18 +  property_strings=new std::string[PROPERTY_NUM];
    1.19 +  property_strings[WIDTH]="Width";
    1.20 +  property_strings[COLOR]="Color";
    1.21 +  property_strings[TEXT]="Text";
    1.22 +
    1.23 +  property_defaults=new double[PROPERTY_NUM];
    1.24 +  property_defaults[WIDTH]=10.0;
    1.25 +  property_defaults[COLOR]=100;
    1.26 +  property_defaults[TEXT]=0;
    1.27 +
    1.28 +  if(argc<2)
    1.29 +  {
    1.30 +      std::cerr << "USAGE: gd <input filename.lgf>" << std::endl;
    1.31 +      return 0;
    1.32 +  }
    1.33 +
    1.34 +  Coordinates coosvector;
    1.35 +
    1.36 +  Graph g;
    1.37 +
    1.38 +  CoordinatesMap cm(g);
    1.39 +  Graph::EdgeMap<double> cap(g), map1(g), map2(g), map3(g), map4(g);
    1.40 +
    1.41 +  //we create one object to read x coordinates
    1.42 +  //and one to read y coordinate of nodes and write them to cm NodeMap.
    1.43 +
    1.44 +  XMap <CoordinatesMap> xreader (cm);
    1.45 +  YMap <CoordinatesMap> yreader (cm);
    1.46 +  Graph::NodeMap<double> nodedata (g);
    1.47 +
    1.48 +  std::ifstream is(argv[1]);
    1.49 +
    1.50 +  GraphReader<Graph> reader(is, g);
    1.51 +  reader.readNodeMap("coordinates_x", xreader);
    1.52 +  reader.readNodeMap("coordinates_y", yreader);
    1.53 +  reader.readNodeMap("data", nodedata);
    1.54 +  reader.readEdgeMap("cap", cap);
    1.55 +  reader.readEdgeMap("map1", map1);
    1.56 +  reader.readEdgeMap("map2", map2);
    1.57 +  reader.readEdgeMap("map3", map3);
    1.58 +  reader.readEdgeMap("map4", map4);
    1.59 +  reader.run();
    1.60 +
    1.61 +  MapStorage ms(g);
    1.62 +  ms.addNodeMap("data",&nodedata);
    1.63 +  ms.addEdgeMap("cap",&cap);
    1.64 +  ms.addEdgeMap("map1",&map1);
    1.65 +  ms.addEdgeMap("map2",&map2);
    1.66 +  ms.addEdgeMap("map3",&map3);
    1.67 +  ms.addEdgeMap("map4",&map4);
    1.68 +
    1.69 +  Gnome::Canvas::init();
    1.70 +  Gtk::Main app(argc, argv);
    1.71 +
    1.72 +  MainWin mainwin("Displayed Graph", g, cm, ms);
    1.73 +  app.run(mainwin);
    1.74 +
    1.75 +  return 0;
    1.76 +}