\section{Marks, arrows and lines}
\label{sec:marcas}

Marks go on an intersection, with or without a stone: shapes (circle, triangle, cross, \ldots), numbers in sequence or any text.

\begin{command}{\mark\opt{\oarg{options}}\marg{intersection}}

	Draws a mark on the intersection. The options choose its shape and its style.
\end{command}

\begin{command}{\marks\opt{\oarg{options}}\marg{intersection \opt{, intersection, ...}}}

	Like |\mark|, with several intersections (p.~\pageref{subsec:sintaxis-de-coordenadas}).
\end{command}

|\mark| and |\marks| are \TeX\ primitives. So as not to override them, the |\mark| and |\marks| macros of \pgfgoname\ only exist inside the |goban| environment. Outside it they are still the primitives, so page marks and headers are not affected.

\begin{key}{/pgfgo/mark = \meta{options} (default cross)}

	The shape of the mark. Without a shape, it is a cross (|cross|).

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/circle}

	A circle.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[circle]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/triangle}

	A triangle.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[triangle]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/square}

	A square.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[square]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/cross}

	A cross.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[cross]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/filled square}

	A filled square.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[filled square]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/filled circle}

	A filled circle.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[filled circle]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/t-circle}

	A small circle, with the fill of the stones of the player and the border of the grid. It is the mark of Black's territory.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[t-circle]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/t-square}

	Like |t-circle|, but square. It is the mark of White's territory and of the neutral points.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[t-square]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/hatched lines}

	A hatching of crossed lines.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[hatched lines]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/sequence=\meta{options} (default from = 1)}
	Numbers a series of marks in order. The font, the size and the color of the numbers are chosen with |label| (|label = {font = \bfseries, color = red}|), as the text of |custom|. The marks are numbered in the order of the coordinates (p.~\pageref{subsec:orden-coordenadas}); if they have no fixed order, like a rectangle, |sequence| warns.

	\begin{codeexample}[]
		\begin{goban}[5, partial = B2:D4]
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[sequence]{C3,B3,C4}
			\marks[sequence = {format = Alph}, label = {font = \bfseries}]{B2,D2,D4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/sequence/true}
	Turns the sequence on. It is the same as |sequence| alone.
\end{key}

\begin{key}{/pgfgo/mark/sequence/false}
	Turns the sequence off (for example, one turned on with |\pgfgoset|).
\end{key}

\begin{key}{/pgfgo/mark/sequence/format = \meta{format}}
	Turns the sequence on and chooses the format of the numbers. It is the same as |sequence| with |label = {format = ...}| (see |label/format|).
\end{key}

\begin{key}{/pgfgo/mark/sequence/from=\meta{number}}

	Number of the first mark.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[sequence = {from = 3}]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}




\begin{key}{/pgfgo/mark/dim}
	Dims the point: covers it with the color of the background of the board, translucent, over the stone and the grid. It is what |\sgf| draws for the property |DD|.

	\begin{codeexample}[]
		\begin{goban}[5]
			\stones[b]{B2, C3}\stone[w]{D4}
			\marks[dim]{A1:5, B2}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/custom=\meta{token list}}

	A mark with any content: a text, a symbol (``!'', ``?'') or even a drawing.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[custom = {!}]{C3}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[custom = {\tikz{\node[rounded corners, draw, inner sep = 1em, red]{\dots};}}]{C3}
		\end{goban}
	\end{codeexample}
\end{key}


