ACT @ The Functorial
TikZ-Picture demo

From Instiki documentation:


\begin{tikzpicture}[decoration={markings,
mark=at position .5 with {\arrow{>}}}]
\usetikzlibrary{arrows,shapes,decorations.markings}
\begin{scope}[scale=2.0]
\node[Bl,scale=.75] (or1) at (8,3) {};
\node[scale=1] at (8.7,2.9) {$D3$ brane};
\node[draw,diamond,fill=yellow,scale=.3] (A1) at (7,0) {}; 
\draw[dashed] (A1) -- (7,-.7);
\node[draw,diamond,fill=yellow,scale=.3] (A2) at (7.5,0) {}; 
\draw[dashed] (A2) -- (7.5,-.7);
\node[draw,diamond,fill=yellow,scale=.3] (A3) at (8,0) {}; 
\draw[dashed] (A3) -- (8,-.7);
\node[draw,diamond,fill=yellow,scale=.3] (A4) at (8.5,0) {}; 
\draw[dashed] (A4) -- (8.5,-.7);
\node[draw,diamond,fill=yellow,scale=.3] (A5) at (9,0) {};
\draw[dashed] (A5) -- (9,-.7);
\node[draw,circle,fill=aqua,scale=.3] (B) at (9.5,0) {};
\draw[dashed] (B) -- (9.5,-.7);
\node[draw,regular polygon,regular polygon sides=5,fill=purple,scale=.3] (C1) at (10,0) {}; 
\draw[dashed] (C1) -- (10,-.7);
\node[draw,regular polygon,regular polygon sides=5,fill=purple,scale=.3] (C2) at (10.5,0) {};
\draw[dashed] (C2) -- (10.5,-.7);
\draw (6.8,-.7) -- (6.8,-.9) to (9.2,-.9) to (9.2,-.7);
\draw (9.8,-.7) -- (9.8,-.9) to (10.7,-.9) to (10.7,-.7);
\draw[->-=.75] (C2) to (10.2,.35);
\draw[->-=.75] (C1) to (10.2,.35);
\node[scale=.6] at (9.9,.35) {$(2,2)$};
\draw[->-=.7] (B) to (9.6,.7);
\draw (10.2,.35) to (9.6,.7);
\node[scale=.6] at (9.35,.9) {$(4,0)$};
\draw[->-=.5] (9.1,.8) to (A5);
\draw (9.6,.7) to (9.1,.8) to (A5);
\draw (9.1,.8) to [out=170,in=280] (8.3,1.45);
\draw[dashed] (8.3,1.45) to (8.1,2.5);
\draw[->-=.5] (8.1,2.5) to (or1);
\node[scale=.75] at (7.7,2.7) {$(3,0)$};
%\draw (11.4,2.4) to [out=180,in=90] (6.2,-.5) to [out=90,in=0] (or1) -- cycle;
\node[scale=.75] at (8,-1.1) {A-type};
\node[scale=.75] at (9.5,-1.1) {B-type};
\node[scale=.75] at (10.25,-1.1) {C-type};
\draw[dashed] (8.7,.6) to [out=180,in=90] (6.2,-.55) to [out=270,in=180] (8.7,-1.6) to [out=0,in=270] (11.2,-.55) to [out=90,in=0] (8.7,.6) -- cycle;
\node[scale=1] at (12,.6) {$E_6$ singularity};
\end{scope}
\end{tikzpicture}