|
Hallo zusammen,
Ich suche eine Formel die alle Koordinaten in einem Kreisausschnitt berechnet und das im Polarkoordinatensystem.
Dazu kommt, dass der Kreisausschnitt in Ringe unterteilt ist.
Hier mein bisheriger Ansatz.
Also die Koordinaten im Polarkoordinatensystem berechnen man ja mit.
cos(winkel) sin(winkel)
Das bedeutet Ich suche als erstes den Mittelpunkt des Kreises. Dann addiere ich die obige Formel hinzu.
center cos(winkel) center sin(winkel)
Da der radius und winkel werden dynamisch berechnet. Je nachdem wie viele Ringe bzw. Quadranten (Kreisausschnitte ich habe)
Leider funktioniert die Formel nicht richtig und ich weiß nicht so richtig wie ich auf die richtige Formel komme.
Es muss halt eine Formel sein die alle Koordinaten innerhalb eines Kreisauschnittes berechnet.
Ich freue mich von euch zu hören.
Mit freundlichen Gruß
Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen." |
|
|
Hier wirst du wohl die eine oder andere vollständig beschriftete Zeichnung nachliefern müssen um zu klären, was genau du benötigst. Du sprichst von einem Kreisausschnitt und offenbar geht es um einen Kreis, der seinen Mittelpunkt nicht im Ursprung hat. Wie der Ausschnitt aber aussehen soll (Start- und Endwinkel bzgl. einer noch festzulegenden Bezugsrichtung) erwähnst du überhaupt nicht.
Außerdem ist unklar, was du mit "Formel die alle Koordinaten in einem Kreisausschnitt berechnet" meinst. Eine Vermutung und da du mit Polarkoordinaten rechnen möchtest: Gegeben: Kreis mit Mittelpunkt und Radius Der Kreisaussschnitt ist festgelegt durch Start- und Endwinkel und . Und du möchtest nun eine Funktion, welch dir für jeden Punkt bestimmt, ob er innerhalb des Kreisauschnitts liegt oder nicht. Ist das deine Problemstellung?? Was du dann noch mit deinen "Ringen" meinst liegt dann immer noch im Dunkel. Werde dir auch darüber im Klaren, dass die Gleichung eines Kreises, der seinen Mittelpunkt nicht im Ursprung hat, in Polarkoordinaten alles andere als einfach ist und dass es sich, wenn der Ursprung außerhalb dieses Kreises liegt, dann auch nicht mehr um eine Funktion handelt, denn dann gibt es für einen Winkel gleich zwei zugehörige Radien .
|
|
Hi,
zu deiner Frage, dies ist genau das was ich möchte.
zu den Ringen. Die würde ich jetzt gerne erstmal weglassen, um das Problem etwas einfacher zu halten.
Es ist mir bewusst das es nicht ganz einfach ist.
Der Ursprung ist sozusagen verschoben worden aber auch hier können wir vereinfacht erst einmal sagen. Der Kreis bildet sich um den Ursprung.
Wie würdest du vorgehen so eine Formel zu entwerfen. Für mich macht Radius Winkel Sinn um die Fläche zu begrenzen. Aber wie ich die und dazugehörigen Werte berechne, da komme ich etwas ins Stolpern.
Vllt hat jemand ja erstmal einen Ansatz dazu.
|
|
Ich würde ich die Polarkoordinaten des Punkts erstmal in kartesische Koordinaten umrechnen und dann prüfen, wie groß sein Abstand vom Mittelpunkt des Kreises ist (Pythagoras). Ist er größer als der Radius des Kreises, dann ist die Sache auch schon gegessen, denn dann liegt er nicht im Kreis und damit auch in keinem Kreissektor.
Liegt der Punkt innerhalb des Kreises, musst du weiter prüfen. Berechne den Winkel von MP bezüglich der Bezugsrichtung und entscheide, ob sich dieser Winkel innerhalb von Start- und Endwinkel und deines Sektors befindet, oder nicht.
Bei deinen Beschreibungen wirfst du mit Begriffen wie Radius und Winkel um dich, aber es ist nicht klar, welche Radius und Winkel du meinst. Wie schon geschrieben könnte die eine oder andere beschriftete Zeichnung Klarheit schaffen.
|
|
Also es gibt 5 Quadranten. Bitte nicht zu streng mit der Zeichnung sein.
Also als erstes starte ich und Berechne die Winkel:
Winkel = 360/(anzahlQuadranten)
Um den Startwinkel und den Endwinkel zu bekommen muss ich den Index des Quadranten mit der Winkelsumme multiplizieren.
Winkel Startwinkel für Quadrant 1 Winkel Endwinkel für Quadrant 1 und Startwinkel für Quadrant 2 Winkel .
Winkel Endwinkel für Quadrant 5
Binärvariable oder um Start oder Endwinkel zu bekommen )
Formel: Winkel (Index Binärvariable)
Dann brauche ich noch den Radius der ist einfach gegeben:
Jetzt muss ich praktisch eine Formel in Polarschreibweise entwerfen, die mir die Punkte innerhalb eines Quadranten gibt.
Da gilt Koordinate
radius cos(Winkel) radius sin(WInkel)
Folgere ich
1. cos(punkt zwischen Start und Endwinkel für jeweiligen Quadranten) 2. sin(punkt zwischen Start und Endwinkel für jeweiligen Quadranten)
Dies funktioniert aber aus irgendeinem Grund nicht und ich verstehe immer noch nicht genau wieso.
|
|
Ich sehe in deiner Zeichnung kein kein kein Wo ist das Bezugskoordinatensystem y-Achse) Wo ist der Radius des Kreises (ich habe dafür vorgschlagen, damit für die Polarkoordinaten bleibt). Wo ist die Bezugsline durch den Kreismittelpunkt, bezüglich derer die Winkel (wohl im mathematischen Sinn, also Gegenuhrzeigersin) gemessen werden. Wie werden diese Winkel gemessen (0°-360° oder -180° . +180° so wie es die atan2 Funktion liefert?) Wo ist in deiner Zeichnung der Punkt, der betrachtet werden soll und seine Koordinaten.
Du schreibst in deinen Ausführungen ständig "Winkel = ...". Gib dem WInkel doch bitte einen eindeutigen Namen und trage ihn auch in der Zeichnung deutlich ein.
Ich habe vorhin immer sehr bewusst von einer vollständig beschrifteten Zeichnung geschrieben ;-) Sie soll ja schließlich etwas verdeutlichen, unmissverständlich klar machen.
|
|
Zweite Versuch!
Die Winkel werden von gemessen.
Nun soll eine Formel erstellt werden, die die Koordinaten zu den Punkten in liefern.
Bei weiteren Fragen bitte gerne stellen.
|
|
Was soll jetzt wieder sein? Außerdem dachte ich, dass der Kreis seinen Mittelpunkt nicht im Ursprung hat???
Gib doch mal ganz konkret an, welche Größen gegeben sind.
|
|
Hi wären die Anzahl der Quadranten. Um es zu vereinfachen habe ich den Kreis in den Ursprung gesetzt.
Ich probier nochmal zusammenzufassen.
Ich habe eine Funktion, die mir einen zufälligen Winkel berechnet:
Dazu ist in der Funktion folgendes gegeben
IndexQuandranten je nachdem wie viele Quadranten ich betrachte Binärvariable oder 1 größe der Quadranten Anzahl der Quadranten
Folgende Formel brechnet mir den Winkel(n)
winkel(n) = größe der Quadranten (IndexQuadranten Binärvariable)
Dabei ist zu sagen je nachdem was für ein Wert die Binärvariable annimmt bekomme ich den Start bzw. Endwinkel des Quadranten.
Nachdem ich also den Winkel berechnet habe. Brauch ich eine Formel, die einen beliebigen Punkt innerhalb des Quadranten berechnet.
Dazu habe ich eine Formel, die mir eine Zufallszahl generiert und zwar innerhalb der Grenzen von 0 bis zur länge des Radius.
Die Formel gibt mir auch eine Zufallszahl innerhalb des Start bzw. Endwinkels (Wenn wir von 5 Kreisteilstücken ausgehen, dann gibt es 5 Winkel) zurück.
Jetzt habe ich einen zufälligen Radius und ein zufälligen Winkelpunkt innerhalb der beispielsweise 5 Quadranten.
Um jetzt die Koordinaten zu bekommen, setze ich in folgende Formel ein.
zufällige Radius cos(zufälliger Winkel) zufälliger Radius sin(zufälliger Winkel)
Es funktioniert aber mir dieser Formel nicht.
Was ich machen
|
|
Deine Beschreibung ist ziemlich wirr und unklar. Es ist nicht klar, wozu du eine ganze Liste übergibst, warum du in der Liste Werte übergibst, ob deine Funktion nur einen Punkt in einem per Übergabeparameter zu bestimmenden Sektor erzeugen soll, oder ob sie in jedem Sektor (nenne das nicht Quadrant!) genau einen Punkt generieren soll, etc.
Grundsätzlich sollte es so aber funktionieren. Ich könnte mir aber vorstellen, dass du vielleicht nicht beachtest, dass die von dir gewählte Programmiersprache Winkel grundsätzlich nur im Bogenmaß erwartet und du daher dein durch ersetzen musst.
Eine Funktion, welche in einem Sektor einen Zufallspunkt erzeugt hätte folgende Argumente: . Gesamtanzahl der Sektoren also die natürlichen Zahlen ohne die Null) . Nummer des Sektors, in dem der Punkt erzeugt werden soll . Radius des Kreises
Ein weiteres Argument könnte der Startwinkel sein, also der Startwinkel von Sektor 0. Ich nehme im Folgenden an, dass dieser Startwinkel nicht wählbar ist und Sektor 0 von der positiv orienterten x-Achse begrenzt wird. Winkel werden im mathematisch positiven Sinn (Gegenuhrzeigersinn) gemessen und es wird ferner angenommen, dass alle Sektoren gleich groß sind.
Dann müsste deine Funktion wie folgt vorgehen: Erzeuge einen reellen Zufallswert Erzeuge einen reellen Zufallswert Gib die kartesischen Koordinaten als Funktionsergebnis zurück.
Wenn dein Kreis seinen Mittelpunkt nicht im Ursprung hat, sondern im Punkt dann muss man eben als weiters Argument der Funktion übergeben und diese liefert dann einfach als Ergebnis zurück.
|
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.
|