ich frage mich aktuell, ob es möglich ist, Optionen via \tikzset für alle \draw[->] zu setzen, die aber auch nur genau dann ausgeführt werden und nicht z.B. auch für normale Linien oder andere Pfeilarten. (Wobei ich aktuell keine anderen Pfeilarten verwende.)
Hintergrund ist der, dass ich gerne alle Pfeile ein wenig kürzen möchte, normale Linien aber nicht gekürzt werden sollen. Ob dies im weiteren Verlauf noch andere Eigenschaften betrifft, weiß ich aktuell noch nicht.
Einen eigenen "myArrow" Style zu definieren, wäre zwar möglich, aber etwas umständlicher, da ich den dann jedem \draw[->,myArrow] mitgeben müsste. Daher frage ich mich, ob das nicht irgendwie geht...
Am Ende möchte ich einen Style "myStyle" definieren, da die besagten Änderungen nur auf manche Bilder angewandt werden soll.
Hier ein kleines Minimalbeispiel:
\documentclass{scrartcl} \usepackage{tikz} \usetikzlibrary{arrows.meta} \tikzset{>=Stealth[round]} % Ich suche etwas wie % \tikzset{...bitte nur "->"...={shorten >=4.2pt,>=Stealth[round]}} % Bzw. eigentlich: % \tikzset{ % myStyle/.style={ % ...bitte nur "->"...={shorten >=4.2pt,>=Stealth[round]}} % } % } \begin{document} \begin{figure}[h!] % So sollen normale Linien sein (kein Abstand) \begin{tikzpicture} \node[draw] (A) at (0, 0) {$A$}; \node[draw] (B) at (2, 0) {$B$}; \draw (A) -- (B); \end{tikzpicture}\\ % So sollen Pfeile nicht sein (kein Abstand) \begin{tikzpicture}%[myStyle] \node[draw] (A) at (0, 0) {$A$}; \node[draw] (B) at (2, 0) {$B$}; \draw[->] (A) -- (B); \end{tikzpicture}\\ % So sollen Pfeile sein (mit Abstand), aber ohne einen extra % style definieren zu müssen \begin{tikzpicture}[myArrow/.style={shorten >=4.2pt}] \node[draw] (A) at (0, 0) {$A$}; \node[draw] (B) at (2, 0) {$B$}; \draw[->,myArrow] (A) -- (B); \end{tikzpicture} \end{figure} \end{document}
Vielen Dank!
Holunderbaum
PS: Ich sehe oft ein zusätzliches Paar { } um >=Stealth[round] herum, also >={Stealth[round]}. Sind die wirklich notwendig?