
Para crear un nodo dividido parametrizado, me gustaría usar argumentos en las partes del nodo.
Aquí esta lo que hice:
\tikzset{threeParts/.style n args={3}{%
rectangle split,
rectangle split horizontal,
rectangle split parts=3,
draw,
whichKeyShouldIuseHere={
nodepart{one} {#1}
nodepart{two} {#2}
nodepart{three} {#3}},
}}
\begin{tikzpicture}
\path node[threeParts={1,2,3}];
\end{tikzpicture}
pero esto no funciona y no pude encontrar la clave correcta para completar las llaves del nodo.
Respuesta1
Esta respuesta requiere la versión CVS en sourceforge. (Gracias Torbjørn)
La clave que estás buscando es la node contents
clave.
Permite su necesidad específica.
Lo usas así:
node contents={<content of node>}
\node[node contents=ABC];
Tenga en cuenta que no debe proporcionar un especificador de contenido adicional para los nodos que utilizan la construcción anterior.
Entonces en tu caso encuentras:
\tikzset{threeParts/.style n args={3}{%
rectangle split,
rectangle split horizontal,
rectangle split parts=3,
draw,
node contents={#1\nodepart{two}#2\nodepart{three}#3}
}
}
Y tu tikzpicture
se convierte en:
\begin{tikzpicture}
\path node[threeParts={Part 1}{Part 2}{Part 3}];
\end{tikzpicture}
Observe que se equivocó ligeramente con 3 argumentos para las partes.
Si desea utilizar comas, haga esto:
threePartsComma/.style args={#1,#2,#3}{<previous content>}
y use:
node[threePartsComma={Hell,o and,welcome}];
Aquí será muy prudente utilizar siempre la llave alrededor del argumento completo, ya que tikz
las opciones se analizan mediante comas.
Tenga en cuenta que no puede utilizar la node[node contents=< >] at (0,0);
construcción, la ubicación debe realizarse en las opciones del nodo o mediante el archivo \path (0,0) node[...];
.
Una pequeña imagen: