Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Программа рисования графических объектов ⇐ ПредыдущаяСтр 8 из 8
Графические операторы позволяют составлять программы для изображения произвольных объектов с различными цветами окраски линий, заливки и фона, вводить текст и т.д. Совместное использование графических операторов и операторов цикла облегчает рисование геометрических фигур (напр., конуса, параллелепипеда), произвольных узоров, построение графиков функций и т.д.
Пример 4 Рисование рыбки с хвостом, глазами и жабрами (рис. 2) CLS: PI=3.14159265 SCREEN 1 CIRCLE (190, 100), 100, 1, , , .3 ' овал тела CIRCLE (265, 92), 5, 1, , , .7 ' овал глаза LINE (40, 120) –STEP (0, -40), 2 ' линия хвоста LINE –STEP (60, 20), 2 ' линия хвоста LINE –STEP (-60, 20), 2 ' линия хвоста CIRCLE (250, 100), 30, 0, PI-3/4, PI-5/4, 1.5 ' дуга жабр CIRCLE (250, 100), 30, 0, -PI, -PI/10, 2.5 ' дуга рта FOR Y=90 TO 110 STEP 4 LINE (40, Y) – (52, Y), 0 ' оперение хвоста NEXT Y END Рисунок 2 Изображение рыбы Построение графиков функций Изображение кривых графиков различных функций выполняется оператором PSET, который рисует точку с заданными координатами заданного цвета. Совокупность таких точек, изображённых с помощью оператора цикла с маленьким шагом приращения позволяет получить сплошные кривые линии (точки сливаются в линию). Чем меньше шаг, тем больше сливание точек, но тем больше время выполнения программы построения графиков. Если кривых на графике несколько, то можно для построения каждой из них организовать свой цикл вычисления координат [x, y] точек кривых и их рисования оператором PSET(x, y), но проще в одном цикле по аргументу х вычислять значение сначала первой функции у1=f1(x) и нарисовать её с помощью PSET(x, y), затем вычислить при том же х значение второй функции у2=f2(x) и нарисовать её и т.д. Такой вариант построения графика двух функций рассмотрен в примере 5. Пример 5 Построить график функций y = 2sinx и y = x2 - 2x на интервале по оси х от -9 до 9 и по оси у –-5 до 9. Изобразить оси координат Х и У и риски на них через 1, вывести в верхней части название графика.
REM Построение графика функций y = 2sinx, y = x^2 - 2x. SCREEN 12 COLOR 13 ' цвет текста - фиолетовый WINDOW (-9, -9) – (9, 9) ' размеры окна для графика LINE (-9, 0) – (9, 0), 14 ' ось Х, цвет 14 - желтый LINE (0, -5) – (0, 9), 14 ' ось У, цвет 14 – желтый FOR x = -9 TO 9 ' цикл для рисования рисок на оси Х LINE (x, 0) – (x, .2), 14 ' риски на оси Х, цвет 14 - желтый NEXT x FOR y = -5 TO 9 ' цикл для рисования рисок на оси У LINE (0, y) – (.2, y), 14 ' риски на оси У, цвет 14 - желтый NEXT y LOCATE 16, 78 'курсор в позицию [16, 78] PRINT " x" 'вывод названия оси Х LOCATE 16, 39 'курсор в позицию [16, 39] PRINT " 0" 'вывод " 0" в начало координат LOCATE 1, 37 ' курсор в позицию [1, 37] PRINT " y" ' вывод названия оси У FOR x = -9 TO 9 STEP.01 ' цикл для рисования линий графика y = 2*SIN(x) ' выч-е первого У для Х= -9 до 9 с шагом 0, 01 PSET (x, y), 10 ' рисов-е точки [X, Y] для у=2sinх, цв. - зелёный y = x^2 – 2*x ' выч-е второго У для Х= -9 до 9 с шагом 0, 01 PSET (x, y), 11 ' рисов-е т.[X, Y] для у=x^2 – 2sinx, цв. - голубой NEXT x LOCATE 4, 5 ' курсор в позицию [4, 5] PRINT " Графики функций y=2sinx и y=x^2-2x" 'вывод назв. граф END Описание программы Комментарий REM выводит название программы, оператор SCREEN 12 задаёт спецификацию экрана – текстово-графический, 640*480 точек для графики, 256 цветов, 80 столбцов на 40 строк - для текста, COLOR 13 задаёт фиолетовый цвет для текста (фон чёрный), WINDOW определяет
границы графического окна. Операторы LINE рисуют линии осей Х и У жёлтым цветом, затем в циклах FOR...NEXT рисуются линии рисок на осях Х и У, тремя операторами LOCATE [№ строки, № столбца] курсор устанавливается в точки, в которые выводятся названия осей " Х" и " У" и начало координат " 0". Операторы PSET в цикле по Х от –9 до 9 с шагом 0, 001 рисуют точки обоих графиков зелёным (цвет 10) и голубым цветом (цвет 11), причём сначала у вычисляется как 2sinx и первый оператор PSET рисует эту точку при значении х из оператора цикла FOR x = …, затем значение y перевычисляется по формуле x2 - 2x и второй оператор PSET рисует эту точку при том же значении х. Таким образом, значения обоих функций поточечно вычисляются при значениях х, заданных циклом FOR x = -9 TO 9 STEP.01 и сразу поточечно рисуются на экране, т.е. кривые графиков составляются из точек. Чем меньше шаг цикла STEP, тем более сливающимся, сплошными будут линии графиков. Затем курсор устанавливается в позицию [4, 5] и выводится название графика оператором PRINT " Графики функций y=2sinx и y=x^2-2x" .
4 Контрольные вопросы 1 Назначение и формат операторов SCREEN, VIEW, WINDOW. 2 Назначение и формат операторов LINE, CIRCLE. 3 Назначение и формат операторов PSET, PRESET. 4 Назначение и формат оператора DRAW. 5 Как с помощью оператора LINE построить на экране прямоугольник? Как его заполнить нужным цветом? 6 Как построить с помощью оператора PSET сплошную кривую линию y=f(x), состоящую из отдельных точек? 7 Как построить с помощью оператора PSET нескольких кривых на одном графике
2 Задание
Содержание отчета 1 Название, цель, содержание работы 2 Задание для своего варианта. 3 Программа построения фигуры согласно варианту. 4 Программа построения графиков функции согласно варианту. 5 Письменные ответы на контрольные вопросы. 6 Выводы по работе
Популярное:
|
Последнее изменение этой страницы: 2016-05-03; Просмотров: 808; Нарушение авторского права страницы