Kreispunkte im Koordinatensystem

Neue Frage »

AKpost Auf diesen Beitrag antworten »
Kreispunkte im Koordinatensystem
Grüße
Habe da eine Schwierige Aufgabe bekommen

Durch eine Formel sollen bestimmte Punkte berechnet werden, in einem Koordinaten System.


Die Koordinaten des Mittelpunktes sind X:-3000 Y:0
Punkt A ist X-3100 Y:0
Der Radius ist 100
Die Entfernung von Punkt A zu B von B zu C usw. ist nicht festgelegt und kann sich ändern. in dem Beispiel sagen wir 20.

Nun soll der Nächste punkt auf diesem Kreis berechnet werden die Entfernung von
Punkt A-> B -> C ->...

Ich brauche hier für eine Formel die die Punkte ein mal im Kreis berechnet.
Es Ist eine Programmieraufgabe

Punkt A , Radius, Entfernung der Punkt, Mittelpunkt, sind alle bekannt nur die Koordinaten der neuen Punkte nicht

Gott Gott
Steffen Bühler Auf diesen Beitrag antworten »
RE: Kreispunkte im Koordinatensystem
Du brauchst zunächst den Winkel zwischen den Strecken MA und MB. Ziehe dafür eine Hilfslinie von der Mitte der Strecke AB zu M. Nun hast Du ein rechtwinkliges Dreieck, über das Du den gesuchten Winkel leicht errechnen kannst.

Kommst Du jetzt schon weiter?

Viele Grüße
Steffen
AKpost Auf diesen Beitrag antworten »

leider nicht
da ich ja die genauen Koordinaten benötige
wo der nächste Punkt liegt

Da ich ja nicht weiss wo der sich berechnet
AKpost Auf diesen Beitrag antworten »

Die Entfernung MA ist 100
MB ist auch 100 und die folgenden auch
M* = 100

die Entfernung AB und BC , CD,DE usw sind auch bekannt
nun ist die Frage wie ergibt sich die Koordinate

Koordinaten A X: -3100 Y: 0
Koordinaten M Bekannt X: -3000 Y: 0
AB ist bekannt z.B. 20
MA ist 100
MB ist 100
Steffen Bühler Auf diesen Beitrag antworten »

Da Du eh programmierst, schlage ich die Verwendung von komplexen Zahlen vor, dann wird's meines Erachtens am übersichtlichen.

Also Punkt A als komplexe Zahl beschreiben, dazu die Strecke AB (weitere komplexe Zahl mit bekanntem Betrag und Winkel) addieren, ergibt Punkt B als komplexe Zahl.

Wenn Du hier Hilfe brauchst, frag einfach.
AKpost Auf diesen Beitrag antworten »

verwirrt
könntest du mir das anhand der Zahlen kurz vor rechnen ?
dann verstehe ich das besser

wäre sehr nett Gott Gott Gott Gott
 
 
Steffen Bühler Auf diesen Beitrag antworten »

Gern. Wir nehmen also die komplexe Zahl a=-3100+0*i. (Dass Du x vertikal und y horizontal aufträgst, ist ungewöhnlich, sollte aber nicht stören.)

Nun müssen wir die Strecke AB komplex ausdrücken. Betrag ist klar, der ist 20.

Hast Du schon den Winkel berechnet?
AKpost Auf diesen Beitrag antworten »

Der Winkel ist 11.478°
wie er sich berechnet verstehe ich aber nicht ganz
arccos((a²+b²-c²)/2ab)
was heissen würde

arccos ((100²+100²+20²)/2*100*100)
macht arccos (0,98)
hab eine Seite gefunden wo man den Winkel berechnen lassen kann
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von AKpost
Der Winkel ist 11.478°


Ja, das stimmt.

Zitat:
Original von AKpost
wie er sich berechnet verstehe ich aber nicht ganz
...
hab eine Seite gefunden wo man den Winkel berechnen lassen kann


