CreateImage (width,height[,frames])

Параметры

width=ширина нового изображения (или его кадра )
height=высота нового изображения
frames= необязательный,  число кадров (не указывается для одиночного изображения)

Описание

Иногда Вам нужно создавать графику "на лету" (используя другие изображения, команды рисования, и т.д.) вместо того чтобы загружать его. Эта команда даёт Вам возможность создавать одиночные и анимированные картинки. Вы указываете ширину, высоту, и необязательно, число кадров.

Пример

;Пример CreateImage/TileImage/ImageBuffer 

; Создаём необходимые переменные
; Одна переменная для создаваемого изображения, одна для таймера
Global gfxStarfield, tmrScreen

; Устанавливаем графический режим
Graphics 640,480,16

; Создаём пустое изображение с 32 пикселями в ширину и 32 в высоту с 10 кадрами размерами 32x32
gfxStarfield=CreateImage(32,32,10)

; цикл по всем созданным кадрам изображения
For t = 0 To 9
; Устанавливаем целевой буфер для отрисовки ( в данном случае - картинку)
SetBuffer ImageBuffer(gfxStarfield,t)
; рисуем 50 "звёзд" в случайных местах картинки
For y = 1 To 50
Plot Rnd(32),Rnd(32)
Next
Next

; Двойная буферизация для быстроты и плавности отрисовки
SetBuffer BackBuffer()

; Цикл до нажатия ESC
While Not KeyHit(1)

; Обновляем экран каждые 300 миллисекунд. Поменяйте 300 на меньшее число для большей быстроты отрисовки
; замедление обновления экрана
If MilliSecs() > tmrScreen+300 Then
Cls ;очищаем экран

; Покрываем экран копиями случайных кадров изображения начиная с точки
; x=0 и y=0.
TileImage gfxStarfield,0,0,Rnd(9)
Flip ; смена буферов
tmrScreen=MilliSecs() ; обновляем время
End If
Wend

Главная страница

Нажмите сюда, чтобы увидеть последнюю версию этой страницы в Интернете