4916

BGI графика

Доклад

Информатика, кибернетика и программирование

BGI графика. В языках программирования специальных средств для создания графических приложений не было. Единственная возможность выводить графику на экран была только при помощи использования функции bios прямого обращения к видимой памяти. Задача д...

Русский

2012-11-29

15.2 KB

45 чел.

BGI графика.

В языках программирования специальных средств для создания графических приложений не было. Единственная возможность выводить графику на экран была только при помощи использования функции bios прямого обращения к видимой памяти. Задача довольно трудная и не все программисты за неё брались. Поэтому фирма Borland решила разработать библиотеку графических функций для своих компиляторов turbo pascal u turbo C, а библиотека получила название BGI. Данная библиотека позволяет переключать DOS-экран из текстового режима в графический и обратно. Переключение производится с указанием драйвера и требуемого режима.

Т.к. это было 20 лет назад, то никаких 1280х1024 и 16 млн. цветов там нет. Драйвер CGA поддерживает 320х200 и 4 цвета (красный желтый зеленый черный либо CMYK) есть ещё режим 640х200, но всего 2 цвета- черный и белый. Когда появились EGA-мониторы, в библиотеку Borland были добавлены соответствующие драйвера. Появилась возможность использовать 16 цветов с выбором этих 16 из палитры 256. Затем появился драйвер EGA64 c возможностью поддерживать 64 цвета. Когда появились мониторы VGA , драйвер обновили до EGAVGA(640х480). Последними драйверами были драйвера VESA . Использование этих драйверов более сложное, но зато они  позволяют использовать разрешения до 1024х768 и 256 цветов.

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

Основные функции BGI графики

  1. Вывод текста

Write и writeln не работают (за редким исключением). В графическом режиме используется специальная функция для вывода текста по указанным координатам, с указанным шрифтом и цветом.

  1. Функция для отображения точек.( SetPixel(координата, цвет))
  2. Рисование линий.

Линия между 2мя точками и линия из текущего положения в указанную точку.

  1. Рисование прямоугольников(rectangle) и закрашенных прямоугольников(bar).
  2. Окружности и эллипсы.

Переход в графический режим.

Для этого используется функция InitGraph(драйвер, режим, путь к драйверу) Если драйвер лежит рядом с программой, то путь не нужен ( ‘ ‘ )

Например: InitGraph(VGA,VGAHI,’ ’);

