Four styles for middle arrow tips are predefined: |-->--|, |--o--|, |--x--| and |--/--|.
\subsection{Controllable middle arrow tips: \texttt{-->--} and \protect\cmd{\settzmidarrow}}
The middle arrow tip style \ixxw{-->--} prints a middle arrow tip of |stealth| by default.
It accepts one argument that changes the position (|0.5| by default) of a \iisw{middle arrow tip}, like |-->--=.75|.
\paragraph{How to control middle arrow tips}
The default options for middle arrow tips are |-|, |thin|, |solid|, and |shorten >=0|, and |bend right=0|. The defaults can be changed by |\settzmidarrow|.
The macro \icmd{\settzmidarrow} controls the position, style, and other options of middle arrow tips. The effect is valid until the end of the |tikzpicture| environment, unless changed again.
\begin{tzdef}
% syntax:
\settzmidarrow<position>{<arrow tip style>}[<opt>]
% all arguments are optional
% defaults:
<0.5>{stealth}[-,thin,solid,shorten <=0,shorten >=0,bend right=0]
\end{tzdef}
\begin{tzcode}{.3}
% various arrow tip styles: arrows.meta
\begin{tikzpicture}
\tzhelplines(4,3)
\settzmidarrow{Circle[open]}[blue,scale=2]
\tzline[-->--](0,3)(4,3)
\tikzset{>=to} %%
\settzmidarrow{>>>}[blue,scale=2]
\tzline[-->--](0,2.5)(4,2.5)
\settzmidarrow<.25>{Rays}[blue,scale=2]
\tzline[-->--=.75,blue,thick](0,2)(4,2)
\tzto[-->--,->,red,out=45](0,0)(4,1)
\end{tikzpicture}
\end{tzcode}
You can use various styles of arrow tips. (See \Tikz\ manual on |arrows.meta| library, for more details.)
\subsection{Fixed middle arrow tip styles: \texttt{--o--}, \texttt{--x--}, \texttt{--/--}}
Three styles for middle arrow tips are predefined: \xem{circle} |--o--| , \xem{cross} |--x--| , and \xem{diagonal} |--/--| middle arrow tips.
These middle arrow tip styles are fixed and cannot be changed.
|\settzmidarrow| can only be used with |[<opt>]| to control these middle arrow tips.
The other options |<position>| and |{<arrow tip style>}| options are ignored for these styles.
\paragraph{Circle middle arrow tips:}
The circle middle arrow tip style \ixxw{--o--} takes one argument to change the position (|0.5| by default).
The circle is drawn like this:
\begin{verbatim}
\draw [<opt>] (0,0) circle (1.2pt) ;
\end{verbatim}
|\settzmidarrow| controls the circle arrow tip with |<opt>|.
The |raise| value of a brace is |5pt| by default and the value can be changed by the first curly brace optional argument |{<raise>}|.
The |amplitude| of a brace is |5pt| by default. You can control the amplitude by writing the option |amplitude=<dim>| in the second bracket option |[<decoration opt>]|.
\begin{tztikz}
\tzbrace[thick](0,0)(3,1) % works like:
\draw [thick,decorate,decoration={calligraphic brace, amplitude=5pt, raise=5pt}]
(0,0) to (3,1);
\end{tztikz}
The \iisw{swap version} \icmd{\tzbrace'} swaps the coordinates.
So it prints a mirror image of |\tzbrace|.
For example, |\tzbrace'(0,0)(3,1)| is equivalent to |\tzbrace(3,1)(0,0)|.
You can also move a brace by specifying the option |<shift coor>| immediately before the the first mandatory coordinate.
The empty shift option |<>| is not allowed.
\icmd{\tzsnake} connects two points with a snaked line, with many default values, using \Tikz's |to| operation.
\begin{tztikz}
\tzsnake(0,1)(3,2) % works like
\draw [ decorate , decoration={ %% many defaults
snake,
segment length=5pt, % controlled by \tzsnake
amplitude=2.5pt,
pre length=5pt,
post length=5pt
}
] (0,1) to (3,2) ;
\end{tztikz}
The key |segment length| is controlled by the first curly brace option and you should write down all the other keys in the second bracket option |[<decoration opt>]| to change the values. Not specifying the option |{<segment length>}|, when the first bracket option is empty, you need empty brackets |[]|, like |\tzsnake[][<decoration opt>]...|.
The plus version \icmd{\tzsnake+} uses the second mandatory coordinate as a relative coordinate to the first. Everything else is the same as in |\tzsnake|.