Skip to content

Instantly share code, notes, and snippets.

@zorgick
Created July 21, 2020 09:07
Show Gist options
  • Save zorgick/615f77d8b84641d26c5178b78c0172e6 to your computer and use it in GitHub Desktop.
Save zorgick/615f77d8b84641d26c5178b78c0172e6 to your computer and use it in GitHub Desktop.
% Preamble
\usepackage{tikz-uml}
\usetikzlibrary{positioning}
% Preamble end
...
\begin{tikzpicture}[shorten >=1pt,node distance=3cm,auto]%,on grid
\tikzstyle{state}=[shape=circle,thick,draw,minimum size=1.5cm]
\node[state] (A1) {$A_1$};
\node[state,above of=A1] (B1) {$B_1$};
\node[state,above of=B1] (C1) {$C_1$};
\node[state,right of=A1] (A2) {$A_2$};
\node[state,above of=A2] (B2) {$B_2$};
\node[state,above of=B2] (C2) {$C_2$};
% Add Aux points
\coordinate[yshift=0.6cm, right=1cm of B1.east] (aux1);
\coordinate[yshift=1.6cm, right=0.1cm of A1.east] (aux2);
% Your desired arrows
\draw [arrow] (C1.east) to (aux1); % or (C1.east) -- (aux1) if you need multiple operations further
% Below are three examples of a relatively same result
\draw [arrow] (C1.south east) .. controls (1.4,3.5) .. (aux2);
% \draw [arrow] (C1.south east) to [bend left=24] (aux2);
% \draw [arrow] (C1.south east) -| ([shift={(0.5cm,0cm)}]C1.south east) -- (aux2); % pointy arrow
\path[->,draw,thick]
(A1) edge node[near start] {$l_A$} (B2)
(B1) edge node[near end] {$l_B$} (B2);
\end{tikzpicture}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment