\usepackage{tikz} \usetikzlibrary{backgrounds} \usetikzlibrary{arrows} \usetikzlibrary{shapes,shapes.geometric,shapes.misc} % this style is applied by default to any tikzpicture included via \tikzfig \tikzstyle{tikzfig}=[baseline=-0.25em,scale=0.5] % these are dummy properties used by TikZiT, but ignored by LaTex \pgfkeys{/tikz/tikzit fill/.initial=0} \pgfkeys{/tikz/tikzit draw/.initial=0} \pgfkeys{/tikz/tikzit shape/.initial=0} \pgfkeys{/tikz/tikzit category/.initial=0} % standard layers used in .tikz files \pgfdeclarelayer{edgelayer} \pgfdeclarelayer{nodelayer} \pgfsetlayers{Dynkin behind,background,edgelayer,nodelayer,main} % style for blank nodes \tikzstyle{none}=[inner sep=0mm] % include a .tikz file \newcommand{\tikzfig}[1]{% {\tikzstyle{every picture}=[tikzfig] \IfFileExists{#1.tikz} {\input{#1.tikz}} {% \IfFileExists{./figures/#1.tikz} {\[ \input{./figures/#1.tikz} \]} {\tikz[baseline=-0.5em]{\node[draw=red,font=\color{red},fill=red!10!white] {\textit{#1}};}}% }}% } % the same as \tikzfig, but in a {center} environment \newcommand{\ctikzfig}[1]{% \begin{center}\rm \tikzfig{#1} \end{center}} % fix strange self-loops, which are PGF/TikZ default \tikzstyle{every loop}=[] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % TikzIt Styles % \input{sample.tikzstyles} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % TiKZ style file generated by TikZiT. You may edit this file manually, % but some things (e.g. comments) may be overwritten. To be readable in % TikZiT, the only non-comment lines must be of the form: % \tikzstyle{NAME}=[PROPERTY LIST] % Node styles \tikzstyle{white node}=[fill=white, tikzit category=nodes, shape=circle, draw=black, tikzit fill=white, scale=0.5] \tikzstyle{black node}=[fill=black, shape=circle, draw=black, tikzit category=nodes, tikzit fill=black, scale=0.5] \tikzstyle{doubled node}=[fill=white, double, tikzit category=nodes, shape=circle, draw=black, tikzit fill=white, scale=0.5] \tikzstyle{starred node}=[fill=red, tikzit category=nodes, shape=star, draw=red, tikzit fill=red, cross out, draw, solid, red, inner sep=2pt] % Edge styles \tikzstyle{plain edge}=[-] \tikzstyle{dashed edge}=[-, densely dashed] \tikzstyle{thick edge}=[-, line width=2.0pt] \tikzstyle{double edge}=[-, double distance=0.5mm] \tikzstyle{triple edge}=[-, double distance=0.5mm, postaction={draw}] \tikzstyle{Arrow}=[->] \tikzstyle{Doubled Arrow}=[->, double distance=0.5mm] \tikzstyle{Dashed Arrow}=[->, densely dashed] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newcommand{\convexpath}[2]{ [ create hullnodes/.code={ \global\edef\namelist{#1} \foreach [count=\counter] \nodename in \namelist { \global\edef\numberofnodes{\counter} \node at (\nodename) [draw=none,name=hullnode\counter] {}; } \node at (hullnode\numberofnodes) [name=hullnode0,draw=none] {}; \pgfmathtruncatemacro\lastnumber{\numberofnodes+1} \node at (hullnode1) [name=hullnode\lastnumber,draw=none] {}; }, create hullnodes ] ($(hullnode1)!#2!-90:(hullnode0)$) \foreach [ evaluate=\currentnode as \previousnode using \currentnode-1, evaluate=\currentnode as \nextnode using \currentnode+1 ] \currentnode in {1,...,\numberofnodes} { let \p1 = ($(hullnode\currentnode)!#2!-90:(hullnode\previousnode)$), \p2 = ($(hullnode\currentnode)!#2!90:(hullnode\nextnode)$), \p3 = ($(\p1) - (hullnode\currentnode)$), \n1 = {atan2(\y3,\x3)}, \p4 = ($(\p2) - (hullnode\currentnode)$), \n2 = {atan2(\y4,\x4)}, \n{delta} = {-Mod(\n1-\n2,360)} in {-- (\p1) arc[start angle=\n1, delta angle=\n{delta}, radius=#2] -- (\p2)} } -- cycle }