Реферат: Разработка программы на языке С для построения сложных геометрических фигур на плоскости
Для настройки системы координат в Windows используются два понятия – физическая область вывода (viewport), координаты и размеры которой задаются в физических единицах – пикселях, и логическая область вывода (window), координаты и размеры которой задаются в логических единицах, определяемых размером рисования.
И физическая и логическая области вывода характеризуются точкой, определяющей начало координат. Для настройки начала координат физической области вывода используются функции:
virtual CPoint CDC::SetViewportOrg(int x, int y) или
virtual CPoint CDC::SetViewportOrg(POINT point)
Для настройки логической области вывода используются следующие функции:
CPoint CDC::SetWindowOrg(int x, int y) или
CPoint CDC::SetWindowOrg(POINT point)
Все четыре функции в качестве параметров получают новые значения для установки начала координат, а возвращают предыдущие значения. Здесь есть одна тонкость: если для физической области вывода указываются координаты, которые в дальнейшем будут являться началом координат, то для логической области вывода указываются логические координаты, которые в дальнейшем будут соответствовать левому верхнему углу логической области вывода.
Из вышесказанного следует, что есть смысл настраивать начало координатной сетки только для одной из областей, т.к система координат логической области вывода относительна системе координат физической области.
Рисование линий
Функции этой группы предназначены для рисования прямых (LineTo), гладких (Arc, ArcTo) и ломаных линий (Polyline, PolylineTo), установленным на момент рисования карандашом. Часть функций меняют при этом текущее положение карандаша, другие – нет. Даже если в результате рисования контур получается замкнутым, закрашивание не осуществляется.
Класс CFileDialog
Этот класс отвечает за создание и работоспособность двух блоков диалога: один позволяет выбрать файл для его последующего открытия, а другой предназначен для выбора места расположения и имени файла при его сохранении.
Ниже описаны некоторые основные функции класса.
CFileDialog::CFileDialog(BOOL bOpenFileDialog,
LPCTSTR lpszDefExt = NULL,
LPCTSTR lpszFileName = NULL,
DWORD dwFlags = OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
LPCSTR lpszFilter = NULL,
CWnd *pParentWnd = NULL) – конструктор класса, создает объект «стандартный блок диалога».
Если параметр bOpenFileDialog равен TRUE, создается объект «блок диалога FileOpen (Открытие файла)» и объект «блок диалога FileSaveAs (Сохранение файла)», если bOpenFileDialog равен FALSE.
virtualintCFileDialog::DoModal() – вызов этой функции выводит на экран модальный стандартный блок диалога для открытия или сохранения файла. При успешном завершении функция возвращает IDOKили IDCANCELв зависимости от того, при помощи какой кнопки пользователь закрыл блок диалога.
Для того чтобы получить имя файла, определенное пользователем в блоке диалога, в классе реализованы несколько функций:
virtualCStringCFileDialog::GetPathName() – возвращает полное имя файла, включая путь.
virtualCStringCFileDialog::GetFileName() – возвращает имя файла с расширением.
virtual CString CFileDialog::GetFileExt() – возвращаетрасширениеименифайла.
virtual CString CFileDialog::GetFileTitle() – возвращаетимяфайлабезрасширения.
Выводы
В ходе выполнения курсовой работы были получены основы разработки Windows – приложений с использованием MFС. Был освоен объектно-ориентированный язык программирования VisualC++.
В результате работы была написана программа, которая строит изображение фигуры, приведенной на рисунке 5. При исходных данных (x1, y1,R1, x2, y2, r2, x3, y3, r3), которые должны быть считаны из выбранного пользователем файла. Осуществил проверку исходных данных на соответствие варианту: две окружности находятся внутри третьей.
Список используемой литературы