在 tikz 矩阵中绘制形状

在 tikz 矩阵中绘制形状

我想在矩阵中的三个节点之间绘制或填充三角形。以下方法不起作用,因此我对矩阵节点工作原理的基本理解似乎是错误的:

\begin{tikzpicture}
    \matrix[matrix of math nodes, name=m] {
        A & B \\
        C & D \\};
        \draw (m-2-1) -- (m-1-1) -- (m-2-2) -- cycle;
        \fill (m-1-1) -- (m-1-2) -- (m-2-2) --cycle;
\end{tikzpicture}

不是三角形,而是只绘制一条线(第一条),并且形状根本没有填充。

到目前为止,我还没有在网上找到答案,尽管这似乎很基础。这就是为什么我认为我遗漏了一些重要的东西……为什么三角形没有完全绘制/形状没有填充?

答案1

我认为这是因为节点是连续的(如果您添加nodes={draw}到代码中您就可以看到它)。

我认为这fill行不通,因为线没有闭合。如果在节点之间添加一些空间并使用坐标绘制线条,它就会起作用:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
    \matrix[matrix of math nodes, %nodes={draw},
    row sep=10pt,
    column sep=10pt] (m) {%
        A & B \\
        C & D \\};
\draw[fill] (m-2-1.north east) -- (m-1-1.south east) -- (m-2-2.north west) -- cycle;
\end{tikzpicture}
\end{document}

在此处输入图片描述

(即使我不知道这是否正是您所寻找的)。

相关内容