Ho un cilindro di lunghezza 2f, e i dati per RotX e RotZ, dati dall'utente. So anche che il "fondo" del mio cilindro è a (0,0,0) (il centro del cerchio che forma il "fondo")Come calcolare il centro del cerchio "superiore", dati gli angoli di rotazione?
Quello che mi serve è calcolare il punto "superiore" (il centro del cerchio all'altra estremità) con i dati esposti nelle righe superiori.
Nella mia seconda immagine, il punto A viene calcolata come segue (sin (Zangle), cos (Zangle), sin (xAngle) con Zangle = PI/4 (angolo alfa) e xAngle = 0.
Point B è calcolato come (sin (xAngle), cos (xAngle), sin (zAngle)) con xAngle = PI/4 (angolo beta) e zAngle = 0;
Punto C è la "cima" di un cilindro con xAngle = PI/4 e Zangle = PI/4.
ho bisogno di trovare un algoritmo per determinare il punto di "top" per qualsiasi dato xAngle e Zangle.
sarei estremamente grato se qualcuno mi potrebbe aiutare.
P.S. Vedo che hai pubblicato la stessa domanda nella sezione Matematica. Sono d'accordo con il commento che le matrici di rotazione sono un buon modo per affrontare questo problema - facile da implementare e concettualizzare. – nasenbohrer
Io uso i MATERIALI DI ROTAZIONE, poiché è così che funziona Transform3D. È una matrice di 4x4 in cui la matrice 3x3 superiore rappresenta la matrice di rotazione, ma non ero abbastanza sicuro su come determinare le estremità. Grazie mille –