7 static void initBackground(rfbScreenInfoPtr server)
11 for(i=0;i<server->width;i++)
12 for(j=0;j<server->height;j++) {
13 server->frameBuffer[(j*server->width+i)*4+0]=i&0xff;
14 server->frameBuffer[(j*server->width+i)*4+1]=j&0xff;
15 server->frameBuffer[(j*server->width+i)*4+2]=(i*j)&0xff;
19 int main(int argc,char** argv)
21 int width=400,height=300,w=20,x,y;
24 rfbScreenInfoPtr server=rfbGetScreen(&argc,argv,width,height,8,3,4);
25 server->frameBuffer=(char*)malloc(width*height*4);
26 initBackground(server);
27 server->deferUpdateTime=0;
28 rfbInitServer(server);
33 initBackground(server);
34 rfbMarkRectAsModified(server,0,0,width,height);
43 x=width*(0.5+cos(phi)*r);
44 y=height*(0.5+sin(phi)*r);
45 if(x>=0 && y>=0 && x+w<=width && y+w<=height) {
46 unsigned int dx=width*0.5*(1-cos(phi)*r)-x,
47 dy=height*0.5*(1-sin(phi)*r)-y;
48 rfbDoCopyRect(server,x,y,x+w,y+w,-dx,-dy);
50 rfbProcessEvents(server,50000);