The term visual back end
does not necessarily refer to any geometric point on the arrowhead. It is merely a parameter provided to arrow designers.
The motivation to define visual back end
in addition to back end
is clear only if we consider curved path

In this case, the arrow looks ugly because it does not lie on the path. We expect TikZ to slightly rotate the arrow. For example:

This looks a lot better as the visual back end
lies on the solid red line. The bending
library will do this job for you with the option flex
.
One may also try

This looks good too as the back end
(green dot) lies on the solid red line. The bending
library will do this job for you with the option flex'
.
The motivation to define visual tip end
is the same: when one writes -{Stealth[reversed]}
, the library needs the coordinate of the visual back end
for this reversed arrow. In this case, the visual tip end
of Stealth
will be used.
So far I told only half of the story. knowing that the arrow's visual tip end
/ back end
lies on the original path does not determine the placement of the arrowhead. The following is what TikZ does when flex=1
is used:
- shift the arrowhead so that
visual tip end
coincides the endpoint of the path;
- rotate the arrowhead so that the
visual back end
lies on the path.
Therefore, similar to what I said at the beginning of the answer, visual tip end
does not necessarily represent any geometric point. It is the arrowhead-designer's choice to assign a point as the visual tip end
, which will later be used by TikZ to position the arrowhead.
Appendix
Figures above are generated by acquiring the source code of the manual. In particular pgfmanual-en-base-arrows.tex
line 108-117. As one can easily see, the code draws the path and arrowhead separately.
\documentclass[border=9,tikz]{standalone}
\usetikzlibrary{arrows.meta,bending,calc}
\begin{document}
\begin{tikzpicture}
\draw [red!50, ,line width=1cm] (0,0) -- (4,0);
\path [tips, opacity=.25,line width=1cm, -{Stealth[black,line width=0pt,length=4cm, width=4cm, inset=1cm]}] (0,0) -- (6,0);
\draw [->,thick] (1,0) -- (8,0) node [right] {$x$-axis};
\draw [->,thick] (5,-2.25) -- (5,2.25) node [above] {$y$-axis};
\foreach \i in {-3,-2,-1,1,2} \draw (\i+5,-1mm) -- (\i+5,1mm) node [above] {\small$\i$};
\foreach \i in {-2,-1,1,2} \draw (49mm,\i) -- (51mm,\i) node [right] {\small$\i$};;
\end{tikzpicture}
\begin{tikzpicture}
\draw [red!50, ,line width=1cm] (0,-4) to[bend left] (4,0);
\draw [red] (0,-4) to[bend left] (4,0);
\path [tips, opacity=.25,line width=1cm, -{Stealth[black,line width=0pt,length=4cm, width=4cm, inset=1cm]}] (0,0) -- (6,0);
\draw [->,thick] (1,0) -- (8,0) node [right] {$x$-axis};
\draw [->,thick] (5,-2.25) -- (5,2.25) node [above] {$y$-axis};
\foreach \i in {-3,-2,-1,1,2} \draw (\i+5,-1mm) -- (\i+5,1mm) node [above] {\small$\i$};
\foreach \i in {-2,-1,1,2} \draw (49mm,\i) -- (51mm,\i) node [right] {\small$\i$};;
\end{tikzpicture}
\begin{tikzpicture}
\draw [red!50, ,line width=1cm] (0,-4) to[bend left] (4,0);
\draw [red] (0,-4) to[bend left] (4,0);
\path [tips, opacity=.25,line width=1cm, -{Stealth[black,line width=0pt,length=4cm, width=4cm, inset=1cm]}] (0,-.6) -- (6,0);
\draw [->,thick] (1,0) -- (8,0) node [right] {$x$-axis};
\draw [->,thick] (5,-2.25) -- (5,2.25) node [above] {$y$-axis};
\foreach \i in {-3,-2,-1,1,2} \draw (\i+5,-1mm) -- (\i+5,1mm) node [above] {\small$\i$};
\foreach \i in {-2,-1,1,2} \draw (49mm,\i) -- (51mm,\i) node [right] {\small$\i$};;
\end{tikzpicture}
\begin{tikzpicture}
\draw [red!50, ,line width=1cm] (0,-4) to[bend left] (4,0);
\draw [red] (0,-4) to[bend left] (4,0);
\path [tips, opacity=.25,line width=1cm, -{Stealth[black,line width=0pt,length=4cm, width=4cm, inset=1cm]}] (0,-1.3) -- (6,0);
\fill[green]($(6,0)!4cm!(0,-1.3)$)circle(.1);
\draw [->,thick] (1,0) -- (8,0) node [right] {$x$-axis};
\draw [->,thick] (5,-2.25) -- (5,2.25) node [above] {$y$-axis};
\foreach \i in {-3,-2,-1,1,2} \draw (\i+5,-1mm) -- (\i+5,1mm) node [above] {\small$\i$};
\foreach \i in {-2,-1,1,2} \draw (49mm,\i) -- (51mm,\i) node [right] {\small$\i$};;
\end{tikzpicture}
\begin{tikzpicture}
\draw [red!50, ,line width=1cm] (0,0) -- (4,0);
\path [tips, opacity=.25,line width=1cm, -{Stealth[black,line width=0pt,length=4cm, width=4cm, inset=1cm,reversed]}] (0,0) -- (6,0);
\draw [->,thick] (1,0) -- (8,0) node [right] {$x$-axis};
\draw [->,thick] (5,-2.25) -- (5,2.25) node [above] {$y$-axis};
\foreach \i in {-3,-2,-1,1,2} \draw (\i+5,-1mm) -- (\i+5,1mm) node [above] {\small$\i$};
\foreach \i in {-2,-1,1,2} \draw (49mm,\i) -- (51mm,\i) node [right] {\small$\i$};;
\end{tikzpicture}
\begin{tikzpicture}[opacity=.25,scale=5]
\draw [red,line width=1cm,-{Stealth[black,line width=0pt,length=4cm, width=4cm,inset=1cm,flex=0]},preaction={draw,-}]
(-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0);
\end{tikzpicture}
\begin{tikzpicture}[opacity=.25,scale=5]
\draw [red,line width=1cm,-{Stealth[black,line width=0pt,length=4cm, width=4cm,inset=1cm,flex=1]},preaction={draw,-}]
(-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0);
\end{tikzpicture}
\begin{tikzpicture}[opacity=.25,scale=5]
\draw [red,line width=1cm,-{Stealth[black,line width=0pt,length=4cm, width=4cm,inset=1cm,flex'=1]},preaction={draw,-}]
(-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0);
\end{tikzpicture}
\end{document}
->
becomes-<
), the new visual back end is negative the old visual tip end.