如何才能折斷彎曲的箭頭?

如何才能折斷彎曲的箭頭?

我有以下圖表xypic

\documentclass{article}
\usepackage{amsmath,amsthm}
\usepackage[all,cmtip,2cell]{xy}

\begin{document}

\[\xymatrix{
& K\Omega M \ar[rr] \ar[ld]_(.4){K\Omega F} \ar@{.>}'[d][dd]_-\simeq  &&  K\Delta M \ar[rr] \ar[ld]  && Kq\Delta M \ar[ld]  \\
K\Omega N \ar[rr] \ar@{.>}[dd]_-\simeq  &&  K\Delta N \ar[rr]  &&  Kq\Delta N  \\
& \Omega Kq\Delta M \ar@/_2pc/[rruu] \ar[ld]_-{\Omega Kq\Delta F} & \\
\Omega Kq\Delta N \ar@/_2pc/[rruu]
}\]

\end{document}

呈現如下:

在此輸入影像描述

「在背景上」的彎曲箭頭應該被折斷兩次,每次它都會穿過另一個箭頭,以給人一種真正在背景中的印象。我怎樣才能做到這一點?

答案1

我不知道是否可以用 xypic 完成,但僅供參考(並且為了好玩)我用 Tikz 完成了。

在這種情況下,訣竅是在“前面”畫兩次線。第一次用白色繪製,非常粗,第二次用黑色繪製,寬度正常。

請注意,在 TikZ 中,您首先使用類似於 xy-pic 的語法繪製節點矩陣,然後使用矩陣節點名稱作為坐標繪製所有連接,其具有一般形式(M-row-column),並標記所需的連接連接使用node.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
\matrix[matrix of math nodes, row sep=1cm, column sep=0.5cm] (M) {
   & K\Omega M  &&  K\Delta M  && Kq\Delta M   \\
K\Omega N  &&  K\Delta N  &&  Kq\Delta N  \\
   & \Omega Kq\Delta M  & \\
\Omega Kq\Delta N \\
};
\draw[->] (M-1-2) -- (M-2-1) 
   node[midway, above left] {\scriptsize $K\Omega F$};
\draw[->,dotted] (M-2-1) -- (M-4-1)
   node[midway, left] {\scriptsize $\simeq$};
\draw[->] (M-3-2) -- (M-4-1)
   node[midway, above, xshift=-1em] {\scriptsize $\Omega Kq\Delta F$};
\draw[->, dotted] (M-1-2) -- (M-3-2)
   node[pos=0.7, left] {\scriptsize $\simeq$};
\draw[->] (M-1-2) -- (M-1-4);
\draw[->] (M-1-4) -- (M-1-6);
\draw[->] (M-3-2) to[out=20, in=-110] (M-1-4);
\draw[white, line width=1ex] (M-2-1) -- (M-2-3);
\draw[->] (M-2-1) -- (M-2-3);
\draw[white, line width=1ex] (M-2-3) -- (M-2-5);
\draw[->] (M-2-3) -- (M-2-5);
\draw[white, line width=.5ex] (M-4-1) to[out=20, in=-110] (M-2-3);
\draw[->] (M-4-1) to[out=20, in=-110] (M-2-3);
\draw[->] (M-1-4) -- (M-2-3);
\draw[->] (M-1-6) -- (M-2-5);

\end{tikzpicture}
\end{document}

結果:

結果

答案2

這仍然不是xypic,但是 的語法tikz-cd與它非常相似。也許您可以將整個圖表切換到這個包。我建議使用,tikz-cd因為它給你更多的可能性。

% arara: pdflatex

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}
\[
\begin{tikzcd}
& K\Omega M \ar{rr} \ar[swap, "K\Omega F"]{dl} \ar[dotted, near end, swap, "\simeq"]{dd}  &&  K\Delta M \ar{rr} \ar{dl} \ar[bend left, <-]{ddll}  && Kq\Delta M \ar{dl}  \\
K\Omega N \ar[crossing over]{rr} \ar[dotted, swap, "\simeq"]{dd} & &  K\Delta N \ar[crossing over]{rr}  &&  Kq\Delta N  \\
& \Omega Kq\Delta M \ar[swap, near start, "\Omega Kq\Delta F"]{dl} & \\
\Omega Kq\Delta N \ar[crossing over, bend right]{uurr}
\end{tikzcd}
\]
\end{document}

在此輸入影像描述

相關內容