Latex <TIKZ> Frage zu Polarkoordinaten und relative Koordinaten

Neue Frage »

Fabrice Auf diesen Beitrag antworten »
Latex <TIKZ> Frage zu Polarkoordinaten und relative Koordinaten
Meine Frage:
Aloha,

ich versuche gerade eine Skizze mit TIKZ in Latex zu erstellen. Jetzt bin ich auf ein Problem gestoßen, das sich bestimmt eleganter lösen lässt:

Ich möchte die 2 Kreise miteinander verbinden mittels eines Striches.
Ich habe mir gedacht das man das super mit Polarkoordinaten lösen können müsste. Und zwar nach dem Schema:
Beginne Strich an Koordinate (0,0) mit z.b. 30grad und Radius=2 und zeichne ihn bis Koordinate Y mit Y= 120grad mit Radius = 6 Ursprung aber nicht (0,0) sondern vielleicht (3,6).
Wie kann man das realisieren?
Hier was ich bisher habe:

Meine Ideen:
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\filldraw [draw=black,fill=gray!20] (0,0)circle(1.5);
\filldraw [draw=black,fill=gray!20] (3,6)circle(3);
\draw (0,0) -- (3,6);
\draw (1.5,-2) -- (1.5,0);
\filldraw [draw=black,fill=gray!20] (1,-2) rectangle(2,-3);
\draw (6,-2) -- (6,6);
\filldraw [draw=black,fill=gray!20] (5.5,-2) rectangle(6.5,-3);
\draw (30:1.5) -- ++(105:4.5); %<<<<<die zeile ist das Problem. Ich konnte das so nur durch probieren lösen>>>>>
\end{tikzpicture}
\end{document}
HAL 9000 Auf diesen Beitrag antworten »

Das ist wohl weniger ein Tikz-Problem als vielmehr, dass du erstmal die Tangentenpunkte berechnen musst. Die 30 Grad hier stimmen nämlich nicht, es sind eher so .
moody_ds Auf diesen Beitrag antworten »
RE: Latex <TIKZ> Frage zu Polarkoordinaten und relative Koordinaten
Zitat:
Original von Fabrice
Ich möchte die 2 Kreise miteinander verbinden mittels eines Striches.
Ich habe mir gedacht das man das super mit Polarkoordinaten lösen können müsste. Und zwar nach dem Schema:
Beginne Strich an Koordinate (0,0) mit z.b. 30grad und Radius=2 und zeichne ihn bis Koordinate Y mit Y= 120grad mit Radius = 6 Ursprung aber nicht (0,0) sondern vielleicht (3,6).
Wie kann man das realisieren?


Ich verstehe die Frage ehrlich gesagt nicht. Also der erste Part ist klar, vom Ursprung 30 Grad und Länge 2. Aber was heißt dann an den Punkt mit 120 Grad und Radius 6? Vom Endpunkt der ersten Linie soll dann eine zweite Linie im 120 Grad Winkel mit 6 Grad abgehen?

Die Syntax passt bei dir schon nicht richtig, du kannst (meines Wissens nach) ja nicht definieren dass von einem Punkt in einem gewissen Winkel mit einer Länge zu einem anderen Punkt mit einem gewissen Winkel und einer Länge gezeichnet werden soll. Das geht mir grad noch nicht rein, was du genau meinst.

code:
1:
\draw (0,0) -- (30:2) % vom Ursprung im 30 Grad Winkel mit Länge 2 weg


Und nun deine Ausführung von oben einmal umgesetzt, wie ich sie verstehe. Ich benenne den Endpunkt der einen Linie mit "end" damit ich von da direkt weiter zeichnen kann.

code:
1:
\draw (0,0) -- (30:2) coordinate (end) {};


coordinate statt node, weil ein node einen gewissen Platz einnimmt, sonst berühren sich die Linien nicht.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- (30:2) node (end) {}; 
\draw (end)--(120:6);
\end{tikzpicture}
\end{document}


[attach]47615[/attach]


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- (30:2) coordinate (end) {}; 
\draw (end)--(120:6);
\end{tikzpicture}
\end{document}


[attach]47616[/attach]
HAL 9000 Auf diesen Beitrag antworten »

