Window
 
Устанавливает новые видимые координаты отображения для текущего экрана

Синтаксис

Window [ [Screen] ( x1, y1 )-( x2, y2 ) ]

Параметры

Screen
Необязательный аргумент, указывающий y координату , устанавливающий отображение сверху вниз.
( x1, y1 )-( x2, y2 )
Новые значения с плавающей точкой, соответствующие противоположным углам текущего видимого экрана. Если параметры опущены, координирование отображения Window удаляется.

Описание

Window используется для определения новой системы координат. (x1, y1) и (x2, y2) новые координаты для преобразования противоположным углам текущего видимого экрана; все будущие координаты, передаваемые графическим примитивным командам будут зависеть от этого нового отображения. Если параметр Screen опущен, новая система координат будет декартова, то есть у координата увеличивается снизу вверх. Вызывая Window без аргумента, отключает преобразование координат.

Для FreeBASIC текущим поведением является отслеживание углов Window, а не конкретного сопоставления координат. Это означает, что координаты сопоставления можно изменить после вызовов View.
Углы в настоящее время также принимаются во внимание при работе с буферами изображений, так что когда используется Window, сопоставление координат будет отличаться от изображения к изображению.

Когда нет Window по сути, нет преобразования координат в действительности, так эффективная система координат является постоянной, независимо от размеров буферов изображения или View координат (если таковые имеются).

Пример

Screen 13

'' определение области отсечения
View ( 10, 10 ) - ( 310, 150 ), 1, 15    

'' Установка видимых кординат
Window ( -1, -1 ) - ( 1, 1 )             

'' Нарисуем ось X
Line (-1,0)-(1,0),7
Draw String ( 0.8, -0.1 ), "X"

'' Нарисуем ось Y
Line (0,-1)-(0,1),7
Draw String ( 0.1, 0.8 ), "Y"

Dim As Single x, y, s

'' вычисление размера шага
s = 2 / PMap( 1, 0 )

'' построим график функции
For x = -1 To 1 Step s
  y = x ^ 3
  PSet( x, y ), 14
Next x

'' возвращаемся в экранные координаты
Window       

'' удалить область ограничения(отсечения)
View Screen  

'' рисуем формулу-заголовок
Draw String ( 120, 160 ), "Y = X ^ 3"

Sleep




Отличия от QB

  • QBASIC сохраняет координаты отображения после последующих вызовов VIEW.
  • Текущим поведением FreeBASIC является сохранение координат WINDOW после вызова VIEW, или при работе с изображениями, а это означает, что координата отображения может претерпевать масштабирование / изменение. (Если WINDOW не был установлен, нет никакого преобразования координат, и поэтому он не меняется после вызовов в VIEW.) Поведение может измениться в будущем, но последовательное поведение может быть гарантированным по неконстантным координатам видимой части, напоминая WINDOW , когда вы изменяете VIEW.

См. также