我知道我可以用一条水平线连接点 (0,0) 和 (1,1),然后用一条垂直线连接
\draw (0,0) -| (1,1);
是否存在允许人们使用命令执行此操作的行为to
?
\draw (0,0) to[-|] (1,1); % Doesn't work
就上下文而言,我正在尝试使用 CircuiTikz 来执行此操作,并且我想使用 CircuitTikz 添加到 to 命令的一些其他选项。
答案1
可以定义自己的路径,例如,参见 TikZ 手册第 5 章的最后一个示例,即“图表作为简单图表”教程。我认为,第 14.13 节“路径操作”有这方面的一般文档。
不知道这与circuitikz
东西如何互动。
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[hv/.style={to path={-| (\tikztotarget) \tikztonodes}}]
\draw (0,0) to[hv] node [below] {foo} (1,1) ;
\end{tikzpicture}
\end{document}
答案2
不,to[]
路径命令没有这样的选项(我是当然在某个地方有一个答案添加了一个 to-path 来实现这样的事情,但我找不到它......“to”不是一个搜索友好的词 - 但无论如何,它没有在中实现circuitikz
,所以这一点没有意义)。
你给出了一些细节,但是如果你想在线上添加杆子,你可以使用这个技巧,即在使用-|
或 时|-
,拐点位于位置 0.5:
\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}[american]
\draw (0,0) -| node[pos=0.5, ocirc]{} (2,1);% really pos=0.5 is the default...
\end{tikzpicture}
\end{document}
请记住,“开放”杆在路径构造的末尾用白色填充,因此如果您想使用另一条路径将其他元素连接到它,则必须使用节点名称,以便边框锚点接合,不是裸坐标(参见电感问题!)
\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}[american]
\draw (0,0) -| node[pos=0.5, ocirc](mynode){} (2,1);
\draw (mynode) to[R] (0,1);
\draw (0,0 -| 2,1) to[L] ++(2,0);
\end{tikzpicture}
\end{document}