为什么变换没有应用到两个节点?

为什么变换没有应用到两个节点?

我正在尝试绘制一些 3D 投影来帮助解释一个概念。我本想为此使用 tikz 变换,但经过长时间的尝试,我发现当我\node直接使用时变换实际上不起作用,但如果我使用\draw (0,0) rectangle (3,2)(下面的代码),它们就会起作用。有人能向我解释为什么会这样吗?有没有办法让变换与范围内的所有内容一起工作?

\documentclass[crop, margin=2mm]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[
    my node/.style={
      fill=none,
      very thick,
      draw=black!75,
      opacity=0.5,
      fill=#1,
    },
  ]
  \begin{scope}[cm={1, 0.5, 0, 1, (0, 0)}]
    \draw[
      my node=red,
      opacity=0.5,
    ] (0,0) rectangle (3cm,2cm);
    \node[
      my node=blue,
      minimum width=3cm,
      minimum height=2cm,
      anchor=south west,
    ] at (0,0) {};
  \end{scope}
\end{tikzpicture}
\end{document}

它看起来是这样的:

在此处输入图片描述

相关内容