annotate minimum_bisection/paper/tikzpictures.tex @ 168:cc6bb3ca79fb default tip

6/4 is not 2
author Markus Kaiser <markus.kaiser@in.tum.de>
date Fri, 28 Nov 2014 01:41:50 +0100
parents 948ce3f9c3ad
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
147
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
1 \pgfdeclarelayer{background}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
2 \pgfdeclarelayer{demand}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
3 \pgfdeclarelayer{marked}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
4 \pgfdeclarelayer{foreground}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
5 \pgfsetlayers{background,demand,marked,main,foreground}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
6
148
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
7 \tikzstyle{every node} = [font=\normalsize]
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
8
147
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
9 \tikzstyle{edge} = [thick]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
10 \tikzstyle{marked edge} = [edge, line width=3pt, tumorange]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
11 \tikzstyle{directed} = [arrows={-latex}, shorten >=1pt]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
12 \tikzstyle{node on edge} = [fill=white, circle, inner sep=1pt, font=\footnotesize]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
13
148
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
14 \tikzstyle{flow graph} = [x=4.5em, y=4em]
147
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
15 \tikzstyle{flow node} = [circle, draw, thick, fill=tumblue!20, minimum size=6pt, inner sep=0pt]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
16 \tikzstyle{flow edge} = [edge]
148
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
17 \tikzstyle{demand edge} = [edge, line width=4pt, arrows={-latex}, dash pattern= on 5pt off 3pt, tumred!50]
147
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
18 \tikzstyle{tree edge} = [marked edge, tumgreen]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
19 \tikzstyle{flow capacity} = [node on edge]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
20 \tikzstyle{flow demand} = [node on edge, text=tumred]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
21
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
22 \tikzstyle{highlight} = [draw=tumorange, very thick, rounded corners]
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
23
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
24 \newcommand{\tikzmark}[1]{\tikz[overlay,remember picture,baseline] \node [anchor=base] (#1) {};}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
25
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
26 \newcommand{\flownodes}{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
27 \pgfmathsetseed{42}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
28 \def\jiggliness{0.2}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
29 \def\jiggle{++ (rand * \jiggliness, rand * \jiggliness)}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
30
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
31 \path[use as bounding box] (-4, 2.7) rectangle (3.5,6.15);
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
32
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
33 \foreach \pos/\name in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
34 % {(0,1)/a},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
35 {(-0.5,2.75)/b},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
36 {(0.5,3.25)/c},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
37 {(0.75,4)/d},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
38 {(-0.5,4.5)/e},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
39 {(-1.25,3.75)/f},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
40 {(1.5,4.75)/g},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
41 {(0,5.5)/h},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
42 {(2.5,5.5)/i},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
43 {(3.5,3.5)/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
44 {(2.25,4)/k},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
45 {(-2,6)/l},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
46 {(-2.5,5)/m},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
47 {(-4,5)/n}}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
48 \draw \pos\jiggle node[flow node] (\name) {};
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
49 % \draw \pos\jiggle node[flow node, label={\name}, font=\footnotesize] (\name) {};
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
50 }
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
51 \newcommand{\flowedges}[1][]{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
52 \foreach \source/\dest in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
53 % {a/b}, {a/n}, {a/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
54 {n/b}, {b/j}, {f/b}, {c/b},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
55 {c/d}, {e/d}, {e/f}, {g/i},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
56 {h/e}, {h/i}, {i/j}, {k/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
57 {l/h}, {l/m}, {n/m},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
58 {c/k}, {k/i}, {g/d}, {m/e}, {n/l},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
59 {m/f}, {f/c}, {d/k}, {e/g}, {c/e}}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
60 \draw[flow edge, #1] (\source) -- (\dest);
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
61 }
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
62 \newcommand{\flowcapacities}[1][]{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
63 \foreach \source/\dest/\capacity in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
64 % {a/b}, {a/n}, {a/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
65 {n/b/2}, {b/j/10}, {c/b/3}, {f/b/4},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
66 {c/d/4}, {e/d/2}, {e/f/4}, {g/i/2},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
67 {h/e/1}, {h/i/2}, {i/j/6}, {k/j/4},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
68 {l/h/3}, {l/m/4}, {n/m/5},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
69 {c/k/4}, {k/i/3}, {g/d/1}, {m/e/4}, {n/l/6},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
70 {m/f/1}, {f/c/2}, {d/k/4}, {e/g/1}, {c/e/5}}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
71 \path (\source) -- node[flow capacity, #1]{\capacity} (\dest);
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
72 }
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
73 \newcommand{\flowdemands}{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
74 \begin{pgfonlayer}{demand}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
75 \foreach \source/\dest/\demand/\pos/\bendage in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
76 {n/j/10/0.2/right},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
77 {h/j/8/0.2/left},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
78 {e/g/1/0.7/left},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
79 {n/h/12/0.7/left},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
80 {k/m/5/0.8/right}}
148
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
81 % \draw[demand edge, bend \bendage=15] (\source) edge node[flow demand, pos=\pos]{\demand} (\dest);
948ce3f9c3ad add figures
Markus Kaiser <markus.kaiser@in.tum.de>
parents: 147
diff changeset
82 \draw[demand edge, bend \bendage=15] (\source) edge (\dest);
147
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
83 \end{pgfonlayer}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
84 }
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
85 \newcommand{\flowtreeedges}[1][]{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
86 \begin{pgfonlayer}{marked}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
87 \foreach \source/ \dest in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
88 % {a/b},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
89 {c/b},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
90 {c/d}, {e/d}, {e/f}, {g/i},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
91 {m/e}, {d/k}, {i/j}, {k/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
92 {h/i}, {l/m}, {n/m}}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
93 \draw [tree edge, #1] (\source.center) -- (\dest.center);
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
94 \end{pgfonlayer}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
95 }
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
96 \newcommand{\flowtreeedgestwo}[1][]{%
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
97 \begin{pgfonlayer}{marked}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
98 \foreach \source/ \dest in {
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
99 {n/l}, {l/h}, {h/i}, {i/g}, {i/j},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
100 {j/k}, {g/d}, {d/c}, {g/e}, {c/f},
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
101 {f/m}, {f/b}}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
102 \draw[tree edge, #1] (\source.center) -- (\dest.center);
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
103 \end{pgfonlayer}
faff67582175 add bibliography; append preamble
Markus Kaiser <markus.kaiser@in.tum.de>
parents:
diff changeset
104 }