TikZ:使用默认文本从多部分节点创建单个部分节点

TikZ:使用默认文本从多部分节点创建单个部分节点

我想创建一种样式,可以赋予一个节点,使它是一个多部分节点(比如说,2部分),其中一个部分的文本是固定的。

我知道如何使用 创建多部分节点,例如,circle split以及如何使用 选择下部\nodepart{lower}。我还知道我可以使用 设置默认文本node contents,但这似乎仅适用于简单节点。

如何将默认文本设置为多部分节点的任意节点部分?

答案1

可能这不是您想要的但如果没有更好的解决方案......

\documentclass[tikz]{standalone}
\usetikzlibrary{positioning,shapes.multipart}

\begin{document}
\begin{tikzpicture}[mynode/.style={rectangle split, rectangle split parts=2, draw, node contents=#1},
mynode/.default={A\nodepart{two}B}]
\node (A) [mynode];
\node[right=5mm of A] (B) [mynode={C}];
\node[right=5mm of B] (C) [mynode={\nodepart{two}D}];
\end{tikzpicture}
\end{document}

在此处输入图片描述

如果您希望始终使用具有固定内容的相同部分,请在内部定义它.style并将其他部分作为参数:

\documentclass[tikz]{standalone}
\usetikzlibrary{positioning,shapes.multipart}

\begin{document}
\begin{tikzpicture}[mynode/.style={rectangle split, rectangle split parts=2, draw, node contents={#1\nodepart{two}Constant}},
]
\node (A) [mynode=A];
\node[right=5mm of A] (B) [mynode=B];
\node[right=5mm of B] (C) [mynode=C];
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容