Gemeint hat er wohl das:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro{\rA}{1.5}
\pgfmathsetmacro{\rB}{3}
\pgfmathsetmacro{\xB}{3}
\pgfmathsetmacro{\yB}{6}
\filldraw [draw=black,fill=gray!20] (0,0)circle(\rA);
\filldraw [draw=black,fill=gray!20] (\xB,\yB)circle(\rB);
\draw (0,0) -- (\xB,\yB);
\draw (\rA,-2) -- (\rA,0);
\filldraw [draw=black,fill=gray!20] ({\rA-0.5},-2) rectangle({\rA+0.5},-3);
\draw ({\xB+\rB},-2) -- ({\xB+\rB},\yB);
\filldraw [draw=black,fill=gray!20] ({\xB+\rB-0.5},-2) rectangle({\xB+\rB+0.5},-3);
\pgfmathsetmacro{\angle}{90-acos((\rA+\rB)/sqrt(\xB*\xB+\yB*\yB))-atan(\xB/\yB)}
\draw (\angle:\rA) -- ({\xB-\rB*cos(\angle)},{\yB-\rB*sin(\angle)});
\end{tikzpicture}
\end{document}
Hier also die Zielkoordinaten "zu Fuß" ausgerechnet - bin kein Tikz-Kenner, der sich da mit Feinheiten auskennt. Augenzwinkern
Fabrice Auf diesen Beitrag antworten »
RE: Latex <TIKZ> Frage zu Polarkoordinaten und relative Koordinaten
Ja, da muss ich mich nochmal genauer ausdrücken, das seh ich ein.

Ich machs mal so: Ich möchte einen Punkt auf dem Rand von Kreis A festlegen und einen Punkt auf dem Rand vom Kreis B und diese beiden punkte dann verbinden. Und die Punkte will ich mit hilfe von Polarkoordinaten festlegen, da ich weiß, bei wie viel Grad die Punkte auf den Rändern der beiden Kreise liegen.

Ich kenne jeweils den Winkel und den Abstand der punkte vom Mittelpunkt des Kreises.
Da der obere Kreis aber nicht seinen Urspung in der Koordinate (0,0) hat, sondern (3,6) muss ich das irgendwie definieren. So das die Polarkoordinate nicht von (0,0) aus geht sondern von dem Punkt (3,6)

Falls das aber so nicht geht und ihr eine bessere Lösung kennt bin ich offen dafür! smile

Ich hoffe mein Problem ist nun erklärt.
moody_ds Auf diesen Beitrag antworten »

Zitat:
Original von HAL 9000
bin kein Tikz-Kenner, der sich da mit Feinheiten auskennt. Augenzwinkern

Ach naja, also dafür dass du kein Kenner bist bin ich ja doch immer wieder beeindruckt wenn jemand mit tikz etwas ausrechnet.

@OP

Zum einem sollte der code von HAL dein Problem lösen und zum anderen, wenn es nur um das Problem dass du die bekannten Punkte verbinden willst:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) circle (2);
\draw (6,6) circle (4);

\path (0,0) -- ++(80:2) coordinate (small_circle) ;
\path (6,6) -- ++ (180:4) coordinate (big_circle) ;

\draw (small_circle) -- (big_circle);

\end{tikzpicture}
\end{document}
 
 
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von moody_ds
Ach naja, also dafür dass du kein Kenner bist bin ich ja doch immer wieder beeindruckt wenn jemand mit tikz etwas ausrechnet.

Das ist nur Mathematikwissen mit dem Winkel da. Wie man Polarkoordinaten relativ zu einem Punkt mit der Tikz-Syntax (angle:radius) hier setzt, weiß ich aber eben auch nicht - deshalb das "zu Fuß".


Zitat:
Original von moody_ds
code:
1:
\path (6,6) -- ++ (180:4) coordinate (big_circle) ;

Aha, so geht das! Na dann kann man meine drittletzte Zeile mit dem \draw-Kommando durch

code:
1:
2:
\path (\xB,\yB) -- ++(\angle:-\rB) coordinate (BT);
\draw (\angle:\rA) -- (BT);
ersetzen. Augenzwinkern
Fabrice Auf diesen Beitrag antworten »

Zitat:

Zum einem sollte der code von HAL dein Problem lösen und zum anderen, wenn es nur um das Problem dass du die bekannten Punkte verbinden willst:

code:
1:
2:
3:
4:
5:
6:
\path (0,0) -- ++(80:2) coordinate (small_circle) ;
\path (6,6) -- ++ (180:4) coordinate (big_circle) ;

\draw (small_circle) -- (big_circle);




Das ist es, wonach ich gesucht habe. Vielen Dank. Von alleine bin ich nicht drauf gekommen.

Die Antwort von HAL vervollständigt zwar die Skizze wie es soll und ist nen super Beispiel das ich später verwenden kann, aber für dieses Beispiel etwas viel arbeit.

Trotzdem tausend Dank an alle! Ihr habt mir sehr geholfen!
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von Fabrice
aber für dieses Beispiel etwas viel arbeit.

Eigentlich nicht: Es ist berechnen statt rumprobieren.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »