Вычисление ведомости тахеометрической съёмки

Автор: O********************@gmail.com, 24 Ноября 2011 в 20:54, курсовая работа

Описание работы

Программа для вычисления ведосомти тахеометрической съмки будет написана на алгоритмическом языке Object Pascal и реализована в среде программирования Delphi 5.0.
Программа включает в себя непосредственно вычисление ведомости, многооконный интерфейс, обработку событий для форм и кнопок, работу с текстовым и типизированным файлами, работу в графическом режиме, а также будет присутствовать индивидуальное оформление.

Содержание

ВВЕДЕНИЕ………………………………………………………………………
7
1.
Общие сведения о программировании для Windows………………..
8
1.1.
Понятие графического интерфейса пользователя (GUI) ……………
8
1.2.
Модель событий GUI. ………………………………………………….
8
1.3.
Визуальная среда программирования……………………………….
9
1.4.
Объектно-ориентированное программирование: ……………………
10
1.4.1.
Инкапсуляция…………………………………………………………..
10
1.4.2.
Наследование……………………………………………………………
10
1.4.3.
Полиморфизм…………………………………………………………..
11
2.
Решение инженерной задачи.....................……………………………..
12
2.1.
Общее описание геодезической задачи………………………………..
12
2.2. Цель решения задачи........................................................………………
12
2.3. Описание входных данных и их типов...……………...........................
13
2.4. Определение выходных данных и их типов………………………….
13
2.5. Математический аппарат решения задачи……………………………
13
2.6. Решение тестовых примеров...........……………………………………
15
3. Программирование задачи в Delphi............……………………………
16
3.1. Определение числа форм и их назначение .......………………………
16
3.2. Проектирование и описание интерфейса форм………………………
16
3.3. Проверка входных данных……………………………………………..
21
3.3.1. Проверка наличия данных.……………………...................................... 21
3.3.2. Проверка семантической корректности данных……………………… 23
3.3.3. Проверка физической корректности данных …………………............ 23
3.4. Работа в графическом режиме.…………………………….................... 25
3.5. Тестирование программы…..................................................................... 25
3.6. Создание файла помощи и его использование……………………….. 30
ЗАКЛЮЧЕНИЕ......................................................................................................
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ...................................................
32
33

Работа содержит 1 файл

Пояснительная записка.docx

— 1.55 Мб (Скачать)

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

     3.2. Проектирование и описание интерфейса форм 
 

     Форма Form_splash – форма заставки при загрузке программы. На эту форму были помещены компоненты TTimer (Sistem) и TImage (Additional).

     Форма заставки представлена на рисунке 3.2.1 

Рис. 3.2.1 – «Форма заставки» 

     Форма Form_main – главная форма программы, которая появляется после заставки.

     На  эту форму были помещены такие компоненты как: TStatusBar (Win32), TToolBar (Win32), TMainMenu (Standart), TImage (Additional), TImage (Win32), TOpenDialog (Dialogs)

     Главная форма программы представлена на рисунке 3.2.2

Рис. 3.2.2 – «Главная форма» 

     Форма Form_About – форма «О программе»

     На  эту форму были помещены компоненты TButton (Standart), TImage (Additional) и 3 компоненты TLabel (Standart).

     Форма «О программе» представлена на рисунке 3.2.3

    

Рис. 3.2.3 – Форма «О программе» 

     Форма Form_new_data – форма для ввода исходных данных

     На  эту форму были помещены 5 компонент TButton (Standart), 5 компонент TEdit (Standart), 4 компоненты TLabel (Standart), 5 компонент TPanel (Standart), SaveDialog (Dialogs), SpinEdit (Samples), StatusBar (Win32), StringGrid (Additional).

     Форма «Исходные данные» представлена на рисунке 3.2.4

Рис. 3.2.4 – Форма «Исходные данные» 

     Форма FormGraphics – форма, на которой представляется решение задачи в графическом виде.

     На  эту форму были помещены компоненты TImageList (Win32), 2 компоненты TPanel (Standart), TPageControl (Win32), TStringGrid (Additional), TSavePictureDialog (Dialogs), StatusBar (Win32), ToolBar (Win32)

     Форма графики представлена на рисунке 3.2.5

