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

13.07.2011, 17:27

Nun, der 2D-Fall enthält implizit die Achsen X und Y, nämlich die Einheits-Vektoren ex=(1/0) und ey=(0/1), mit welchen Du p_x und p_y berechnest. Sieh p_x und p_y mal als Vektor: (px/py). Der Radius sei r.

(px/py) = ex * r * cos(alpha) + ey * r * sin(alpha)

Dabei kommt (oh Wunder) ein Kreis bei raus.
Das geht natürlich auch in 3D. Man erweitere die Vektoren um eine Komponente Z. Wichtig ist lediglich, dass die Vektoren ex und ey senkrecht zueinander stehen, also die virtuelle X und Y-Achse des Kreises im Raum.
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]

12

28.07.2011, 09:33

Hallo Zusammen

Hatte viel zu tun, desshalb widme ich mich erst jetzt wieder meinem Grafik - Programm.

(px/py) = ex * r * cos(alpha) + ey * r * sin(alpha)
Dabei kommt (oh Wunder) ein Kreis bei raus.


Okee.. meine Trigonometrie - Zeit ist definitiv zu lange her.. kann mir das jemand erklären??
Auch wie schlussendlich meine Formel aussehen soll, um alle Koordinaten korrekt berechnen zu können.

Gegeben ist der Mittelpunkt und ein beliebiger Punkt auf dem Kreis.

Wäre echt dankbar..
Gruss Master Chief

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

13

28.07.2011, 09:49

Ich habe eine schöne Schlaufe gefunden

Ich verstehe diese Schlaufe nicht wirklich

Hier noch die schlaufe

Wenn Du als Programmierer ernst genommen willst, solltest Du "Schlaufe" ganz schnell vergessen und Dir "Schleife" einprägen.

14

28.07.2011, 10:03

Danke für deine Hilfe, du hast recht, niemand nimmt mich ernst wenn ich 'Schlaufe' als Bezeichnung verwende.

Ich bin dir sehr dankbar...

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

15

28.07.2011, 10:28

Erm... Mit nur zwei Punkten im Raum ist ein Kreis nicht eindeutig bestimmbar. Es sogar unendlich viele Möglichkeiten.
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]

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BlueCobold« (28.07.2011, 10:36)


16

28.07.2011, 10:36

Also meiner Meinung nach müsste doch ein Kreis im 3D - Raum klar definiert sein, wenn ich den Mittelpunkt weiss (x, y, z) und wenn ich einen weiteren Punkt im Raum kenne (x, y, z), welcher sich sicher auf dem Kreis befindet.

Durch diese Informationen kann ich ja den Radius bestimmen und ich weiss wo sich der Kreis befindet.

Oder übersehe ich etwas??

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

17

28.07.2011, 10:36

Ja, du übersiehst, dass ein Kreis im Raum drehbar ist. Und das um die Achse, die durch die beiden Punkte gebildet wird.
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]

18

28.07.2011, 10:49

Stimmt.. mein Fehler.. diese Information benötige ich noch.. ok, das ist kein Problem.
Ok, gehen wir davon aus, dass ich die Ebene, auf welcher der Kreis liegt, kenne.

Wie berechne ich dessen Punkte?? Ich komme nicht auf die berechnung.. wie gesagt, meine Trigonometrie - Kenntnisse sind ein wenig in Vergessenheit geraten =(

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

19

28.07.2011, 10:53

Ok, gehen wir davon aus, dass ich die Ebene, auf welcher der Kreis liegt, kenne.
Wie berechne ich dessen Punkte?? Ich komme nicht auf die berechnung.. wie gesagt, meine Trigonometrie - Kenntnisse sind ein wenig in Vergessenheit geraten =(

Wenn Du die Ebene kennst, kannst Du zwei senkrecht aufeinander stehende Achsenvektoren (mit Länge 1) berechnen, die parallel zur Ebene liegen.
Z.B. wenn Dein Normalenvektor der Ebene (1, 0, 0) ist, dann könnten diese Vektoren (0, 1, 0) und (0, 0, 1) sein.
Dann kannst Du ganz einfach die Kreispunkte bestimmen: Zentrum + cos(Winkel)*Achse1*Radius + sin(Winkel)*Achse2*Radius

Wie Du diese Achsenvektoren bestimmst, überlasse ich mal Dir. Mit ein bisschen Überlegen und Herumprobieren wirst Du die Lösung finden.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

20

28.07.2011, 11:10

Wie man die Kreispunkte bestimmt habe ich oben schon explizit als Formel hingeschrieben. In C-Code werde das nicht noch fassen, das sollte ein Programmierer nun echt selber können.
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]

Werbeanzeige