![TikZ !缺失数字,视为零](https://linux22.com/image/402279/TikZ%20!%E7%BC%BA%E5%A4%B1%E6%95%B0%E5%AD%97%EF%BC%8C%E8%A7%86%E4%B8%BA%E9%9B%B6.png)
大家好,这里有一个(希望不是过于简单的)MWE:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def\A{{3/(2*6)}}
\def\B{{sqrt(5-\A)}}
\filldraw (\A,\B) circle (1pt);
\end{tikzpicture}
\end{document}
我收到了错误消息
! Missing number, treated as zero.
<to be read again>
{
l.11 \filldraw ({\A,\B})
circle (1pt);
有人能解释一下这是怎么回事吗?我该如何解决这个问题?
答案1
解决这个问题的一种方法是
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro\A{3/(2*6)}
\pgfmathsetmacro\B{sqrt(5-\A)}
\filldraw (\A,\B) circle (1pt);
\end{tikzpicture}
\end{document}
如果坚持使用\def
s,请正确设置括号:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def\A{3/(2*6)}
\def\B{sqrt(5-\A)}
\filldraw ({\A},{\B}) circle (1pt);
\end{tikzpicture}
\end{document}