Рис. 3.2.5 – Форма «Графика» 
 

     3.3. Проверка входных данных 
 

     Данные  проверки дают возможность пользователю не ошибиться с вводом исходных данных для решения данной задачи , что не повлечет за собой появление неправильных результатов. 
 

     3.3.1. Проверка наличия данных 
 

     Данная  проверка состоит в том, что при  случае если в окне вводимых данных не будет введен ни один символ, программа  выдаст сообщение об ошибке и не даст возможность продолжать вычисление текущей задачи. Эта проверка будет срабатывать только при наличии в листинге программы следующего кода : 

     begin

     if Edit1.Text='' then

     begin

     ShowMessage('Нет градусов места нуля');

     Exit;

     end; 

     if Edit2.Text='' then

     begin

     ShowMessage('Нет минут места нуля');

     Exit;

     end; 

     if Edit3.Text='' then

     begin

     ShowMessage('Нет отметки точки станции');

     Exit;

     end; 

     Этот  код должен быть подсоединен к кнопке, при нажатии которой и будет проходить проверка. В случае успешного проверки, программа автоматически  будет выполнять расчеты требуемые непосредственно для решение самой задачи.  
 
 

     3.3.2. Проверка семантической корректности данных 

     Данная проверка заключается в том, что на вводимые данные налагаются ограничения(семантическая корректность), т.е. вы не сможете ввести какие-либо символы, кроме цифр от 0 до 9 и разделительной запятой. Для того, чтобы эта проверка работа в коде программы прописываем следующий код:

     procedure TForm_new_data.StringGrid_vvodKeyPress(Sender: TObject;

     var Key: Char);

     begin

     if not (Key in ['0'..'9',DecimalSeparator,#8])

     then

     begin

     ShowMessage('Вы вводите недопустимые данные!');

     Key:=#0;

     Exit;

     end;

     end; 
 

     3.3.3. Проверка физической коректности данных 
 

     Данную  проверку стоит выполнять в том  случае, если при введении чисел  требуется соблюдение некого диапазона. Например, для вычисления ведомости тахеометрической съемки, в исходные данные нужно ввести значение углов по горизонтальному и вертикальному кругам в градусах, минутах, секундах, соответственно в диапазоне для: градусов - 0º-359º, минут 0'-59', секунд 0''-59'' 

     Эта проверка будет срабатывать только при наличии в листинге программы: 

     / Проверка горизонтального угла на допустимые значения

     if ACol=2 then

     begin

     if StrToInt(Value)>360 then

     begin

    ShowMessage('Недопустимое значение градусов горизонтального угла');

     StringGrid_vvod.Cells[ACol,Arow]:='';

     Exit;

     end;

     end;

     // Проверка минут горизонтального угла на допустимые значения

     if ACol=3 then

     begin

     if StrToInt(Value)>59 then

     begin

     ShowMessage('Недопустимое значение минут горизонтально угла');

     StringGrid_vvod.Cells[ACol,Arow]:='';

     Exit;

     end;

     end; 

     Данную  проверку стоит выполнять в том  случае, если нам нужно вводить  только числа, а другие знаки, такие  как буквы и т.д. не допустимы. 
 

     3.4. Работа в графическом режиме 
 

     Работу в графическом режиме можно начать лишь после того, как вы введете все необходимые данные и произведете вычисления. Так как, не выполнив эти действия, кнопка Графика, позволяющая перейти на форму работы с графикой и находящаяся на форме «Исходные данные», не активна.

     После выполнения необходимых действий, нажимаем кнопку Графика, после чего появится форма «Графическая схема». Для рисования графики необходимо нажать на кнопку Нарисовать точки . После того как графика будет выполнена, ее можно будет увеличить(кнопка Увеличить ), уменьшить (кнопка Уменьшить ) и сохранить (кнопка Сохранить ). Сохраненный файл графики можно будет просмотреть в стандартной программе для рисования Paint.  
 

     3.5. Тестирование программы  
 

     Для тестирования программы я также использовала ведомость, вычесленную в осеннем семестре. Тестирование программы заключается в том, чтобы проверить правильность вычислений, сохранение полученных данных в текстовый и бинарный файлы, а также сохранение полученной графики.

     Сначала я на форме «Исходные данные» вводила данные с клавиатуры

     Пример представлен на рисунке 3.5.1

Рис. 3.5.1 – «Ввод данных с клавиатуры» 

Результаты вычислений представлены на рисунке 3.5.2

     Рис. 3.5.2 – «Результаты вычислений» 

     Полученные данные можно сохранить как в текстовый, так и в бинарный файлы. Для этого нажимаем кнопку Сохранить, после чего появится диалоговое окно, в котором вам необходимо будет выбрать расширение, которое вы хотите присвоить данному файлу (.txt, .bin, *.*), и прописать имя файла, под которым он будет храниться (рис 3.5.3)

Рис. 3.5.3 – «Сохранение вычислений в файл» 

     Для перехода на форму графики нажимаем кнопочку «Графика» на форме исходные данные, после чего появится форма «Графическая схема», представленная на рисунке 3.5.4

     Рис. 3.5.4 – форма «Графика» 

     Для рисования графики нужно нажать на кнопочку Рисовать . После чего на форме появится решенная задача в графическом виде.(рис. 3.5.5)

Рис. 3.5.5 – «Рисование графики» 

     Также для тестирования программы был создан текстовый файл в формате .txt, который сохранен в папке Data под именем Исходные данные. Для его открытия на главной форме в меню Файл нажимаем Открыть, после чего в появившемся окне выбираем нужный нам файл. В таблице исходных данных появляются данные, содержащиеся в документе(рис. 3.5.6)

Рис. 3.5.6 – «Открытие исходных данных из тектсового документа» 

     После открытия текстового документа с исходными данными мы вводим недостающие данные и нажимаем кнопку Вычислить(рис. 3.5.7)

Рис. 3.5.7 – «Результат вычисления по данным из файла»

     По  результатам тестировани видно, что программа работает правильно. Вычисления произведены верно, графическое представление решения работает, сохранение в текстовый и типизированные файлы производится успешно.  
 

     3.6. Создание файла помощи и его использование 
 

     Для создания файла помощи я использовала программу «Help & Manual»

После запуска программы выбираем New Help & Manual Project. Затем слева в колонке Tabel of Contents прописываем основные пункты и подпункты, необходимые для работы прграммы, для которой пишется помощь. Для добавления

или удаления разделов используем кнопки «плюс» и «минус», которые находятся над колонкой Tabel of Contents. Для написания текста для какого-либо раздела помощи переходим на поле ввода текста Help Text. Введеный текст можно редактировать: изменять шрифт, размер, цвет текста, выравнивать по левому,по правому краю и по центру, и т.д.

     После написания всех пунктов помощи, сохраняем файл в папку Listing,

затем нужно откомпелировать программу. Для этого нажимаем кнопку Make Help File and Run(в виде мясорубки),в появившемся окне выбираем пункт Winhelp . После компиляции появится диалоговое окно в котором вы сможете увидеть где был сохранен файл. В листинге программы надо прописать на тот пункт меню, при обращении к которому будет появляться файл помощи код: Application.HelpCommand(HELP_CONTENTS,0);

     Для присоединения файла помощи в программу нужно выполнить следующие действия: Project ÞOptions Þ Applications. В строке Help file прописать путь к файлу помощи и нажать ОК. Затем сохраняем все изменения в программе и запускаем ее на выполнение. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ЗАКЛЮЧЕНИЕ 

     В процессе изучения языка программирования Object Pascal и визуальной среды программирования Delphi 7 был создан программный продукт, производящий вычисление углов ориентирования.

Информация о работе Вычисление ведомости тахеометрической съёмки