tikz 电路中电路符号大小选项参数的格式

tikz 电路中电路符号大小选项参数的格式

与 tikz circuits 键关联的值或参数电路符号大小以无量纲形式描述符号的宽度和高度。参数格式的一个示例是width 10 height 3。我想将变量分配给符号的宽度和高度。在尝试编译以下代码时,我发现像width \symbolwidtha height \symbolheightawhere这样的表达式

\def\symbolwidtha{13}
\def\symbolheighta{1.5}

返回错误。如何使用预定义变量来控制符号的大小?

\documentclass[tikz,convert=false]{standalone}
\usetikzlibrary{circuits,circuits.ee.IEC}
\begin{document}
\newlength{\circuitunit}
\setlength{\circuitunit}{0.32cm}

%\edef\symbolwidtha{13}
%\edef\symbolheighta{1.5}

%\def\symbolwidtha{13}
%\def\symbolheighta{1.5}

\begin{tikzpicture}[circuit ee IEC]
%\node[resistor,circuit symbol size=width \symbolwidtha height \symbolheighta] at (0,0) (theresistora) {};% does not compile
%\node[resistor,width=\symbolwidtha,height=\symbolheighta] at (0,0) (theresistora) {};% does not compile
\node[resistor,circuit symbol unit=\circuitunit] at (0,1) (theresistorb) {};
\node[resistor,circuit symbol size=width 12 height 2,circuit symbol unit=6pt] at (0,2) (theresistorc) {};
\end{tikzpicture}
\end{document}

答案1

在第一种情况下,之前的空间height会丢失,你需要做以下操作之一

circuit symbol size=width {\symbolwidtha} height \symbolheighta

或者

circuit symbol size/.expanded=width \symbolwidtha\space height \symbolheighta

第一种方法是首选方法。

相关内容