Informatique Graphique

Lignes cachées

L'algorithme de Roberts

Soit le polyhèdre formé des points $A= \left[{20},{50},{10}\right] $, $B= \left[{20},{60},{20}\right] $, $C= \left[{20},{70},{10}\right] $, $D= \left[{20},{60},{0}\right] $ $A'= \left[{10},{50},{10}\right] $, $B'= \left[{10},{60},{20}\right] $, $C'= \left[{10},{70},{10}\right] $, et $D'= \left[{10},{60},{0}\right] $ et des faces $F_1=\{A,B,B',A'\}$, $F_2=\{B,C,C',B'\}$, $F_3=\{C,D,D',C'\}$, $F_4=\{D,A,A',D'\}$, $F_5=\{A,B,C,D\}$ et $F_6=\{A',B',C',D'\}$.

Soit les trois segments de droite $S=\{P,Q\}$, $S'=\{P',Q'\}$, et $S''=\{P'',Q''\}$, avec $P= \left[{5},{55},{18}\right] $, $Q= \left[{25},{55},{18}\right] $, $P'= \left[{5},{50},{0}\right] $, $Q'= \left[{5},{60},{20}\right] $, $P''= \left[{12},{80},{10}\right] $, $Q''= \left[{18},{80},{10}\right] $.

L'\oeil est $\OE = \left[{15},{-\infty},{0}\right] $, on utilisera donc une projection orthogonale au plan $xOz$ et en direction des «$y$» négatifs.

Utiliser l'algorithme de Roberts pour :

  1. éliminer les faces du polyhèdre qui sont cachées par lui-même,
  2. déterminer si les trois segments $S$, $S'$ et $S''$ sont cachés ou non par le polyhèdre.


Jean-Baptiste Yunes 2002-01-21