Главная | Соглашение | Публикация статей

Демонстрационная программа графических функций языка С++
Категория: Статьи

Общие сведения. Данная программа разработана как учебная и в силу этого не имеет кодового обозначения предусмотренного ГОСТом 19.402-78 и представляет собой исполняемый файл grafika.exe и файлов поддержки:
Таблица 1.

Egavga.bgi библиотека взаимодействия с графическим адаптером
bold.chr библиотека жирного шрифта
euro.chr библиотека шрифта «euro»
goth.chr библиотека готического шрифта
lcom.chr библиотека шрифта типа «Комплекс»
litt.chr библиотека шрифта типа «small»
sans.chr библиотека шрифта типа «Сан_сериф»
scri.chr библиотека шрифта типа «Скрипт»
simp.chr библиотека шрифта типа «Симплекс»
trip.chr библиотека шрифта типа «Триплекс»
tscr.chr библиотека шрифта тапа «Триплекс_Скрипт»

Вышеприведенные файлы необходимо разместить в той же директории, что и основной модуль.
Для функционирования программы необходима операционная система MS DOS 3.30 и выше или полностью совместимой с ней.
Исходный текст программы написан на языке программирования высокого уровня С++ фирмы Borland версии 3.1 для DOS и WINDOWS и содержится в файле grafika.срр в форме пригодной к использованию его как текстового документа в среде ДОС. Исходный текст программы приведен в приложении 2.
Функциональное назначение. Программа предназначена для демонстрации основных графических возможностей языка С++ в режиме VGA. Программа дает представление о структуре графических возможностей языка и способах их применения на практике. Функциональным ограничением программы является невозможность её эксплуатации на компьютерах, оснащенных видеоадаптерами, стандарт которых отличается от EGA-VGA.
Описание логической структуры. Программа не несет в себе единого алгоритма в привычном понимании и поэтому блок-схема не приводится. Методы, использованные при написании программы, не являются математическими или прочими стандартными и будут описаны ниже при описании соответствующих функций.
Структурно программа grafika.срр представляет ряд функций, которые кратко описаны в таблице.2

Таблица.2
наименование функции в программе
краткое описание
main главная функция из которой вызываются все другие функции
demoline функция демонстрации рисования линий с применением оператора lineto различными цветами
democircle функция демонстрации рисования окружностей произвольного радиуса с произвольным выбором цвета и координат центра
demopix функция рисования точек в произвольном месте экрана с произвольным цветом
demopieslice функция рисования закрашенных секторов с произвольным расположением на экране, произвольным выбором угла, радиуса, стиля заполнения и цвета
demotext функция демонстрации вывода текстовых данных в графическом режиме всеми доступными в языке С++ стандартными способами и шрифтами c применением библиотек шрифтов, перечисленных в таблице.1
mainwindow функция формирования на экране графического окна с указанным заголовком *header
drawborder функция прорисовки границ графического экрана
statusline функция формирования статусной строки с выводом сообщения *msg
demoarcs функция вывода на экран дуг (частей окружностей) с произвольным начальным углом, цветом и координатами центра
demobars функция вывода на экран определенного числа одинаковых прямоугольников с произвольно изменяющимся цветом
demo3dbars функция демонстрации вывода на экран прямоугольных параллелепипедов произвольного размера, способа заполнения передней грани, и цвета, а так же расположения на экране
diagram функция демонстрации практического применения функции void pieslice(...) языка С++ для построения круговой диаграммы по заданным параметрам
endpage функция демонстрации практического применения рисования линий и секторов с циклически изменяющимися параметрами
endpage1 функция практического применения операторов языка С++ для построения простого калейдоскопа
endpage2 завершающая страница, сообщающая пользователю о завершении работы программы

