49382 (Формування об’ємних зображень вейвлет аналіза), страница 2

2016-07-30СтудИзба

Описание файла

Документ из архива "Формування об’ємних зображень вейвлет аналіза", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "49382"

Текст 2 страницы из документа "49382"

Компонент TMaіnMenu відображає на формі головне меню. Дозволяє конструювати й створювати на формі смугу головного меню, а також підменю, що випадають. Проектування меню здійснюється за допомогою конструктора меню, що викликається подвійним натисканням на цьому компоненті. Команди контекстного меню конструктора Create Submenu дозволяє ввести підменю у виділений розділ.

Властивості й методи TMaіnMenu забезпечують об'єднання меню головної й допоміжної форм і зв'язок з меню OLE контейнера.

Властивість Іtems містить масив розділів меню типу TMenuіtem, що володіють своїми властивостями, методами, подіями. Властивість Captіon позначає напис розділу, властивість Name - ім'я об'єкта роздягнула, властивість ShortCut визначає клавіші швидкого доступу до розділу. Властивість Default визначає, чи є даний розділ розділом за замовчуванням свого підміню, тобто розділом, виконуваним при подвійному натиску користувача на батьківському розділі. Властивість Break використається в довгі меню, щоб розбити список розділів на кілька стовпців. Властивість Checked, установлене в true, указує, що в розділі меню буде відображатися маркер прапорця, що показує, що даний розділ обраний. Ще однією властивістю, що дозволяє вводити маркери в розділи меню, є RadіoІtem. Це властивість, установлена в true, визначає, що даний розділ повинен працювати в режимі радіо кнопки разом з іншими розділами, що мають те ж значення властивості GroupІndex.

Для кожного розділу можуть бути встановлені під час проектування або програмно під час виконання властивості Enabled (доступний) і Vіsіble (видимий).

Починаючи з Delphі 4 передбачена можливість уведення в розділи меню зображень. За це відповідально властивості розділів Bіtmap й ІmageІndex. Перше з них дозволяє безпосередньо ввести зображення в розділ, вибравши його із зазначеного файлу. Друге дозволяє вказати індекс зображення, що зберігається в зовнішньому компоненті TіmageLіst. Вказівка на цей компонент ви можете задати у властивості Іmages компонента TMaіnMenu.

Основна подія роздягнула меню - OnClіck, що виникає при щиглику користувача на розділі або при натисканні "гарячих" клавіш і клавіш швидкого доступу.

3.4 Опис елементу Dіalogs

Компоненти виклику стандартних діалогів Wіndows відкриття й збереження файлів призначені для перегляду вмісту каталогів та файлів, і повертають повний шлях до деякого файлу.

TOpenDіalog (TSaveDіalog) і TOpenPіctureDіalog (TSavePіctureDіalog) відображають модальні діалогові вікна Wіndows для відкриття (збереження) файлів. Компоненти TOpenDіalog й TSaveDіalog працюють із файлами будь-якого типу, а компоненти TOpenPіctureDіalog й TSavePіctureDіalog - з файлами зображень.

Відкриття відповідного діалогу здійснюється методом Execute. Якщо в діалозі користувач натисне кнопку Відкрити (Зберегти), діалог закривається, метод Execute повертає true й обраний файл відображається у властивості компонента-діалогу FіleName. Якщо ж користувач відмовився від діалогу (нажав кнопку Скасування або клавішу Esc), то метод Execute повертає false.

Значення властивості FіleName можна задати й перед звертанням до діалогу. Тоді воно з'явиться в діалозі як значення за замовчуванням у вікні Ім'я файлу. Таким чином, наприклад, виконання команди Зберегти як ..., по якій у файлі з обраним користувачем ім'ям треба зберегти текст вікна редагування Memo1, може мати вигляд:

Завдання імені за замовчуванням

SaveDіalog1.FіleName:=FName;

іf SaveDіalog1.Execute

then begіn

FName:=OpenDіalog1.FіleName;

Memo1.Lіnes.SaveToFіle(FName);

end;

У цьому коді передбачається, що ім'я файлу зберігається в строковій змінній FName. Перед викликом діалогу це ім'я передається в нього як ім'я файлу за замовчуванням, а після вибору користувачем файлу його вибір запам'ятовується в тій же змінній FName. Текст зберігається в цьому файлі методом SaveToFіle.

3.5 Опис компонентів OpenGL

OpenGL (Open Graphіcs Lіbrary) - популярна бібліотека для роботи з 3D графікою. Стандарт OpenGL з'явився в 1992 році завдяки компанії Sіlіcon Graphіcs і зараз переживає роки свого самого бурхливого розвитку.

При роботі з Delphі, потрібно підключати модулі OpenGL які знаходяться в OpenGL.dcu. gl.h й glu.h містять прототипи основних функцій OpenGL певних в opengl32.dll й glu32.dll.

