Following the answer to this question, I'm now at a point where I have very unsatisfying looking arrows.
If I use the double
option in the \draw
command the spacing is too small, and when I increase it, the arrow heads look awful. As it stands, the arrows look weeny and out of place; I'd like wide arrows (double) with thin arrow heads.
How can I modify the arrows - preferably in global manner - so that they are in keeping with the drawing?
And, How can modify the arrows so that they are perpendicular to the surfaces they point to?
\documentclass{book}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,positioning,fit}
\pgfdeclarelayer{container}
\pgfsetlayers{container,main}
\tikzset{>=stealth}
\tikzset{
narrow/.style={draw, fill=blue!20, text width=2cm, text centered, minimum height=1cm},
small/.style={draw, fill=blue!10, text width=1.2cm, text centered, minimum height=0.625cm, draw=black!60, font=\scriptsize},
wide/.style={draw, fill=orange!20, text width=8.5cm, text centered, minimum height=1.75cm, rounded corners},
tall/.style={draw, fill=green!20, text width=1.75cm, text centered, minimum height=8cm, rounded corners},
squar/.style={draw, fill=yellow!10, text width=5.25cm, text centered, minimum height=3.5cm, rounded corners, draw=black!60, dashed}
}
\def\blockdist{5}
\def\edgedist{5}
\begin{document}
\begin{tikzpicture}
\node (lib) [tall] {Library};
\node at (3,-1) (tman) [narrow] {tmon};
\node (ksman) [narrow] [right=.75cm of tman] {ksmon};
\node (stsp) [narrow] [right=.75cm of ksman] {stosp};
\node (daemon) [wide] [below=.75cm of ksman] {Daemon};
\node (imgan) [narrow] [above=1.375cm of tman] {img-analysis};
\node (thrman) [narrow] [above=.75cm of imgan] {thermal-analysis};
\begin{pgfonlayer}{container}
\node (dio) [fill=red!10, inner sep=.35cm, fit=(tman)(stsp), rounded corners, draw=black!60, dashed] {};
\node (manufac) [fill=red!25, inner sep=.1cm, fit=(ksman)(stsp), rounded corners, draw=black!60, dashed] {};
\end{pgfonlayer}
\node (scrpts) [squar] [above=1.5cm of manufac.center] {};
\node (scrr2c2) [small] [above=0.1cm of scrpts.center] {shell};
\node (scrr1c2) [small] [above=0.2cm of scrr2c2] {shell};
\node (scrr3c2) [small] [below=0.1cm of scrpts.center] {shell};
\node (scrr4c2) [small] [below=0.2cm of scrr3c2] {shell};
\node (scrr1c1) [small] [left=0.2cm of scrr1c2] {shell};
\node (scrr2c1) [small] [left=0.2cm of scrr2c2] {shell};
\node (scrr3c1) [small] [left=0.2cm of scrr3c2] {shell};
\node (scrr4c1) [small] [left=0.2cm of scrr4c2] {shell};
\node (scrr1c3) [small] [right=0.2cm of scrr1c2] {shell};
\node (scrr2c3) [small] [right=0.2cm of scrr2c2] {shell};
\node (scrr3c3) [small] [right=0.2cm of scrr3c2] {shell};
\node (scrr4c3) [small] [right=0.2cm of scrr4c2] {shell};
\draw[<->] (manufac.north) -- (scrpts.south);
\draw[<->] (imgan.east) -- (scrpts);
\draw[<->] (thrman.east) -- (scrpts);
\draw[<->] (thrman.west) -- (lib);
\draw[<->] (imgan.west) -- (lib);
\draw[<->] (dio.west) -- (lib);
\draw[<->] (daemon.west) -- (lib);
\draw[<->] (daemon.north) -- (dio.south);
\end{tikzpicture}
\end{document}