int main() { int d; int x[N]; int y[N]; int c[N]; int i,t; d=g2_open_win32(W, H, "simple_animation", 0); g2_set_auto_flush(d,0); for (i=0;i<N;i++) { x[i] = rand()%(W/4)+H/2; y[i] = rand()%(H/4)+W/2; c[i] = rand()%16; } for (t=0; t<1000; t++) { g2_clear(d); for (i=0; i<N; i++) { g2_filled_circle(d,(double)x[i],(double)y[i],(double)5); g2_pen(d,c[i]); x[i] += (rand()%2) * 2 - 1; y[i] += (rand()%2) * 2 - 1; } g2_flush(d); } getchar(); return 0; }
/** * * Clear device * * \param dev device number * * \ingroup control */ void g2_clear(int dev) { g2_device *devp; int i; if((devp=g2_get_device_pointer(dev))==NULL) { fprintf(stderr, "g2_clear: No such device: %d\n", dev); return; } switch(devp->t) { case g2_PD: g2_clear_pd(devp->d.pd); break; case g2_VD: for(i=0;i<devp->d.vd->N;i++) g2_clear(devp->d.vd->dix[i]); break; case g2_ILLEGAL: break; case g2_NDEV: break; } if(devp->auto_flush) g2_flush(dev); __g2_last_device=dev; }
void OnTick() { g2_clear(); g2_color(128,0,0); g2_rect(G2_COLOR,10,10,800,600); g2_color(0,128,0); g2_rect(G2_COLOR,100,100,800,600); for(int i=0;i<100;i++) for(int j=0;j<100;j++) g2_text(i,j,"hello", 14); }
void FIF(g2_clear)(F_REAL *dev) { g2_clear(dtoi(*dev)); }