16
typedef struct nodedef {
32
extern void DrawNode();
33
extern void EraseNode();
34
extern void HiliteNode();
35
extern void HiliteNode1();
36
extern node *NodeAlloc();
37
extern void PrintNode();
38
extern void UnhiliteNode();
39
extern void UnhiliteNode1();
41
typedef struct arcdef {
48
double minimum_capacity;
49
double maximum_capacity;
51
double quadratic_weight;
52
double quadratic_origin;
55
int x0, y0, x1, y1, x2, y2, x3, y3, xmax, ymax, xa0, ya0,
65
extern arc *ArcAlloc();
66
extern void DrawArc();
67
extern void EraseArc();
68
extern void HiliteArc();
69
extern void HiliteArc1();
70
extern void PrintArc();
71
extern void SetCoordinatesArc();
72
extern void UnhiliteArc();
73
extern void UnhiliteArc1();
75
typedef struct graphdef {
84
list *arcs; /* in decreasing order of arc numbers */
85
list *nodes; /* in decreasing order of node numbers */
95
extern void DestroyGraph();
96
extern void DrawGraph();
97
extern graph *DuplicateGraph();
98
extern graph *GraphAlloc();
100
extern arc *AddArc();
101
extern node *AddNode();
102
extern arc *GetArc();
103
extern node *GetNode();
105
extern void MakeArraysGraph();
117
extern graph *theGraph;
119
#define NodeDiam(n) ((n->diam) ? (n->diam) : (theGraph->nodeDiam))
120
#define NodeBorder(n) ((n->border) ? (n->border) : (theGraph->nodeBorder))
121
#define NodeFontSize(n) ((n->fontSize) ? (n->fontSize) : (theGraph->fontSize))
123
#define ArcWidth(a) ((a->width) ? (a->width) : (theGraph->arcWidth))
124
#define ArcHiWidth(a) ((a->hiWidth) ? (a->hiWidth) : (theGraph->arcHiWidth))
125
#define ArcFontSize(n) ((a->fontSize) ? (a->fontSize) : (theGraph->fontSize))