- •Методические указания по выполнению курсовоЙ Работы
- •210601 Радиоэлектронные системы и устройства
- •Исходные данные к курсовой работе
- •Задание на курсовую работу
- •2. Проектирование интерфейса программы.
- •Объем курсовой работы
- •Выполнение курсовой работы
- •Защита курсовой работы
- •Методические указания по выполнению курсовой работы Порядок выполнения работы
- •1. Анализ объекта редактирования
- •3. Разработка ядра программы
- •Пример курсовой работы.
- •1. Анализ объекта редактирования Параметры редактирования
- •Формат файла.
- •Ini файл
- •Отображение на экране
- •Связанное с объектом действие.
- •2. Разработка интерфейса программы.
- •3. Разработка ядра программы
- •1. Базовый класс.
- •2. Класс для реализации под dos
- •3. Класс для реализации под Windows
- •Разработка алгоритма программы.
Формат файла.
Данные в файле можно хранить множеством способов. 2 самых распространённых и простых в реализации– это простой бинарный и текстовый файлы. Для проверки валидности файла, используют специальные сигнатуры, которые добавляют в начало (например, для файла рисунка (*.bmp) это 2 символа «BM»). Будем использовать сигнатуру «SQR0»
Возьмём к примеру следующие данные:
Редактируемый параметр |
Примерное значение |
Размер стороны квадрата |
45 |
Угол поворота |
30 |
Диагонали |
Есть |
Цвет линии |
65535 (Жёлтый) |
Цвет фона |
255 (Красный) |
Тогда бинарный файл будет выглядеть следующим образом (HEX дамп):
53 51 52 30 2D 00 1E 00 01 FF FF 00 00 FF 00 00 00
А текстовый файл будет выглядеть следующим образом (простой текст):
«SQR0 45 30 1 65536 255»
Ini файл
ini-файлы — это обычные текстовые файлы, которые можно редактировать и просматривать при помощи любого текстового редактора. ini-файлы имеют следующий формат:
; некоторый комментарий
[Section1]
; комментарий о разделе
var1 = значение_1 ; иногда допускается комментарий к отдельному параметру
var2 = значение_2
[Section2]
var1 = значение_1
var2 = значение_2
Для представленного выше примера, INI файл будет выглядеть следующим образом:
[SQR0]
length = 45
angle = 30
diagonal = 1
LineColor = 65535
FillColor = 255
Отображение на экране
На рисунке ниже показано, как должен изображаться объект редактирования
Рис.
1. Отображение редактируемого квадрата
Положение объекта никак не редактируется, поэтому если размеры рабочей области соответствуют width и height, то координаты точки O(Ox,Oy) соответствуют (ClientWidth/2, ClientHeight/2)
Т.к. размеры квадрата определяются длиной стороны квадрата, то масштабировать квадрат по рабочей зоне не требуется. Таким образом определим координаты всех остальных точек:
Ax = Ox+(length/2*(-cos(angle*π /180)+sin(angle*π /180)))
Ay = Oy+(length/2*(-sin(angle*π /180)-cos(angle*π /180)))
Bx = Ox+(length/2*(+cos(angle*π /180)-sin(angle*π /180)))
By = Oy+(length/2*(-sin(angle*π /180)-cos(angle*π /180)))
Cx = Ox+(length/2*(+cos(angle*π /180)-sin(angle*π /180)))
Cy = Oy+(length/2*(+sin(angle*π /180)+cos(angle*π /180)))
Dx = Ox+(length/2*(-cos(angle*π /180)+sin(angle*π /180)))
Dy = Oy+(length/2*(+sin(angle*π /180)+cos(angle*π /180)))
Если координаты левого верхнего угла рабочей области не (0,0), то ко всем точкам необходимо прибавить эти координаты.
Отрисовка квадрата производится в следующей последовательности:
Установить цвет линии в LineColor.
Установить цвет заливки в FillColor.
Отрисовка полигона ABCD.
Если нужно рисовать diagonals, то рисовать линии AC и BD.
Связанное с объектом действие.
В данной работе необходимо посчитать площадь и периметр квадрата. Вычисления проводятся по следующим зависимостям:
Perimeter = Length*4
Square = Length2
Результаты выводятся либо на рабочей области, либо в отдельном окне.
