Using both calc and |- would be a convenient way to refer to "inner, relative coordinates" of a node, with
(0, 0)meaningnode.center,(0, 1)meaningnode.eastand(.3, -.5)meaning somewhere precise (but relative) in the south east quarter.
However, as described here and there, the following coordinate is not parsed:
($(node.center)!.3!(node.east)$ |- $(node.center)!-.5!(node.north)$)
So the following convenience macro does not work:
\newcommand{\relativeToNode}[3]{($(#1.center)!#2!(#1.east)$ |- $(#1.center)!#3!(#1.north)$)}
How nice would it be to write:
\node (inner) at (\relativeToNode{outer}{.3}{-.5}) {hey!};
Is there any chance to get this working?
Any workaround that would not involve defining intermediate macros or coordinates (whose names would have to be picked etc.)?

tikzdoesn't enable calculation of coordinates on the way as you desired. you should defined one auxiliary coordinate:\coordinate (aux) at ($(node1.south) + (1,0)$); \draw ($(node1.south) + (1,0)$) to (aux |- node2.north);– Zarko Aug 27 '18 at 09:52