\definecolor{myred}{HTML}{d01e1e} \definecolor{mygreen}{HTML}{129d1c} \definecolor{myblue}{HTML}{0000FF} \makeatletter \begin{tikzpicture}[>=latex, node distance=1cm, on grid, auto] %A \node (A2) [draw, circle, minimum size=0.5mm, color=myred] {}; \path (A2.west)+(-0.25,-1) node (A1) [draw, regular polygon, regular polygon sides=6, minimum size=1cm, color=myred] {}; %{A}; \path[-,color=myred] (A1) edge (A2); \path (A2.west)+(-1.5,-0.5) node (arrow) [minimum size=0.5cm] {$\longrightarrow$}; \path (arrow.west)+(-1,0) node (A) {A}; %ligne1 \node (sepAS) [right of=A2] {} ; \path[draw,-] (sepAS)+(0,1) edge (sepAS)+(0,-1); %; \node (seq) [right of=sepAS] {;} ; \path (seq.east)+(1,0) node (arrow) [minimum size=0.5cm] {$\longrightarrow$}; \path (arrow.east)+(1.5,0.5) node (S1) [draw, regular polygon, regular polygon sides=3, minimum size=1cm, shape border rotate=180, color=mygreen] {}; %{;}; \path (S1.west)+(-0.5,-1) node (SA2) [circle, minimum size=0.5mm] {}; \path (S1.east)+(0.5,-1) node (S2) [draw, rectangle, minimum size=0.5mm, color=mygreen] {}; \path[-,color=mygreen] (SA2) edge (S1); \path[-,color=mygreen] (S1) edge (S2); %\node (S1) [draw, regular polygon, regular polygon sides=3, minimum %size=1cm, shape border rotate=180, color=mygreen] {}; %{;}; %\path (S1.west)+(-0.5,-1) node (SA2) [circle, minimum size=0.5mm] {}; %\path (S1.east)+(0.5,-1) node (S2) [draw, rectangle, minimum size=0.5mm, color=mygreen] {}; %\path[-,color=mygreen] (SA2) edge (S1); %\path[-,color=mygreen] (S1) edge (S2); %\path (S1.west)+(-1.5,-0.5) node (arrow) [minimum size=0.5cm] {$\longrightarrow$}; %\path (arrow.west)+(-1,0) node (seq) {;}; %ligne2 \node (SBH) [right of=S2] {} ; \node (SBB) [below of=SBH, ] {} ; \path[draw,-] (SBH) edge (SBB); %B \node (BS2) [rectangle, minimum size=0.5mm] {}; \path (BS2.east)+(0.25,-1) node (B1) [draw, regular polygon, regular polygon sides=5, minimum size=1cm, color=myblue] {}; %{B}; \path[-,color=myblue] (BS2) edge (B1); \path (BS2.west)+(-1.5,-0.5) node (arrow) [minimum size=0.5cm] {$\longrightarrow$}; \path (arrow.west)+(-1,0) node (B) {B}; \end{tikzpicture}