\label{subsec:marcaspropias}\begin{command}{\pgfgodefinemark\opt{\oarg{options}}\marg{name}\marg{pgf code}}
	Defines a new mark, called \meta{name}, which is used like the others: in |\marks|, in the option |mark| of the stones and of the players, and in |\territory|. It is drawn in the same layers as the other marks; on an empty point, it covers the grid with a circle of the color of the background. A mark with the name of another one replaces it.

	The \meta{pgf code} is drawn with the origin at the point. Coordinates without a unit (those of |\pgfpointxy| and those of Ti\emph{k}Z) are measured in stone radii: |(0,0) circle (1)| has the size of the stone. The color of the lines is |mark/line/color| of the player; the fill color, |mark/fill/color|; and the width of the lines, |mark/line/width|. Those two colors are also called |pgfgomarkline| and |pgfgomarkfill|. With |mark/scale|, the mark changes size like the others.

	With |\pgfgodefinemark[image = {file = |\meta{file list}|, width = |\meta{dimension}|}]|\marg{name}, without \meta{pgf code}, the mark is an image (or one of several): see |image| below.

	\begin{codeexample}[]
		\pgfgodefinemark{diamond}{
			\pgfpathmoveto{\pgfpointxy{0}{0.7}}
			\pgfpathlineto{\pgfpointxy{0.7}{0}}
			\pgfpathlineto{\pgfpointxy{0}{-0.7}}
			\pgfpathlineto{\pgfpointxy{-0.7}{0}}
			\pgfpathclose
			\pgfusepath{fill, stroke}}
		\pgfgodefinemark{bar}{\draw (-0.5,-0.5) -- (0.5,0.5);}
		\pgfgodefinemark[image = {file = pgfgo-star.pdf}]{star}

		\begin{goban}[5, partial = B2:D4]
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[diamond]{C2, B4, B2}
			\marks[bar]{D3, C3}
			\marks[star]{D4}
		\end{goban}
	\end{codeexample}
\end{command}

\begin{key}{/pgfgo/define mark/image = \meta{options}}
	The image (PNG, JPG or PDF) of a mark defined with |\pgfgodefinemark|. It is drawn centered on the point; the colors of the marks do not apply.
\end{key}

\begin{key}{/pgfgo/define mark/image/file = \meta{file list}}
	The file of the image, or several separated by commas. With several, each point uses one of them, chosen at random as in |stone/image/file|: the same point always gets the same file.

	\begin{codeexample}[]
		\pgfgodefinemark[image = {file = {pgfgo-shell-white-1.png, pgfgo-shell-white-3.png, pgfgo-shell-white-5.png}, width = 1em}]{shells}

		\begin{goban}[5, partial = A1:E3]
			\marks[shells]{A:E 1:3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/define mark/image/width = \meta{dimension} (initially 1.2 stone radii)}
	The width of the image; the height keeps the proportion. Without this \emph{key}, the mark has the size of the circle (|circle|), and changes with the radius of the stones.

	\begin{codeexample}[]
		\pgfgodefinemark[image = {file = pgfgo-star.pdf}]{star}
		\pgfgodefinemark[image = {file = pgfgo-star.pdf, width = 0.6em}]{small star}

		\begin{goban}[5, partial = B2:D4]
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[star]{C3, B4}
			\marks[small star]{B3, D3}
		\end{goban}
	\end{codeexample}
\end{key}


\begin{key}{/pgfgo/mark/scale = \meta{float} (initially 1)}
	The size of the mark with respect to the usual one: the shapes, the images and the text.

	\begin{codeexample}[]
		\begin{goban}[5, partial = B2:D4]
			\stones[b]{C2}
			\marks[triangle, scale = 1.5]{C2, B3}
			\marks[circle, scale = 0.6]{D4}
		\end{goban}
	\end{codeexample}
\end{key}


\begin{key}{/pgfgo/mark/line = \meta{options}}
	Options of the stroke of the mark.
\end{key}


\begin{key}{/pgfgo/mark/line/color = \meta{color}}
	Color of the stroke.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[triangle, line = {color = red}]{C3}
		\end{goban}
	\end{codeexample}
\end{key}


\begin{key}{/pgfgo/mark/line/width = \meta{dimension}}

	Width of the stroke.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[triangle]{C3}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[triangle, line = {width = 0.1pt}]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/line/opacity = \meta{float} (initially 1)}
	Opacity of the stroke.
\end{key}

\begin{key}{/pgfgo/mark/fill = \meta{options} (default true)}
	Fill of the filled marks (|filled square|, |filled circle| and |hatched lines|) and color |pgfgomarkfill| of your own marks (p.~\pageref{subsec:marcaspropias}).
\end{key}

\begin{key}{/pgfgo/mark/fill/true}
	The filled marks are filled with |fill/color|. It is the initial value.
