这是错误还是我做错了?使用纯 TIKZ 时,一切都按预期工作:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- ++(2,0) -- +(0,-1) +(0,0) -- +(2,0);
\end{tikzpicture}
\end{document}
但是当对 CircuiTIKZ 执行相同操作时,y 坐标似乎已更新:
\documentclass{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) to[short] ++(2,0) to[C] +(0,-1) +(0,0) to[short] +(2,0);
\end{tikzpicture}
\end{document}
答案1
问题很简单。
在路径的第一部分之后(0,0) -- ++(2,0)
(这很常见),在第一种情况下,您-- +(0,-1)
在第二种情况下使用添加容量。容量符号会移动笔的当前位置,这是您的语法-- +(0,-1)
所没有的。实际上,如果您使用以下方法,您将会感觉到相同的行为:
\documentclass[tikz,border=10pt]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{shapes.misc}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- ++(2,0) -- ++(0,-1) +(0,0) -- +(2,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (0,0) to[short] ++(2,0) to[C] +(0,-1) +(0,0) to[short] +(2,0);
\end{tikzpicture}
\end{document}
因为-- ++(0,-1)
也会改变位置:
现在,考虑到这一点,您可能需要执行以下操作:
\documentclass[tikz,border=10pt]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{shapes.misc}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- ++(2,0) -- +(0,-1) +(0,0) -- +(2,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (0,0) to[short] ++(2,0) to[C] +(0,-1) +(0,1) to[short] +(2,1);
\end{tikzpicture}
\end{document}
因此你将获得: