\documentclass[tikz]{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{circuitikz}[european, scale=1]
\draw
(0,0) node[ocirc]{} --
++(right:1) node(point1){} to [R, l=$R$]
++(down:2) node(point2){} --
++(left:1) node[ocirc]{}
(node cs:name=point1) node[circ]{} --
++(right:2) to [C, l=$C$]
++(down:2) --
(node cs:name=point2) node[circ]{}
;
\end{circuitikz}
\end{document}
point1
为什么(定义)和(用法)之间有空格point1
?
答案1
不想让这个问题悬而未决。
除了建议point1.center
和point2.center
可行的评论外。我的研究还发现了另外两种弥补差距的替代方案,因此将其作为答案发布。
- 上面的评论中说。
新发现
- 使用明确的坐标。
- 将
node
定义改为coordinate
定义。
代码
\documentclass[tikz]{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{circuitikz}[european, scale=1]
\draw
(0,0) node[ocirc]{} --
++(right:1) node(point1){} to [R, l=$R$]
++(down:2) node(point2){} --
++(left:1) node[ocirc]{}
(point1.center) node[circ]{} -- % use point1.center instead
++(right:2) to [C, l=$C$]
++(down:2) --
(point2.center) node[circ]{} % use point2.center instead
;
\end{circuitikz}
\begin{circuitikz}[european,scale=1]
\draw
(0,0) node[ocirc]{} --
++(right:1) node(point1){} to [R, l=$R$]
++(down:2) node(point2){} --
++(left:1) node[ocirc]{}
(1,0) node[circ]{} -- % explicit coordinate
++(right:2) to [C, l=$C$]
++(down:2) --
(1,-2) node[circ]{} % explicit coordinate
;
\end{circuitikz}
\begin{circuitikz}[european,scale=1]
\draw
(0,0) node[ocirc]{} --
++(right:1) coordinate(point1){} to [R, l=$R$] % use coordinate instead
++(down:2) coordinate(point2){} -- % use coordinate instead
++(left:1) node[ocirc]{}
(node cs:name=point1) node[circ]{} --
++(right:2) to [C, l=$C$]
++(down:2)--
(node cs:name=point2) node[circ]{}{}
;
\end{circuitikz}
\end{document}