% !TeX root = mercatormap.tex
% !TeX encoding=UTF-8
% !TeX spellcheck=en_US
% include file of mercatormap.tex (manual of the LaTeX package mercatormap)
\clearpage
\section{Markers}%
As described before, a map can be amended by arbitrary \tikzname\ code
using map coordinates.
For highlighting places or adding markers, the \refCom{mrcmarker} macro
may be helpful which provides some predefined marker types.

%-------------------------------------------------------------------------------
\subsection{Marker Settings}

\begin{docCommand}{mrcmarker}{\marg{options}}
  Places a marker according to the given \meta{options} on the map.
  All \meta{options} share the common prefix |/mermap/marker/|.
  Different \refKey{/mermap/marker/type} settings are available which are
  more or less customizable.

\tikzsetnextfilename{marker_mrcmarker}%
\begin{dispExample}
% \mrcsetapikey{thunderforest}{YOUR-API-KEY} % registered key
\begin{tikzpicture}
  \mrcmap[type=reference, position=48.15:11.6,
    flex reference scale=500 000,
    source=thunderforest neighbourhood,
    tex width=\linewidth,tex height=4cm]{}
  \mrcdrawmap
  \node[below,font=\fontsize{7pt}{7pt}\sffamily] at (mrcmap.south)
    {\mrcmapattribution};
  \mrcdrawnetwork
  \mrcclipmap
  \mermapsetmarker{draw=red, fill=red!20!white, font=\sffamily\footnotesize}
  \mrcmarker{type=classic, position=48.15:11.2, contents={A}, radius=0.5mm}
  \mrcmarker{type=pin,     position=48.15:11.3, contents={B}}
  \mrcmarker{type=pinflip, position=48.15:11.4, contents={C}}
  \mrcmarker{type=drop,    position=48.15:11.5, contents={D}}
  \mrcmarker{type=knob,    position=48.15:11.6, contents={E}}
  \mrcmarker{type=pictodropring, position=48.15:11.7, contents={F}}
  \mrcmarker{type=pictoknobring, position=48.15:11.8, contents={G}}
  \mrcmarker{type=ringx,   position=48.15:11.9, contents={H}}
  \mrcmarker{type=markx,   position=48.15:12,   contents={I}}
\end{tikzpicture}
\end{dispExample}
\end{docCommand}


\begin{docCommand}{mermapsetmarker}{\marg{options}}
  Sets \meta{options} for all following markers inside the current \TeX\ group.
  All options share the common prefix |/mermap/marker/|, e.g. for setting
  \refKey{/mermap/marker/type} use
  \begin{dispListing}
    \mermapsetmarker{type=pin}
  \end{dispListing}
  Also see \refCom{mermapset} and \refCom{mermapsetsupply}.
\end{docCommand}

\pagebreak

\begin{docMrcKey}[marker]{first options}{=\meta{options}}{no default, initially unset}
  The given list of \meta{options} is used inside every \refCom{mrcmarker}
  \emph{before} the options of \refCom{mrcmarker}.
\end{docMrcKey}

\begin{docMrcKey}[marker]{last options}{=\meta{options}}{no default, initially unset}
  The given list of \meta{options} is used inside every \refCom{mrcmarker}
  \emph{after} the options of \refCom{mrcmarker}.
\end{docMrcKey}

\begin{docMrcKey}[marker]{latitude}{=\meta{latitude}}{no default, initially |12|}
  Latitude degree of the place marker.
  It is accessible as \docAuxCommand{mrcmarkerlatitude} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{lat}{=\meta{latitude}}{no default, initially |12|}
  Alias for \refKey{/mermap/marker/latitude}.
\end{docMrcKey}

\begin{docMrcKey}[marker]{longitude}{=\meta{longitude}}{no default, initially |49|}
  Longitude degree of the place marker.
  It is accessible as \docAuxCommand{mrcmarkerlongitude} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{lon}{=\meta{longitude}}{no default, initially |49|}
  Alias for \refKey{/mermap/marker/longitude}.
\end{docMrcKey}

\begin{docMrcKey}[marker]{position}{=\meta{place latitude}:\meta{place longitude}}{no default, initially |12:49|}
  Sets the latitude degree and the longitude degree of the place marker.
\end{docMrcKey}

\begin{docMrcKey}[marker]{named position}{=\meta{name}}{style, no default}
  Sets the latitude degree and the longitude degree of the place marker
  to the \emph{named position} denoted by \meta{name}, see \Fullref{sec:names_positions}.
\end{docMrcKey}

\begin{docMrcKey}[marker]{use inside}{=\meta{area}}{no default, initially |map|}
  The place marker is used or ignored according to its belonging inside the
  given \meta{area}. Feasible values for \meta{area} are:
  \begin{itemize}
  \item\docValue{map}: Use inside map.
  \item\docValue{vicinity}: Use inside map plus vicinity, see \refKey{/mermap/vicinity}.
  \end{itemize}
\end{docMrcKey}


\begin{docMrcKey}[marker]{contents}{=\meta{text}}{no default, initially empty}
  Sets \meta{text} for displaying inside the marker, if
  the marker type supports such a thing.
  It is accessible as \docAuxCommand{mrcmarkercontents} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{pictocontents}{=\meta{code}}{no default, initially empty}
  Sets \tikzname\ \meta{code} for displaying inside the marker, if
  the marker type supports such a thing.
  It is accessible as \docAuxCommand{mrcmarkerpictocontents} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{alias}{=\meta{text}}{no default, initially |noname|}
  The position of the marker is available as \tikzname\ coordinate by
  the given \meta{text}, e.g. to draw to or from the marker.
\end{docMrcKey}

\begin{docMrcKey}[marker][doc updated=2020-05-04]{uuid}{=\meta{uuid}}{no default, initially empty}
  Sets a \meta{uuid} for unique identification of markers.
  It is accessible as \docAuxCommand{mrcmarkeruuid} (use read-only)
  and \docAuxCommand[doc sort index=mermap_marker_uuid_tl]{l_mermap_marker_uuid_tl} (use read-only).
  The \meta{uuid} is provided for user applications.
\end{docMrcKey}

\begin{docMrcKeys}[
  doc keypath     = marker,
  doc name        = generic,
  doc parameter   = {=\meta{text}},
  doc description = {no default, initially empty},
  doc new         = 2020-05-04,
]{}
  Sets \meta{text} as generic content for user applications.
  It is accessible as \docAuxCommand{mrcmarkergeneric} (use read-only)
  and \docAuxCommand[doc sort index=mermap_marker_generic_tl]{l_mermap_marker_generic_tl} (use read-only).
\end{docMrcKeys}


\begin{docMrcKey}[marker]{category}{=\meta{category}}{no default, initially empty}
  Sets a \meta{category} to group markers.
  It is accessible as \docAuxCommand{mrcmarkercategory} (use read-only).
\end{docMrcKey}

\clearpage

\begin{docMrcKey}[marker]{show}{\colOpt{=true\textbar false}}{default |true|, initially |true|}
  If set to |true|, the marker is shown, if it lies inside the map (or vicinity).
  Otherwise, the place marker is not used.
\end{docMrcKey}


\begin{docMrcKey}[marker]{hide}{\colOpt{=true\textbar false}}{default |true|, initially |false|}
  If set to |true|, the marker is not used.
  \refKey{/mermap/marker/hide} is inverse to \refKey{/mermap/marker/show}.
\end{docMrcKey}



\begin{docMrcKey}[marker]{show category}{=\meta{category}}{style, no default}
  Sets \refKey{/mermap/marker/show} to |true|, if \refKey{/mermap/marker/category} equals \meta{category}.
  Otherwise, nothing happens.
  \refKey{/mermap/marker/category} has to be set \emph{before}.
\end{docMrcKey}


\begin{docMrcKey}[marker]{show all but category}{=\meta{category}}{style, no default}
  Sets \refKey{/mermap/marker/show} to |true|, if \refKey{/mermap/marker/category} does not equal \meta{category}.
  Otherwise, nothing happens.
  \refKey{/mermap/marker/category} has to be set \emph{before}.
\end{docMrcKey}


\begin{docMrcKey}[marker]{hide category}{=\meta{category}}{style, no default}
  Sets \refKey{/mermap/marker/show} to |false|, if \refKey{/mermap/marker/category} equals \meta{category}.
  Otherwise, nothing happens.
  \refKey{/mermap/marker/category} has to be set \emph{before}.
\end{docMrcKey}


\begin{docMrcKey}[marker]{hide all but category}{=\meta{category}}{style, no default}
  Sets \refKey{/mermap/marker/show} to |false|, if \refKey{/mermap/marker/category} does not equal \meta{category}.
  Otherwise, nothing happens.
  \refKey{/mermap/marker/category} has to be set \emph{before}.
  \tikzsetnextfilename{marker_hide}%
  \begin{dispExample}
  \begin{tikzpicture}
    \mrcmap[tex width=4cm, tex height=4cm,
      latitude=48.14, longitude=11.57, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{last options={hide all but category=A}}
    \mrcmarker{type=knob,position=48.00:11.43,fill=blue,category=A}
    \mrcmarker{type=knob,position=48.28:11.43,fill=red,category=B}
    \mrcmarker{type=knob,position=48.00:11.71,fill=blue,category=A}
    \mrcmarker{type=knob,position=48.28:11.71,fill=red,category=B}
  \end{tikzpicture}
  \end{dispExample}
\end{docMrcKey}


\clearpage

The following options require the package |hyperref| to be loaded.
If |hyperref| is not loaded, \refKey{/mermap/marker/url} and
\refKey{/mermap/marker/link} are ignored.\\
Note that if \refKey{/mermap/marker/url} and \refKey{/mermap/marker/link}
are applied concurrently, then \refKey{/mermap/marker/link} will win.


\begin{docMrcKeys}[
  doc keypath     = marker,
  doc name        = url,
  doc parameter   = {=\meta{URL}},
  doc description = {no default, initially empty},
  doc new         = 2020-05-04,
]{}
  Sets \meta{URL} as external link of the marker.
  The package is required for this option.
  For an own marker type, it is applied as \tikzname\ option \docValue{mrchyperpath}.

\tikzsetnextfilename{marker_url}%
\begin{dispExample}
\begin{tikzpicture}
  \mrcNPdef{unibwm}{48.0802826}{11.6381048}
  \mrcmap[type=reference, named position=unibwm,
    flex reference scale=100000,
    source=topplusopen web grau,
    tex width=\linewidth,tex height=4cm]{}
  \mrcdrawmap
  \node[below,font=\fontsize{7pt}{7pt}\sffamily] at (mrcmap.south)
    {\mrcmapattribution};
  \mrcdrawnetwork
  \mrcclipmap
  \mrcmarker{ named position = unibwm,
    type     = pin,
    draw     = red,
    fill     = red!20!white,
    url      = {https://www.unibw.de},
    contents = {Universit\"at der Bundeswehr M\"unchen},
  }
\end{tikzpicture}
\end{dispExample}


\end{docMrcKeys}


\begin{docMrcKeys}[
  doc keypath     = marker,
  doc name        = link,
  doc parameter   = {=\meta{name}},
  doc description = {no default, initially empty},
  doc new         = 2020-05-04,
]{}
  Sets an internal link of the marker to a document target with
  the given \meta{name}.
  The package |hyperref| is required for this option.
  For an own marker type, it is applied as \tikzname\ option \docValue{mrchyperpath}.
\end{docMrcKeys}



\begin{docMrcKeys}[
  doc keypath     = marker,
  doc parameter   = {\colOpt{=true\textbar false}},
  doc new         = 2020-05-04,
]{
  {
    doc name        = use urls,
    doc description = {default |true|, initially |true|},
  },
  {
    doc name        = ignore urls,
    doc description = {default |true|, initially |false|},
  },
}
  If \refKey{/mermap/marker/use urls} is set to |false|, external links
  with \refKey{/mermap/marker/url} are ignored.\\
  \refKey{/mermap/marker/ignore urls} is inverse to \refKey{/mermap/marker/use urls}.
\end{docMrcKeys}


\begin{docMrcKeys}[
  doc keypath     = marker,
  doc parameter   = {\colOpt{=true\textbar false}},
  doc new         = 2020-05-04,
]{
  {
    doc name        = use links,
    doc description = {default |true|, initially |true|},
  },
  {
    doc name        = ignore links,
    doc description = {default |true|, initially |false|},
  },
}
  If \refKey{/mermap/marker/use links} is set to |false|, internal links
  with \refKey{/mermap/marker/link} are ignored.\\
  \refKey{/mermap/marker/ignore links} is inverse to \refKey{/mermap/marker/use links}.
\end{docMrcKeys}



\clearpage
%-------------------------------------------------------------------------------
\subsection{Marker Types}

\begin{docMrcKey}[marker]{type}{=\meta{type}}{no default, initially |classic|}
  Decides about the basic shape and style of the marker.
  Feasible values for \meta{type} are listed in the following.
  More values can be defined by \refCom{mrcnewmarkertype}.
  \begin{itemize}
  %
  \item\docValue{classic}:
    \tikzsetnextfilename{marker_classic}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=classic}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=classic, text=blue, font=\sffamily\footnotesize}
    \mrcmarker{position=48.14:11.57, contents={M\"unchen}, angle=-30}
    \end{tikzpicture}
    \end{dispExample}
  %
  \item\docValue{pin}:
    \tikzsetnextfilename{marker_pin}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pin}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pin, draw=blue, fill=blue!20!white,
      font=\sffamily\footnotesize}
    \mrcmarker{position=48.14:11.57, contents={M\"unchen}, alias={munich}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \clearpage
  \item\docValue{pinflip}:
    \tikzsetnextfilename{marker_pinflip}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pinflip}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pinflip, draw=red, fill=red!20!white,
      font=\sffamily\footnotesize}
    \mrcmarker{position=48.14:11.57, contents={M\"unchen}, shift=4mm}
    \end{tikzpicture}
    \end{dispExample}
  %
  \item\docValue{drop}:
    \tikzsetnextfilename{marker_drop}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=drop}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=drop, fill=blue, draw=blue!20!white, text=white,
      font=\sffamily\small\bfseries,
      path style={line join=round, thin, draw=mrcmarkerfill,
        double=mrcmarkerdraw,double distance=0.6pt}  }
    \mrcmarker{position=48.14:11.57, contents={M}, alias={munich}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \clearpage
  \item\docValue{pictodrop}:
    \tikzsetnextfilename{marker_pictodrop}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pictodrop, pictocontents={
      \draw[fill=red!70!gray,draw=white]
        (-0.2,-0.2)--(0.2,-0.2)--(0.2,0.1)--(0,0.2)--(-0.2,0.1) -- cycle;
    }}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pictodrop,
      fill=blue!75!gray!30, draw=blue,
      radius=4mm, shift=-1mm}
    \mrcmarker{position=48.14:11.57,
      pictocontents={
      \node {\includegraphics[width=6mm]{alertmessage-warning.png}};
    }}
    \end{tikzpicture}
    \end{dispExample}
  %
  \item\docValue{pictodropring}:
    \tikzsetnextfilename{marker_pictodropring}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pictodropring}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pictodropring,
      fill=red!50!gray, draw=red!75!white,
      shift=-1mm}
    \mrcmarker{position=48.14:11.57}
    \end{tikzpicture}
    \end{dispExample}
  %
  \clearpage
  \item\docValue{knob}:
    \tikzsetnextfilename{marker_knob}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=knob}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=knob, radius=2mm,
      fill=blue, draw=blue!20!white,
      text=white, path style={draw=mrcmarkerfill, double=mrcmarkerdraw,
        double distance=0.6pt}  }
    \mrcmarker{position=48.14:11.57, contents={M}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \item\docValue{pictoknob}:
    \tikzsetnextfilename{marker_pictoknob}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pictoknob}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pictoknob, radius=2mm,
      fill=blue, draw=blue!20!white,
      path style={draw=mrcmarkerfill, double=mrcmarkerdraw,
        double distance=0.6pt}  }
    \mrcmarker{position=48.14:11.57, alias={munich}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \clearpage
  \item\docValue{pictoknobring}:
    \tikzsetnextfilename{marker_pictoknobring}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=pictoknobring}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=pictoknobring, radius=2mm, inner radius=1mm,
      draw=blue, fill=blue!20!white,
      pictocontents={\node[above] at (0,\mrcmarkerradius)
        {\mrcmarkercontents};}
      }
    \mrcmarker{position=48.14:11.57, contents={M\"unchen}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \item\docValue{ringx}:
    \tikzsetnextfilename{marker_ringx}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=ringx}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=ringx, radius=4mm, inner radius=3mm,
      draw=red, fill=red!50!white,
      path style={draw=mrcmarkerdraw, very thin, double=white,
        double distance=0.6pt}
        }
    \mrcmarker{position=48.14:11.57, alias={munich}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \clearpage
  \item\docValue{markx}:
    \tikzsetnextfilename{marker_markx}%
    \begin{dispExample}
    \begin{tikzpicture}
    \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
      latitude=48.14, longitude=11.48, target=none]{}
    \mrcdrawmap[draw=path]
    \mermapsetmarker{type=markx}
    \mrcmarker{position=48.14:11.36, contents={Germering}}
    \mermapsetmarker{type=markx, radius=4mm, inner radius=3mm,
      draw=red, fill=red!50!white, path style={very thin}
        }
    \mrcmarker{position=48.14:11.57, alias={munich}}
    \end{tikzpicture}
    \end{dispExample}
  %
  \end{itemize}
\end{docMrcKey}

\medskip
The different marker types can be customized by some additional options:

\begin{docMrcKey}[marker]{font}{=\meta{font}}{no default, initially \texttt{\textbackslash sffamily\textbackslash small}}
  Font of the marker text
  (\docValue{classic}, \docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{knob}).
  It is accessible as \docAuxCommand{mrcmarkerfont} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{text}{=\meta{color}}{no default, initially |black|}
  Color of the marker text
  (\docValue{classic}, \docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{knob}).
  It is accessible as \docColor{mrcmarkertext} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{draw}{=\meta{color}}{no default, initially |gray|}
  Color of the marker frame
  (\docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{pictodrop},
    \docValue{pictodropring}, \docValue{knob}, \docValue{pictoknob}, \docValue{pictoknobring},
    \docValue{ringx}, \docValue{markx}).
  It is accessible as \docColor{mrcmarkerdraw} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{fill}{=\meta{color}}{no default, initially |gray!20|}
  Color of the marker interior
  (\docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{pictodrop},
    \docValue{pictodropring}, \docValue{knob}, \docValue{pictoknob}, \docValue{pictoknobring},
    \docValue{ringx}, \docValue{markx}).
  It is accessible as \docColor{mrcmarkerfill} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{angle}{=\meta{angle}}{no default, initially |90|}
  Angle of the marker (\docValue{classic}).
  It is accessible as \docAuxCommand{mrcmarkerangle} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{shift}{=\meta{length}}{no default, initially |0pt|}
  Shift of the marker text
  (\docValue{pin}, \docValue{pinflip}).
  It also shifts the drop center
  (\docValue{drop}, \docValue{pictodrop}, \docValue{pictodropring}).
  It is accessible as \docAuxCommand{mrcmarkershift} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker][doc new=2020-08-06]{distance}{=\meta{length}}{no default, initially |5mm|}
  Length of the marker needle (\docValue{pin}, \docValue{pinflip}).
  It is accessible as \docAuxCommand{mrcmarkerdistance} (use read-only).
