费曼图-在 tikz-package 中缩短腿

费曼图-在 tikz-package 中缩短腿

如何使用 tikz-feynman 包在以下代码中缩短外部腿并使 blob 变大?

\begin{center}
\begin{tikzpicture}
    \begin{feynman}
        \vertex[blob] (m) at ( 0, 0) {\contour{white}{}};
        \vertex (a) at (-2,-2);
        \vertex (b) at ( 2,-2);
        \vertex (c) at (-2, 2);
        \vertex (d) at ( 2, 2);
        \diagram* {
            (a) -- [photon] (m) -- [photon] (c),
            (b) -- [photon] (m) -- [photon] (d),
        };
    \end{feynman}
\end{tikzpicture}
\end{center}

答案1

您正在手动指定顶点的位置,因此您只需调整顶点的坐标即可缩小线条。或者,node distance如果您使用自动放置,您可以使用更改节点之间的默认分隔:

\documentclass[tikz]{standalone}

\usepackage[compat=1.1.0]{tikz-feynman}

\begin{document}
\begin{tikzpicture}
  \def\leglength{1}
  \begin{feynman}
    \vertex[blob] (m) at (0, 0) {};
    \vertex (a) at (-\leglength,-\leglength);
    \vertex (b) at ( \leglength,-\leglength);
    \vertex (c) at (-\leglength, \leglength);
    \vertex (d) at ( \leglength, \leglength);
    \diagram* {
      (a) -- [photon] (m) -- [photon] (c),
      (b) -- [photon] (m) -- [photon] (d),
    };
  \end{feynman}
\end{tikzpicture}

\feynmandiagram [horizontal=a to b, node distance=1.5cm] {
  a -- [photon] o [blob] -- [photon] b,
  c -- [photon] o        -- [photon] d,
};
\end{document}

输出 1

输出 2

相关内容