Using just an external TikZ picture is not quite enough. If you want the position of the sub-picture to be influenced by elements from the containing picture and yet other elements from the containing picture be influenced by the sub-picture in turn, you need something additional. We could put our sub-picture in a savebox and use it inside of the main picture. We then use it inside of the main picture, by putting it inside of a node with inner sep=0pt. This allows us to position the node like any other node, while it can contain a TikZ picture that does not suffer from inheritance issues. If we additionally set the remember picture option on both pictures, we can references nodes within the first picture as well. We won't need the overlay option here, since it is basically one picture that happens to have a box in it. The following is a very basic example that demonstrates the concept:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\newsavebox\mysubpic
\sbox{\mysubpic}{%
\begin{tikzpicture}[remember picture] %sub-picture
\path[draw, fill=blue!30] (0,0) -- (2,2) -- (0,2) -- cycle;
\path[draw, fill=green!30] (0,0) -- (2,2) -- (2,0) -- cycle;
\coordinate (orig) at (0,0);
\coordinate (sw) at (current bounding box.south west);
\coordinate (nw) at (current bounding box.north west);
\coordinate (se) at (current bounding box.south east);
\coordinate (ne) at (current bounding box.north east);
\end{tikzpicture}% needed, otherwise anchors are wrong!
}
\begin{tikzpicture}[remember picture]
\path[draw] node (a) {before} ++(2,0) node[inner sep=0pt] (subpic) {\usebox{\mysubpic}} ++(\wd\mysubpic,0) node {after};
\foreach \anch in {south west, north west, south east, north east}{
\fill[blue] (subpic.\anch) circle[radius=2pt];
}
\foreach \anch in {sw,nw,se,ne}{
\fill (\anch) circle[radius=1pt];
}
\end{tikzpicture}
\end{document}
And the resulting image:

remember pictureandoverlaywhere applicable? You can get the bounding box by setting coordinates in places where you want the anchors in the sub-picture using thecurrent bounding boxnode. These can then be referenced from the containing picture. – Roelof Spijker Nov 14 '11 at 09:07