tikz 및 tikz-cd의 삼중 화살표

tikz 및 tikz-cd의 삼중 화살표

화살표, 레이블 및 해당 스타일을 최대한 유연하게 만들기 위해 pgfkey를 사용하는 tikz에 다소 복잡한 다이어그램을 그리는 매크로가 있습니다. 라이브러리의 모든 명령을 허용합니다CD. 내가 필요한 것은 Rrightarrow다음 과 같은 매개변수/옵션입니다.암스leftarrow패키지를 사용하여 매개변수 , Rightarrow, equal, squiggly, ... 를 전달할 수 있는 것처럼 삼중(또는 심지어 사중) 화살표를 그릴 수 있는 pgfkey로 전달할 수 있습니다.

다음 주제tikz의 트리플 라인그리고Tikz의 Costum 화살표 샤프트그 방향으로 가는 아름다운 코드가 포함되어 있지만 tikz-cd 화살표 스타일 옵션으로 압축할 수는 없습니다. 나는 3-화살표 또는 4-화살표를 제공하기 위해 두 개의 다른 화살표가 겹치는 두 번째 링크의 (두 번째 답변) 코드를 이해한다고 생각합니다. 매크로의 화살표가 고정되어 있으므로 이 솔루션을 사용할 수 없습니다. 첫 번째 링크의 코드를 사용하면 만족스러운 솔루션을 제공할 수 있다고 생각합니다. 하지만 저는 아직 tikz에 대해 많이 알지 못합니다(저는 항상 tikzcd를 사용했습니다). 거기 주석에는 화살표 팁을 추가하는 것을 암시하는 것 같습니다. 트리플 라인은 어렵다. 나는 코드를 가지고 약간의 시도를 해보고, 우연이라고 생각되는 것을 수정하려고 노력했지만, 구체적인 내용을 생성하지 못했습니다.

답변1

표시되는 링크에 제안된 대로 수행할 수 있습니다. 약간 미묘한 점은 화살표가 자동으로 존중되지 않으므로 화살표의 이중선 경로를 quadruple약간 줄여야 한다는 것입니다. (물론 미세 조정 double distance등도 가능합니다.) 구불구불한 화살은 와 같은 장식으로 얻을 수 있습니다 coil. 예시를 추가하고 싶다면 알려주세요.

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\tikzset{Rightarrow/.style={double equal sign distance,>={Implies},->},
triple/.style={-,preaction={draw,Rightarrow}},
quadruple/.style={preaction={draw,Rightarrow,shorten >=0pt},shorten >=1pt,-,double,double
distance=0.2pt}}
\begin{tikzcd}
    a \arrow[r,triple] &    b  \arrow[r,quadruple] 
    & c\\
\end{tikzcd}
\end{document}

여기에 이미지 설명을 입력하세요

답변2

이제 아름다운 패키지가 있습니다.tikz-nfoldJonathan Schulz가 이 문제에 대한 간단한 해결책을 제시합니다. TikZ 화살표 스타일을 지정하여 scaling nfold=3(또는 단순히 nfold=3고정된 화살표 너비를 원하는 경우) 삼중 화살표를 그릴 수 있으며, 더 높은 화살표에도 유사하게 사용할 수 있습니다.

내 경험에 따르면 이는 다른 솔루션보다 미학적으로 더 보기 좋은 화살표를 생성하며 교환 다이어그램에서 흔히 볼 수 있는 다양한 다른 TikZ 스타일과 호환됩니다.

예:

\documentclass{article}

\usepackage{tikz-cd}
\usetikzlibrary{nfold}

\begin{document}

\begin{tikzcd}
    A \arrow[r, Rightarrow, scaling nfold=3] & B \\
    C \arrow[r, Rightarrow, nfold=3] & D
\end{tikzcd}

\end{document}

생산물:

두 개의 삼중 화살

관련 정보