I'm trying to connect an edge to a node with the target point being off-center. I would like the edge to end with an arrow at the border of the node without going into the box.
It is easy to connect an edge to a side of a node:
\begin{tikzpicture}
\node (x) [draw,minimum size=1 cm] at (0,0) {x};
\node (y) [draw,minimum size=1 cm] at (2 cm,2 cm) {y};
\draw[->] (x) -- (y.west);
\end{tikzpicture}
But drawing to halfway between (x) and (x.west) continues into the node instead of stopping at the border:
\begin{tikzpicture}
\node (x) [draw,minimum size=1 cm] at (0,0) {x};
\node (y) [draw,minimum size=1 cm] at (2 cm,2 cm) {y};
\draw[->] (x) -- ($ (y.west)!0.5!(y) $);
\end{tikzpicture}
How can I make an edge with the same angle as (x) -- ($ (y.west)!0.5!(y) $) but which draws the arrow right at the border instead of entering into the node?




shortenbut deleted it. It doesn't quite work for my situation, but it would be nice to leave the answer here because it might be perfect for some closely related situations. – amcnabb Nov 8 '12 at 23:58