Das sollte diese Seite erklären. Wie gesagt, ich würde das beschriebene rechtwinklige Dreieck verwenden, denn damit wird der weitere Weg auch deutlicher.

Für die weitere Rechnung brauchen wir nämlich jetzt die Hälfte dieses Winkels (also genau den Winkel dieses rechtwinkligen Dreiecks). Das ist nämlich derselbe Winkel, um den die Strecke AB gegenüber der Horizontalen geneigt ist. Das kannst Du Dir auch mit einer Skizze verdeutlichen.

Das heißt, wir haben nun die zweite komplexe Zahl mit Betrag 20 und Winkel -5,74°.

Und die beiden musst Du nun im Programm nur addieren, um eine weitere komplexe Zahl zu erhalten, deren Real- und Imaginärteil die Koordinaten des Punktes B liefern.
AKpost Auf diesen Beitrag antworten »

also 5,74 * 20 macht 114,8
aber wie ergibt sich den da der 2 Punkt ?
habe ja a=-3100 + 0*i meintest du

der MP ist ja X: -3000 Y:0

um es leichter zu machen ist A -100 , 0
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von AKpost
also 5,74 * 20 macht 114,8


Nein, es geht um eine komplexe Zahl mit Betrag 20 und Winkel -5,74°. Ich gehe davon aus, dass Deine Programmiersprache daraus eine komplexe Variable erstellen kann.

In VB wäre so ein Befehl zum Beispiel
Zitat:
Dim c As Complex = Complex.FromPolarCoordinates(20, -5.74/180.0*Math.PI)


Wenn Dein Compiler sowas nicht kennt, sollten wir diesen Ansatz gleich abbrechen, dann müssen wir uns halt mit Sinus und Cosinus rumschlagen.
AKpost Auf diesen Beitrag antworten »

Ich benötige nur die die X und Y Koordinate

die sich aus dem Mittelpunkt, Punkt A , und den Abstand (20) berechnen läst
Der winkel ist hilfreich.

Im grunde brauche ich nur die Formel die mir sagt

Gehe vom Mittelpunkt, 100 Felder, im Winkel 11,478 von Punkt A gesehn aus, und gib mir die Koordinaten

Wenn ich diese Formel habe kann ich sie ja dann Auf Punkt B wenden um Punkt C zu bekommen
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von AKpost
Im grunde brauche ich nur die Formel die mir sagt

Gehe vom Mittelpunkt, 100 Felder, im Winkel 11,478 von Punkt A gesehn aus, und gib mir die Koordinaten


Das ist recht einfach: der Sinus des Winkel ist wie immer für die Vertikale verantwortlich, der Cosinus für die Horizontale.

Viele Grüße
Steffen
AKpost Auf diesen Beitrag antworten »

kommt irgendwie nicht hin alles -.-
x= MA * sin(20/100)
y= MA * cos (100/100)
rechne ich es aus kommt was total falsches raus traurig
Steffen Bühler Auf diesen Beitrag antworten »

Ist ja auch eher

x = MA.x + 100*cos(11,478°)
y = MA.y + 100*sin(11,478°)
AKpost Auf diesen Beitrag antworten »

ok nun habe ichs danke^^

x= MA.x +100*((a²+b²-c²)/2ab)
y= MA.y +100*(c/a) ^^

also in meinem Falle
x=-3100 +100*((100²+100²-20²)/2*100*100)=-3002
y=0 + 100* (20/100)= 20

so wäre der Nächste Punkt bei X-3002 Y20
AKpost Auf diesen Beitrag antworten »

ok die Formel passt doch nicht -.-

X ist viel zu klein
AKpost Auf diesen Beitrag antworten »

die formel passt vorne und hinten nicht traurig
ich komme mit der Formel immer aus dem Kreis
Steffen Bühler Auf diesen Beitrag antworten »