Кроме функций mainwindow и statusline все остальные функции не имеют входных и выходных параметров. Функция mainwindow в качестве параметра использует символьную строку передаваемую ей вызывающей функцией, также действует и функция statusline. Все функции вывода изображения кроме mainwindow, statusline, drawborder вызываются из главной функции по порядку, а вышеперечисленные вызываются из функций вывода изображения.
Каждая функция вывода изображения вызывает функцию формирования графического окна с необходимым заголовком а также определяет визуальные границы экрана при помощи функции drawborder и помещает в нижнюю часть экрана статусную строку при помощи функции statusline с необходимой надписью. Затем начинается процесс вывода на экран самого изображения, демонстрирующего работу той или иной графической функции языка С++. После прекращения работы управление переходит в главную функцию, откуда вызывается следующая функция вывода изображения.
В процессе работы программа использует файлы, приведенные в таблице.1 и в случае их отсутствия или недоступности функционирование программы будет не полным (библиотеки шрифтов) или полностью невозможным (библиотека взаимодействия с видеоадаптером).
Используемые технические средства. Для правильного функционирования программы необходимо применять следующие компоненты аппаратного комплекса: персональный компьютер класса Ix86 с 640Кб ОЗУ, оснащенный одним накопителем на гибком магнитном диске 720Кб или накопителем типа «винчестер», а так же видеоадаптером EGA или VGA (предпочтительно).Компьютер рекомендуется оснастить видеомонитором, соответствующим видеоадаптеру.
Вызов и загрузка. Для правильного функционирования программы необходимо разместить основной модуль и сопутствующие файлы в одной директории. Для вызова программы необходимо в командой строке ДОС набрать полное имя основного модуля. Никаких параметров в командной строке не требуется.
Входные и выходные данные. Данная программа является демонстрационной и не использует входных данных от пользователя. Выходными данными являются результаты работы функций по выводу изображений на экран. Параметры изображения сохраняются только на экране в процессе работы программы (данной функции).

Демонстрационная программа графических функций языка С++

Статьи по теме:

Обмен данными : Excel - другие приложения
Внутренности микропроцессора
Новый вид Windows Vista
Проблема предотвращения формирования общества потребления
Неправомерный доступ к компьютерной информации (ст. 272 УК)
APERTURE GRILLE
Периферійні пристрої
Базовая система классов Java
Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети
Региональная Система Имен
РЕДАКТИРОВАНИЕ И ФОРМАТИРОВАНИЕ ТЕКСТА
Преимущества .Net Для Разработки Программ И Баз Данных
Обзор возможностей WinRAR 3.70 RU Final
Признаки проявления вируса
Структура ПК
Концентраторы Ethernet NetGear
ЭВМ V поколения
Преимущества Мобильной Торговли
Использование комментариев
Правда об активации Windows Vista
Монтаж фильма
Программа электронной записной книжки
Поиск данных и программ (Archie)
Компонент вывода
Мониторы сегодня
CRT мониторы
Сканеры
Новинка CCTV: монитор Smartec STM-193 с диагональю 19“
Общая структура СКС
Социальные последствия информатизации
Дополнительные программы Microsoft Internet Explorer
Управление выполнением программы
Архитектура системы и реализация основных функций
Запись
Обмен данными через файл-фрагмент
Специфика трудовой деятельности в постиндустриальном, информационном обществе
Анализ развития украинского сегмента сети Internet
Накопители на жестких дисках
Украинский сегмент сети Internet сегодня
Разновидности: Atree ADA, Janus ADA, Meridian ADA
Маркировка + контроль вскрытия с этикетками В-367
Почему чистка регистратуры Windows необходимая
Приостановка печати документа
Копирование цвета области рисунка
Управление расположением значков Microsoft Windows XP
Краткий обзор антивирусных программ
Расследование нарушения правил эксплуатации ЭВМ: системы ЭВМ или их сети
КОМПЬЮТЕРНАЯ ИНФОРМАЦИЯ КАК ОБЪЕКТ ПРЕСТУПНОГО ПОСЯГАТЕЛЬСТВА
Поиск людей (Кто есть Who)
Разработка и распространение компьютерных вирусов
Охранно-пожарные системы фирмы Satel теперь можно контролировать по телефону или Ethernet
СТРУЙНЫЕ ПЛОТТЕРЫ (СП, INK-JET PLOTTER)
Создание Java-приложения “HelloJava”
Математическая логика в криптографии
Icq И Другие: Основы Безопасности