Jump to content
Zum Start hinzufügen

Weitere Informationen

3D-Modellbahn Studio

Eine Vollbild-App auf Ihrem Startbildschirm mit Push-Benachrichtigungen und mehr.

So installieren Sie diese App auf iOS und iPadOS
  1. Tippen Sie auf das Teilen-Symbol in Safari
  2. Scrollen Sie durch das Menü und tippen Sie auf Zum Startbildschirm hinzufügen.
  3. Tippen Sie oben rechts auf Hinzufügen.
So installieren Sie diese App auf Android
  1. Tippen Sie auf das 3-Punkte-Menü (⋮) in der oberen rechten Ecke des Browsers.
  2. Tippen Sie auf Zum Startbildschirm hinzufügen oder App installieren.
  3. Bestätigen Sie durch Tippen auf Installieren.

Empfohlene Beiträge

Geschrieben

Hallo,

ich probiere diese frage mal hier. Moeglicherweise etwas breiteres publikum als in "Externe Schnittstelle", und ist ja auch allgemeiner.

image.jpeg.1a80aa289a10d204ff62981e3f7c3083.jpeg

Gegeben sein ein kreisbogen (kein greisbogen :) ) als teil eines kreises mit radius r im 3d raum, mit den Euler-koordinaten 
p1 =(x1,y1,z1). Wir nehmen an dass w = 1 ist und das quaternion ist qu1 ={x1',y1',z1',1}, transformiert von den Euler-koordinaten . Wie berechne ich die transformationsmatrix qt, die den punkt p1 nach p2 = {x2,y2,z2} verschiebt und die ebene (gruen) parallel zum einheitsvektor r dreht. In 2D ist das einfach, in 3D habe ich problem die richtige matrizenoperationen zu finden. Ich verwende eine umfangreiche library, also operationen sind nicht das problem. Der ansatz fehlt mir. Man kann das problem ja zerlegen in transformation und rotation, so habe ich das in 2D mit einfachen winkelfunktionen geloest. 

Jede 3D engine tut das mit transform.around , aber ich habe keine ahnung mehr wie ich transform.around mit quaternions ausdruecke. Das war erstes semester mate und ist sehr lange her. Im web ist nichts konkretes zu finden, nur allgemeiner kram zu den grundlage und 3d engines, die das problem erledigen. 

Waere toll einen hinweis zu bekommen. 
Danks
Gmd



 

Geschrieben

Guck mal auf tm-mathe.de bei 3D Transformationen. 
Da sind die Matrizen für die Translation und Rotation beschrieben.

Bearbeitet von HaNNoveraNer

Geschrieben
  • Autor

sorry, das sind genau solche seiten die "mir" bei diesem fall nicht helfen. Davon habe ich viele angeschaut. Aber danke fuer die antwort. 

Gruss
Gmd

 

Bearbeitet von gmd

Geschrieben

Hallo gmd,

mit Quaternions kannst du nur Drehungen beschreiben, keine Translationen. Ein "transform.around" arbeitet daher mehrstufig. Bilde z.B. einen Vektor von Punkt P1 zum Zentrum (dein Radialvektor). Diesen Vektor kannst du nun mit einer Quaternion drehen. Anschließend addierst du den gedrehten Vektor zum Zentrum hinzu und erhältst deinen finalen Punkt.

Möchtest du lieber mit Matrizen arbeiten, musst du zwei Matrizen aufbauen und miteinander multiplizieren. Zunächst brauchst du eine Translationsmatrix entlang deines r, anschließend eine Rotationsmatrix. Multipliziere beide (auf die Reihenfolge achten) und du erhältst eine Matrix, mit der du beliebige Punkte entlang deines Kreisbogens transformieren kannst.

Viele Grüße,

Neo

Geschrieben
  • Autor

Danke Neo,
Ist ja sort of dein taeglich brot .. lol .. 
Letzteres ist worauf ich aus bin. Matrix operationen sind mit meiner library simple, man muss "nur" die matrizen formulieren. Ich muss mal frueher anfangen, abends wird mein hirn immer besonders langsam und ich ungeduldig.. :) insbesondere wenn man noch soviele andere ideen im kopf hat. 
Gruss
Gmd
 

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Push-Benachrichtigungen konfigurieren

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.