Разработка информационной системы для деканата высшего учебного заведения
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
?равления iеной, наследник классов камеры и курсора, управлять просмотром трёхмерного изображения с помощью мыши: вращать, перемещать, масштабировать.camerasequence.cpp camerasequence.hКласс-массив камер, является наследником класса камеры, применяется для создания видеороликов.chizu.cpp chizu.hОсновной класс для расчёта батиметрии. Содержит все функции обработки и анализа данных.averagelevel.cpp averagelevel.hКласс, применяемый для расчёта сезонных изменений уровня моря.dinmas.cpp dinmas.hМодуль, сожержащий различные варианты динамических массивов: одномерный, двумерный, трёхмерный, одномерный с двойной адресацией и древовидную структуру. Применяется как контейнер для большинства массивов проекта.doubletable.cpp doubletableКласс, позволяющий читать ascii-файл, представляющий собой таблицу из чисел, разделённых табуляцией и создающий на выходе двумерный массив. Применяется для чтения исходных данных.geometry.cpp geometry.hМодуль, содержащий функции, решающий некоторые геометрические задачи, связанные с триангуляцией.glWindow.cpp glWindow.hКласс API-окна, реализующего вывод OpenGL-графики.lamp.cpp lamp.hКласс, упрощяющий работу с освещением в OpenGL.lotexture.cpp lotexture.hКласс, предназначенный для чтения и записи файлов в формате TGA. Применяется как в качестве контейнера текстуры батиметрической карты, так и для сохранения изображений и видео.material.cpp material.hКласс, упрощающий работу с материалами в OpelGL.mathadv.cpp mathadv.hМодуль, содержащий некоторые дополнительные математические функции.merkator.cpp merkator.hМодуль, содержащий фунцции преобразования географических координат в координаты Меркатора и обратно.point3d.cpp point3d.hКласс, представляющий собой трёхмерную точку. Сожержит некоторые методы обработки.rastrfont.cpp rastrfont.hКласс, упрощающий работу с выводом текста в среде OpenGL.
Коды перечисленных выше модулей приведены в пункте 3 настоящей пояснительной записки. Программное обеспечение опирается файловую на базу данных.
2.1.4 Используемые технические средства
Техническое обеспечение для разработчика:
Персональный компьютер совместимый с IBM PC, тактовой частотой процессора не ниже 1000 МГц с объёмом оперативной памяти 1024 Мб и более, свободным дисковое пространством не менее 50 Мб, видеокартой и монитором, поддерживающие разрешение 1024х768 точек (или выше) и частотой обновления не менее 60 Гц, оборудованный стандартными устройствами ввода и вывода (клавиатура, мышь).
.1.5 Используемые программные средства
Программное обеспечение для разработчика программной системы:
операционная система - Microsoft Windows 98 или более поздняя;
редактор диаграмм и блок-схем Microsoft Visio;
интегрированная среда разработки программных приложений Borland C++ Builder 6;
приложение для предрасчёта приливов wxtide версии 4,7 или выше;
консольное приложение для расчёта триангуляции qdelaunay из группы библиотек Qhull;
консольное приложение Slg2Txt для преобразования бинарных файлов формата slg в текстовый формат, предоставленной фирмой-производителем картплоттеров-эхолотов Lowrance;
консольное приложение tga2avi для преобразования последовательности изображений tga в видеоряд avi.
2.1.6 Вызов и загрузка
Вызов и загрузка программного обеспечения осуществляется запуском исполняемого файла soko.exe. Исполняемый файл должен находится в одной папке с представленными выше консольными приложениями.
2.1.7 Входные данные
Входными данными приложения являются:
) батиметрические треки, получаемые посредством съёмки с помощью картплоттера-эхолота;
) береговые треки, получаемые с помощью GPS-навигатора;
) название региона и его координаты для определения уровня прилива и сезонных изменений уровня моря;
) информация о размере обрабатываемого участка, качестве обработки, пределах глубины, позициях камеры, режимах отображения, количестве изолиний и прочие настройки состояния системы.
2.1.8 Выходные данные
Выходными приложения являются:
) батиметрические карты и карты разницы для выбранных участков в чёрно-белом и цветом варианте;
) изображения трёхмерных срезов батиметрических данных, показанные с определённого ракурса;
) видео-файлы, представляющие собой съёмку трёхмерной батимет-рической карты с различных ракурсов;
) батиметрические треки и сетки, готовые для отображения в про-грамме Google Earth;
) батиметрические сетки в формате.inf для обработки в программном комплексе ANI.
3. ТЕКСТ ПРОГРАММЫ
.1 Модуль soko.cpp
/******************************************************
Автор: Плеханов Ф. А.
Назначение: Входная точка программного приложения, содержит функцию WinMain
и запускает главный исполняемый поток.
*******************************************************/
#include
#pragma hdrstop
//---------------------------------------------------------------------------("soko_code.cpp", BathWin);
//---------------------------------------------------------------------------namespace std;
//Аргументы командной строки
extern AnsiString args;WinMain(HINSTANCE, HINSTANCE, LPSTR Args, int)
{=Args;
{>Initialize();>CreateForm(__classid(TBathWin), &BathWin);>Run();
}(Exception &exception)
{>ShowException(&exception);
}(...)
{
{Exception("");
}(Exception &exception)
{>ShowException(&exception);
}
}0;
}
//---------------------------------------------------------------------------
3.2 Модуль dinmas.cpp (выборочно)
/******************************************************
Автор: Плеханов Ф.А.
Назначение: Модуль контейнерных классов
Входные данные: размер контейнера
Выходные данные: готовый к использванию динамический массив
*******************************************************/
#ifndef DINMAS_CPP
#define DINMAS_CPP
#include
#include
">#include
#define SIZETYPE long