
\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? \kosXYZ
nã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}