[ create a new paste ] login | about

Link: http://codepad.org/4radDNpD    [ raw code | fork ]

salihdb - D, pasted on Sep 4:
import sdlmini;/*
import sdl, std.random;//*/

void main() {
  //with(new draw(256, 312)) {  /* sınıf ile yapılan kolaylık, yakında...
  SDL_Surface* scr = SDL_SetVideoMode(256, 312, 0, SDL_HWSURFACE);

  void circleRGB(int c_x, int c_y, int r, int c = 0xFF0000) {
    void renkArttır(int x, int y, int c = int.max) {
      uint *benek = cast(uint*)scr.pixels  + y *
                               scr.pitch/4 + x;
           *benek += c;
    }
    int y, x = -r;
    int yeniÇap = 2 - 2 * r;
 
    while(x < 0) {
      r = yeniÇap;
      renkArttır(c_x + y, c_y + x, c);  // sağ üst çeyrek yayı
      renkArttır(c_x - x, c_y + y, c);  // sağ alt çeyrek yayı
      renkArttır(c_x - y, c_y - x, c);  // sol alt çeyrek yayı
      renkArttır(c_x + x, c_y - y, c);  // sol üst çeyrek yayı
      if(r <= y) yeniÇap += ++y * 2 + 1;
      if(r >  x) yeniÇap += ++x * 2 + 1;
    }
  }
  void garipSistem(int x = 0, int y = 0) { 
  //* ZEMİNDEKİ İÇ İÇE OLUŞAN BÖLGE (ekranın yarısı kadar...)
    x = uniform(32, scr.w-32);
    y = uniform(32, scr.h-188);
    foreach(r; 1..32) circleRGB(x, y, r, 1);//*/
 
  /* SOLDAKİ ÇOK KÜÇÜK BÖLGE (neredeyse daire kadar!)
    x = uniform(32, scr.w-160);
    y = uniform(64, scr.h-220);
    foreach(r; 1..32) circleRGB(x, y, r, 1);//*/
 
  /* SAĞDAKİ ÇOK KÜÇÜK BÖLGE (neredeyse daire kadar!)
    x = uniform(160, scr.w-32);
    y = uniform(64, scr.h-220);
    foreach(r; 1..32) circleRGB(x, y, r, 1);//*/ 
  }
 
  bool DEVAM = true;
  while(DEVAM) {
 
    // desenin bir kopyasını göster
    foreach(r; 1..32) circleRGB(scr.w/2, scr.h-64, r);
    garipSistem(); // ekşın...:) 
 
    SDL_Flip (scr);
    //DEVAM = waitAndExit();  /*<--- ilk ESC'de dur, ikincisinde çık
    SDL_Event event;
    SDL_PollEvent (&event);
    if(event.type           == SDL_KEYDOWN &&
       event.key.keysym.sym == SDLK_ESCAPE) DEVAM = false;//*/
  }//} // with()
  SDL_Quit();
}


Create a new paste based on this one


Comments: