|| Pfeilspitze in Tikz anpassen

|| Pfeilspitze in Tikz anpassen

Ich bin mit der |<->|Pfeilspitze in Tikz ganz zufrieden, möchte aber die Länge der ändern |. Gibt es eine einfache Möglichkeit, dies zu erreichen? In tikz.code.texkönnte ich finden

\pgfarrowsdeclarecombine*{tikz@|<@#2}{tikz@>|@#2}{#1}{#2}{|}{|}

das hängt irgendwie mit der Frage zusammen, aber es sieht so aus, als pgflibraryarrows.code.texgäbe es da nichts zu greifen. Es wäre schön, wenn diese |Länge ein Parameter sein könnte.

Antwort1

Eine deutlich verbesserte Antwort dank der Information von Percusse, dass Pfeilspitzenparameter mit ( \pgfsetarrowoptionund ) eingestellt (und gelesen) werden können \pgfgetarrowoptions.

Die folgende Erklärung ist eine Anpassung pgfder Erklärung von |.

\documentclass{article}
\usepackage{tikz}

\pgfarrowsdeclare{var|}{|var}
{
  \pgfarrowsleftextend{+-0.25\pgflinewidth}
  \pgfarrowsrightextend{+.75\pgflinewidth}
}
{
  \pgfsetdash{}{+0pt}
  \pgfsetrectcap
  \pgfpathmoveto{\pgfqpoint{0.25\pgflinewidth}{-\pgfgetarrowoptions{var|}}}
  \pgfpathlineto{\pgfqpoint{0.25\pgflinewidth}{\pgfgetarrowoptions{var|}}}
  \pgfusepathqstroke
}

\pgfarrowsdeclarecombine*{var|<}{>|var}{to}{to}{var|}{|var}
\begin{document}
\pgfsetarrowoptions{var|}{10pt}
\tikz{
  \draw[var|-|var] (0,0)--(1,1);
  \draw[var|<->|var] (1,0)--(2,1);
}
\end{document}

verwandte Informationen