\end{docMrcKey}

\clearpage

\begin{docMrcKey}[marker]{radius}{=\meta{length}}{no default, initially |3mm|}
  Radius of the marker
  (\docValue{classic}, \docValue{drop}, \docValue{pictodrop},
    \docValue{pictodropring}, \docValue{knob}, \docValue{pictoknob}, \docValue{pictoknobring},
    \docValue{ringx}, \docValue{markx}).
  It is accessible as \docAuxCommand{mrcmarkerradius} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{inner radius}{=\meta{length}}{no default, initially |2.25mm|}
  Inner radius of the marker
  (\docValue{pictodropring}, \docValue{pictoknobring}, \docValue{ringx}).
  It is accessible as \docAuxCommand{mrcmarkerinnerradius} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{path style}{=\marg{options}}{no default, initially empty}
  \tikzname\ \meta{options} which are added to (some) path elements of
  of the marker
  (\docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{pictodrop},
    \docValue{pictodropring}, \docValue{knob}, \docValue{pictoknob}, \docValue{pictoknobring},
    \docValue{ringx}, \docValue{markx}).
  It is accessible as \tikzname\ option \docValue{mrcpathstyle} (use read-only).
\end{docMrcKey}

\begin{docMrcKey}[marker]{node style}{=\marg{options}}{no default, initially empty}
  \tikzname\ \meta{options} which are added to the node element of
  of the marker
  (\docValue{classic}, \docValue{pin}, \docValue{pinflip}, \docValue{drop}, \docValue{knob}).
  It is accessible as \tikzname\ option \docValue{mrcnodestyle} (use read-only).
