我遇到了麻烦\tikzset
。当我创建一个函数(此处foo
)时,第二个 if 语句无法识别该参数\lfvert
。(节点不再打印它)这给了我以下错误Missing number, treated as zero
。
尽管错误没有破坏我的图表,但我希望编译时没有错误,并避免将来产生一些滚雪球效应。
我尝试用{\lfvert == 0}
而不是\lfvert == 0
但没有什么变化。
有人能帮我找出问题所在吗?因为指示错误看起来太笼统了……
最良好的问候。
代码 :
\documentclass{article}
\usepackage{graphicx}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}
\usepackage{ifthen}
\tikzset{
foo/.pic={
\tikzset{%
/foo/.cd,
#1
}
\ifthenelse{\cubenotateddd>0}{
\node[] at (5,5) {LFVERT=\lfvert};
\ifthenelse{\lfvert == 0}{
\node[] at (5,2) {LFVERT=\lfvert};
}{}
}{}
},
%% All parameters
/foo/.search also={/tikz},
/foo/.cd,
lfv/.store in=\lfvert,
cube/.store in=\cubenotateddd,
%% Initialisation of parameters
lfv=2,
cube=2,
}
\begin{document}
Hello, test variable in IF.
\newline
\begin{tikzpicture}[scale=0.09, line cap=round,line join=round,>=triangle
45,x=1.0cm,y=1.0cm]
\pic[] at (1cm,-3cm,0cm) {foo={lfv=2}};
\end{tikzpicture}
\end{document}