Normalvektoren und Transformation



  • In einen Buch steht geschrieben, dass man einen Normalenvektor transformiert, indem man die matrix, mit der er transformiert wird, invertiert und transponiert.
    Desweiteren bin ich der meinung, dass die einzigste sinnvolle transformation auf einen normalen vektor eine rotierung ist.

    Frage: Warum muss man die matrix vorher invertieren und transponieren, wenn man einen normalenvektor transformiert, wenn doch die einzigst sinnvolle transformation die rotation ist, bei der die länge des vektors gleich bleibt?



  • Wenn du eine Normale mit der Matrix multiplizierst, dann wird er eben transformiert, egal ob sinnvoll oder nicht. Und bei einer beliebigen Matrix kann es sein, dass deine Normale danach keine Normale mehr ist (unnormiert und/oder nicht mehr orthogonal zum Polygon).

    Wenn deine Transformationsmatrix hingegen orthogonal ist (zB nur eine Komposition aus Rotationen), dann brauchst du die Matrix nicht invertieren und transponieren.



  • Aber was genau bewirkt eine Invertierte Transponierte Matrix, wenn ich da einen Vektor durchjage?



  • Also so wie ich es verstanden habe, ist nur die rotations matrix orthogonal und deswegen erhält man wieder die ursprüngliche matrix, wenn man eine rotationsmatrix invertiert und dann transponiert und bei den anderen matrizen, die nicht orthogonal verändert sich der normalisierte vektor nicht nach der transformation. Stimmt dies so?



  • Ich versuch das ma kurz zu freestylen;)

    Du hast eine Normale n sowie den Vektor t, der tangential zum Polygon liegt.
    Ferner ist die Transformationsmatrix M gegeben:
    n' = n*M

    Es muss gelten: (. = Skalarprodukt oder Dot product)
    n.t = 0 <=> n'.t' = 0
    In Matrixschreibweise:
    t*n^T = t'*n'^T
    = (t*M)*(nN)^T
    = (t*M)*(NT*nT) | wegen Assoziativität:
    = t
    (M*NT)*nT
    = 0
    das impliziert, dass M*N^T = I gelten muss und folglich: N=(M(-1))T



  • Danke für den freestyle, doch irgendwie bin ich immernochnicht schlauer 😞



  • Du musst schon präziser werden, wenn du Hilfe benötigst.

    Ich habe in meinem Posting gezeigt, dass wenn die Normale n vor der Transformation orthogonal zum Polygon ist, sie es auch danach sein soll.
    Und daraus folgerte ich dann, dass die Matrix von n gleich der transponierten, inversen der ursprünglichen Matrix M sein muss.


Anmelden zum Antworten