📄Работа №183426

Тема: РАЗРАБОТКА БИБЛИОТЕКИ C++ УНИВЕРСАЛЬНЫХ ФУНКЦИЙ ДЛЯ РИСОВАНИЯ ГРАФИКОВ С РАЗЛИЧНЫМИ ФУНКЦИОНАЛЬНЫМИ МАСШТАБАМИ

Характеристики работы

Тип работы Дипломные работы, ВКР
Информатика и вычислительная техника
Предмет Информатика и вычислительная техника
📄
Объем: 60 листов
📅
Год: 2017
👁️
Просмотров: 58
Не подходит эта работа?
Закажите новую по вашим требованиям
Узнать цену на написание
ℹ️ Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.

📋 Содержание

РЕФЕРАТ 2
ВВЕДЕНИЕ 4
1. БИБЛИОТЕКИ ПОСТРОЕНИЯ ГРАФИКОВ 6
1.1. БИБЛИОТЕКА QWT 6
1.2. БИБЛИОТЕКА PLOT GRAPHIC LIBRARY 10
1.3. БИБЛИОТЕКА MATHGL 13
2. ИСПОЛЬЗУЕМЫЕ СРЕДСТВА 16
2.1. ПРИНЦИПЫ РАБОТЫ С ГРАФИКОЙ В WINDOWS 16
2.2. ВЫВОД И АЛГОРИТМЫ ПОСТРОЕНИЯ ОСЕЙ КООРДИНАТ И
ГРАФИКОВ ФУНКЦИЙ 17
2.3. ИСПОЛЬЗУЕМЫЕ БИБЛИОТЕКИ (КРАТКОЕ ОПИСАНИЕ) 29
2.4. ИНТЕРПОЛЯЦИЯ МЕТОДОМ КУБИЧЕСКОГО СПЛАЙНА 32
2.5. ОПИСАНИЕ РАБОТЫ АЛГОРИТМА 1 ПОСТРОЕНИЯ КРАСИВОЙ
ШКАЛЫ МЕТОК 36
2.6. ОПИСАНИЕ РАБОТЫ АЛГОРИТМА 2 ПОСТРОЕНИЯ КРАСИВОЙ
ФУНКЦИОНАЛЬНОЙ ШКАЛЫ МЕТОК 37
3. УСТРОЙСТВО БИБЛИОТЕКИ 41
3.1. ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ И ИХ ОПИСАНИЕ 41
3.2. СПИСОК ФУНКЦИЙ И ИХ ОПИСАНИЕ 42
3.3. АРХИТЕКТУРА БИБЛИОТЕКИ И СВЯЗЬ ФУНКЦИЙ В НЕЙ 47
4. РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 50
4.1. АЛГОРИТМ РАБОТЫ С БИБЛИОТЕКОЙ 50
4.2. ПРИМЕРЫ РАБОТЫ 51
ЗАКЛЮЧЕНИЕ 56
СПИСОК ЛИТЕРАТУРЫ 57

📖 Аннотация

Работа посвящена разработке библиотеки функций на C++ для визуализации графиков с поддержкой функциональных масштабов. Актуальность исследования обусловлена отсутствием в популярной среде MS Visual Studio удобных встроенных средств для построения графиков функций, а также недостатками существующих сторонних библиотек, таких как зависимость от MFC, сложность подключения, отсутствие поддержки или неудобный интерфейс, и, что критично, отсутствие механизма функциональных шкал для наглядного отображения погрешностей. Методологической основой послужил анализ принципов работы с графикой через WinAPI и алгоритмов построения осей координат, включая разработку оригинального алгоритма создания «красивых» функциональных шкал с автоматическим расчетом делений; в результате создана библиотека, обеспечивающая отображение графиков с линейными и функциональными масштабами, вывод нескольких графиков, легенды и интерполяции сплайнами. Практическая значимость заключается в возможности использования библиотеки студентами и разработчиками, работающими в среде Visual Studio на C++, для упрощения визуализации расчетов в консольных и оконных приложениях без необходимости глубокого изучения WinAPI или использования сложных внешних зависимостей. В работе проведен обзор существующих библиотек построения графиков и использованных технологий. Разработанный инструмент решает конкретную проблему удобства и доступности средств графического отображения в учебной и научно-исследовательской практике.

📖 Введение

В настоящее время MS Visual Studio является одной из самых популярных сред разработки на языке C++. Также стоит отметить особую значимость данной среды разработки для студентов, так как в большинстве случаев именно Visual Studio является наиболее распространённой средой для обучения программированию и написания лабораторных работ.
В среде MS Visual Studio существуют средства для работы с графикой, но работа осуществляется посредством взаимодействия с окнами в Windows с помощью средств WinAPI. В этом интерфейсе нет методов для работы с графиками функций и их отображения на экране. И если возникнет необходимость вывести график функции вместе с осями координат на экран, потребуется ориентироваться в структуре WinAPI и функциях вывода изображений на экран.
В связи с этим, в качестве используемого API был выбран WinAPI, а в качестве среды разработки - MS Visual Studio 2017.
Несмотря на существование готовых средств построения графиков и работы с ними, в том числе и с возможностью использования c C++, возможно их дополнение или создание аналогов на базе новых алгоритмов и специфики поставленных задач.
Основные проблемы большинства из них это:
- необходимость использования в проектах MFC, которые предназначены в большей степени для работы с готовыми шаблонами форм. Оболочка MFC не является обязательным компонентом в VS и не доступна в версиях Express;
- давно не поддерживаются и не актуализируются;
- изначально писались для других платформ или инструментов разработки и требуют навыков работы с ними (например Qt);
- сложные механизм подключения и использования;
- приходится самому заботиться о выводе консоли для вывода числовой или текстовой информации;
Также ни в одной из библиотек не поддерживается удобный механизм построения функциональных шкал, полезных на практике для наглядного отображения погрешностей вычисления. Реализация же алгоритма работы с функциональными шкалами будет затруднительна в готовых комплексах для работы с графиками.
В связи с этим было принято решение посвятить выпускную квалификационную работу реализации алгоритма построения красивых функциональных шкал, а также созданию библиотеки функций для работы с графиками, использующую данный алгоритм и ориентированную на простоту использования и работу в консольном режиме для большего удобства при работе с вычислениями в среде разработки Visual Studio и с использованием языка C++.
Целями работы являются: создание библиотеки для работы с графиками, которая могла бы легко работать в консольных приложениях windows без необходимости задавать большое количество аргументов или подключать дополнительные библиотеки; реализация алгоритмов построения красивых функциональных шкал по осям Х или Y для более наглядного отображения данных на графике.
В связи с этим были поставлены следующие задачи:
Реализовать:
- класс создания окна в консольном приложении;
- алгоритмы построения красивых функциональных шкал;
- алгоритмы вывода осей координат;
- алгоритм отрисовки графиков функций;
- визуальное оформление графиков и вывод легенды;
- построение сплайна для наглядного отображения данных.

Возникли сложности?

Нужна качественная помощь преподавателя?

👨‍🎓 Помощь в написании

✅ Заключение

Таким образом, данная библиотека позволяет отображать графики функций с линейными и функциональными масштабами и автоматическим вычислением количества делений и шага между ними на основе введённых функций. Это, а также вывод нескольких графиков, легенды и сплайна функций обеспечивает удобную работу с визуализацией графиков и наглядное отображение их на экране.
Нужна своя уникальная работа?
Срочная разработка под ваши требования
Рассчитать стоимость
ИЛИ

📕 Список литературы

1. WindowsAPI[3neKTpoHHKH ресурс]. // Wikipedia - свободная энциклопедия.- URL: https://ru.wikipedia.org/wiki/Windows_API (дата обращения: 20.06.2016).
2. СТ)1[электронный ресурс]. // Wikipedia - свободная энциклопедия. - URL: https://ru.wikipedia.org/wiki/GDI (дата обращения: 20.06.2016).
3. Директивы #ifndef и #endif, 25.08.2012 [электронный ресурс]. // CppStudio -
Программирование для начинающих на C++, 2016. - URL:
http://cppstudio.com/post/443/ (дата обращения: 20.06.2016).
4. Создание полноценной оконной процедуры в Win32 API (Часть 1)
[электронный ресурс]. // Основы программирования на языках С для начинающих. - URL:http://cppstudio.com/post/9621/(дата обращения:
04.06.2017).
5. Работа с контекстом изображения. [электронный ресурс]. // XServer.ru - бесплатная виртуальная электронная интернет библиотека онлайн. - URL: http://www.xserver.ru/computer/os/win9x/11/3.shtml (дата обращения: 20.06.2016).
6. Функция MoveToEx[элeктpoнный ресурср/WindowsAPI. -
URL:http://www.vsokovikov.narod.ru/New_MSDN_API/Linies/fn_movetoex.htm (дата обращения: 04.06.2017).
7. Функция LineTo[элeктpoнный ресурср/WindowsAPI. -
URL:http://www.vsokovikov.narod.ru/New_MSDN_API/Linies/fn_lineto.htm (дата обращения: 04.06.2017).
8. Функция TextOut[элeктpoнный ресурср/WindowsAPI. -
URL:http://www.vsokovikov.narod.ru/New_MSDN_API/Fonts_text/fn_textout.ht m (дата обращения: 04.06.2017).
9. Math.h[элeктpoнный ресурс]. // Wikipedia - свободная энциклопедия.- URL: https://ru.wikipedia.org/wiki/Math.h(дата обращения: 04.06.2017).
10. VectorsC++ [электронный ресурс]. // Wikipedia - свободная энциклопедия.- URL: https://ru.wikipedia.org/wiki/Vector_(C%2B%2B) (дата обращения: 04.06.2017).
ll.Stdlib.h [электронный ресурс]. // Wikipedia - свободная энциклопедия.- URL: https://ru.wikipedia.org/wiki/Stdlib.h(дата обращения: 04.06.2017).
12.Stdio.h [электронный ресурс]. // Wikipedia - свободная энциклопедия.- URL: https://ru.wikipedia.org/wiki/Stdio.h(дата обращения: 04.06.2017).
13. Windows.h[электронный ресурс]. // Wikipedia - свободная энциклопедия.- URL: https: //en.wikipedia.org/wiki/Windows .Цдата обращения: 04.06.2017).
14. Сплайн [электронный ресурс]. // Wikipedia - свободная энциклопедия-URL: https://ru.wikipedia.org/wiki/Сплайн (дата обращения: 20.06.2016).
15. Кубический сплайн [электронный ресурс]. // Wikipedia - свободная энциклопедия-URL: https: //ru.wikipedia.org/wiki/Кубический_сплайн (дата обращения: 20.06.2016)....18

🖼 Скриншоты

🛒 Оформить заказ

Работу высылаем в течении 5 минут после оплаты.
Предоставляемые услуги, в том числе данные, файлы и прочие материалы, подготовленные в результате оказания услуги, помогают разобраться в теме и собрать нужную информацию, но не заменяют готовое решение.
Укажите ник или номер. После оформления заказа откройте бота @workspayservice_bot для подтверждения. Это нужно для отправки вам уведомлений.

©2026 Cервис помощи студентам в выполнении работ