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 +}