Allineamento di tre punti nello spazio

Shika93
Non riesco ad approcciare questo problema. Ho due set di tre punti nello spazio 3D:
(-10,-5,-15),(-20,-8,-45),(5,14,35)
(5.8,8.4,4.6),(15.5,1.7,1.9),(-8.2,95.6,-128.3)




dovrei calcolare la matrice di rotazione per allineare la seconda terna (gli asterischi) alla prima (i palllini).

Potrei calcolarmi il prodotto vettoriale con i versori di riferimento.
Prendendo i primi due punti, $|A x A'|$ mi calcolo la distanza nello spazio tra i due, ma poi?

Fosse al contrario, che dai pallini devo ruotare e traslare di una certa quantità userei le matrici di rotazione. Ma il viceversa come lo faccio?

Risposte
Quinzio
Cosa significa allineare la seconda alla prima ?

Shika93
Io mi immagino la prima terna di punti come un piano e la seconda terna come un altro piano ruotato e magari spostato rispetto al primo. Quindi quello che avrei bisogno sarebbe allineare il secondo piano al primo

Shika93
Aggiungo visto che non posso editare i messaggi.

Io pensavo di fare una cosa del genere:

siano
A = (-10,-5,-15), B = (-20,-8,-45), C = (5,14,35)
A' = (5.8,8.4,4.6), B' = (15.5,1.7,1.9), C' = (-8.2,95.6,-128.3)

calcolare il prodotto vettoriale di due punti e uguagliarlo in questo modo

$|A \times A'| = |A||A'|sin(\theta)$

così da trovare $\theta$ tale per cui l'uguaglianza faccia 0 e quindi sapere che i due punti sono allineati.
Trovato l'angolo, imporre l'equazione di rotazione classica

$[[x'],[y'],[z']] = [[1,0,0],[0,cos\theta,-sin\theta],[0,sin\theta,cos\theta]][[x],[y],[z]] $

per ottenere i punti allineati.
Quindi a questo punto imporre la distanza euclidea uguale a 0 per trovare i punti xyz da sottrarre a quelli calcolati dal sistema per risolvere la traslazione.
Può avere senso?

Quinzio
Io faccio ancora fatica a capire cosa vuoi effettivamente fare.
Da quello che capisco hai un un punto $A$ e vuoi allinearlo con un secondo punto $A'$.
Con allineare si intende che una la retta $OA$ passa anche per $A'$.

Se e' questo quello che cerchi, non basta fare $A |A'|/|A|$ ?

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.