PureBasic

GrabSprite()

Синтаксис

Result = GrabSprite(#Sprite , x , y , Width , Height [, Mode])

Описание


Захватывает содержимое экрана из указанной области и создает новый Спрайт.

Параметры

#Sprite Номер для идентификации нового Спрайта. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
x, y Начальная позиция зоны захвата (в пикселях).
Width, Height Размер зоны захвата (в пикселях).
Mode (дополн.) Режим. Этот параметр может быть комбинацией следующих значений (с помощью оператора '|'):
  #PB_Sprite_PixelCollision: Добавляет специальную информацию для обработки столкновений пикселей через SpritePixelCollision().
  #PB_Sprite_AlphaBlending : Sprite создается с поддержкой альфа-канала на пиксель, необходимой для DisplayTransparentSprite().

Возвращаемое значение

Возвращает ненулевое значение, если Спрайт был создан успешно, в противном случае - 0. Если для параметра #Sprite было использовано значение #PB_Any, то в случае успеха будет возвращён сгенерированный Номер.

Комментарии

Функция GrabSprite() всегда должна вызываться вне программного блока StartDrawing() : StopDrawing().

Пример (фран.)

InitSprite()

OpenScreen(800,600,32,"Sprite")
 
 ; Создание спрайта 0
CreateSprite(0,200,200)
StartDrawing(SpriteOutput(0))
Circle(100, 100, 100, RGB(255,255,0))
StopDrawing()

 ; Отображение спрайта 0
DisplaySprite(0, 300, 200)

 ; Захватить область экрана и создать спрайт 1
GrabSprite(1, 400, 300, 100, 100)

 ; Отображение спрайта 1
DisplaySprite(1, 500, 100)

FlipBuffers()

Delay(5000)

Поддерживаемые OS

Все

<- FreeSprite() - Оглавление Sprite - InitSprite() ->