netlib.narod.ru< Назад | Оглавление | Далее >

Глава 5. Линии, кривые и заливка областей

Согласно Евклиду, «линия — это протяженность, лишенная ширины 1». Именно утверждение об «отсутствии ширины» делает это определение интересным. С одной стороны, оно свидетельствует о высокой степени абстракции, характерной для мышления математиков Древней Греции, а с другой — позволяет заключить, что эллины были в полном неведении о компьютерной графике. Иначе они бы осознавали, что на самом деле у пикселов есть ширина. С этим фактом связана одна из самых неприятных проблем компьютерной графики, известная как «ошибка смещения на 1 пиксел» (off-by-l-pixel error). В этой главе мы в подробностях рассмотрим эту проблему.

Мир компьютерной графики можно грубо разделить на две области:

За ними идет текст, занимающий собственное место в мире компьютерной графики. Однако в связи с ростом популярности контурных шрифтов (outline fonts) в последнее время с текстом часто обращаются как с частью векторной графики.

В этой главе мы познакомимся с векторной графикой в том виде в каком она реализована в Microsoft Windows Forms и GDI+. Все функции рисования, обсуждаемые в этой главе, являются методами класса Graphics и начинаются с префикса Draw или Fill. Методы Draw рисуют прямые и кривые; методы Fill служат для заливки областей (границы которых, естественно, определяются прямыми и кривыми). Первым аргументом всех рассматриваемых в этой главе методов Draw является объект Pen, а первым аргументом методов Fill — объект Brush.



1 Sir Thomas L. Heath, ed, The Thirteen Books of Euclid's Elements (New York: Dover, 1956)


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz