Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Растровая развертка эллипсов






 

Простой метод

Эллипс — это сплюснутая или расплюснутая окружность.

Эллипс имеет 2 фокуса, сумма расстояния от любой т. эллипса до каждого фокуса = const.

 
 

Окружность — это вырожденный случай эллипса, когда фокусы совпадают.

 

Рис. 3.11

 

Эллипс имеет 2 радиуса – А и В.

 

Для окружности: А=В

 

 

Для эллипса:

 

 

 

 
 

Используя симметрию, достаточно сгенерировать 1\4 элемента. Вначале основная ось – X, X изменяется от 0 до т. Р, в которой наклон касательной к эллипсу = 450.

 

Рис. 3.12

 

После этого основная ось – Y.

Вначале x=0, y=B, x=1, y=y1,

где

 

.

 

При x=1, и т.д. до тех пор, пока . Далее y изменяется на 1 и вычисляется x.

 

Инкрементивный метод

Уравнение элемента можно переписать:

 

 

Решим приведенное уравнение для x=0 и y=B-0, 5, что позволит оценить, как далеко x от того значения, при котором y=B-0, 5 (B-0, 5 – это т. перехода на следующий по оси Y). Потом пересчитывается уравнение для x+1 и т.д.

Когда результат станет положительным, пора декрементировать y.

Итак, установим , y=B-0, 5

 

Значит, начальная ошибка накопления:

 

 

Если проигнорировать, то останется целочисленная арифметика. Вычисленную вначале ошибку накопления надо корректировать с каждым шагом по оси X, пока она не станет положительной, указывая изменить y. Это делается так. Для текущей точки = . Для следующей т. = .

уже содержится в текущей ошибке, поэтому добавляется к x при каждом шаге (все вычисляется в целых числах).

Когда ошибка , делается шаг по оси Y и пересчитывается ошибка для следующего шага. Для этого вместо y в уравнение эллипса подставляется y-1:

 

 

Т.к. уже есть, то инкрементивная часть =

 

.

 

Рисование прекращается по достижению наклона касательной 450, что определяется тем, что приращение по неосновной оси приращению по основной оси.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.