TikZ で名前付き四角形を描画するときの「最小サイズ」の単位

TikZ で名前付き四角形を描画するときの「最小サイズ」の単位

と を使用して四角形を描画すると\nodeminimum width/height結果として得られる四角形のサイズは、 を使用して描画したものと異なります。名前で参照できるように、\draw … rectangle …が必要です。\node

すべてのサイズ (10mm、15mm) に単位を追加することでこの問題を解決できることは理解していますが、単位を追加しないと機能しない理由を理解しようとしています。 のデフォルトの単位は<dimension>ポイントであると想定していました。

\documentclass[border=0.2cm]{standalone}
\usepackage{tikz}
\begin{document}

\begin{tikzpicture}[x = 1mm, y = 1mm]

  %% named rectangle with minimum size of 10x15.
  \node[%
  minimum width = 10,
  minimum height = 15,
  draw = blue
  ]
  (rect) at (0,0) {};

  %% unnamed rectangle with size of 10x15.
  \draw [red] (0,0) rectangle  ++(10, 15);
\end{tikzpicture}

\end{document}

答え1

これは、tikzPFGマニュアル(373 ページ) ある段落では、次のように明確に述べられています。

座標変換の最も重要な側面は、 [...] それが座標にのみ適用されることです。

ノードの寸法は変換の影響を受けず、デフォルトの単位は です。寸法をが使用されているptかのように動作させたい場合は、影響を受けるすべてのノードのオプションにとを追加するか、グローバル オプションを使用します。以下の例を参照してください。mmscaletransform shape

\documentclass[border=0.2cm]{standalone}
\usepackage{tikz}

\tikzset{
    x = 1mm, y = 1mm,
    every node/.style = {
        transform shape,
        scale = 2.84,   % Converts mm to pt by the factor 72.27/25.4
    },
}

\begin{document}
\begin{tikzpicture}
  %% named rectangle with minimum size of 10x15.
  \node[%
    minimum width = 10,
    minimum height = 15,
    draw = blue,
  ] (rect) at (0,0) {};
  %% unnamed rectangle with size of 10x15.
  \draw [red] (0,0) rectangle  ++(10, 15);
\end{tikzpicture}
\end{document}

ここに画像の説明を入力してください

関連情報