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 PlotRawEllipse(struct Rplot *ptr, struct RplotMatrix *matrix, float ox,float oy,float wdt,float hgt, double x,double y,double w,double h, double xmin,double xmax, double ymin,double ymax, int fill,unsigned int color,unsigned char mask,float width, struct RplotDash *dash) { float fx,fy,fw,fh; fx=ox+wdt*(x-xmin)/(xmax-xmin); fw=wdt*w/(xmax-xmin); fy=oy+hgt-hgt*(y-ymin)/(ymax-ymin); fh=hgt*h/(ymax-ymin); return RplotEllipse(ptr,matrix,fx,fy,fw,fh,fill,color,mask,width,dash); }
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[]) { 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; }