1. x + y + z > 1, x ≥ 0, y ≥ 0, z ≥ 0 (видимая грань p1p2p3), список граней: p0p p2, p0p2p3, p0p1p3, qp1p2, qp2p3, qp3p1.
2. x + y + z ≤ 1, x < 0, y ≥ 0, z ≥ 0 (видимая грань p0p2p3), список граней: p0p1p3, p0p2p3, p1p2p3, p0p2q, p0p3q, p2p3q.
3. x + y + z ≤ 1, x ≥ 0, y < 0, z ≥ 0 (видимая грань p0p1p3), список граней: p0p1p2, p0p2p3, p1p2p3, p0p1q, p0p3q, p1p3q.
4. x + y + z ≤ 1, x ≥ 0, y ≥ 0, z < 0 (видимая грань p0p1p2), список граней: p0p1p3, p0p2p3, p1p2p3, p0p1q, p0p2q, p1p2q.
5. x + y + z > 1, x ≤ 0, y ≥ 0, z ≥ 0 (видимые грани p0p2p3 и p1p2p3), список граней: p0p1p2, p0p1p3, p1p2q, p0p2q, p0p3q, p1p3q.
6. x + y + z > 1, x ≥ 0, y < 0, z ≥ 0 (видимые грани p0p1p3 и p1p2p3), список граней: p0p1p2, p0p2p3, p0p1q, p1p2q, p2p3q, p0p3q.
7. x + y + z > 1, x ≥ 0, y ≥ 0, z ≤ 0 (видимые грани p0p1p2 и p1p2p3), список граней: p0p1p3, p0p2p3, p0p1q, p1p3q, p0p2q, p2p3q.
8. x + y + z < 1, x ≤ 0, y ≤ 0, z > 0 (видимые грани p0p1p3 и p0p2p3), список граней: p0p1p2, p1p2p3, p0p1q, p1p3q, p0p2q, p2p3q.
9. x + y + z < 1, x ≤ 0, y > 0, z ≤ 0 (видимые грани p0p1p2 и p0p2p3), список граней: p0p1q, p1p2q, p2p3q, p0p3q.
10. x + y + z < 1, x > 0, y ≤ 0, z ≤ 0 (видимые грани p0p1p2 и p0p1p3), список граней: p0p2p3, p1p2p3, p0p2q, p0p3q, p1p2q, p1p3q.
11. x + y + z > 1, x < 0, y < 0, z ≥ 0 (все грани, кроме p0p1p2, видимые), список граней: p0p1p2, p0p1q, p0p2q, p1p2q.
12. x + y + z > 1, x < 0, y ≥ 0, z < 0 (все грани, кроме p0p1p3, видимые), список граней: p0p1p3, p0p1q, p0p3q, p1p3q.
13. x + y + z > 1, x ≥ 0, y < 0, z < 0 (все грани, кроме p0p2p3, видимые), список граней: p0p2p3, p0p2q, p0p3q, p2p3q.
14. x < 0, y < 0, z < 0 (все грани, кроме p1p2p3, видимые), список граней: p1p2p3, p1p2q, p1p3q, p2p3q.
15. x + y + z ≤ 1, x ≥ 0, y ≥ 0, z ≥ 0 (точка q принадлежит тетраэдру), список граней: p0p1p2, p0p1p3, p0p2p3, p1p2p3.
Изображение выпуклого тела. Пусть задано выпуклое тело с помощью координат вершин и списка многоугольников, которые служат гранями этого выпуклого тела. Рассмотрим систему координат (X, Y, Z), выражающихся с помощью параллельной проекции через мировые координаты (x, y, z). В этой системе координат плоскость OXY будет совпадать с плоскостью экрана, а ось OZ будет перпендикулярна плоскости экрана (переход от координат (X, Y) к экранным производится с помощью масштабирования.)
Система координат (X, Y, Z) называется проекционной. В этой системе координат вершины выпуклого тела (xi, yi, zi) будут иметь некоторые координаты (Xi, Yi, Zi).
Для каждой грани запишем уравнение плоскости в проекционной системе координат, содержащей эту грань akX + bkY + ckZ + dk = 0, где k – номер грани, 1 ≤ k ≤ K. Предположим, что вектор нормали N = (ak, bk, ck) направлен наружу выпуклого тела. Тогда если Z-компонента вектора N, равная ck, не больше нуля, то данная грань невидима. Если же ck > 0, то грань видима. Таким образом, получаем схему алгоритма вывода ребер видимых граней выпуклого тела.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.