Графический режим может не инициализироваться. Продолжение работы программы в этом случае вызовет ошибку. Следовательно, нужно проверить, инициализировался он или нет. Для этого используется Const: GraphResult. Если 0- ошибок нет. Если не 0, то там ошибки.

  1. Для функции вывода текста используется функция OutText(координата Х, координата Y , Сам текст в кавычках ): текст будет рисоваться текущим шрифтом, текущим цветом.
  2. Для установки цвета- SetColor(номер цвета).
  3. Для установки шрифта- SetTextStyle(№, размер, стиль начертания).
  4. Для рисования линий- Line(x1,y1,x2,y2) либо LineTo(x,y).
  5. Переместить указатель в текущую точку- MoveTo(x,y)
  6. Рисование прямоугольников- Rectangle(x1,y1,x2,y2) –координаты 2х углов прямоугольника. Закрашенный прямоугольник- Bar(x1,y1,x2,y2).
  7. Установить стиль закрашивания SetFillStyle(
  8. Окружность. Circle(x,y,R)

 

А также другие работы, которые могут Вас заинтересовать

52105. Внутрішні води Африки 53 KB
  Кагера що впадає в озеро Вікторія. Що таке озеро Які за походженням вони бувають Виступи дітей ОЗЕРА Більшість озер Африки розташовані уздовж Східноафриканських розломів. Найбільше з них озеро Танганьїка глибиною 1470 метрів друге за глибиною після Байкалу і найдовше світі озеро 670 км. Найбільше озеро Африки і друге за площею пріноводне озеров світі після о.
52106. Agatha Christie 72 KB
  Аgatha Mary Clarissa Christie is possibly the worlds most famous detective story writer. She wrote 79 novels and several plays. Her sales outnumber those of William Shakespeare. However, behind her 4,680,000 words was a painfully shy woman whose life was often lonely and unhappy.
52107. Я і мої друзі - лідери здоровя 269.5 KB
  Так працюючи за програмою Сприяння просвітницькій роботі Рівний –Рівному серед молоді України щодо здорового способу життя я маю можливість формувати здоров’язберігаючу компетентність учнів орієнтувати дітей та молодь на здоровий спосіб життя виховувати у них відповідальне ставлення до здоров’я. Однією із дієвих форм пропаганди учасниками програми здорового способу життя серед широких учнівських мас є створення і виступи агітбригади яка є близькою і зрозумілою для всіх томущо в ній є творче вираження та активна подача великого...
52108. Was ist Deutschland für uns 38 KB
  Die Musik ist eine Kunst. Ich habe Music gern. In Deutschland können Sie Philharmonie besuchen, und schöne Music hören. Hören die Werk des bekannten Musikers. Solche wie: Iogan Bach, Ludwig van Bethoven, Brahms Johannes. Horen die Werk des Großen Musikers.
52109. Сценарий выступления агитбригады молодых творческих педагогов 88.5 KB
  Карманова Деньгиденежки затем на мотив песни группы Гринджоли Разом нас багато Разом вас багато Всіх не прогодувати Председатель ПК: ах так Ну теперь держитесь отходит в сторону зовёт членов ПК Члены Пк берут транспаранты: ПК нас защитит и ходят по сцене со словами: Разом нас багато Всіх не подолати 3 раза Министр выглядывает кусает губыприносит приказ на повышение З п председателю ПК Все радуются обнимаютсяуходят со сцены Вера Васильевна: вот это да к самому министру не побоялись поехать Ирина Владимировна:...
52110. World AIDS Day is December 1st 70.5 KB
  Ukraine has an HIV/AIDS epidemic. UNAIDS estimates the number of people infected with HIV/AIDS to be between 260 000 and 590 000. The cases of HIV have doubled every year for the past three years. Experts estimate that 1.4 percent of the adult population is HIV positive or has AIDS. This is the highest rate of infection in Eastern Europe and the CIS states. Unfortunately, it is also estimated that about 90 percent of these people don't know, and arent registered with the government thus not receiving the treatment.
52111. Оглянись внимательно вокруг 49.5 KB
  Что по вашему мнению мы должны заложить в фундамент Дома личности способности здоровье окружение Стены можно сравнить с характером человека Их каких кирпичиков по вашему мнению мы возведём стены Дома личности доброта терпение любовь дружба понимание милосердие терпение уважение целеустремленностть Что может быть светом в окошке нашего дома Умение любить людей Что украшает наш дом жизнерадостность оптимизм внешность увлечения духовность И наконец что венчает любой дом Его крыша. Все названные...
52112. Активизация учащегося на уроке как фактор повышения его эффективности 136.5 KB
  В учебном заведении особое место занимают такие формы занятий которые обеспечивают активное участие в уроке каждого учащегося повышают авторитет знаний и индивидуальную ответственность учащихся за результаты учебного труда. Вопросы и их роль в активизации деятельности учащихся [7] 2. Приемы активизации [8] Уровни познавательной активности [9] Принципы активизации познавательной деятельности учащихся. [17] Факторы побуждающие учащихся к активности.
52113. АКТИВІЗАЦІЯ ПІЗНАВАЛЬНОЇ ДІЯЛЬНОСТІ УЧНІВ НА УРОКАХ УКРАЇНСЬКОЇ МОВИ ТА ЛІТЕРАТУРИ 115 KB
  Сучасний етап історичного розвитку України характеризується істотними змінами в житті її народу оновленням усіх сфер діяльності людини переоцінкою та утвердженням у свідомості нації нових світоглядних орієнтацій. Згідно із законом України Про освіту Державною національною доктриною розвитку освіти України в XXI столітті Концепцією загальної середньої освіти ми маємо здійснити кардинальний перехід від традиційного інформаційнопояснювального навчання зорієнтованого на передачу готових знань до особистісно розвивального спрямованого не...