Usando o comando como argumento opcional para tikzpicture-environment

Usando o comando como argumento opcional para tikzpicture-environment
\begin{tikzpicture}[x={(0.5cm, 0cm)}, y={(0cm, 0.5cm)}, z={(0.25cm, 0.25cm)}]
...
\end{tikzpicture}

Funciona

\newcommand{\kosXYZ}{[x=\{(0.5cm, 0cm)\}, y=\{(0cm, 0.5cm)\}, z=\{(0.25cm, 0.25cm)\}]}

\begin{tikzpicture}\kosXYZ
...
\end{tikzpicture}

Não

Como e por quê?

Responder1

Por que não funciona? \kosXYZnão é expandido no momento em que \begin{tikzpicture}o argumento opcional de é pesquisado. Parece que deveria ser.

Talvez assim:

\newcommand\Exchange[2]{#2#1}%
\newcommand\Expandsecond[2]{\expandafter\Exchange\expandafter{#2}{#1}}%

\newcommand{\kosXYZ}{[x={(0.5cm, 0cm)}, y={(0cm, 0.5cm)}, z={(0.25cm, 0.25cm)}]}

\Expandsecond{\begin{tikzpicture}}{\kosXYZ}
...
\end{tikzpicture}

informação relacionada