\end{key}

\begin{key}{/pgfgo/mark/fill/false}
	The filled marks are not filled, so they are not seen.
\end{key}

\begin{key}{/pgfgo/mark/fill/color = \meta{color}}

	Color of the fill (initially, gray).

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[filled circle, fill = {true, color = red}]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/fill/opacity = \meta{float} (initially 1)}
	Opacity of the fill.

	\begin{codeexample}[width=4cm]
		\pgfgoset{players = {white = {mark = {
			fill = {color = red, opacity = 0.5},
			line = {opacity = 0.3}}}}}

		\begin{goban}[3]
			\stones[w]{A1}
			\marks[w, filled square]{A1, B2}
			\marks[w, triangle]{C3, A3}
		\end{goban}
	\end{codeexample}
\end{key}


\begin{key}{/pgfgo/mark/label = \meta{option}}
	Options of the text of the marks that have one (|sequence| and |custom|).
\end{key}


\begin{key}{/pgfgo/mark/label/color = \meta{color}}

	Color of the text.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[custom = {!}, label = {color = red}]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/font = \meta{font commands}}
	Font of the labels of the marks (|sequence| and |custom|).

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[sequence, label = {font = \itshape}]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/font size = \meta{dimension}}
	Size of the text. If it is not set, it adjusts according to the number of characters.
\end{key}

\label{key:kanji}\begin{key}{/pgfgo/mark/label/format=\meta{options} (initially arabic)}

	Format of the numbers of |sequence|: |arabic|, |alph|, |Alph|, |roman|, |Roman| or |kanji|.

	Kanji need a font that has them, chosen with |label/font| (of the marks or of the moves). It has to be a \LaTeX\ family: with |fontspec|, |\newfontfamily\kanji{ipaexm.ttf}| and |font = \kanji|; without |fontspec|, with Lua\LaTeX, it can be declared as in this example (in the preamble). A \TeX\ |\font| does not work, because it does not change size.

	\begin{codeexample}[width=4cm]
		% In the preamble:
		% \DeclareFontFamily{TU}{ipaex}{}
		% \DeclareFontShape{TU}{ipaex}{m}{n}{<->file:ipaexm.ttf}{}
		% \DeclareFontShape{TU}{ipaex}{bx}{n}{<->ssub*ipaex/m/n}{}
		\begin{goban}[3, scale = 1.6]
			\marks[sequence = {format = kanji, from = 9},
				label = {font = \fontfamily{ipaex}\selectfont}]{A1, B2, C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/arabic}

	Arabic numbers. It is the initial value.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[label = {format = arabic}, sequence]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/alph}

	Lowercase letters.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[label = {format = alph}, sequence]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/Alph}

	Uppercase letters.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[label = {format = Alph}, sequence]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/roman}

	Lowercase Roman numbers.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[label = {format = roman}, sequence]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/Roman}

	Uppercase Roman numbers.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[label = {format = Roman}, sequence]{C3,B3,C4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/label/format/kanji}
	Numbers in kanji ({\pgfgokanji 一, 二, …, 十, 十一, …, 百}), like those of |goban/label/columns = kanji|.
\end{key}



\begin{key}{/pgfgo/mark/black}

	The mark belongs to the first player, with its style.

	\begin{codeexample}[]
		\pgfgoset{goban = {5, partial = B2:D4}}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[triangle]{C3}
		\end{goban}

		\begin{goban}
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\mark[black, t-square]{C3}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/white}

	The mark belongs to the second player, with its style.
\end{key}

\begin{key}{/pgfgo/mark/neutral}

	The mark belongs to the neutral player.

	\begin{codeexample}[]
		\begin{goban}[5, partial = B2:D4]
			\stones[b]{C2,D3}
			\stone[w]{B4}
			\marks[b, t-square]{B2, C3}
			\marks[w, t-square]{D2, B3}
			\marks[n, t-square]{D4}
			\marks[b, triangle]{C2, D3}
			\marks[w, triangle]{B4}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/mark/b}
	Short for |black|.
\end{key}

\begin{key}{/pgfgo/mark/w}
	Short for |white|.
