Re: [semi-OT] quesito conversioni angoli roll-pitch-yaw

From: Elio Fabri <elio.fabri_at_fastwebnet.it>
Date: Mon, 8 Nov 2021 11:57:59 +0100

Soviet_Mario ha scritto:
> diciamo che mi sono sembrate diverse all'apparenza, ma non
> le ho ancora implementate, sicché non ho potuto verificare
> se e dove lo fossero nelal sostanza, per cui mi sono
> astenuto da osservazioni
Le differenze sono due.
La prima sta nell'angolo di pitch.
ElFil lo definisce in modo che riesce positivo se Dz>0, io l'opposto.
Ho già spiegato come mai io lo do negativo.
La seconda è nell'ordine delle due rotazioni.
Non ho approfondito, ma ElFil prima ha dato un ordine poi l'ha
corretto.
Non ho verificato quale delle due versioni concorda con la mia.

> no questo l'ho intuito, perché con OpenSCAD me la cavicchio,
Continui a parlare di questo OpenSCAD come se fosse scontato che
chiunque sappia che cos'è.
Invece io non ne ho la minima idea. Sarò il solo?

> L'altra invece (e tra l'altro forse fa quel che vorrei ma
> non l'ho mica capito), chiede un vettore che funge da asse
> di rotazione, e un angolo, che è la rotazione attorno a
> quell'asse ....
Cavolo, e adesso lo dici? E' la soluzione più semplice.
Tu hai un vettore [1,0,0] che deve diventare parallelo a [Dx,Dy,Dz].
E' ovvio che l'asse di rotazione è la bisettrice delle semirette dei
due vettori, e l'angolo è 180°.
Non mi dici come viene dato l'asse di rotione: forse come vettore
unitario?
In ogni caso si procede così.
Poniamo per brevità u := [1,0,0], v := [Dx',Dy',Dz'] (vettori
unitari).
Calcola w := (u+v)/2 e poi normalizza: questo è l'asse di rotazione.

> applica le rotazioni nell'ordine menzionato dagli argomenti
> formali, è molto prevedibile.
Cioè
rotate(a,b,c) = rotate(0,0,c) * rotate(0,b,0) * rotate(a,0,0) ?

> MA in realtà non sto cercando di pilotare la stampante 3D
> ... lo ammetto, mi sto mettendo a "disegnare" ... castelli
> medioevali virtuali :\
Questo per me è arabo, ma non ha importanza.
-- 
Elio Fabri
Received on Mon Nov 08 2021 - 11:57:59 CET

This archive was generated by hypermail 2.3.0 : Wed Sep 18 2024 - 05:10:15 CEST