#include #include #include #include "SDL.h" #include "SDL_rotozoom.h" int main (int argc, char *argv[]) { SDL_Event tapahtuma; SDL_Surface *ruutu = NULL; SDL_Surface *kuva = NULL; SDL_Surface *temp = NULL; SDL_Rect ruutu_alue; SDL_Rect kuva_alue; int kulma = 0; int lopetus = 0; SDL_Init(SDL_INIT_VIDEO); ruutu = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE|SDL_DOUBLEBUF); kuva = SDL_LoadBMP("ukko0.bmp"); SDL_SetColorKey(kuva, SDL_SRCCOLORKEY, SDL_MapRGB(kuva->format,255,0,255)); kuva_alue.x = 0; kuva_alue.y = 0; kuva_alue.h = 100; kuva_alue.w = 100; ruutu_alue.x = ruutu->w/2-50; ruutu_alue.h = 100; ruutu_alue.w = 100; ruutu_alue.y=ruutu->h/2-50; while (lopetus == 0) { temp = rotozoomSurface(kuva,kulma,1,0); kuva_alue.x = temp->w/2-50; kuva_alue.y = temp->h/2-50; SDL_BlitSurface(temp, &kuva_alue, ruutu, &ruutu_alue); SDL_FreeSurface(temp); SDL_Flip(ruutu); kulma--; if (kulma < 1) kulma = 360; //Poistutaanko while ( SDL_PollEvent(&tapahtuma) ) { if ( tapahtuma.type == SDL_QUIT ) { lopetus = 1; } if ( tapahtuma.type == SDL_KEYDOWN ) { if ( tapahtuma.key.keysym.sym == SDLK_ESCAPE ) { lopetus = 1; } } } } SDL_Quit(); return 0; }