TikZ 中向右弯曲或向左弯曲的含义?

TikZ 中向右弯曲或向左弯曲的含义?

以下代码实际上来自 PGF 手册。它运行良好,但我很难理解它(我是 TikZ 新手)

\documentclass{article} %  say
\usepackage{tikz}
\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri}
\begin{document}
\begin{tikzpicture}
[place/.style={circle,draw=blue!50,fill=blue!20,thick,
             inner sep=0pt,minimum size=6mm},
transition/.style={rectangle,draw=black!50,fill=black!20,thick,
                  inner sep=0pt,minimum size=4mm}]
\node[place] (waiting) {};
\node[place] (critical) [below=of waiting] {};
\node[place] (semaphore) [below=of critical]{};
\node[transition] (leave critical) [right=of critical]{};
\node[transition] (enter critical) [left=of critical]{};
\draw [->] (enter critical) to                 (critical);
\draw [->] (waiting)        to [bend right=45] (enter critical);
\draw [->] (enter critical) to [bend right=45] (semaphore);
\end{tikzpicture}
\end{document}

上面的内容将给我如下结果:

在此处输入图片描述

我的问题是:我该如何理解这两者bend right?关于从顶部的圆圈开始到左侧的正方形的长箭头,在我看来更像是向左弯曲。它在什么意义上是向右弯曲?从左侧的正方形开始到底部的圆圈的长箭头也存在同样的问题。

答案1

箭头向左弯曲,但您却将它向右弯曲:

\documentclass[border=5pt]{article}
\usepackage{tikz}
\begin{document}
\centering 
\begin{tikzpicture}
\draw [thick, -latex] (0,0) to (0,3);
\end{tikzpicture}

\begin{tikzpicture}[trim left=0pt, trim right=0pt]
\draw [thick, -latex] (0,0) to [bend right] (0,3);
\draw [line width=5pt, -stealth, red!80!blue] (-1,1.5) -- (0.4,1.5);
\end{tikzpicture}


\end{document}

答案2

(waiting)不要从到画一条直线(enter critical),而是在预期方向的右侧画一条弯线。

此外,由于预期角度是 45 度,如果再弯曲 45 度,线条看起来就像以 90 度角分开。

尝试这个:

  • 画一条不弯曲的线,你会看到“预期”的线
  • 使用bend left选项来比较
  • 尝试改变弯曲角度。

相关内容