# Make arrows larger in Tikz-UML

I'm using Tikz-UML package to make some class diagram but arrows (association, inheritance...) are so tiny it looks ugly. Any way to make them larger? Example:

\documentclass{article}
\usepackage{booktabs}
\usepackage[table,xcdraw]{xcolor}
\usepackage{tikz}
\usepackage{hyperref}
\usepackage{listings}
\usepackage{cmap}
\usepackage{minted}
\usepackage{import}
\usepackage{graphicx}

\usepackage{gensymb}
\usepackage{tikz-uml}

\begin{document}
\begin{figure}[H]
\centering
%\resizebox{\textwidth}{!}{
\begin{tikzpicture}

\umlclass[x=0, y=0]{AlarmHandler}
{-alarmName }
{+initAlarm()}

\umlclass[x=0, y=-3]{AlarmHandler1}
{}
{}
\umlclass[x=0, y=-6]{AlarmHandler2}
{}
{}

\umlinherit[]{AlarmHandler2}{AlarmHandler1}
\umlinherit[]{AlarmHandler1}{AlarmHandler}

\end{tikzpicture}
%}
\caption{alarms\label{fig:alarm}}
\end{figure}
\end{document}


This is just basic example, problem is when I create more complex diagram and scale it to fit page width. Arrows are hard to see then. I included in example all libs that I'm using.

• Welcome to TeX.SE! Please, can you provide an example of your diagrams in small, complete document, which can be compiled? – Zarko Jun 29 '16 at 4:03
• Hello, I provided code example and picture. – Jablan Jun 29 '16 at 10:16
• Any ideas before I move to another UML package? – Jablan Jun 29 '16 at 21:13
• I'm sorry, but I'm not able to install UML package "on-the-fly", for manual instalation I haven't enough time, so I can not test my ideas to use TikZ syntax in tikz-UML. However, I can provide relatively easy a pure TikZ solution (for shoved picture), if you like to see this alternative. – Zarko Jun 29 '16 at 21:24
• Yes, any idea is welcome. Btw, I use online latex editor ShareLatex, there is easy to include or install packages. And then there is Overleaf, you can try edit here overleaf.com/5591546jmdjhm. Thanks – Jablan Jun 29 '16 at 21:58

Well, I discovered you could double the arrow with

\tikzstyle{tikzuml inherit style}=[color=\tikzumlDefaultDrawColor, -open triangle 45, double]


but its not enough for me. Later, I found out better control of scaling if I use arrows.meta package and define style as

\tikzstyle{tikzuml inherit style}=[color=\tikzumlDefaultDrawColor, {-{Stealth[inset=0pt,scale=3,fill=white,angle'=45]}}]


Source

• (+1) for searching for solution! – Zarko Jun 30 '16 at 6:07

As I mentioned in my comment, temporary I can't help you at tikz-UML solution, so see, if meanwhile before someone help you with this package, see, if the pure TikZ solution is acceptable to you:

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{arrows.meta, chains, shapes.multipart}

\begin{document}
\begin{tikzpicture}[
node distance = 12mm and 0mm,
start chain = going below,
VMPN/.style = {rectangle split, rectangle split parts=3,
%rectangle split empty part height=1.5ex,% default is 1ex
draw, thick, % here is control for shape line thickness
minimum width=32mm, inner xsep=3mm, inner ysep=1mm,
on chain,
join = by arrow},
arrow/.style = {very thick,% <-- here is control for arrow's thickness
{Triangle[open]}-}
]
\node[VMPN] {\nodepart{one}     \textbf{AlarmHandler}
\nodepart{two}     $-$alarmName
\nodepart{three}   $+$initAlarm()
};
\node[VMPN] {\nodepart{one}     \textbf{AlarmHandler1}
\nodepart{two}
\nodepart{three}
};
\node[VMPN] {\nodepart{one}     \textbf{AlarmHandler2}
\nodepart{two}
\nodepart{three}
};
\end{tikzpicture}
\end{document}


In code I indicate where you can change thickness of lines. Wit selected the resulting image is:

Addendum: The size of arrows from arrows.meta library can be determined independently of line thickens. So, if you like to have bigger trinagle, you can define arrows style as:

arrow/.style = {very thick,% <-- here is control for arrow's thickness
{Triangle[width=2ex,length=2ex,% <-- here is control of triangle size
open]}-}


and obtain

• Thank you for answering but that is just minor improvement. If arrow is little bit scaled up that would be better. – Jablan Jun 29 '16 at 22:03
• what you mean with scaled up? to be triangle on the end of line bigger? Its size you can control with option of Triangle[width=..., length=..., open]. I will add an example. – Zarko Jun 29 '16 at 22:09
• Yes I just want triangle to be bigger. – Jablan Jun 29 '16 at 22:14
• This is better, I will wait if someone knows how to do that in tikz-uml. Thanks – Jablan Jun 29 '16 at 22:31
• Mean time try to read tikz-UML documentation ... :-) – Zarko Jun 29 '16 at 22:37