考虑这个最小的例子。我怎样才能让箭头像图表中的其他所有东西一样“旋转”?我试过使用,transform shape
但这不适用于箭头。
\documentclass[tikz,margin=5pt]{standalone}
\usetikzlibrary{3d}
\begin{document}
\begin{tikzpicture}
\draw[left color=blue,right color=red] (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\node at (0.5,2) (Label) {Test};
\draw[->,line width=1mm] (Label) -- (0.5,1.1);
\end{tikzpicture}
\begin{tikzpicture}[y={(0.5cm,-0.5cm)},x={(0.5cm,1cm)}, z={(0cm,1cm)}]
\begin{scope}[canvas is yz plane at x=0,transform shape]
\draw[left color=blue,right color=red] (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\node at (0.5,2) (Label) {Test};
\draw[->,line width=1mm] (Label) -- (0.5,1.1);
\end{scope}
\end{tikzpicture}
\end{document}
箭头透视“偏离”的另一个例子。
\draw[->,line width=1mm] (1,1.5) -- (0,1.5);
答案1
pgfmanual 仍然充满惊喜(至少对我来说 ;-)。这里有一个适用于明确坐标但不适用于符号坐标的解决方案,例如(Label1)
。(我猜只有 @Symbol 1 可以执行符号操作。 ;-) 我要找的命令是\pgflowlevelsynccm
。
\documentclass[tikz,margin=5pt]{standalone}
\usetikzlibrary{3d}
\begin{document}
\begin{tikzpicture}[y={(0.5cm,-0.5cm)},x={(0.5cm,1cm)}, z={(0cm,1cm)}]
\begin{scope}[canvas is yz plane at x=0,transform shape]
\draw[left color=blue,right color=red] (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\node at (0.5,2) (Label) {Test};
\pgflowlevelsynccm
\draw[->,line width=1mm] (0.5,1.8) -- (0.5,1.1);
\end{scope}
\begin{scope}[canvas is yz plane at x=2,transform shape]
\draw[left color=blue,right color=red] (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\node at (0.5,2) (Label) {Test};
\pgflowlevelsynccm
\draw[->,line width=1mm] (1,1.5) -- (0,1.5);
\end{scope}
\end{tikzpicture}
\end{document}