MovieHeight( movie )

Параметры

movie - указатель фильма

Описание

Возвращает высоту указанного фильма.

Смотрите также: OpenMovie, DrawMovie, CloseMovie, MoviePlaying, MovieWidth.

Пример

; Пример Movie Commands
; ======================
; Демонстрируются следующие команды:
;
; OpenMovie
; MovieHeight
; MovieWidth
; MoviePlaying
; DrawMovie

; Начальные константы
Const WIDTH = 640
Const HEIGHT = 480

; Первым делом установим графический режим
Graphics WIDTH, HEIGHT
SetBuffer BackBuffer()
ClsColor 0,0,0
Color 0,255,0

; Теперь откроем файл с анимацией. Можно использовать файлы AVI или MPEG.
movie=OpenMovie("media/hat.gif")

; Выясняем, как произошла загрузка файла
If movie=0 Then RuntimeError "Ошибка - такого файла нет!"
If Not(MoviePlaying(movie)) Then RuntimeError "Ошибка - фильм не воспроизводится!"

;Определим размер окна фильма
w=MovieWidth(movie) ; ширина
h=MovieHeight(movie) ; высота

; Установим координаты и синхронизацию
x=(WIDTH-w)/2 ; координата x окна с фильмом
y=(HEIGHT-h-100)/2 ; координата y окна с фильмом
period=100 ; задержка между кадрами
time=MilliSecs() ; время последнего обновления

; Здесь начинается главный цикл
Repeat

; Делаем задержку

; Файлы GIF не содержат информации о синхронизации, поэтому выводим следующий кадр при помощи команды DrawMovie.
; Файлы AVI и MPEG содержат информацию синхронизации и тоже выводят следующий кадр при каждом вызове DrawMovie.
; Поэтому, следующий цикл требуется только для формата GIF.
Repeat
Until MilliSecs()-time>=period
time=MilliSecs() ; Сохраняем текущее время для следующего кадра

; Анализируем клавиатуру

; Клавиша CONTROL регулирует шаг изменения скорости воспроизведения
If KeyDown(29) Or KeyDown(157) Then
change=5
Else
change=1
End If

; Клавиша SHIFT меняет размеры
If KeyDown(42) Or KeyDown(54) Then
If KeyDown(203) And w>change-1 Then w=w-change
If KeyDown(205) And x+w+change < WIDTH Then w=w+change
If KeyDown(200) And h>change-1 Then h=h-change
If KeyDown(208) And y+h+change < HEIGHT Then h=h+change
Else
; otherwise it's the position that we're changing
If KeyDown(203) And x>change-1 Then x=x-change
If KeyDown(205) And x+w+change < WIDTH Then x=x+change
If KeyDown(200) And y>change-1 Then y=y-change
If KeyDown(208) And y+h+change < HEIGHT Then y=y+change
EndIf

; Клавиши +/- изменяют скорость воспроизведения
If ( KeyDown(13) Or KeyDown(78) ) And period>change Then period=period-change
If ( KeyDown(12) Or KeyDown(74) ) And period < 500 Then period=period+change

; Перерисовываем экран...

Cls ; Очищаем экран
DrawMovie movie,x,y,w,h ; Выводим кадр
; Выводим дополнительную информацию
Text 0,0,"Клавиши со стрелками - перемещать окно."
Text 0,20,"Клавиша SHIFT и стрелки - изменить размер."
Text 0,40,"Клавиши + или - изменяют скорость анимации."
Text 0,60,"CONTROL - скорость изменений."
Text 0,80,"Нажмите ESCAPE для выхода."
Text 0,100,"Текущая команда: DrawMovie(movie, " + x + ","+ y + "," + w + "," + h + ")"
; Flip the buffers
Flip

Until KeyHit(1) ; Escape to exit

; Удаляем анимацию из памяти перед окончанием работы
CloseMovie(movie)

End ; всё!

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

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