\end{key}

\begin{key}{/pgfgo/mark/n}
	Short for |neutral|.
\end{key}

\begin{key}{/pgfgo/mark/forget}
	|resume| does not bring this mark, even if |marks| is asked for (p.~\pageref{subsec:recordar}).
\end{key}


\subsection{Arrows and lines}
\label{subsec:flechas}

Arrows and lines join two intersections. They are drawn on top of the stones, with a halo of the color of the background of the board that separates them from the stones and the grid. Like |\mark|, |\arrow| and |\line| only exist inside |goban|: outside, |\line| is still the \LaTeX\ command. |\sgf| draws the arrows (|AR|) and the lines (|LN|) of the file.

\begin{command}{\arrow\opt{\oarg{options}}\marg{from}\marg{to}}
	Draws an arrow from one intersection to another.

	\begin{codeexample}[]
		\begin{goban}[9]
			\stones[b]{C3, D3}\stone[w]{E5}
			\arrow{B3}{F3}
			\arrow[color = red, halo = false]{C7}{G9}
		\end{goban}
	\end{codeexample}
\end{command}

\begin{command}{\line\opt{\oarg{options}}\marg{from}\marg{to}}
	Draws a line from one intersection to another.

	\begin{codeexample}[]
		\begin{goban}[9]
			\stones[b]{C3, D4}\stone[w]{E5}
			\line{C3}{G7}
			\line[color = blue, width = 2pt]{A9}{J9}
		\end{goban}
	\end{codeexample}
\end{command}

\begin{key}{/pgfgo/arrow/color=\meta{color} (initially black)}
	Color of the arrow.
\end{key}

\begin{key}{/pgfgo/arrow/width=\meta{dimension} (initially 1.2pt)}
	Width of the arrow. The tip grows with it.
\end{key}

\begin{key}{/pgfgo/arrow/opacity=\meta{number} (initially 1)}
	Opacity of the arrow.

	\begin{codeexample}[]
		\begin{goban}[5]
			\stones[b]{C2, C4}\stone[w]{D3}
			\arrow[width = 0.4pt]{A1}{E1}
			\arrow[color = blue, width = 2.5pt]{A3}{E3}
			\arrow[color = red, opacity = 0.4, width = 2.5pt]{A5}{E5}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/arrow/dash=\meta{solid, dashed or dotted} (initially solid)}
	The stroke: solid, with dashes or with dots. The halo and the tip are always solid.
\end{key}

\begin{key}{/pgfgo/arrow/shorten=\meta{dimension} (initially 0pt)}
	Shortens both ends.

	\begin{codeexample}[]
		\begin{goban}[5]
			\stones[b]{B2}\stones[w]{D4}
			\arrow[shorten = 5pt]{B2}{D4}
			\arrow[dash = dashed, tips = both]{A5}{E5}
			\line[dash = dotted]{A1}{E1}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/arrow/bend=\meta{angle} (initially 0)}
	Draws an arc instead of a straight line: the arrow leaves turned that angle to the left and arrives turned the same, like |bend left| of \tikzname. With a negative angle, it bends to the right.

	\begin{codeexample}[]
		\begin{goban}[5]
			\stones[b]{B2}\stones[w]{D4}
			\arrow[bend = 40, shorten = 5pt]{B2}{D4}
			\line[bend = -30]{A1}{E1}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/arrow/tip=\meta{arrow tip} (initially Stealth)}
	The tip of the arrow, one of those of the \tikzname\ library |arrows.meta|, such as |Latex| or |Triangle|.
\end{key}

\begin{key}{/pgfgo/arrow/tips=\meta{end or both} (initially end)}
	Where the tip goes: only at the end, or at both ends.

	\begin{codeexample}[]
		\begin{goban}[5]
			\arrow[tip = Latex]{A1}{E1}
			\arrow[tip = Triangle, tips = both]{A3}{E3}
			\arrow[tip = {Circle[open]}]{A5}{E5}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/arrow/halo=\meta{halo options} (default true)}
	The halo around the arrow.
\end{key}

