使用 tikz 绘制曲线

使用 tikz 绘制曲线

我正在尝试绘制下图的四个面板tikz 在此处输入图片描述

使用以下脚本,我可以绘制左侧面板。

\documentclass[11pt]{article}
\usepackage{tikz}
\usetikzlibrary{positioning,arrows}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{decorations.markings}


\begin{document}
\tikzset{
particle/.style={thick,draw=blue, postaction={decorate},
    decoration={markings,mark=at position .5 with {\arrow[blue]{triangle 45}}}},
gluon/.style={decorate, draw=black,
    decoration={snake,aspect=0.53,segment length=5pt,amplitude=3pt}}
 }

\begin{tikzpicture}[node distance=1cm and 1.5cm]
\coordinate[label=left:$ $] (e1);
\coordinate[left=of e1,label=left:$ $] (e00);
\coordinate[right=of e1,label=left:$ $] (e0);
\coordinate[above right=of e1,label=above:$ $] (e2);
\coordinate[below right=of e1,label=below:$ $] (e3);
\coordinate[right=of e3,label=right:$ $] (e4);
\coordinate[right=of e2,label=right:$ $] (e5);


\coordinate[right=of e0,label=right:$ + $] (e6);
\coordinate[right=of e6,label=right:$ $] (e60);

\coordinate[right=of e60,label=left:$ $] (e7);
\coordinate[left=of e7,label=right:$ $] (e700);
\coordinate[above right=of e7,label=above:$ $] (e8);
\coordinate[below right=of e7,label=below:$ $] (e9);
\coordinate[right=of e9,label=right:$ $] (e10);
\coordinate[right=of e8,label=right:$ $] (e11);

\draw[gluon] (e00) -- (e1);
\draw[particle] (e1) -- (e2);
\draw[particle] (e3) -- (e1);
\draw[particle] (e2) -- (e3);
\draw[gluon] (e3) -- (e4);
\draw[gluon] (e2) -- (e5);
\fill[black] (e1) circle (.1 cm);
\fill[black] (e2) circle (.1 cm);
\fill[black] (e3) circle (.1 cm);

\draw[gluon] (e700) -- (e7);
\draw[particle] (e7) -- (e8);
\draw[particle] (e9) -- (e7);
\draw[particle] (e8) -- (e9);
\draw[gluon] (e9) -- (e11);
\draw[gluon] (e8) -- (e10);
\fill[black] (e7) circle (.1 cm);
\fill[black] (e9) circle (.1 cm);
\fill[black] (e8) circle (.1 cm);

\end{tikzpicture}
\end{document}


右侧面板与左侧面板非常相似,只是线条不同。如有任何建议,我们将不胜感激。

答案1

可能只有你知道这些空标签是干什么用的,但我保留了它们。答案是,你可以使用inout键来绘制弯曲的曲线。

\draw[gluon] (e1) to[out=90,in=180] (e00);
\draw[gluon] (e7) to[out=-90,in=180] (e11);

当然,你必须适当地设置坐标。

\documentclass[11pt]{article}
\usepackage{tikz}
\usetikzlibrary{positioning,arrows}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{decorations.markings}


\begin{document}
\tikzset{
particle/.style={thick,draw=blue, postaction={decorate},
    decoration={markings,mark=at position .5 with {\arrow[blue]{triangle 45}}}},
gluon/.style={decorate, draw=black,
    decoration={snake,aspect=0.53,segment length=5pt,amplitude=3pt}}
 }

\begin{tikzpicture}[node distance=1cm and 1.5cm]
\coordinate[label=left:$ $] (e1);
\coordinate[right=of e1,label=left:$ $] (e0);
\coordinate[above right=of e1,label=above:$ $] (e2);
\coordinate[below right=of e1,label=below:$ $] (e3);
\coordinate[right=of e3,label=right:$ $] (e4);
\coordinate[right=of e2,label=right:$ $] (e5);
\coordinate[above=of e5,label=left:$ $] (e00);


\coordinate[right=of e0,label=right:$ + $] (e6);
\coordinate[right=of e6,label=right:$ $] (e60);

\coordinate[right=of e60,label=left:$ $] (e7);
\coordinate[above right=of e7,label=above:$ $] (e8);
\coordinate[left=2cm of e8,label=right:$ $] (e700);
\coordinate[below right=of e7,label=below:$ $] (e9);
\coordinate[right=of e9,label=right:$ $] (e10);
\coordinate[below=of e10,label=right:$ $] (e11);

\draw[gluon] (e1) to[out=90,in=180] (e00);
\draw[particle] (e1) -- (e2);
\draw[particle] (e3) -- (e1);
\draw[particle] (e2) -- (e3);
\draw[gluon] (e3) -- (e4);
\draw[gluon] (e2) -- (e5);
\fill[black] (e1) circle (.1 cm);
\fill[black] (e2) circle (.1 cm);
\fill[black] (e3) circle (.1 cm);

\draw[gluon] (e700) -- (e8);
\draw[particle] (e7) -- (e8);
\draw[particle] (e9) -- (e7);
\draw[particle] (e8) -- (e9);
\draw[gluon] (e9) -- (e10);
\draw[gluon] (e7) to[out=-90,in=180] (e11);
\fill[black] (e7) circle (.1 cm);
\fill[black] (e9) circle (.1 cm);
\fill[black] (e8) circle (.1 cm);

\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

一个非常简单的解决方案是使用 绘制一条曲线to[out=foo,in=bar],如下所示:

\coordinate[above right=2cm and 3cm of e1,label=left:$ $] (e00);
\draw[gluon] (e00) to[out=180,in=90] (e1);

结果是:

胶子

相关内容