I want to draw a straight line leaving the down left tip of my square D.
My code is the following
\documentclass{report}
\usepackage{tikz}
\begin{document}
\begin{figure}
\begin{tikzpicture}[node distance=4cm]
\usetikzlibrary{shapes}
\node[regular polygon,regular polygon sides=4,scale=3,dashed,draw](D) {$D$};
\node[draw, right of=D,yshift=1cm, node distance=6cm](G){G};
\node[right of=D, yshift=1cm, node distance =3.5cm] (ygets) {$y \gets U_{2n}$};
\node[right of=D, yshift=-1.22cm, node distance=2.5cm](vazio){};
\node[above of=G, node distance=1cm] (k) {$k \gets U_n$};
\path[draw,->] (G.south) |- (D.east);
\path[draw,->] (k.south) -- (G.north);
\path[draw,->] (ygets.south) |- node[near end, above]{$y$} (D.east);
\path[draw,->] (D.south east) -- node[above] {b} (vazio);
\end{tikzpicture}
\end{figure}
\end{document}
The resulting figure is
Any tips or tricks on how to do this?


\draw[->] (D.south east) -- ++(1.5cm,0) coordinate (vazio);, right? I can't think of any case where defining a coordinate separately, for the sole purpose of drawing a path, would be preferable. – Alenanno Jan 06 '16 at 11:20\node[right of=D, yshift=-1.22cm, node distance=2.5cm](vazio){};, and drawing the line tovazio). – Torbjørn T. Jan 06 '16 at 11:57