joining two points on an arc
Apparently you don't mind what has to be the exact radius of the arc. You only want a curved path between those two points. You can use then (point1) to[bend right] (point2)
.
However, the way you built the figure causes that you have to take into account the radius of the "big gray dots", in order to properly compute the coordinates of the starting and ending points. This is cumbersome.
It is much easier if instead of using circle
primitives to draw those big dots, you use circular shaped nodes, and then tikz will do the computations for you.
This is an alternative way to code the same figure, which is more easy to read and to modify. I defined a style for the big dots, which makes easy to change their diameter (minimum size
option) or their color, globally. I also gave names to those nodes, and so
later I can refer to those names when drawing arrows.
\usetikzlibrary{arrows}
\tikzset{
big dot/.style={
circle, inner sep=0pt,
minimum size=3mm, fill=gray
}
}
\begin{tikzpicture}[line cap = round, line join = round, >=triangle 45]
\node[big dot] (origin) at (0,0) {};
\node[big dot] (A) at (3,0) {};
\node[big dot] (B) at (-1, 3) {};
\draw[->] (origin) -- (A);
\draw[->] (origin) -- (B);
\draw (A) -- (B);
\draw[->] (A) -- +(1,0);
\draw[->] (A) to[bend right] (B);
\end{tikzpicture}
It's okay something like this. Certainly not what would be called a sophisticated answer
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows, decorations.markings, calc, fadings, decorations.pathreplacing, patterns, decorations.pathmorphing, positioning}
\begin{document}
\begin{tikzpicture}[line cap = round, line join = round, >=triangle 45]
\draw[step=.5cm,gray!50,very thin] (-2.0cm,-1.0cm) grid (4.cm,4.0cm);
\draw[->] (0,0) -- (3,0);
\draw (3.15,0) -- (-1.05,3.15);
\filldraw[gray] (3.15,0) circle (.15cm);
\draw[->] (3.3,0) -- (4,0);
\draw[->] (0,0) -- (-1,3);
\filldraw[gray] (-1.05,3.15) circle (.15cm);
\filldraw[gray] (0,0) circle (.15cm);
\draw[red,<-] (3.15cm,0.0cm) arc (0:104:3.29);
\end{tikzpicture}
\end{document}