1.1 --- a/graph_displayer_canvas-edge.cc Thu Sep 28 14:32:40 2006 +0000
1.2 +++ b/graph_displayer_canvas-edge.cc Mon Oct 02 18:52:00 2006 +0000
1.3 @@ -1,6 +1,7 @@
1.4 #include "graph_displayer_canvas.h"
1.5 #include <cmath>
1.6
1.7 +const int minimum_edge_width=2;
1.8
1.9 int GraphDisplayerCanvas::resetEdgeWidth (Edge edge)
1.10 {
1.11 @@ -24,6 +25,11 @@
1.12 {
1.13 w=(int)(MIN_EDGE_WIDTH+(v-min)/(max-min)*(MAX_EDGE_WIDTH-MIN_EDGE_WIDTH));
1.14 }
1.15 + if(zoomtrack)
1.16 + {
1.17 + double actual_ppu=get_pixels_per_unit();
1.18 + w=(int)(w/actual_ppu*fixed_zoom_factor);
1.19 + }
1.20 edgesmap[i]->setLineWidth(w);
1.21 }
1.22 }
1.23 @@ -54,13 +60,29 @@
1.24 {
1.25 double v=fabs((*actual_map)[i]);
1.26 int w;
1.27 - if(min==max)
1.28 + if(autoscale)
1.29 {
1.30 - w=(int)(edge_property_defaults[E_WIDTH]);
1.31 + if(min==max)
1.32 + {
1.33 + w=(int)(edge_property_defaults[E_WIDTH]);
1.34 + }
1.35 + else
1.36 + {
1.37 + w=(int)(minimum_edge_width+(v-min)/(max-min)*(edge_width-minimum_edge_width));
1.38 + }
1.39 }
1.40 else
1.41 {
1.42 - w=(int)(MIN_EDGE_WIDTH+(v-min)/(max-min)*(MAX_EDGE_WIDTH-MIN_EDGE_WIDTH));
1.43 + w=(int)(v*edge_width);
1.44 + }
1.45 + if(w<minimum_edge_width)
1.46 + {
1.47 + w=minimum_edge_width;
1.48 + }
1.49 + if(zoomtrack)
1.50 + {
1.51 + double actual_ppu=get_pixels_per_unit();
1.52 + w=(int)(w/actual_ppu*fixed_zoom_factor);
1.53 }
1.54 edgesmap[i]->setLineWidth(w);
1.55 }