Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- documentclass{article}
- usepackage[pdftex,active,tightpage]{preview}
- setlengthPreviewBorder{2mm}
- usepackage{xifthen}
- usepackage{tikz}
- usetikzlibrary{calc,shapes.multipart,chains,arrows,positioning}
- begin{document}
- begin{preview}
- tikzset{>=latex}
- defN{6}
- begin{tikzpicture}[
- list/.style={
- very thick, rectangle split,
- rectangle split parts=3, draw,
- rectangle split horizontal, minimum size=18pt,
- inner sep=5pt, text=black,
- rectangle split part fill={blue!20, red!20, blue!20}
- },
- ->, start chain=M0 circle placed {at=(tikzchaincount*360/N:2.5cm)},very thick
- ]
- foreach i in {1,...,N} {
- node[list,on chain,rotate={360*i/N-90}] (Pi) {nodepart{second} $P_{i}$};
- }
- foreach i [evaluate=i as j using int(i+1)] in {1,...,N} {
- ifthenelse{i=N} {pgfmathsetmacroj{1}}{}
- path[*->,red] (Pj.three) edge [bend left] (Pi.north west);
- path[*->,blue] (Pi.one) edge [bend left] (Pj.south east);
- }
- draw[->,rotate=360/N-90] ([yshift=1cm]P1.north) -- node [above,rotate=360/N] {begin} (P1.north);
- draw[->,rotate=-90] ([yshift=1cm]PN.north) -- node [above,rotate=0] {end} (PN.north);
- draw[->,dashed] (360/N:2cm) arc (360/N:270:2cm);
- end{tikzpicture}
- end{preview}
- end{document}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement