中间有一个开关的箭头线

中间有一个开关的箭头线

我想画一条带箭头的线,但中间有一个开关。我目前使用的是这个

\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\usepackage{tikz-cd}
\begin{document}
  \begin{tikzpicture}
    \draw [line width=1pt] (-0.3,-.5) to[cspst] (-0.3,-1.5); 
  \end{tikzpicture}
\end{document}

输出中间有一个开关,但没有任何箭头。有什么想法吗?

答案1

我的第一个想法是,只需在->draw 语句中添加代码即可实现这一点,但如下所示,这不会产生所需的输出。接下来,我尝试使用两个标记将 switch 和箭头作为装饰,但我看不出如何使用 switch 开关cspst作为装饰。我认为应该可以这样做,这样会更简洁。

下面的代码使用装饰器添加箭头尖端,该装饰器使用addarrow来产生:

在此处输入图片描述

左侧示例显示添加->不起作用。希望右侧箭头是所需的。以下是代码。

\documentclass[border=5mm,tikz]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\usepackage{tikz-cd}
\usetikzlibrary{arrows,decorations.markings,decorations}

\tikzset{% define addarrow decoration
    addarrow/.style={decoration={markings, mark=at position 1 with {\arrow{stealth}}},
                     postaction={decorate}}
}


\begin{document}
  \begin{tikzpicture}
    \draw [line width=1pt,->] (-0.3,-.5) to[cspst] ++(0,-1.5);       % bad
    \draw [line width=1pt,addarrow] (2.3,-.5) to[cspst] ++(0,-1.5);  % good
  \end{tikzpicture}
\end{document}

相关内容