Intersezioni retta/piani 3D

fix1
Ciao a tutti,
sono uno studente di Informatica e volevo porvi un semplice quesito la cui soluzione mi servirebbe per implementare un algoritmo.

Avendo due punti nello spazio A(x1,y1,z1) e B(x2,y2,z2) e un cubo i cui estremi si trovano nei punti (0,0,0) e (0.8, 0.8, 0.8) come posso calcolare in modo semplice in che punto avviene (se avviene) l'intersezione tra la retta che passa per i due punti e un piano coincidente con una delle facce del cubo?
Visto che ci siamo... quale è la formula per calcolare la distanza tra due punti nelle 3 dimensioni?

Grazie in anticipo,
Fabrizio.

Risposte
Quinzio
Beh, controlli che ad esempio x1 sia compresa tra 0 e 0.8
Se cio' è vero incrementi un contatore per il punto A (cA).
Ripeti per la y e la z.

Ripeti per il punto B.

Quindi se il maggiore tra (cA, cB) = 3 e il minore tra (cA, cB) < 3 allora il segmento attraversa una faccia.

La distanza in $RR^3$ è $\sqrt((x_0-x_1)^2+(y_0-y_1)^2+(z_0-z_1)^2)$

fix1
ciao, grazie per la disponibilità e per la formula della distanza!
ma credo tu non abbia capito la prima domanda. non devo controllare se un segmento che parte da A e finisce in B attraversa una delle facce del cubo, ma devo calcolare in che punto una retta passante per i punti A e B interseca uno a mia scelta dei piani che coincidono con una delle facce del cubo.
grazie ancora. :)

fix1
nessuno mi può aiutare?

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