File: rotate.rb

package info (click to toggle)
libsdl-ruby 0.7-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 408 kB
  • ctags: 360
  • sloc: ansic: 2,714; ruby: 781; makefile: 120
file content (35 lines) | stat: -rw-r--r-- 633 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
require 'sdl'

SDL.init( SDL::INIT_VIDEO )

screen = SDL::setVideoMode(640,480,16,SDL::SWSURFACE)
SDL::WM::setCaption($0,$0)

image = SDL::Surface.loadBMP("icon.bmp")
image.setColorKey( SDL::SRCCOLORKEY ,0)
image = image.displayFormat

event=SDL::Event.new

i=0
scale=1.0;
dscale=0.1;
loop do
  if  event.poll != 0 then
    if event.type==SDL::Event::QUIT then
      break
    end
    if event.type==SDL::Event::KEYDOWN then
      exit
    end
  end
  screen.fillRect(0,0,640,480,0)
  
  i+=1;
  scale+=dscale;
  dscale = -dscale if scale>4.0 or scale < 0.2
  SDL.rotateScaledBlit(image,screen,320,200,i,scale)
  
  screen.flip
end