Camping_RIDER: Mathe: Objekte ums ich selber kreisen lassen

Beitrag lesen

Aloha Hilfesuchender ;)

Das versteht sich hier nur als kleine Ergänzung:

Für den Anforderungsbereich, den du hier beschreibst reicht der Weg über Sinus und Cosinus, der ja schon vielfach beschrieben wurde, vollständig aus.

Solltest du je etwas komplizierteres vorhaben (also beispielsweise eine Rotation eines Objekts indem nicht nur dessen Ursprung rotiert sondern alle Koordinaten rotieren - kurz gesprochen die Transformation eines beliebigen Sets an Koordinaten), dann brauchst du dafür ein System, das mit beliebigen Koordinatensets beliebige Bewegungen ausführt. Sei aber gewarnt, dass dafür Schulmathematik nicht mehr (ganz) ausreicht.

Sollte das dein Interesse geweckt haben:

Du musst erstmal wissen, wie man eine Matrixmultiplikation ausführt. Dann musst du die Transformation als Matrix darstellen, z.B als Drehmatrix, als Spiegelungsmatrix oder als Translationsmatrix (lineare Bewegung). Durch die Kombination (Multiplikation) mehrerer solcher Matrizen kann jede beliebige Transformation erreicht werden. Dann musst du nur noch deine Transformationsmatrix mit dem Vektor multiplizieren und voila, du erhältst die transformierten Koordinaten als Ergebnis.

Nochmal: Das ist der allgemeinste Lösungsansatz mit dem man eigentlich alle Transformationen erschlagen kann (wird z.B. in der geometrischen Optik gerne verwendet - Linsenbrechung eines Strahls kann man damit wunderbar berechnen). Das ist aber gerade für einfache Probleme nicht effizient weil overpowered. Zumal du im Fall von Javascript effizienterweise zunächst noch Klassen für Vektoren und Matrizen erstellen müsstest (naja, nur für Matrizen... Vektoren sind auch nur Matrizen mit Dimension 1 in einer Richtung).

Ich fands einfach wichtig, mal noch auf die Mathematisch korrekte, allgemeine Lösung für Koordinatentransformation hinzuweisen, es gibt schon Szenarien, in denen man ohne nur schwer zum Ziel kommt. Außerdem ist die Normalbevölkerung mit sowas im Allgemeinen eher nicht so vertraut.

Für Rückfragen stehe ich gerne zur Verfügung ;)

Grüße,

RIDER

P.S.: irgendwie juckts mich grad in den Fingern, mal ne JS-Bibliothek für Matrizenrechnung zu schreiben... vielleicht mach ich das ja mal irgendwann - vorausgesetzt das gibt es nicht schon zigfach...

--
Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller
ch:? rl:| br:> n4:? ie:% mo:| va:) js:) de:> zu:) fl:( ss:| ls:[
0 50

Mathe: Objekte ums ich selber kreisen lassen

Hilfesuchender
  • javascript
  1. 0
    Matthias Apsel
    • css
    1. 0
      Hilfesuchender
      1. 0
        Gunnar Bittersmann
        1. 0
          Hilfesuchender
          1. 0
            Auge
          2. 0
            Hilfesuchender
  2. 0
    Der Martin
    1. 0
      Hilfesuchender
      1. 0
        Der Martin
        1. 0
          Hilfesuchender
          1. 0

            Mathe: Objekte um sich selber kreisen lassen

            Hilfesuchender
            1. 0
              Hilfesuchender
            2. 0

              Und was soll das hier werden?

              Jörg Reinholz
              • zur info
              1. 0
                Hilfesuchender
                1. 1
                  Jörg Reinholz
                  1. 0
                    Hilfesuchender
                2. 1
                  Felix Riesterer
                  1. 0
                    Hilfesuchender
                    1. 1
                      Matthias Apsel
                      1. 0
                        Hilfesuchender
                        1. 0
                          HTML Anfänger
                          1. 0
                            Hilfesuchender
                        2. 0
                          Matthias Apsel
                    2. 0
                      Felix Riesterer
                      1. 0
                        Werbetreibender
                        1. 0
                          Felix Riesterer
                          1. 1
                            Werbetreibender
                            1. 0
                              Der Martin
                              1. 0
                                Werbetreibender
                                1. 0
                                  Felix Riesterer
                                  1. 0
                                    Werbetreibender
                                    1. 0
                                      Felix Riesterer
                                      1. 0
                                        Werbetreibender
                                2. 0
                                  Der Martin
                                  1. 0
                                    Felix Riesterer
                                    1. 0
                                      Der Martin
                                    2. 0
                                      Gunnar Bittersmann
                                  2. 0
                                    Werbetreibender
                                    1. 0
                                      Der Martin
                                      1. 2
                                        Camping_RIDER
                                  3. 0
                                    Gunnar Bittersmann
                                    1. 0
                                      Camping_RIDER
                                      1. 0
                                        Gunnar Bittersmann
                                    2. 0
                                      Der Martin
                                      1. 0
                                        Camping_RIDER
                                  4. 0
                                    Gunnar Bittersmann
                                    1. 0
                                      Der Martin
  3. 0
    Felix Riesterer
    1. 0
      Camping_RIDER