Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Альфа-змішування: алгоритм виконання

Реферат Альфа-змішування: алгоритм виконання





Розглянемо алгоритм взаємодії вищеописаних процедур і функцій. Процедура "ПоказатьСцену" викликається кожного разу при зміні зображення сцени, дана процедура містить у своєму тілі основну процедуру програми "ПостроеніеСцени". Процедура "ПостроеніеСцени" крім своїх наборів дій складається з функції: "СортіровкаГраней" і функції "ВичісленіеНормалі". Функція "СортіровкаГраней" включає в собі метод "Flag". Умовна схема взаємодії процедур і функцій представлено на малюнку 2. br/>В 

Рисунок 2 - Умовна схема взаємодії процедур і функцій

4. Тестування програми


4.1 Опис інтерфейсу


При запуску програми користувач відразу бачить сцену: стакан і куб перед ним (малюнок 3).


В 

Рисунок 3 - Інтерфейс програми


Програма має інтуїтивно зрозумілий інтерфейс, те, що було заявлено, то й вийшло - два об'єкти: прозорий об'єкт (стакан) і непрозорий (куб). олучение нормалей до перших 19 гранях склянки

for (int i = 0; i <19; i + +)

{= View [i]. y * (View [i + 20]. z - View [i + 21]. z) + View [i + 20]. y * (View [i + 21]. z - View [i]. z) + View [i + 21]. y * (View [i]. z - View [i + 20]. z); = View [i]. z * (View [i + 20]. x - View [i + 21]. x) + View [i + 20]. z * (View [i + 21]. x - View [i]. x) + View [i + 21]. z * (View [i]. x - View [i + 20]. x); = View [i]. x * (View [i + 20]. y - View [i + 21]. y) + View [i + 20]. x * (View [i + 21]. y - View [i]. y) + View [i + 21]. x * (View [i]. y - View [i + 20]. y); [i] = nz/Math. Sqrt (nz * nz + ny * ny + nx * nx);

}

// Нормаль до 19-ї грані (не піддається циклу)

nx = View [19]. y * (View [39]. z - View [20]. z) + View [39]. y * (View [20]. z - View [19]. z) + View [20]. y * (View [19]. z - View [39]. z); = View [19]. z * (View [39]. x - View [20]. x) + View [39]. z * (View [20]. x - View [19]. x) + View [20]. z * (View [19]. x - View [39]. x); = View [19]. x * (View [39]. y - View [20]. y) + View [39]. x * (View [20]. y - View [19]. y) + View [20]. x * (View [19]. y - View [39]. y); [19] = nz/Math. Sqrt (nz * nz + ny * ny + nx * nx);

// Нормаль до грані (підстава склянки), грань має 10 вершин, взято 3 (0, 10, 19)

nx = View [0]. y * (View [10]. z - View [19]. z) + View [10]. y * (View [19]. z - View [0]. z) + View [19]. y * (View [0]. z - View [10]. z); = View [0]. z * (View [10]. x - View [19]. x) + View [10]. z * (View [19]. x - View [0]. x) + View [19]. z * (View [0]. x - View [10]. x); = View [0]. x * (View [10]. y - View [19]. y) + View [10]. x * (View [19]. y - View [0]. y) + View [19]. x * (View [0]. y - View [10]. y); [20] = nz/Math. Sqrt (nz * nz + ny * ny + nx * nx);


Назад | сторінка 6 з 10 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Створення програми, що включає всі програми лабораторних робіт
  • Реферат на тему: Користувальницький інтерфейс програми кластеризації даних
  • Реферат на тему: Інтерфейс та використання програми Microsoft Word 2007
  • Реферат на тему: Dbase. Призначення, різновиди, переваги, недоліки, особливості і інтерфейс ...
  • Реферат на тему: Розробка програми, що реалізує алгоритм бінарного дерева