在 tikzcd 中使用 leftrightharpoon

在 tikzcd 中使用 leftrightharpoon

是否可以在 tikzcd 图表中使用 \leftrightharpoons?在文档中,我似乎只能在 tikz 中使用单面鱼叉...

左 右 鱼叉

答案1

你可以制作它们:

在此处输入图片描述

基本上与 Ti\tikzcdset相同,\tikzset只是定义的宏将被使用,你猜对了Z-CD。

我基本上复制了内置鱼叉的定义并更改了箭头末端。right toleft to箭头尖端是 的一部分tikzcd

至于您在编辑问题时贴出的箭头,我找不到“干净”的方法来做。但这基本上是两个带有发散yshifts 的鱼叉。

我以与标准相同的方式定义了一个宏\arrow\leftrightharpoon[...]。该宏将箭头的方向和任何其他 Ti 作为参数Z 兼容选项。

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\tikzcdset{%
   harpoonlurd/.code={\pgfsetarrows{tikzcd right to-tikzcd right to}},
   harpoonldru/.code={\pgfsetarrows{tikzcd left to-tikzcd left to}},
   harpoonluru/.code={\pgfsetarrows{tikzcd right to-tikzcd left to}},
   harpoonldrd/.code={\pgfsetarrows{tikzcd left to-tikzcd right to}},
}
\makeatletter
\def\leftrightharpoon{%
  \@ifnextchar[{\@lrharp}{\@lrharp[]}%
}
\def\@lrharp[#1]{%
  \arrow[#1, leftharpoonup  ,yshift= 0.225ex]%
  \arrow[#1,rightharpoondown,yshift=-0.225ex]%
}
\makeatother
\begin{tikzcd}
  A \arrow[r,harpoonlurd] & B\\
  A \arrow[r,harpoonldru] & B\\
  A \arrow[r,harpoonluru] & B\\
  A \arrow[r,harpoonldrd] & B\\
  A \leftrightharpoon[r] & B\\
\end{tikzcd}
\end{document}

附言:请随意重命名。我不是最有创造力的人:P

相关内容