Удаление невидимых линий и поверхностей

Проекция на экран станет более наглядной, если будет содержать только видимые линии и поверхности. Удаление невидимых линий (hidden-line removal) заключается в блокировании отображения отрезков, скрытых от наблюдателя, а удаление невидимых поверхностей (hidden-surface removal) есть то же самое по отношению к поверхностям. Удаление невидимых линий иллюстрируют рис. 3.20 и рис. 3.21. Очевидно, что эта процедура значительно облегчает восприятие объекта

 

Удаление невидимых линий и поверхностей
 
Удаление невидимых линий и поверхностей
 
Опубликовано множество программных алгоритмов удаления невидимых линий и поверхностей. Их авторы пытаются повысить вычислительную эффективность и расширить диапазон объектов для применения своих алгоритмов. Однако лучше всего удаление реализуется посредством графического устройства, которое называется Z-буфером1, поэтому в настоящее время исследования на эту тему практически не ведутся. В настоящем разделе мы рассмотрим несколько типичных алгоритмов удаления скрытых линий и поверхностей программным путем, а также изучим метод использования для той же цели Z-буфера.
 
 

1 Z-буфером называется область памяти, аналогичная буферу кадра в том смысле, что в ней хранятся данные обо всех пикселах. Однако в z-буфере хранятся не цвета пикселов, а z-координаты объектов, к проекциям которых эти пикселы относятся. Координата z измеряется в наблюдательской системе и потому является мерой расстояния от наблюдателя до объекта.
 
 

 

Смотрите также