Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

11

04.10.2014, 19:35

Wenn Du 4 Planeten willkürliche Koordinaten zuweist, wie groß ist dann die Chance, dass sie zu den Koordinaten des neuen Planeten passen und nicht z.B. 90° um den Ursprung rotiert sind? Oder 137.23543°? Nur weil diese willkürliche Festlegung von Dir die Entfernungen korrekt beinhaltet, gibt es noch immer unendlich viele mögliche Offsets und Rotationen.

Nochmal zum Anfang: Ich habe das so verstanden, dass er N Planeten hat und alle Abstände zwischen diesen. Dann kommen M neue Planeten mit bekannten Koordinaten hinzu und er will wieder Abstände berechnen. Ja? Nein? Denn wenn ja, geht das eben nicht. Siehe Beispiel:
Planet A und B haben den Abstand 5 zueinander. Planet C steht bei (15/15). Abstände von A zu C und von B zu C sind nicht bestimmbar, da es unendlich viele Möglichkeiten gibt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

birdfreeyahoo

Alter Hase

  • »birdfreeyahoo« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Schorndorf

Beruf: Junior Software Engineer

  • Private Nachricht senden

12

04.10.2014, 19:55

Nein, nicht ganz.

Ich habe N Sterne und alle Abstände und es kommen M neue Sterne hinzu. Gegeben ist Stern m aus M. Wieviele Distanzen zu Sternen aus N brauche ich, um die Distanz von m zu jedem beliebigen Stern von N zu bestimmen und wie mache ich das?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

13

04.10.2014, 20:06

Du brauchst in einem 3D-Raum zu jedem Stern mindestens 4 Abstände. Wie Tobiking schon sagte ergibt sich das durch die Schnittkugeln. Bei einem Abstand von n zu m könnte m irgendwo auf einer Kugel um n herum liegen. Mit zwei Distanzen von n und o zu m hast du um n und o jeweils eine Kugel und der Schnitt ergibt einen Kreis. Irgendwo auf diesem Kreis kann m also liegen. Mit drei Abständen n, o und p zu m ergeben sich aus den drei Kugeln zwei Schnittpunkte auf dem m liegen kann. Ein vierter identifiziert m dann eindeutig. Jeder zusätzliche Abstand reduziert also die Anzahl der Unbekannten des Gleichungssystems um 1. Wahlweise ist das System bei 5 oder mehr also überbestimmt und bei 3 oder weniger unterbestimmt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

birdfreeyahoo

Alter Hase

  • »birdfreeyahoo« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Schorndorf

Beruf: Junior Software Engineer

  • Private Nachricht senden

14

05.10.2014, 00:38

Ok danke, ich habe m und den Abstand zu n, o , p , q. Wie kriege ich den Abstand von m zu r?
Muss ich ein Koordinatensystem aufbauen und dann über die Schnitttechnik die Koordinaten bestimmen? Dann kann ich ja über Vektorsubtraktion und Pythagoras die Distanz bekommen.
Nur wie bau ich dieses auf? Wie du gesagt hast, gibt es unendlich viele Möglichkeiten (Rotation um Nullpunkt). Ich habe eine Sternenkarte, wie erstelle ich daraus das Koordinatensystem?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

15

05.10.2014, 08:02

Wie ich schon sagte, du brauchst die Koordinaten von mindestens 3 Sternen in diesem System. Allein mit Abständen ist da nichts zu machen. Wenn du die drei hast, lassen sich die Koordinaten aller Sterbe durch die Schnitte der Kugeln bestimmen. Und damit dann auch der Abstand von m zu r.
Hast Du n+3 Sterne, aber nur 3 mit Koordinaten und der Rest in Abständen, wird das ein sehr hässliches und großes lineares Gleichungssystem, dass es zu lösen gilt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

16

05.10.2014, 13:04

Du kannst dir natürlich Koordinaten aller Sterne berechnen, wenn du die Abstände zwischen ihnen weiß. Es ist wie mit einem Dreieck, wenn man die Länge der drei Seiten weiß, ist das Dreieck bis auf seine Lage im Raum komplett definiert. Die Koordinaten die du erhältst sind dann also Deckungsgleich mit den tatsächlichen, was aber alles ist, was du zur Navigation benötigst.

Du fängst also mit einem Stern an und setzt ihn auf einen beliebigen Punkt. Dann nimmst du den zweiten und setzt ihn irgendwo auf die Kugelfläche, die den passenden Abstand zum ersten repräsentiert. Den dritten und vierten kannst du auch noch frei setzen (wobei es beim vierten bereits nur 2 Möglichkeiten geben dürfte), ab da sollten alle Punkte eindeutig bestimmt sein, weil du immer mindestens 4 Entfernungen zu bekannten Koordinaten hast.
Lieber dumm fragen, als dumm bleiben!

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

17

05.10.2014, 13:06

Ändert aber nichts daran, dass das in Bezug auf den neuen Punkt totaler Unfug ist. Siehe Beispiel:

Planet A und B haben den Abstand 5 zueinander. Planet C steht bei (15/15). Abstände von A zu C und von B zu C sind nicht bestimmbar, da es unendlich viele Möglichkeiten gibt.

Selbst wenn ich A festlege und mir ein passendes B suche, sind die Werte in Bezug auf C völlig unsinnig, da ich A und B mit Parallelverschiebung irgendwo hin platzieren kann und damit den Abstand zu C immer wieder ändere, ohne dass ich die Bedingung für A und B verletze.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

birdfreeyahoo

Alter Hase

  • »birdfreeyahoo« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Schorndorf

Beruf: Junior Software Engineer

  • Private Nachricht senden

18

05.10.2014, 15:49

Ok, wie kann ich also ein Koordinatensystem aufbauen?
Ich wähle Stern O als Nullpunkt und eine Achse ist die Verbindung zwischen O und Stern X.
X hat dann die Koordinaten ( |OX|, 0, 0), wobei |OX| die Distanz zwischen O und X ist.
Wie bekomme ich jetzt eine 2.Achse?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

19

05.10.2014, 16:01

Du suchst Dir einen Stern Y und lässt mit diesem zusammen mit O und X eine Ebene aufspannen. Tada, zweite Achse. Aber wie gesagt ist das ein total willkürliches Koordinatensystem in das man die bekannten Koordinaten eines Planeten Z nicht einfach mit aufnehmen kann, wenn nicht vorher schon die Abstände von Z zu anderen Planeten des Systems bekannt sind.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

20

06.10.2014, 00:19

Sind denn für den neuen Stern jetzt eigentlich konkrete Koordinaten gegeben oder auch wieder nur Distanzen zu ein paar von den bereits vorhandenen Sternen? Das kam für mich nicht ganz klar rüber.

Im ersten Fall hat BlueCobold natürlich recht und das Problem ist nicht lösbar. Im zweiten Fall ist die Wahl des Koordinatensystems beliebig, wie ja auch schon diskutiert wurde. Wenn man das also nochmal kurz klarstellen könnte, wäre die Sache doch mal geklärt, so oder so.

Werbeanzeige