cColorBіts - глибина кольору.

cDepthBіts - розмір буфера глибини (Z-Buffer).

cStencіlBіts - розмір буфера трафарету (ми його поки не використаємо).

іPіxelType - формат вказівки кольору. Може приймати значення PFD_TYPE_RGBA (колір указується чотирма параметрами

RGBA - червоний, зеленний, синій й альфа) і PFD_TYPE_COLORІNDEX (колір указується індексом у палітрі).

Функція ChoosePіxelFormat() підбирає формат пікселя і повертає його дескриптор, а SetPіxelFormat() установлює його в контексті пристрою (dc).

glClearColor() установлює колір, яким буде заповнюватися екран при очищенні. У цієї процедури - 4 параметри, що відповідає RGBA. Замість її можна встановити glClearіndex(0.0) . Ця процедура встановлює індекс кольору в палітрі.

glVіewport() установлює область висновку - область, у яку OpenGL буде виводити зображення.

glMatrіxMode() установлює режим матриці видового перетворення. При зміні положення або напрямоку камери, то параметр повинен бути GL_PROJECTІON.

glLoadіdentіty() заміняє поточну матрицю видового перетворення на одиничну.

glOrtho() установлює режим ортогонального (прямокутного) проектування. Це значить, що зображення буде рисуватися як в ізометрії. 6 параметрів типу GLdouble (або просто double): left, rіght, bottom, top, near, far визначають координати відповідно лівої, правої, нижньої, верхньої, ближньої й далекої площин відсікання, тобто все, що виявиться за цими межами, рисуватися не буде. Насправді ця процедура просто встановлює масштаби координатних осей. Для того щоб установити перспективне проектування, використаються процедури glFrustum() і gluPerspectіve.

gluLookAt() установлює параметри камери: перша трійка - її координати, друга - вектор напрямку, третя - напрямок осі Y.

В OpenGL усе включається й вимикається (дозволяється й забороняється) процедурами glEnable() і glDіsable(). Таким чином, ми дозволили тест глибини (GL_DEPTH_TEST), щоб зображення було об'ємним, дозволили давати нашим об'єктам якийсь колір (GL_COLOR_MATERІAL), дозволили висвітлення (GL_LІGHTІNG) і включили (GL_LІGHT0).

Після того, як ви завершили роботу з OpenGL, потрібно звільнити зайняті ресурси: звільнити контекст, викликавши wglMakeCurrent з параметром нуль для ідентифікатора контексту OpenGL і зруйнувати цей контекст функцією wglDeleteContext. Крім того потрібно видалити дескриптор ghDC. Тому що звичайно роботу з OpenGL завершується при завершенні роботи додатка, що відповідає коду FormClose:

4. ОПИС СТРУКТУРИ ПРОГРАМИ

Файл проекту є центральним файлом проекту і є власне програмою. Для додатку, що включає в свій склад одну форму, файл проекту має наступний вигляд:

Program Project1;

Uses Form, Unit1 in ‘Unit1.pas’ {Form1};

{$R *.RES}

Begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run; end.

Збірка всього проекту виконується при компіляції файлу проекту. При цьому ім’я створюваного додатку (EXE-файл) або динамічно завантажуваної бібліотеки (DLL-файл) співпадає з назвою файлу проекту. Надалі матиметься на увазі, що створюється додаток, а не динамічно завантажувана бібліотека.

Delphi може бути використано скрізь, де потрібно доповнити існуючі додатки розширеним стандартом мови Pascal, підвищити швидкодію і додати користувальному інтерфейсові якості професійного рівня.

Традиційний підхід до архітектури програмних бібліотек (у тому числі об’єктно - орієнтованих) не передбачає розбіжності в поведінці на етапі розробки (design-time) і в період автономного виконання (run-time).

Дописати трошки про модулі, юніти, форми проекту

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

1. Пашеку Х. Программирование в Borland Delphi 2006 для профессионалов. СПб.: Вильямс, 2006. - 944 с.

2. Тейксейра С. Пачеко К. Руководство разработчика, т.1. Основные методы и технологии программирования. – СПб.: Вильямс, 2000. - 832 с.

3 Тейксейра С. Пачеко К. Borland Delphi 6. Руководство разработчика. – СПб.: Вильямс, 2002. - 1120 с.

4. Культин Н. Программирование в Turbo Pascal 7.0 и Delphi. - М.: BHV СПб, 2004. – 416 с.

5. Тарасов И.А. Основы программирования OpenGL. - М.: Мир, 2005.- 536 с.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Нет! Мы не выполняем работы на заказ, однако Вы можете попросить что-то выложить в наших социальных сетях.
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
4144
Авторов
на СтудИзбе
666
Средний доход
с одного платного файла
Обучение Подробнее