
Angenommen, es geht von einer Linie von A nach B. Bei p% (bzw. p mm/cm) der Distanz von A nach B möchte ich, ausgehend von A, mit einem Radius r und einem Winkel y gegenüber der AB-Richtung „drehen“ (y=0 liegt in Richtung der Linie AB, 90=90 Grad links von der Richtung der Linie AB usw.) und dort einen Text platzieren.
Der folgende Befehl
\node at ($(A)!0.5!10:(B)$){x};
Winkelt das „x“ um 10 Grad zur Horizontale um A herum (nicht bei 50 % Abstand) mit dem Radius von 50 % des Abstands zwischen A und B, aber ich hätte gern einen allgemeineren Befehl, mit dem ich den Radius und den Winkel relativ zur Linienrichtung bei p % des Linienabstands angeben kann, beginnend bei A. Ist das möglich? TIA! (Entschuldigung für die verwirrende Beschreibung/Frage!)
Antwort1
Dies ist das letzte Beispiel im Abschnitt13.5.4 Die Syntax der Distanzmodifikatoren des pgfmanual v 3.1.4tut. Durch die Verschachtelung der calc
Syntax können Sie die dort verwendeten Anweisungen zu einer einzigen zusammenfassen.
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (a) at (1,0);
\coordinate (b) at (3,1);
\draw (a) -- (b); \path ($ ($ (a)!.5!(b) $)!1cm!90:(b) $) node{x};
\end{tikzpicture}
\end{document}
Wenn Sie diese Dinge wiederholt verwenden möchten, kann es sinnvoll sein, einen Stil zu definieren, bei dem Bruch, Radius und Winkel in PGF-Schlüsseln gespeichert werden.
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[between/.style args={#1 and #2}{/tikz/insert path={%
($ ($ (#1)!\pgfkeysvalueof{/tikz/mf67/fraction}!(#2)
$)!\pgfkeysvalueof{/tikz/mf67/radius}!\pgfkeysvalueof{/tikz/mf67/angle}:(#2) $)}},
mf67/.cd,fraction/.initial=.5,radius/.initial=1cm,angle/.initial=90,
]
\coordinate (A) at (1,0);
\coordinate (B) at (3,1);
\draw (A) -- (B);
\path[between=A and B] node{x};
\path[mf67/.cd,fraction=0.2,radius=1.5cm,angle=-30,/tikz/between=A and B] node{y};
\end{tikzpicture}
\end{document}