\begin{stylekey}{/pgfgo/arrow/halo/true}
	Draws the halo. It is the initial value.
\end{stylekey}

\begin{stylekey}{/pgfgo/arrow/halo/false}
	Does not draw the halo.
\end{stylekey}

\begin{key}{/pgfgo/arrow/halo/color=\meta{color}}
	Color of the halo. Without this \emph{key}, it is that of the background of the board.
\end{key}

\begin{key}{/pgfgo/arrow/halo/width=\meta{dimension} (initially 0.8pt)}
	Width of the halo on each side of the arrow.

	\begin{codeexample}[]
		\begin{goban}[5]
			\stones[b]{B1, B3, B5}\stones[w]{D1, D3, D5}
			\arrow[halo = false]{A1}{E1}
			\arrow{A3}{E3}
			\arrow[halo = {color = yellow, width = 2pt}]{A5}{E5}
		\end{goban}
	\end{codeexample}
\end{key}

\begin{key}{/pgfgo/arrow/forget}
	|resume| does not bring this arrow, even if |marks| is asked for.
\end{key}

Lines have the same options, except |tip|:

\begin{key}{/pgfgo/line/color=\meta{color} (initially black)}
	Like |/pgfgo/arrow/color|.
\end{key}

\begin{key}{/pgfgo/line/width=\meta{dimension} (initially 1.2pt)}
	Like |/pgfgo/arrow/width|.
\end{key}

\begin{key}{/pgfgo/line/opacity=\meta{number} (initially 1)}
	Like |/pgfgo/arrow/opacity|.
\end{key}

\begin{key}{/pgfgo/line/dash=\meta{solid, dashed or dotted} (initially solid)}
	Like |/pgfgo/arrow/dash|.
\end{key}

\begin{key}{/pgfgo/line/shorten=\meta{dimension} (initially 0pt)}
	Like |/pgfgo/arrow/shorten|.
\end{key}

\begin{key}{/pgfgo/line/bend=\meta{angle} (initially 0)}
	Like |/pgfgo/arrow/bend|.
\end{key}

\begin{key}{/pgfgo/line/halo=\meta{halo options} (default true)}
	Like |/pgfgo/arrow/halo|.
\end{key}

\begin{stylekey}{/pgfgo/line/halo/true}
	Like |/pgfgo/arrow/halo/true|.
\end{stylekey}

\begin{stylekey}{/pgfgo/line/halo/false}
	Like |/pgfgo/arrow/halo/false|.
\end{stylekey}

\begin{key}{/pgfgo/line/halo/color=\meta{color}}
	Like |/pgfgo/arrow/halo/color|.
\end{key}

\begin{key}{/pgfgo/line/halo/width=\meta{dimension} (initially 0.8pt)}
	Like |/pgfgo/arrow/halo/width|.
\end{key}

\begin{key}{/pgfgo/line/forget}
	Like |/pgfgo/arrow/forget|.
\end{key}

\subsection{Drawing with Ti\emph{k}Z}
\label{subsec:tikz}

A |goban| is a Ti\emph{k}Z picture, so |\draw|, |\node| and the other Ti\emph{k}Z commands can be used inside it. The unit is the distance between two lines of the board, and |(1,1)| is the lower left corner. What is drawn this way goes on top of everything, |partial = auto| does not take it into account and it is not remembered: |resume| and the views do not bring it.

\begin{command}{(go cs:\meta{intersection})}
	The coordinate system |go| gives the intersection of the board written as in |\arrow| and |\line|: |(go cs:C3)| is C3. It can be outside the board, like |(go cs:C0)|, below column C. If the coordinate is not understood, it warns (|go-coordinate|) and uses the origin, |(0,0)|.

	\begin{codeexample}[]
		\begin{goban}[9]
			\stones[b]{C3, D4}\stones[w]{E5, F4}
			\draw[red, thick, rounded corners] (go cs:B2) rectangle (go cs:E5);
			\draw[blue, ->, thick] (go cs:G7) to[bend right] (go cs:F4);
			\node[fill = white, draw] at (go cs:H8) {here?};
		\end{goban}
	\end{codeexample}
\end{command}