\end{docMrcKey}



%-------------------------------------------------------------------------------
\subsection{New Marker Types}

\begin{docCommand}{mrcnewmarkertype}{\marg{type name}\marg{\tikzname\ code}}
  Creates a new \refKey{/mermap/marker/type} value \meta{type name} using the
  given \meta{\tikzname\ code} for drawing a place marker.
  To avoid future name clashes, you should start a private \meta{type name}
  with letter |x|. For \meta{\tikzname\ code} settings like
  \docAuxCommand{mrcmarkercontents},
  \docAuxCommand{mrcmarkerfont}, or \docColor{mrcmarkerfill} may be used
  or ignored.

  \tikzsetnextfilename{marker_xmark}%
  \begin{dispExample}
  \mrcnewmarkertype{xmark}{
    \path[draw=mrcmarkerdraw,thick] circle (\mrcmarkerradius);
    \path[draw=mrcmarkerdraw,thick]
       (45:2*\mrcmarkerradius)--(225:2*\mrcmarkerradius)
       (135:2*\mrcmarkerradius)--(315:2*\mrcmarkerradius);
  }
  \begin{tikzpicture}
  \mrcmap[tex width=4cm, tex height=4cm,
    latitude=48.14, longitude=11.57, target=none]{}
  \mrcdrawmap[draw=path]
  \mrcmarker{type=xmark,
    position=48.14:11.57,alias={munich},
    draw=red}
  \end{tikzpicture}
  \end{dispExample}
\end{docCommand}



\clearpage
%-------------------------------------------------------------------------------
\subsection{New Marker Styles}

\begin{docCommand}{mrcnewmarkerstyle}{\marg{style name}\marg{options}}
  Creates a new \refKey{/mermap/marker/style} value \meta{style name} using the
  given \meta{options} for drawing a place marker.
  All \meta{options} share the common prefix |/mermap/marker/|. Here, a \emph{style}
  has the same concept as a \tikzname\ style.

  \tikzsetnextfilename{marker_markerstyle}%
  \begin{dispExample}
  \begin{tikzpicture}
  \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
    latitude=48.14, longitude=11.48, target=none]{}
  \mrcdrawmap[draw=path]
  \mrcnewmarkerstyle{one}{type=pin, draw=blue, fill=blue!20!white,
    font=\sffamily\footnotesize}
  \mrcnewmarkerstyle{two}{type=pinflip, draw=red, fill=red!20!white,
    font=\sffamily\footnotesize}
  \mrcmarker{style=one, position=48.14:11.36, contents={Germering}}
  \mrcmarker{style=two, position=48.14:11.57, contents={M\"unchen}}
  \end{tikzpicture}
  \end{dispExample}

  A \emph{style} can have one parameter, but note the small difference
  in applying this parameter compared to \tikzname:

  \tikzsetnextfilename{marker_markerstyle2}%
  \begin{dispExample}
  \begin{tikzpicture}
  \mrcmap[tex width=8cm, tex height=4cm, zoom=10,
    latitude=48.14, longitude=11.48, target=none]{}
  \mrcdrawmap[draw=path]
  \mrcnewmarkerstyle{color}{type=pin, draw=#1, fill=#1!20!white,
    font=\sffamily\footnotesize}
  \mrcmarker{style/color=blue, position=48.14:11.36, contents={Germering}}
  \mrcmarker{style/color=red, position=48.14:11.57, contents={M\"unchen}}
  \end{tikzpicture}
  \end{dispExample}
\end{docCommand}


\begin{docMrcKey}[marker]{style}{=\meta{style name}}{no default, initially unset}
  Applies a given \meta{style name}, i.e. all options which were stored
  by \refCom{mrcnewmarkerstyle} under this name.
\end{docMrcKey}

