|
программирование на языке бейсик
|
|
УРОК 8. Работа с графикой
Н аиболее
интересная часть в программировании - это работа с графикой, которая
позволяет выводить разные фигуры на экран. Перед работой с графикой в
программе устанавливается номер графического режима при помощи
оператора SCREEN.
Лучше пользоваться девятым режимом, в котором выводятся 640 точек по
горизонтали и 350 точек по вертикали, так как в режимах, где имеется
большее разрешение (640х480), не всегда четко работают цвета. Область
экрана показана на рисунке 4 и выделена белым цветом. Ось Y расположена не вверх, как мы привыкли видеть, а вниз, причем верхняя точка имеет значение 0, а нижняя 349.
Р ассмотрим пример программы. SCREEN 9
CLS
LINE (50,50)-(300,200)
В
результате работы данной программы на экране будет выведена наклонная
линия. Первый оператор позволяет установить вид экрана, краткое
описание разных видов приведено в конце главы. Для практических целей
уточним, что экран в этом виде представляется в виде точек, содержащих
640 столбцов и 350 строк. Каждая точка экрана называется пикселом, а
всего на экране 640 х 350 = 224 000 точек или пикселов.
Второй
оператор очищает экран, а третий выводит линию, в которой заданы
конечные ее точки (50,50) и (300,200). Заметим, что при переходе в
графический режим на экране появляются вспышки, которые производятся
из-за перехода в другой режим работы дисплея. Это происходит на всех
видах дисплея, с разницей в том, что вспышек может быть меньше или
больше.
В
дальнейшем мы также будем около текста программы выводить и картинку,
которая возникает на экране при работе программы. Для наглядности
вместо черного фона будем использовать серый фон.
П ри помощи оператора LINE можно нарисовать на экране прямоугольник, как это показано на примере ниже.
SCREEN 9
CLS
LINE (50,50)-(300,200), 4, В
В
данном примере выведен прямоугольник со сторонами, окрашенными в
красный цвет. Координаты противоположных углов заданы координатами
(50,50) и (300,200), 4 - обозначает цвет, а В - признак вывода на экран прямоугольника, а не линии. Всего может быть 16 цветов, которые перечислены ниже:
|
0 - черный | 4 - красный | 8 - серый | 12 - ярко - красный | 1 - синий | 5 - сиреневый | 9 - ярко - синий | 13 - ярко - сиреневый | 2 - зеленый | 6 - коричневый | 10 - ярко - зеленый | 14 - желтый | 3 - бирюзовый | 7 - белый | 11 - ярко - бирюзовый | 15 - ярко - белый |
С ледующий оператор позволяет вывести прямоугольник с закрашенной внутренней частью (параметр BF).
SCREEN 9
CLS
LINE (50,50)-(300,200), 4, ВF
К роме линий и прямоугольников можно выводить и окружности. Приведем пример.
SCREEN 9
CLS
CIRCLE (150,150), 50, 4
В этом примере выведена окружность с центром с координатами (150, 150), радиусом 50 и цветом 4
(красный). На рисунке, на котором показан результат работы программы,
окружность больше напоминает овал. Это происходит потому, что круг
рассчитан на разрешение экрана 640х480 точек, поэтому он в девятом
режиме будет сжат по вертикали. Такие же проблемы могут возникнуть и
при других режимах работы экрана.
Д ля того, чтобы сжать или растянуть окружность, можно использовать пятый аргумент оператора CIRCLE, который определяет коэффициент сжатия. Если он равен 1, то будет окружность, а не эллипс.
SCREEN 9
CLS
CIRCLE (150,150), 50, 4,,,1
П ример
для коэффициента сжатия 0.4, который сплющил окружность по горизонтали,
приведен на рисунке 5. Соответственно, если коэффициент будет больше
единицы, то окружность вытянется по вертикали.
И ногда нужно вывести не окружность, а дугу от круга. В этом случае, программа будет следующей:
SCREEN 9
CLS
CIRCLE (150,150), 50, 4, 0, 1
В данном примере добавлены два аргумента (4,0) в операторе CIRCLE,
которые обозначают начало и конец угла сегмента в радианах. Для того,
чтобы перевести значение из градусов в радианы, следует использовать
формулу у=х*3.14159265/180, где х - значение в градусах, а у -
полученное значение в радианах. Значения должны быть положительные.
Если они будут отрицательные, то на экране будет выведен сектор вместе
с радиусами к конечным точкам дуги, как это показано на примере ниже.
SCREEN 9
CLS
PI = 3.14159265#
CIRCLE (150,150), 50, 4, -2*PI, -1
Задачи.
1. Нарисуйте ребра куба, пирамиды, конверт, российский флаг.
2. Что выводят на экран следующие программы:
|
а) SCREEN 9 CLS CIRCLE (50,50), 25, 6, 0, -1 | б) SCREEN 9 CLS LINE (25,25)-(120,120), 7 |
3.
Напишите программы, которые выводят на экран следующие рисунки:
прямоугольник; ромб; круг; два круга рядом; два круга - один в другом;
овал, сплюснутый по горизонтали; овал, сплюснутый по вертикали;
треугольник; сектор; снеговика; мишень; стрелу; эмблему любой
спортивной команды.
4. Напишите программы для вывода фигур, показанных на рисунках ниже.
|
О↙О↘О↙О↘О↙О↘О↙О↘О↙О↘О↙О↘О↙О↘О↙О↘О
|
|
Информация
данного сайта предназначена для бесплатного изучения персонального
компьютера. Можно копировать, передавать материалы другим лицам.
Запрещается
использовать материалы для получения личной финансовой выгоды, а также
размещать на сайтах в интернете.
|