TikZ. 在 .code 处理程序中访问节点的名称。

TikZ. 在 .code 处理程序中访问节点的名称。

我想在矩形的边框上放置可变数量的附加节点。我建议按以下方式查看:

\node[name=R, my rectangle=top:3 bottom:1 left:2 right:1] {Node R};

甚至更好:

\node[my rectangle=top:3 bottom:1 left:2 right:1] (R) {Node R};

由于节点不是路径的一部分,而是在路径构建结束时存储以供执行,因此两种情况应该是等效的。无论如何,此节点定义应导致隐式定义节点/坐标,分别命名为:,R top 1...,R top 3R bottom 1R left 1R left 2R right 1

查看 pgfmanual 后,我发现那里有一个键/tikz/name,但无法从中访问它的值my rectangle/.code

答案1

据我所知,节点名称仅在节点构造后才可用。然后它存储在中\tikzlastnode。您需要构造其他节点主节点。这是通过以下append after command密钥完成的:

\begin{tikzpicture}
    \node[append after command={node[below] {\tikzlastnode}}] (node name) {X};
\end{tikzpicture}

您的代码可能与创建标签的代码非常相似。因此您应该查看下面(在 中% Label and pin options)的代码。tikz.code.textexmf/tex/generic/pgf/frontendlayer/tikz/

相关内容