POLYA U P0LYB

4. 5, g. h (отверстие)

8. В. С. D. 1. Ь. с. d

2, 3. i. j (отверстие)

6, Н. Е. F. 7. т(отверстие)

Векторные инструменты для графики

POLYA-P0LYB

4. 5, 6. Н. Е. F. 7. е, В. В. С. D. 1. а

2. 3. к

P0LYB-P0LYA

1. Ь. с. d. 8. 5. g. h. 4. А. 3. i. j. 2 7. f. 6. G

Отметьте, как нужно правильно обрабатывать отверстия в полигонах (Е, F, G, Н) и (k, i, j) и убедитесь в том, что алгоритм генерирует отверстия должным образом. (Отверстия являются полигонами, которые заносятся в список «против часовой стрелки».)

Усовершенствуйте метод Вейлера-Азертона так, чтобы он мог формировать объединение и разность двух полигонов, и отработайте полученные подпрограммы на различных полигонах. Для облегчения тестирования формируйте полигоны Л и В в файлах или с помощью алгоритмов. Рисуйте исходные полигоны AwB двумя различными цветами, а результат операции - третьим цветом.

4.11. Дополнительная литература Введение в векторную алгебру подробно описывается во многих книгах. Лучшей из них является книга Хоффмана «О векторах» (Hoffmann. About Vectors). Серия книг «Графические драгоценности» (Graphics Gems series [Gems]) предоставляет новые подходы и результаты алгоритмизации арифметики и геометрии векторов и предназначается для профессионалов в области компьютерной графики. Выделим три превосходных статьи: Алана Паета «Использование для вычислений тождества, содержащего половинный угол: очарование тангенса половинного угла» (Alan Paeth. «А Half-Angle Identity for Digital Computation: The Joys of the Half Tangent»), Рона Голдмана «Треугольники» (Ron Goldman. «Triangles»), а также Лопеца-Лопеца «Снова о треугольниках» (Lopez-Lopez. «Triangles Revisited» [Lopez, 133]). Рекомендуем также две книги, которые глубже других проникают в природу геометрических алгоритмов - Морет и Шапиро «Алгоритмы от Р до NP* (Moret and Shapiro. Algorithms From P to NP [Moret, 142]) и Препараты и Шамоса «Компьютерная геометрия, введение» (Preparata and Shamos. Computational Geometry, an Introduction [Preparata, 172]).


⇐ Предыдущая| |Следующая ⇒