Оператор задания системы координат в окне графического вывода - WINDOW
Функция определения координат или цвета пикселя - POINT
Назначение: Определяет номер цвета пикселя или выдает его координаты.
Синтаксис: POINT(x,y)
POINT(<число>)
Если в функции POINT задается пара координат х и у, возвращается номер цвета пикселя с этими координатами. В том случае, когда координаты выходят из допустимого диапазона, выдается значение -1.
Функция POINT с аргументом <число> позволяет получить текущую координату курсора (варианты значений аргумента перечислены ниже).
Значение | Возвращаемый результат |
Текущая абсолютная координата х | |
Текущая абсолютная координата у | |
Текущая относительная координата х в системе координат, задаваемой оператором WINDOW. Если оператор WINDOW не выполнялся, то возвращается значение функции POINT (0) | |
Текущая относительная координата у. Если оператор WINDOW не выполнялся, то возвращается значение функции POINT (0). |
Функция определения кода и байт-атрибута символа –SCREEN
Назначение: Выдает код ASCII или байт-атрибут символа, высвеченного в заданной позиции.
Синтаксис: SCREEN (<строка>, <столбец>[, <флажок>])
Аргумент | Описание |
<строка> | Числовое выражение, задающее номер строки, в которой находится символ |
<столбец> | Числовое выражение, задающее номер столбца, в котором находится символ. |
<флажок> | Числовое выражение. Если его значение не равно нулю, выдается байт-атрибут символа. Если значение нулевое или <флажок> отсутствует, выдается код ASCII этого символа |
Каждый символ представляется двумя байтами: первый - байт-атрибут -содержит информацию о цвете, а второй - код ASCII отображаемого символа. Байт-атрибут имеет следующую структуру:
Бит Назначение
X... .... Бит мерцания: символ мерцает, если бит равен 1
XXX .... Номер цвета фона
ХХХХ Номер цвета переднего плана. Старший бит - бит интенсивности свечения
Оператор задания окна графического вывода – VIEW
Назначение: Определяется окно графического вывода.
Синтаксис:
VIEW [[SCREEN] (xl,у1)-(х2,у2)(, [<цвёт>] [, <граница>]] ]
Аргумент | Описание |
SCREEN | Данный аргумент указывает, что координаты по осям х и у являются абсолютными; вся графика выводится в пределах окна. Если аргумент SCREEN опущен, координаты точек становятся относительными, то есть отсчитываются от границ окна |
(х1,у1)-(х2,у2) | Аргумент задает прямоугольный участок экрана (окно) с координатами (xl, у1), (х2, у2) верхнего левого и нижнего правого углов, соответственно |
<цвет> | Аргумент определяет цвет фона, которым заполняется окно. Если аргумент опущен, окно не закрашивается |
<граница> | Если в качестве аргумента задано произвольное арифметическое выражение, окно окаймляется границей (если для этого имеется место). Если аргумент опущен, граница не вычерчивается |
Используя оператор VIEW, можно задать ряд окон графического вывода в пределах физической области экрана. Когда такое окно определено, все графические операторы выполняются только в рамках границ этого окна и любая попытка выхода за эти пределы игнорируется. Использование окон графического вывода дает два преимущества:
• простоту изменения размера и расположения окна на экране;
• возможность очистки окна без воздействия на другие области экрана.
Оператор задания системы координат в окне графического вывода - WINDOW
Назначение: Переопределение системы координат в пределах окна графического вывода.
Синтаксис:
WINDOW [ [SCREEN](х1,у1) - (х2,у2) ]
Если оператор VIEW задает систему координат с началом в верхнем левом углу и осью х, направленной вправо, а осью у, направленной вниз, то оператор WINDOW позволяет перейти к декартовой системе координат, используемой в математике, с началом в левом нижнем углу и осью ординат направленной вверх. Аргументы (х1, у1) и (х2, у2) определяют координаты левого нижнего и правого верхнего углов окна и задаются числами одинарной точности.
Оператор WINDOW без аргументов отменяет ранее определенную систему координат; при запуске другой программы с помощью оператора RUN система координат не сохраняется и должна быть задана заново.
Оператор WINDOW SCREEN задает систему координат аналогично оператору VIEW: осью ординат, направленной вниз (стандарт видеомонитора).
Действие операторов WINDOW и WINDOW SCREEN показано на рис. 17.1
Рис. 17.1. Действие операторов WINDOW и WINDOW SCREEN
Оператор WINDOW дает пользователю возможность определить систему координат, которая используется далее при построении линий, графиков или других объектов. Система масштабируется таким образом, что изображение объекта, описанного в своих естественных координатах, не выходит за пределы экрана или окна. Это осуществляется переводом экранных координат в логические, заданные парами чисел одинарной точности (х1, у1) и (х2, у2).
Оператор WINDOW определяет декартову систему логических координат, которая отображается на координаты фрагмента экрана (полного экрана). Во всех последующих графических операторах задаваемые координаты интерпретируются как логические координаты точек, которые воспроизводятся в текущем окне (его; расположение может быть изменено с помощью оператора VIEW).
Операторы RUN или WINDOW без аргументов отменяют преобразование координат. WINDOW с аргументом SCREEN задает систему координат с осью у. направленной противоположно направлению этой оси в декартовой системе.
2. Описание практической части работы:
2.1. Цели лабораторной работы: Ознакомиться с режимами графического вывода информации на экран монитора в среде программирования Basic Microsoft версии 4.0, 4.5, 7.1 и изучить возможность построения графических изображений.
2.2. Постановка задачи: В соответствии с вариантом задания построить на экране монитора заданное изображение, состоящее из отрезков прямых, дуг окружностей и точек. Построение выполнить в 9, 12 и 13 графических режимах. Фон и геометрические фигуры выполнить разными цветами
2.3. Порядок выполнения работы:
2.3.1. Ознакомиться с теоретической частью.
2.3.2. Получить задание у преподавателя.
2.3.3. Выполнить работу.
2.3.4. Оформить отчет:
2.3.4.1. Содержание отчета:
1. Цель работы - краткая формулировка поставленной цели.
2. Порядок выполнения - определяются действия, необходимые для выполнения данной работы.
3. Постановка задачи - формулирование задачи в соответствии с индивидуальным заданием.
4. Решение поставленной задачи:
4.1. Математическое описание решения поставленной задачи содержит описание связей между параметрами с использованием принятых в математике обозначений.
4.2. Описание логической структуры программы (алгоритм решения) содержит:
- краткое описание схемы программы,
- алгоритм решения (по ГОСТ ) - рисунок,
- краткое описание используемых операторов языка программирования (при необходимости).
4.3. Описание программы содержит:
- название файла, его размер,
- текст программы (или фрагмент для решения конкретной, наиболее важной части задания).
4.4. Результат работы программы:
- значения, полученные в результате выполнения программы
- анализ полученных результатов.
Выводы - отвечают на поставленную цель.
2.4. Контрольные вопросы:
1. Какие графические примитивы используются в Basic Microsoft?
2. Укажите назначение и синтаксис оператора CIRCLE?
3. Назовите отличие в работе оператора PSET и PRESET?
4. Можно ли построить с помощью оператора LINE прямоугольник?
5. Назначение оператора SCREEN?
6. Назначение оператора DRAW?
7. Как построить с помощью оператора CIRCLE сектор?
8. Произойдет ли ошибка если строящееся изображение (например, линия) выйдет за зону экрана?
9. Для чего используется оператор VIEW?
10. Назначение и синтаксис оператора WINDOW?
Таблица
Задания
n | задание | n | задание |
В центре экрана построить равносторонний треугольник с вершиной, направленной вверх, внутрь вписать окружность, в центре которой построить точку. | В центре экрана построить квадрат с вершиной, направленной вверх, внутрь вписать окружность, в центре которой построить точку. | ||
В центре экрана построить окружность, в которую правильный пятигранник, в вершинах которого поставить точки. | В центре экрана построить квадрат, его описать треугольником, в вершинах которого поставить точки. | ||
В центре экрана построить правильный шестиугольник, описанный окружностью. Внутрь шестиугольника вписать еще одну окружность. В центре фигур построить точку. | В центре экрана построить равносторонний треугольник с вершиной, направленной вниз, внутрь вписать окружность, в центре которой построить точку. | ||
В центре экрана построить пятиконечную звезду, описанную окружностью, в вершинах которой поставить точки. | В центре экрана построить окружность, на ней провести оси симметрии, в центре поставить точку. | ||
В центре экрана построить квадрат, у которого верхнюю часть (симметричную относительно оси ОХ) заменить дугой окружности. В центре окружности поставить точку. | В центре экрана построить квадрат, к верхней грани которого достроить дугу окружности, проходящую через его вершины. Общие точки пометить другим цветом. | ||
В центре экрана построить окружность, в верхнюю часть которой вписать равносторонний прямоугольный треугольник, а нижнюю часть описать квадратом. В общих точках с окружностью поставить точки. | В центре экрана построить сегмент, соответствующий заданному центральному углу с осью симметрии, расположенной вертикально. В местах соединения прямой линии и дуги окружности поставить точки. | ||
В центре экрана построить квадрат, внутрь вписать окружность, в центре которой построить точку. | В центре экрана построить окружность, в которую правильный шестигранник, в вершинах которого поставить точки. | ||
В центре экрана построить равносторонний треугольник с вершиной, направленной вверх, к его левой грани достроить дугу окружности, в центре которой построить точку. | В центре экрана построить правильный шестиугольник, к его правой грани достроить дугу окружности. Точки контакта шестиугольника с дугой отметить другим цветом. | ||
В центре экрана построить квадрат с вершиной, направленной вверх. К его нижней грани достроить дугу окружности, внутри которой построить точку. | В центре экрана построить квадрат, к верхней грани которого треугольник, проходящий через его вершины. Общие точки пометить другим цветом. | ||
В центре экрана построить окружность, в которую вписать равносторонний треугольник с вершиной, направленной вверх, в центре которых построить точку. | В центре экрана построить квадрат, к нижней грани которого достроить дугу окружности, проходящую через его вершины. Общие точки пометить другим цветом. | ||
В центре экрана построить равносторонний треугольник с вершиной, направленной вверх, его описать окружностью. Внутрь треугольника вписать окружность, в центре которой построить точку. | В центре экрана построить окружность, верхнюю часть описать квадратом, в нижнюю часть вписать равносторонний прямоугольный треугольник. В общих точках с окружностью поставить точки. | ||
В центре экрана построить квадрат, к левой грани которого достроить дугу окружности, проходящую через его вершины. Общие точки пометить другим цветом. | В центре экрана построить окружность, в которую вписать равносторонний треугольник с вершиной, направленной влево, в центре которых построить точку. | ||
В центре экрана построить равносторонний треугольник с вершиной, направленной вверх, к его нижней грани достроить дугу окружности, в центре которой построить точку. | В центре экрана построить квадрат, к левой грани которого достроить треугольник, проходящий через его вершины. Общие точки пометить другим цветом. | ||
В центре экрана построить окружность, в которую вписать квадрат, в центре которых построить точку. | В центре экрана построить пятиконечную звезду, описанную окружностью, в которой поставить точку. | ||
В центре экрана построить окружность, в которую вписать равносторонний треугольник с вершиной, направленной влево. Внутрь треугольника вписать еще одну окружность. В центре фигур построить точку. | В центре экрана построить квадрат с вершиной, направленной вверх, его описать окружностью Внутрь квадрата вписать окружность, в центре которой построить точку. |