9.10. Напишите программу реализации алгоритма строк развертки для сцены, содержащей несколько многогранников. Используйте таблицы многоугольников для хранения определений объекта и техники когерентности для вычисления точек вдоль строк развертки и между ними.

9.11. Разработайте программу отображения видимых поверхностей выпуклого многогранника с использованием алгоритма художника. Поверхности должны сортироваться по глубине и изображаться на экране от фона к переднему плану.

9.12. Напишите программу, использующую метод сортировки по глубине для отображения видимых поверхностей любого данного объекта с плоскими гранями.

9.13. Разработайте программу сортировки по глубине для отображения видимых поверхностей на сцене, содержащей несколько многогранников.

9.14. Напишите программу отображения видимых поверхностей выпуклого многогранника с использованием метода ВЭР-дерева.

9.15. Приведите примеры ситуаций, когда два метода, рассмотренных при обсуждении условия 3 в алгоритме деления области, не смогут корректно идентифицировать окружающую поверхность, затеняющую все другие поверхности.

9.16. Разработайте алгоритм, сравнивающий данную плоскую поверхность с прямоугольной областью, чтобы определить, является ли поверхность окружающей, накладывающейся, внутренней или внешней.

9.17. Создайте алгоритм генерации представления в форме квадродерева видимых поверхностей объекта. Значения элементов дерева должны определяться из проверок методом деления области.

9.18. Разработайте алгоритм хранения в буфере кадра представления объекта в форме квадродерева.

9.19. Составьте процедуру отображения видимых поверхностей объекта, представленного в форме окгодерева.

9.20. Напишите алгоритм наблюдения одной сферы с использованием метода расчета лучей.

9.21. Обсудите, как методы защиты от наложения можно внедрить в различные алгоритмы устранения скрытых поверхностей.

9.22. Напишите процедуру генерации представления поверхности с горизонталями для данной поверхностной функции }{х, у).

9.23. Разработайте алгоритм исследования видимых участков линий на сцене, сравнивающий каждую линию сцены с каждой многоугольной гранью поверхности.

9.24. Обсудите, как на основе различных методов исследования видимых поверхностей, рассмотренных в данной главе, можно получить каркасные изображения.

9.25. Разработайте процедуру генерации каркасного изображения многогранника, невидимые края которого показаны пунктиром.

9.26. Напишите программу отображения многогранника с удаленными выбранными гранями, используя функции OpenGL отбора многоугольников. Каждая грань многоугольника должна отличаться цветом, а выбор удаляемой грани производиться пользователем. Кроме того, точка наблюдения и другие параметры наблюдения задаются как входные значения.

9.27. Модифицируйте программу из предыдущего упражнения, чтобы многогранник можно было наблюдать из любой точки, кроме того, вместо процедур отбора многоугольников используйте процедуры буфера глубины.


⇐ вернуться назад | | далее ⇒