int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol; rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakePlot(rplot,"Rplot",wdt,hgt,24); fgcol=RplotColorStringRGB("128 128 128"); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); RplotRectangle(rplot,NULL,10,10,wdt-20,hgt-20, 1,fgcol,0x0f,0,NULL); RplotEndPlot(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol=0xff000000; rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakePlot(rplot,"Rplot",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); RplotBezier(rplot,20,20,0,hgt/2,wdt,hgt/2,wdt-20,hgt-20, fgcol,0x0f,1.0,NULL); RplotEndPlot(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol=0xff000000; int x; rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakePlot(rplot,"Rplot",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); for (x=0;x<200;x+=10) { fgcol=RplotColor(255-x,255-x,255-x,255); RplotRectangle(rplot,NULL,x,x,wdt-2*x,hgt-2*x, 1,fgcol,0x0f,0,NULL); } RplotEndPlot(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xaffffff; unsigned int lndcol=0xa0ffa0; unsigned int seacol=0xa0a0ff; MapTransform tfunc; float marg[3]; char *envstr; FILE *mapfp; envstr=getenv("MAPDATA"); mapfp=fopen(envstr,"r"); map=MapFread(mapfp); fclose(mapfp); marg[0]=90.0; marg[1]=0.0; marg[2]=1.0; tfunc=MapStereographic; clip=MapCircleClip(10); nmap=PolygonTransform(map,2*sizeof(float),PolygonXYbbox, tfunc,marg); pmap=PolygonClip(clip,nmap); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakePlot(rplot,"MapCircleClip",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); RplotEllipse(rplot,NULL,wdt/2,hgt/2,wdt/2,hgt/2, 1,seacol,0x0f,0,NULL); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,1); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,3); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,seacol,0x0f,0,NULL, pmap,0); RplotEndPlot(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol=0xff000000; int i,j,k; int type; float pnt[2]; float *ptr; poly=PolygonMake(sizeof(float)*2,PolygonXYbbox); PolygonAddPolygon(poly,1); pnt[0]=0.1; pnt[1]=0.1; PolygonAdd(poly,pnt,0); pnt[0]=0.9; pnt[1]=0.1; PolygonAdd(poly,pnt,0); pnt[0]=0.9; pnt[1]=0.9; PolygonAdd(poly,pnt,0); pnt[0]=0.1; pnt[1]=0.9; PolygonAdd(poly,pnt,0); PolygonAddPolygon(poly,2); pnt[0]=0.2; pnt[1]=0.2; PolygonAdd(poly,pnt,0); pnt[0]=0.8; pnt[1]=0.2; PolygonAdd(poly,pnt,0); pnt[0]=0.5; pnt[1]=0.4; PolygonAdd(poly,pnt,0); pnt[0]=0.5; pnt[1]=0.6; PolygonAdd(poly,pnt,1); pnt[0]=0.8; pnt[1]=0.8; PolygonAdd(poly,pnt,0); pnt[0]=0.2; pnt[1]=0.8; PolygonAdd(poly,pnt,0); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakePlot(rplot,"MapPlotPolygon",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); for (i=0;i<poly->polnum;i++) { type=PolygonReadType(poly,i); if (type==1) fgcol=RplotColor(255,0,0,255); if (type==2) fgcol=RplotColor(0,255,0,255); k=0; for (j=0;j<poly->num[i];j++) { if (PolygonReadOp(poly,i,j) !=0) { if (k !=0) RplotPolygon(rplot,NULL,0,0,k,fx,fy,t, 0,fgcol,0x0f,2,NULL); k=0; } ptr=(float *) PolygonRead(poly,i,j); fx[k]=ptr[0]*wdt; fy[k]=ptr[1]*hgt; t[k]=0; k++; } if (k !=0) RplotPolygon(rplot,NULL,0,0,k,fx,fy,t, 0,fgcol,0x0f,2,NULL); } RplotEndPlot(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol=0xff000000; int i,j; float x; float pnt[2]; float *ptr; poly=PolygonMake(sizeof(float)*2,PolygonXYbbox); for (x=0.4;x>0.1;x-=0.1) { PolygonAddPolygon(poly,1); pnt[0]=0.5-x; pnt[1]=0.5-x; PolygonAdd(poly,pnt,0); pnt[0]=0.5-x; pnt[1]=0.5+x; PolygonAdd(poly,pnt,0); pnt[0]=0.5+x; pnt[1]=0.5+x; PolygonAdd(poly,pnt,0); pnt[0]=0.5+x; pnt[1]=0.5-x; PolygonAdd(poly,pnt,0); } copy=PolygonCopy(poly); PolygonFree(poly); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakeDocument(rplot,"PolygonCopy","1",wdt,hgt,24); RplotMakePlot(rplot,"PolygonCopy",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); for (i=0;i<copy->polnum;i++) { fgcol=RplotColor(239-i*16,239-i*16,239-i*16,255); for (j=0;j<copy->num[i];j++) { ptr=(float *) PolygonRead(copy,i,j); fx[j]=ptr[0]*wdt; fy[j]=ptr[1]*hgt; t[j]=0; } RplotPolygon(rplot,NULL,0,0,copy->num[i],fx,fy,t, 1,fgcol,0x0f,0,NULL); } RplotEndPlot(rplot); RplotEndDocument(rplot); return 0; }
int main(int argc,char *argv[]) { int yr,mo,dy,hr,mt,sc; struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int lndcol=0xffa0ffa0; unsigned int seacol=0xffa0a0ff; unsigned int grdcol=0xffa0a0a0; MapTransform tfunc; float marg[3]; char *envstr; FILE *mapfp; yr=2002; mo=31; dy=26; hr=22; mt=0; sc=0; envstr=getenv("MAPDATA"); mapfp=fopen(envstr,"r"); map=MapFread(mapfp); fclose(mapfp); trm=SZATerminator(yr,mo,dy,hr,mt,sc,1,0,1.0,105.0); marg[0]=90.0; marg[1]=0.0; marg[2]=1.0; tfunc=MapStereographic; clip=MapCircleClip(10); nmap=PolygonTransform(map,2*sizeof(float),PolygonXYbbox, tfunc,marg); pmap=PolygonClip(clip,nmap); ntrm=PolygonTransform(trm,2*sizeof(float),PolygonXYbbox, tfunc,marg); ptrm=PolygonClip(clip,ntrm); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakeDocument(rplot,"SZATerminator","1",wdt,hgt,24); RplotMakePlot(rplot,"SZATerminator",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); RplotEllipse(rplot,NULL,wdt/2,hgt/2,wdt/2,hgt/2, 1,seacol,0x0f,0,NULL); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,1); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,3); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,seacol,0x0f,0,NULL, pmap,0); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,grdcol,0x0f,0,NULL, ptrm,1); RplotEndPlot(rplot); RplotEndDocument(rplot); return 0; }
int main(int argc,char *argv[]) { #ifdef _XLIB_ char *name="rplot"; int xdf=0; int xd=0; struct XwinDisplay *dp; struct XwinWindow *win; char *display_name=NULL; int xdoff=-1; int ydoff=-1; #endif int s=0; int arg=0; FILE *fp; char lbuf[256]; struct FrameBuffer *img=NULL; struct FrameBufferRplot *fbplot=NULL; struct PostScriptRplot *psplot=NULL; struct PostScript *psdata=NULL; struct FrameBufferFontDB *fontdb=NULL; struct FrameBufferDB *imagedb=NULL; struct XMLdata *xmldata=NULL; struct RplotInPlot *rplotin=NULL; struct RplotRplot *rplotrplot=NULL; struct Rplot *rplot=NULL; unsigned char land=0; float xpoff=40,ypoff=40; char *fntdbfname=NULL; unsigned char psflg=0; unsigned char xmlflg=0; unsigned char ppmflg=0; unsigned char ppmxflg=0; unsigned char rflg=0; unsigned char gflg=0; unsigned char pflg=0; unsigned char help=0; unsigned char option=0; struct OptionText *ppmnme=NULL; struct OptionText *ppmxnme=NULL; struct OptionText *xmlnme=NULL; OptionAdd(&opt,"-help",'x',&help); OptionAdd(&opt,"-option",'x',&option); OptionAdd(&opt,"ps",'x',&psflg); OptionAdd(&opt,"ppm",'x',&ppmflg); OptionAdd(&opt,"ppmx",'x',&ppmxflg); OptionAdd(&opt,"xml",'x',&xmlflg); OptionAdd(&opt,"land",'x',&land); OptionAdd(&opt,"xp",'f',&xpoff); OptionAdd(&opt,"yp",'f',&ypoff); OptionAdd(&opt,"ippm",'a',&ppmnme); OptionAdd(&opt,"ippmx",'a',&ppmxnme); OptionAdd(&opt,"ixml",'a',&xmlnme); #ifdef _XLIB_ OptionAdd(&opt,"x",'x',&xd); OptionAdd(&opt,"display",'t',&display_name); OptionAdd(&opt,"xoff",'i',&xdoff); OptionAdd(&opt,"yoff",'i',&ydoff); #endif OptionAdd(&opt,"fdb",'t',&fntdbfname); arg=OptionProcess(1,argc,argv,&opt,NULL); if (help==1) { OptionPrintInfo(stdout,hlpstr); exit(0); } if (option==1) { OptionDump(stdout,&opt); exit(0); } if (psflg) pflg=1; if (xmlflg) gflg=1; if (ppmflg) gflg=1; if (ppmxflg) gflg=1; #ifdef _XLIB_ if (xd !=0) { pflg=0; gflg=1; } #endif if (pflg) gflg=0; if ((pflg==0) && (gflg==0)) rflg=1; if (gflg) { if (fntdbfname==NULL) fntdbfname=getenv("FONTDB"); if (fntdbfname !=NULL) { fp=fopen(fntdbfname,"r"); if (fp !=NULL) { fontdb=FrameBufferFontDBLoad(fp); fclose(fp); } } if (fontdb==NULL) { fprintf(stderr,"Could not load fonts.\n"); exit(-1); } } imagedb=FrameBufferDBMake(); loadxml(imagedb,xmlnme); loadppm(imagedb,ppmnme); loadppmx(imagedb,ppmxnme); xmldata=XMLMake(); rplotin=RplotInMake(xmldata); if (gflg) { fbplot=FrameBufferRplotMake(fontdb,imagedb); FrameBufferRplotSetAll(rplotin,fbplot); } if (pflg) { psdata=PostScriptMake(); PostScriptSetText(psdata,stream,stdout); psplot=PostScriptRplotMake(psdata,imagedb); PostScriptRplotSetAll(rplotin,psplot); psplot->land=land; psplot->xoff=xpoff; psplot->yoff=ypoff; } if (rflg) { rplot=RplotMake(); RplotSetText(rplot,stream,stdout); rplotrplot=RplotRplotMake(rplot,imagedb); RplotRplotSetAll(rplotin,rplotrplot); RplotInSetPass(rplotin,clean_newline,stdout); } XMLSetStart(xmldata,RplotInStart,rplotin); XMLSetEnd(xmldata,RplotInEnd,rplotin); XMLSetText(xmldata,RplotInText,rplotin); if (arg<argc) { fp=fopen(argv[arg],"r"); if (fp==NULL) { fprintf(stderr,"Error opening file.\n"); exit(-1); } } else fp=stdin; while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } if (s !=0) { fprintf(stderr,"Error parsing document.\n"); exit(0); } if (arg<argc) fclose(fp); if (fbplot==NULL) exit(0); if (fbplot->img==NULL) { fprintf(stderr,"Nothing to plot.\n"); exit(-1); } img=fbplot->img; #ifdef _XLIB_ if (xd !=0) { dp=XwinOpenDisplay(display_name,&xdf); if (dp==NULL) { fprintf(stderr,"Could not open display.\n"); exit(-1); } if (xdoff==-1) xdoff=(dp->wdt-img->wdt)/2; if (ydoff==-1) ydoff=(dp->hgt-img->hgt)/2; win=XwinMakeWindow(xdoff,ydoff,img->wdt,img->hgt,0, dp,name, name,argv[0],name,argc,argv,&xdf); if (win==NULL) { fprintf(stderr,"Could not create window.\n"); exit(-1); } XwinFrameBufferWindow(img,win); XwinShowWindow(win); XwinDisplayEvent(dp,1,&win,1,NULL); XwinFreeWindow(win); XwinCloseDisplay(dp); } else { if (xmlflg==1) FrameBufferSaveXML(img,stream,stdout); else if (ppmflg==1) FrameBufferSavePPM(img,stdout); else FrameBufferSavePPMX(img,stdout); } #else if (xmlflg==1) FrameBufferSaveXML(img,stream,stdout); else if (ppmflg==1) FrameBufferSavePPM(img,stdout); else FrameBufferSavePPMX(img,stdout); #endif return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=200; float src[2],dst[2]; unsigned int lndcol=0xffa0ffa0; unsigned int seacol=0xffa0a0ff; unsigned int grdcol=0xffa00000; MapTransform tfunc; float marg[3]; int s; char *envstr; FILE *mapfp; envstr=getenv("MAPDATA"); mapfp=fopen(envstr,"r"); map=MapFread(mapfp); fclose(mapfp); marg[0]=0.0; marg[1]=0.0; marg[2]=1.0; tfunc=MapCylindrical; clip=MapSquareClip(10); nmap=PolygonTransform(map,2*sizeof(float),PolygonXYbbox, tfunc,marg); wmap=MapWraparound(nmap); pmap=PolygonClip(clip,wmap); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakeDocument(rplot,"MapCylindrical","1",wdt,hgt,24); RplotMakePlot(rplot,"MapCylindrical",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,seacol,0x0f,0,NULL); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,1); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,lndcol,0x0f,0,NULL, pmap,3); MapPlotPolygon(rplot,NULL,0,0,wdt,hgt,1,seacol,0x0f,0,NULL, pmap,0); src[0]=53.2; src[1]=160.0; s=MapCylindrical(2*sizeof(float),src,2*sizeof(float),dst,marg); if (s==0) RplotEllipse(rplot,NULL,wdt*dst[0],hgt*dst[1],8,8, 1,grdcol,0x0f,0,NULL); RplotEndPlot(rplot); RplotEndDocument(rplot); return 0; }
int main(int argc,char *argv[]) { struct Rplot *rplot=NULL; float wdt=400,hgt=400; unsigned int bgcol=0xffffffff; unsigned int fgcol=0xff000000; int i,j; int type; float pnt[2]; float *ptr; float arg[1]; poly=PolygonMake(sizeof(float)*2,PolygonXYbbox); PolygonAddPolygon(poly,1); pnt[0]=0.1; pnt[1]=0.1; PolygonAdd(poly,pnt,0); pnt[0]=0.9; pnt[1]=0.1; PolygonAdd(poly,pnt,0); pnt[0]=0.9; pnt[1]=0.9; PolygonAdd(poly,pnt,0); pnt[0]=0.1; pnt[1]=0.9; PolygonAdd(poly,pnt,0); PolygonAddPolygon(poly,2); pnt[0]=0.2; pnt[1]=0.5; PolygonAdd(poly,pnt,0); pnt[0]=0.5; pnt[1]=0.2; PolygonAdd(poly,pnt,0); pnt[0]=0.8; pnt[1]=0.5; PolygonAdd(poly,pnt,0); pnt[0]=0.5; pnt[1]=0.8; PolygonAdd(poly,pnt,0); arg[0]=30.0; npoly=PolygonTransform(poly,sizeof(float)*2,PolygonXYbbox,rotate,arg); rplot=RplotMake(); RplotSetText(rplot,stream,stdout); RplotMakeDocument(rplot,"PolygonTransform","1",wdt,hgt,24); RplotMakePlot(rplot,"PolygonTransform",wdt,hgt,24); RplotRectangle(rplot,NULL,0,0,wdt,hgt, 1,bgcol,0x0f,0,NULL); for (i=0;i<npoly->polnum;i++) { type=PolygonReadType(npoly,i); if (type==1) fgcol=RplotColor(255,0,0,255); if (type==2) fgcol=RplotColor(0,255,0,255); for (j=0;j<npoly->num[i];j++) { ptr=(float *) PolygonRead(npoly,i,j); fx[j]=ptr[0]*wdt; fy[j]=ptr[1]*hgt; t[j]=0; } RplotPolygon(rplot,NULL,0,0,npoly->num[i],fx,fy,t, 1,fgcol,0x0f,0,NULL); } RplotEndPlot(rplot); RplotEndDocument(rplot); return 0; }