如何旋转/反射费曼图的线条 - TikZ-Feynman

如何旋转/反射费曼图的线条 - TikZ-Feynman

我正在尝试通过 TikZ-Feynman 包制作以下费曼图,但我无法按照自己的意愿倾斜/旋转线条。例如,对于第一个,我无法将所有输入项保留在左侧。我四处搜索,但没有找到适合我的情况的。

在此处输入图片描述

第一个示例

\begin{equation}
    \feynmandiagram [small, horizontal=i3 to f1] {
        i2 -- [fermion, edge label=\(e^+\)] f1 -- [fermion, edge label=\(e-\)] i1,
        i3 -- [photon, edge label=\(\gamma\)] f1,
    };
\end{equation}

答案1

默认情况下,TikZ-Feynman命令使用弹簧布局算法来放置所有边。您的图表需要手动放置每个顶点。

\documentclass[border=10]{standalone}
\usepackage{tikz}
\usepackage{tikz-feynman}

\begin{document}
\begin{tikzpicture}
    \begin{feynman}
        \vertex (a);
        \vertex[right=of a] (b);
        \vertex[below right=of a] (f1);
        \vertex[above right=of a] (f2);
        \diagram*{
            (a) -- [photon, edge label=\(\gamma\)] (b),
            (a) -- [fermion, edge label'=\(e^-\)] (f1),
            (a) -- [anti fermion, edge label=\(e^+\)] (f2),
        };
    \end{feynman}
\end{tikzpicture}
\begin{tikzpicture}
    \begin{feynman}
        \vertex (a);
        \vertex[right=of a] (b);
        \vertex[above left=of b] (f1);
        \vertex[above right=of b] (f2);
        \diagram*{
            (a) -- [photon, edge label'=\(\gamma\)] (b),
            (b) -- [anti fermion, edge label'=\(e^-\)] (f1),
            (b) -- [fermion, edge label'=\(e^-\)] (f2),
        };
    \end{feynman}
\end{tikzpicture}
\begin{tikzpicture}
    \begin{feynman}
        \vertex (a);
        \vertex[right=of a] (b);
        \vertex[below right=of b] (f1);
        \vertex[above right=of b] (f2);
        \diagram*{
            (a) -- [photon, edge label=\(\gamma\)] (b),
            (b) -- [anti fermion, edge label'=\(e^+\)] (f1),
            (b) -- [fermion, edge label'=\(e^-\)] (f2),
        };
    \end{feynman}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容