Ich vermisse bei Deinen Formeln nach wie vor den Sinus und Cosinus. Du hast nur den Cosinus, indem Du das arccos-Argument verwendet hast. Aber lediglich c/a für den Sinus erschließt sich mir nicht. Hast Du da eine Herleitung?

Weiterhin dürfte Sinuus und Cosinus vertauscht sein, denn die waagrechte Komponente ist ja bei Dir verwirrenderweise y. Prüf das auch noch mal.
AKpost Auf diesen Beitrag antworten »

habe eine Seite gefunden wo stand
sin= GK/Hyp
und
cos= AK/Hyp

wo bei bei einem Gleichschenkligen Dreieck
arccos( ( 2 * a² - c² ) / 2a² )
was auch 11,478 ist
lasse ich das arccos werg habe ich das gleiche wie cos(11,478) ^^
so spare spart das Programm Zeit zu berechnen

das Problem ist das die Werdte egal wie ich es rechne mit der Formel du du auf schriebst immer Außerhalb des Kreises waren

wenn ich von den Koordinaten X:-3000 Y:100 aus gehe müsste beim Abstand von 20 der nächste punkt bei ungefähr X:-2980 Y:97 sein

aber die Formel weicht komplet ab
AKpost Auf diesen Beitrag antworten »

die Berechnung stimmt so weit für "X"
Ausgangswerte:
Punkt A = X1:-3000 Y1=0
Punkt B = X2:-3000 Y2=100
Punkt C = X3: ?? Y3: ??
Strecke AB = 100
Strecke AC = 100
Strecke BC = 20
Winkel AB/AC = 11,478

X3=X2 + 100*sin(Winkel AB und AC )
oder
X3=X2 + 100*(c/a)

aber Y ergibt nur ein sinn wenn ich
Y3=100*cos (Winkel AB und AC )
oder
Y3=100*((2*a²-c²)/2a²)


Hir mein Rechenweg
X3=X2 + 100*(c/a)
X3=-3000+100*(20/100)=-2980
Y3=100*((2*a²-c²)/2a²)
Y3=100*((2*100²-20²)/2*100²)=98

Also die werte die ich brauche X=-2980 Y=98
würde jetzt Y3=Y2*100*((2*a²-c²)/2a²) kommen wäre das Ergebniss 198
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von AKpost
sin= GK/Hyp
und
cos= AK/Hyp

wo bei bei einem Gleichschenkligen Dreieck
arccos( ( 2 * a² - c² ) / 2a² )
was auch 11,478 ist
lasse ich das arccos werg habe ich das gleiche wie cos(11,478)


Ja, das habe ich verstanden.

Aber später setzt Du einfach für den Sinus den Ausdruck c/a. Und da dürfte das Problem liegen!

Denn da sollte sowas wie sin(arccos( ( 2 * a² - c² ) / 2a² )) stehen. Sieht schlimm aus, geb ich zu. Aber ist bestimmt nicht dasselbe wie c/a.
AKpost Auf diesen Beitrag antworten »

hast recht man kommt nicht drum rum
man muss mit sin() rechnen C/A geht für kleine wikel aber mit sin ist es genauer je größer es wird
AKpost Auf diesen Beitrag antworten »

so jetzt habe ichs^^

X3=X2+100*sin(Winkel AB AC)
Y3=100*cos(Winkel AB AC)
Winke AB AC = arccos( ( 2 * a² - c² ) / 2a² )


es geht bis einer Länge von 200 gut so kommt man auch in den -Y bereich
dann wird es schwer ^^
aber macht nichts geht ja nur um Entfernungen von 30-40 ^^

Danke für deine Hilfe smile
Prost Mit Zunge
riwe Auf diesen Beitrag antworten »

wenn AB = BC = CD = ...(und du den ganzen Müll eh programmieren sollst), würde ich mir die Winkelberechnung sparen.
mit Kreisgleichung und Vieta erspart man sich da einiges.
(auch wenn die Abstände verschieden sind, kann man es so basteln)
Neue Frage »
Antworten »



Verwandte Themen

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