Open
Graph Drawing
Framework

 v.2010.10
 

graph_generators.h

Go to the documentation of this file.
00001 /*
00002  * $Revision: 2027 $
00003  * 
00004  * last checkin:
00005  *   $Author: gutwenger $ 
00006  *   $Date: 2010-09-01 11:55:17 +0200 (Wed, 01 Sep 2010) $ 
00007  ***************************************************************/
00008  
00053 #ifdef _MSC_VER
00054 #pragma once
00055 #endif
00056 
00057 #ifndef OGDF_GRAPH_GENERATORS_H
00058 #define OGDF_GRAPH_GENERATORS_H
00059 
00060 
00061 #include <ogdf/basic/Graph.h>
00062 #include <ogdf/cluster/ClusterGraph.h>
00063 
00064 namespace ogdf {
00065 
00067 
00072 OGDF_EXPORT void randomGraph(Graph &G, int n, int m);
00073 
00075 
00080 OGDF_EXPORT bool randomSimpleGraph(Graph &G, int n, int m);
00081 
00083 
00088 OGDF_EXPORT void randomBiconnectedGraph(Graph &G, int n, int m);
00089 
00091 
00098 OGDF_EXPORT void planarBiconnectedGraph(Graph &G, int n, int m, bool multiEdges = false);
00099 
00101 /*   @param n is the max. number of nodes in each biconencted component
00102  *   @param m is the max. number of edges in each biconnected component
00103  *   @param b is the number of biconnected components
00104  * 
00105  */
00106 OGDF_EXPORT void planarCNBGraph(Graph &G, int n, int m, int b);
00107 
00109 
00135 OGDF_EXPORT void randomTriconnectedGraph(Graph &G, int n, double p1, double p2);
00136 
00138 
00157 OGDF_EXPORT void planarTriconnectedGraph(Graph &G, int n, int m);
00158 
00160 
00176 OGDF_EXPORT void planarTriconnectedGraph(Graph &G, int n, double p1, double p2);
00177 
00179 
00185 OGDF_EXPORT void randomTree(Graph &G, int n, int maxDeg, int maxWidth);
00186 
00188 
00197 OGDF_EXPORT void randomHierarchy(
00198     Graph &G,
00199     int n,
00200     int m,
00201     bool planar,
00202     bool singleSource,
00203     bool longEdges);
00204 
00206 
00215 OGDF_EXPORT void randomClusterPlanarGraph(ClusterGraph &C,Graph &G,int cNum);
00216 
00218 
00225 OGDF_EXPORT void randomClusterGraph(ClusterGraph &C,Graph &G,int cNum);
00226 
00228 
00232 OGDF_EXPORT void completeGraph(Graph &G, int n);
00233 
00235 
00240 OGDF_EXPORT void completeBipartiteGraph(Graph &G, int n, int m);
00241 
00243 
00247 OGDF_EXPORT void wheelGraph(Graph &G, int n);
00248 
00250 
00254 OGDF_EXPORT void cubeGraph(Graph &G, int n);
00255 
00257 
00261 OGDF_EXPORT void suspension(Graph &G, int s);
00262 
00263 
00265 
00270 OGDF_EXPORT void randomDiGraph(Graph &G, int n, double p);
00271 
00272 
00273 
00274 }
00275 
00276 
00277 #endif