深蓝创客

Processing典例——雷达

 1 int offset=10;
 2 float x, y;
 3 float r=300;
 4 float a=0;
 5 void setup()
 6 {
 7     size(600,600);
 8     background(0);
 9 }
10 
11 
12 void draw()
13 {
14     background(0);            //背景颜色
15     x=r*cos(a);                //扫描线x轴增量
16     y=r*sin(a);                //扫描线y轴增量
17     /* 绘制扫描线 */
18     fill(0,180,0);                   //设置扫描线颜色
19     line(width/2,height/2,width/2+x, height/2+y);    //扫描线的起点在屏幕中央,x,y分别是两个方向上的增量
20     /* 绘制坐标轴 */
21     fill(0,110,0,50);                //设置四轴颜色
22     for(int i=0;i<4;i++)
23     {
24         line(width/2,height/2,    //扫描线的起点在屏幕中央
25         width/2+r*cos(i*PI/2), height/2+r*sin(i*PI/2));
26     }
27     /* 同心圆绘制 */
28     stroke(0,110,0);
29     for(int j=1;j<7;j++)
30         ellipse(width/2,height/2,2*50*j,2*50*j);
31     /* 刻度标识距离 */
32     fill(160,250,160);
33     for(int ii=0;ii<4;ii++)
34     {
35         for(int t=0;t<6;t++)
36             text(t*50,width/2+t*50*cos(ii*PI/2), height/2+t*50*sin(ii*PI/2));   
37     }
38     fill(0,180,00);
39     text("Angle:"+(a/PI)*180,480,580);
40     a=a+0.02;        //扫描角度变化
41     //拖影扫描线的绘制
42     for(int col=1;col<200;col++)
43     {
44         fill(0,180,0,1*col);
45         arc(width/2,height/2,2*r,2*r,a+0.001*(col-1),a+0.001*col);   
46     }
47 }

 

posted on 2021-07-02 16:53  深蓝创客  阅读(250)  评论(0编辑  收藏  举报

导航