# HG changeset patch # User Alpar Juttner # Date 1208071243 -3600 # Node ID d76e2ff9c70d06f1abc88bc8f3c5ff09681b5c48 # Parent 50ff949140fa2bb9eb3dda3593ac81fcfeda90be Several doc improvements + new default parameter values * * * Several minor improvements in graph_to_eps.h * * * Several minor improvements in graph_to_eps.h diff -r 50ff949140fa -r d76e2ff9c70d lemon/color.h --- a/lemon/color.h Mon Apr 14 11:23:56 2008 +0100 +++ b/lemon/color.h Sun Apr 13 08:20:43 2008 +0100 @@ -111,14 +111,14 @@ ///Constructor ///Constructor + ///\param have_white indicates whether white is amongst the + ///provided initial colors (\c true) or not (\c false). If it is true, + ///white will be assigned to \c 0. ///\param num the number of the allocated colors. If it is \c -1, - ///the default color configuration is set up (26 color plus the + ///the default color configuration is set up (26 color plus optionaly the ///white). If \c num is less then 26/27 then the default color ///list is cut. Otherwise the color list is filled repeatedly with ///the default color list. (The colors can be changed later on.) - ///\param have_white indicates whether white is amongst the - ///provided color (\c true) or not (\c false). If it is true, - ///white will be assigned to \c 0. Palette(bool have_white=false,int num=-1) { if (num==0) return; @@ -173,7 +173,7 @@ { colors[i%colors.size()]=c; } - ///\e + ///Add a new color to the end of the color list. void add(const Color &c) { colors.push_back(c); @@ -185,7 +185,7 @@ int size() const { return int(colors.size());} }; - ///Returns a visible distinct \ref Color + ///Returns a visibly distinct \ref Color ///Returns a \ref Color which is as different from the given parameter ///as it is possible. diff -r 50ff949140fa -r d76e2ff9c70d lemon/graph_to_eps.h --- a/lemon/graph_to_eps.h Mon Apr 14 11:23:56 2008 +0100 +++ b/lemon/graph_to_eps.h Sun Apr 13 08:20:43 2008 +0100 @@ -43,9 +43,7 @@ ///\ingroup eps_io ///\file -///\brief Simple graph drawer -/// -///\author Alpar Juttner +///\brief A well configurable tool for visualizing graphs namespace lemon { @@ -172,16 +170,9 @@ {} }; -///Helper class to implement the named parameters of \ref graphToEps() +///Auxiliary class to implement the named parameters of \ref graphToEps() -///Helper class to implement the named parameters of \ref graphToEps() -///\todo Is 'helper class' a good name for this? -/// -///\todo Follow PostScript's DSC. -/// Use own dictionary. -///\todo Useful new features. -/// - Linestyles: dotted, dashed etc. -/// - A second color and percent value for the lines. +///Auxiliary class to implement the named parameters of \ref graphToEps() template class GraphToEps : public T { // Can't believe it is required by the C++ standard @@ -369,7 +360,7 @@ ///Sets the map of the node shapes ///Sets the map of the node shapes. - ///The availabe shape values + ///The available shape values ///can be found in \ref NodeShapes "enum NodeShapes". ///\param x must be a node map with \c int (or convertible) values. ///\sa NodeShapes @@ -411,8 +402,6 @@ ///ostream. /// ///\sa nodePsTextsPreamble() - ///\todo Offer the choise not to move to the centre but pass the coordinates - ///to the Postscript block inserted. template GraphToEps > nodePsTexts(const X &x) { dontPrint=true; @@ -521,13 +510,11 @@ ///Negates the Y coordinates. /// - ///\todo More docs. - /// GraphToEps &negateY(bool b=true) { _negY=b;return *this; } - ///Turn on/off prescaling + ///Turn on/off pre-scaling ///By default graphToEps() rescales the whole image in order to avoid ///very big or very small bounding boxes. @@ -578,7 +565,7 @@ ///Sets the width of the border around the picture /// - GraphToEps &border(double b) {_xBorder=_yBorder=b;return *this;} + GraphToEps &border(double b=10) {_xBorder=_yBorder=b;return *this;} ///Sets the width of the border around the picture ///Sets the width of the border around the picture @@ -595,12 +582,12 @@ ///Sets the length of the arrowheads /// - GraphToEps &arrowLength(double d) {_arrowLength*=d;return *this;} + GraphToEps &arrowLength(double d=1.0) {_arrowLength*=d;return *this;} ///Sets the width of the arrowheads ///Sets the width of the arrowheads /// - GraphToEps &arrowWidth(double d) {_arrowWidth*=d;return *this;} + GraphToEps &arrowWidth(double d=.3) {_arrowWidth*=d;return *this;} ///Scales the drawing to fit to A4 page @@ -662,16 +649,23 @@ } ///Sets whether the the graph is undirected - ///Sets whether the the graph is undirected + ///Sets whether the the graph is undirected. /// - GraphToEps &undirected(bool b=true) {_undirected=b;return *this;} + ///This setting is the default for undirected graphs. + /// + ///\sa directed() + GraphToEps &undirected(bool b=true) {_undirected=b;return *this;} ///Sets whether the the graph is directed ///Sets whether the the graph is directed. ///Use it to show the edges as a pair of directed ones. + /// + ///This setting is the default for digraphs. + /// + ///\sa undirected() GraphToEps &directed(bool b=true) {_undirected=!b;return *this;} - + ///Sets the title. ///Sets the title of the generated image, @@ -683,7 +677,6 @@ ///Sets the copyright statement of the generated image, ///namely it inserts a %%Copyright: DSC field to the header of ///the EPS file. - ///\todo Multiline copyright notice could be supported. GraphToEps ©right(const std::string &t) {_copyright=t;return *this;} protected: @@ -709,10 +702,10 @@ ///Like other functions using ///\ref named-templ-func-param "named template parameters", - ///this function calles the algorithm itself, i.e. in this case + ///this function calls the algorithm itself, i.e. in this case ///it draws the graph. void run() { - ///\todo better 'epsilon' would be nice here. + //\todo better 'epsilon' would be nice here. const double EPSILON=1e-9; if(dontPrint) return; @@ -930,7 +923,7 @@ dim2::Point dvec(mycoords[g.target(*i)]-mycoords[g.source(*i)]); double l=std::sqrt(dvec.normSquare()); - ///\todo better 'epsilon' would be nice here. + //\todo better 'epsilon' would be nice here. dim2::Point d(dvec/std::max(l,EPSILON)); dim2::Point m; // m=dim2::Point(mycoords[g.target(*i)]+mycoords[g.source(*i)])/2.0;