Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Технічний проект. 
Відсікання відрізка на площині прямокутним вікном

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Якщо логічне & кодів обох кінців відрізка дорівнює нулю, то відрізок підозрілий, він може бути частково видимим мул і цілком невидимим; для нього потрібно визначити координати перетинів зі сторонами вікна і для кожної отриманої частині визначити тривіальну видимість або невидимість. При безпосередньому використанні описаного вище способу відбору цілком видимого або цілком невидимого відрізка… Читати ще >

Технічний проект. Відсікання відрізка на площині прямокутним вікном (реферат, курсова, диплом, контрольна)

Опис обраного підходу

Ідея алгоритму полягає в наступному.

Вікно відсікання і прилеглі до нього частини площині разом утворюють 9 областей. Кожній з областей присвоєний 4-х бітний код.

Дві кінцеві точки відрізка отримують 4-х бітні коди, які відповідають областям, в які вони потрапили. Значення бітів коду:

  • 0 біт = 1 — точка лівіше прямокутного вікна;
  • 1 біт = 1 — точка правіше прямокутного вікна;
  • 2 біт = 1 — точка вище прямокутного вікна;
  • 3 біт = 1 — точка нижче прямокутного вікна.

Визначення того чи лежить відрізок цілком всередині вікна або цілком поза вікном виконується наступним чином:

якщо коди обох кінців відрізка рівні 0 то відрізок цілком всередині вікна, відсікання не потрібне, відрізок при приймається як тривіально видимий;

якщо логічне & кодів обох кінців відрізка не дорівнює нулю, то відрізок цілком поза вікном, відсікання не потрібне, відрізок відкидається як тривіально невидимий;

якщо логічне & кодів обох кінців відрізка дорівнює нулю, то відрізок підозрілий, він може бути частково видимим мул і цілком невидимим; для нього потрібно визначити координати перетинів зі сторонами вікна і для кожної отриманої частині визначити тривіальну видимість або невидимість.

При розрахунку перетину використовується горизонтальність або вертикальність сторін вікна, що дозволяє визначити координату X або Y точки перетину без обчислень.

При безпосередньому використанні описаного вище способу відбору цілком видимого або цілком невидимого відрізка після розрахунку перетину необхідно було б обчислення коду розташування точки перетину.

В цілому схема алгоритму Сазерленда-Коена наступна:

  • 1) Розрахувати коди кінцевих точок відрізка, що відсікається. У циклі повторювати пункти 2−6:
  • 2) Якщо логічне & кодів кінцевих точок не дорівнює 0, то відрізок цілком поза вікном. Він відкидається і відсікання закінчено.
  • 3) Якщо обидва коди дорівнює 0, то відрізок цілком бачимо. Він приймається і відсікання закінчено.
  • 4) Якщо початкова точка всередині вікна, то вона міняється місцями з кінцевою точкою.
  • 5) Аналізується код початкової точки для визначення сторони вікна з якою є перетин і виконується розрахунок перетину. При цьому обчислена точка перетину заміняє початкову точку.
  • 6) Визначення нового коду початкової точки.
Показати весь текст
Заповнити форму поточною роботою