Ich habe ein Problem, wenn ich versuche, Vektorkomponenten in einem TikZ-Bild zu zeichnen. Ich möchte, dass TikZ Folgendes macht: 1) Eine Linie der Länge 4 bei 0 Grad zeichnen 2) Eine Linie von (4,0) der Länge 3 bei 90 Grad zeichnen 3) Die Hypothenuse von (4,3) der Länge 5 bei 210 Grad zeichnen
Wenn ich jedoch Koordinatenarithmetik und Winkel in TikZ verwende, kann ich die Hypothenuse nicht richtig berechnen. Hier ist ein minimales funktionierendes Beispiel:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw (0,0) coordinate (a);
\draw (a) -- ($(a)+(0:4)$) coordinate (b);
\draw (b) -- ($(b)+(90:3)$) coordinate (c);
\draw (c) -- ($(c)+(210:5)$);
\end{tikzpicture}
\end{document}
Das Ergebnis:
Ich habe versucht, eine Lösung zu finden, aber mir sind die Ideen ausgegangen. Für jede Hilfe (auch für Hinweise auf dumme Fehler) wäre ich sehr dankbar.
Grüße, JLusk
Antwort1
Das Problem besteht darin, dass der endgültige Winkel nicht 210 beträgt. Verwenden Sie entweder den entsprechenden Wert atan(3/4)+180
oder cycle
( (a)
da Sie die Anfangskoordinate bereits benannt haben); beachten Sie auch, dass Sie nur eine verwenden können \draw
und die Verwendung von ++
Ihren Code vereinfacht (die Bibliothek ist nicht erforderlich calc
):
\documentclass{article}
\usepackage{tikz}
\begin{document}
\noindent
\begin{tikzpicture}
\draw (0,0) coordinate (a) --
++(0:4) coordinate (b) --
++(90:3) coordinate (c) --
++({atan(3/4)+180}:5);
\end{tikzpicture}\bigskip
\noindent
\begin{tikzpicture}
\draw (0,0) coordinate (a) --
++(0:4) coordinate (b) --
++(90:3) coordinate (c) --
cycle;
\end{tikzpicture}
\end{document}
Wenn Sie auf vier getrennten Operationen bestehen, können Sie
\begin{tikzpicture}
\coordinate (a) at (0,0);
\draw (a) -- +(0:4) coordinate (b);
\draw (b) -- +(90:3) coordinate (c);
\draw (c) -- +({atan(3/4)+180}:5);
\end{tikzpicture}
oder einfach
\begin{tikzpicture}
\coordinate (a) at (0,0);
\draw (a) -- +(0:4) coordinate (b);
\draw (b) -- +(90:3) coordinate (c);
\draw (c) -- (a);
\end{tikzpicture}
beide Optionen weiterhin ohne calc
.