Презентация на тему Графика QBasic


Графика в QBasic1 В QBASIC существуют специальные графические операторы для создания изображений, но они требуют переключения в другой режим работы экрана. Для включения графических режимов используется оператор SCREEN. При переключении режимов очистка экрана производится автоматически. Пример: оператор SCREEN 2устанавливает графический режим экрана, содержащий 640 точек по горизонтальной оси и 200 точек по вертикальной. Изображение создается точками, и их положение на экране определяется координатной системой. Начало системы координат, т.е. точка с координатами (0,0), расположена в верхнем левом углу экрана. Последняя точка в этом графическом режиме имеет координаты (639,199) и находится в нижнем правом углу. 2 Для рисования картинки понадобятся точки, линии и окружности. В QBASIC для изображения этих графических примитивов используются соответствующие операторы:PSET, PRESET - рисование точки; LINE - рисование отрезка; CIRCLE - рисование окружности.3 Операторы PSET и PRESETОператор PSET предназначен для рисования точки на экране путем изменения ее цвета с фонового (черного) на белый. Оператор может иметь следующие формы:PSET (X, Y) — абсолютная формаPSET STEP (X, Y) — относительная форма, гдеX, Y — абсолютные координаты или смещение точки относительно ТПС.Кроме того, в QBASIC существует оператор PRESET, имеющий аналогичную форму записи:PRESET (X, Y) - абсолютная формаPRESET STEP (X,Y) - относительная форма, гдеX, Y — абсолютные координаты или смещение точки относительно ТПС.4 Пример: В следующей программе показано использование этих операторов:5 Прямые линии — отрезкиОператор LINE предназначен для рисования отрезка, соединяющего две произвольные точки экрана. Отрезок может быть коротким или длинным, вертикальным, горизонтальным или диагональным. Общая форма записи оператора следующая:LINE (Х_начало,У_начало) - (Х_конец, У_конец), гдеХ_начало, У_начало — координаты начала отрезка (необязательные параметры);Х_конец, У_конец —координаты конца отрезка (обязательные параметры).6 Пример: Запустите данную программу на выполнение и посмотрите результат. Первая команда LINE содержит все параметры - координаты начала и конца отрезка. В последующих операторах указаны только координаты конца отрезка. Поэтому каждый отрезок, начиная со второго, начинается в конечной точке предыдущего, образуя ломаную линию 7 В операторе LINE можно использовать относительные координаты для начала и/или конца отрезка. Пример:Программу 2.10 можно переписать следующим образом, используя ТПС:Задание: Попробуйте нарисовать дом или ваш компьютер.8 Рисование прямоугольниковНесколько другая форма записи оператора LINE позволяет рисовать прямоугольники:LINE (Х_начало,У_начало) - {Х_циагональ,У_циагональ) , цвет, ВLINE (Х_начало,У_начало) - {Х_лиагональ,У_дматоналъ) , цвет, BFгдеВ — параметр, указывающий на рисование прямоугольника;BF — параметр, указывающий на рисование закрашенного прямоугольника;(Х_начало, У_начало) —координаты левого верхнего угла прямоугольника;(Х_диагональ, У_диагональ) — координаты правого нижнего углапрямоугольника.9 Пример: 10 Оператор CIRCLEОператор CIRCLE позволяет рисовать окружность в любом месте экрана. Посмотрите на формы записи оператора: Пример: Следующая программа является примером использования данного оператора:Полученная окружность с центром в точке с координатами (100,100) имеет радиус 25 точек.11 Задание: 1.Составьте программу рисования олимпийских колец.2.Составьте программу рисования товарного знака фирмы AUDI.3.Попробуйте запрограммировать свой автопортрет: 12 134.Составьте программу рисования композиции из следующих фигур: Рисование дуги, эллипса, сектораЧтобы нарисовать дугу, эллипс или сектор окружности необходимо добавить новые параметры в оператор CIRCLE. Полная форма записи оператора CIRCLE выглядит так:CIRCLE (X,Y) , радиус, цвет, начало, конец, коэффициент, гдеX, Y — координаты центра окружности;радиус — радиус окружности;цвет— ее цвет;начало — начальная точка дуги, заданная в радианах;конец — конечная точка дуги, заданная в радианах;коэффициент — отношение значений Y-радиуса и Х-радиуса.14 Дуга определяется углом, который вырезается из соответствующей окружности. Значения параметров начало и конец задаются в не градусах, а в радианах и должны иметь значения между 0 и 2π радиан (2π = 6.28). Справка: Радиан — это единица для измерения величины углов, которую можно определить так: один радиан — это угол, вырезающий на окружности дугу, длина которой равна радиусу этой окружности. Радиан составляет 57.28835 градусов. Полная окружность содержит 360 градусов или 2π радиан, а половина (развернутый угол) — 180 градусов или π радиан, где π =3.1415.15 Пример: QBASIC при рисовании дуг ведется отсчет от начальной точки дуги к конечной в направления против часовой стрелки. 16 Для рисования эллипса необходимо ввести в оператор CIRCLE коэффициент отношения радиусов по осям Y и X. Этот параметр определяет степень сжатия эллипса и может иметь любое положительное значение.Если параметр коэффициент опущен или равен 1, вы получаете изображение окружности. Пример:17 Задание: Следующая программа представляет оператор CIRCLE с использованием различных параметров. Возможно, этот рисунок вдохновит вас на создание своих собственных произведений. 18 Использование цвета19 Программируя в QBASIC можно рисовать не только белые изображения на черном фоне. Существуют наборы различных цветов, которые можно использовать как для фона, так и для рисунка.Цвет, который вы добавите в качестве параметра в операторы PSET, PRESET, LINE и CIRCLE, влияет только на изображение, оставляя фон без изменений.PSET (X,Y), цветPRESET (X,Y), цветLINE (Х_начало,У_начало) - (Х_конец,У_конец) , цветCIRCLE(Х_центр,У_центр) , радиус, цвет, где цвет — значение цветового параметра.20 В режиме экрана, задаваемом оператором SCREEN 2, возможны только два цвета: черный и белый.Однако режим 1 поддерживает 4 цвета, которым соответствуют значения от 0 до 3 :Чтобы «стереть» какой-либо элемент изображения без очистки всего экрана, можно просто перерисовать этот элемент цветом фона 21 22Номера цветов для режима SCREEN 7номер цвета цвет0черный1голубой2зеленый3бирюзовый4красный5сиреневый6коричневый7белый8серый9светло –голубой10светло –зеленый11светло –бирюзовый12светло –красный13светло –сиреневый14желтый15ярко - белый Пример: Данная программа рисует две окружности, а затем стирает их изображение. Проверьте:23 При создании любого изображения программисты оперируют двумя понятиями: foreground –цвет рисунка( или переднего плана ) и background –цвет фона. Цветом рисунка считается цвет каждой точки изображенного объекта. Цветом фона считается цвет всех других точек.24QЦвет символа Цвет фона Оператор COLOR.Различные графические режимы позволяют использовать различные наборы цветов. Каждый режим имеет свой набор цветов, называемый палитрой.Способность монитора воспроизводить 16 цветов позволяет выбрать цвет фона в палитре для данного режима работы экрана. Эти изменения могут быть выполнены с помощью оператора COLOR. 25 Данный оператор в графическом режиме отличается от аналогичного оператора в текстовом режиме и имеет следующий вид:COLOR фон, номер палитрыгдефон – код цвета для фона от 0 до15;номер палитры – номер палитры (0 или 1)Оба эти параметра не обязательны, и команда может быть использована без параметров.Рисуя цветные образы, включайте цветовые параметры в операторы рисования основных графических объектов: LINE (X start, Y start ) – ( X end, Y end ), ColorPSET (X, Y), ColorPRESET (X, Y), ColorCIRCLE (X center, Y center), Radius, Color26 Оператор PAINTМожно улучшить изображение объекта (закрашиваемые области должны иметь замкнутый контур), раскрасив его в различные цвета, используя оператор PAINT:PAINT (X, Y), краска, контургдеX,Y – координаты любой точки внутри области;краска – номер цвета для закрашивания;контур – номер цвета для контура области.27 Оператор PAINT работает так:Процесс закрашивания начинается в точке с координатами (Х, Y) и распространяется по всем направлениям. При этом изменяется цвет каждой точки внутри контура.В режиме 1 параметры оператора могут принимать значения от 0 до 3. Если значение не распознается или больше 3, по умолчанию будет выбрано 3.Если значение присваивается параметру краска, а параметр контур опущен, то контур будет окрашен цветом краска.28 29Задание: Составьте программу рисования с использованием операторов разукрашивания. В QBasic существует графический оператор DRAW, с помощью которого создают изображения иным способом и который дает такие возможности как движение и поворот рисунка.Цвет в операторе DRAW может быть определен с помощью команды Сn. Аргумент n должен иметь значение, актуальное для установленного графического режима. Цвет ранее нарисованных фигур по этой команде не изменится.Освоив методы рисования различных изображений, можно попробовать добиться эффекта мультипликации: создавать многократные копии изображения или двигать графическую картинку.30Оператор DRAW 31Команды относительного движения позволяют перемещаться в любом из восьми направлений.Каждая из этих команд сопровождается целочисленным аргументом, указывающим длину линии в точках. Например,Следующие команды также относятся к командам относительного движения:В — перемещение без рисования;N — перемещение без изменения значения LPR.Например:DRAW "NM8,29"Это означает, что можно установить новое значение для LPR без рисования линии (используя команду В) и рисовать линию без изменения прежнего значения LPR (используя команду N). Данные команды дополняют друг друга. 32 33 34Литература: