
Ist es möglich, die Tikz-Ebene, auf der gezeichnet werden soll, beispielsweise innerhalb eines Pfadbefehls zu definieren \node[on main layer] at (0,0) {foo};
? Es ist etwas mühsam, einzelne Makros in eine Scope-Umgebung zu setzen.
Antwort1
Optionen behind path
und in front of path
ermöglicht die Überlagerung von Knoten und Linien, die mit demselben Befehl gezeichnet werden.
\documentclass[tikz,border=2mm]{standalone}
\begin{document}
\begin{tikzpicture}
\draw[thick, draw=green] (0,0) --
node[pos=0.25, behind path, fill=red!30 ]{A}
node[pos=0.75, fill=red!30 ]{A} (2,0);
\path (1,1) node[fill=blue!20] {A}
node[fill=green, behind path, inner sep=3mm] {A}
node[fill=red, inner sep=1mm, in front of path] {};
\end{tikzpicture}
\end{document}