- 积分
- 427
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-1-14
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
- //显示仰角
- this.label2.Text = T_Elevation[t_ElIndex].ToString();
- //导入色阶文件
- string legendFile = Application.StartupPath + "\\rd.lgs";
- LegendScheme lgs = new LegendScheme(MeteoInfoC.Shape.ShapeTypes.Image);
- lgs.ImportFromXMLFile(legendFile, true);
- //初始化色阶
- int breakNum = lgs.BreakNum;
- double[] breakValue = new double[breakNum];
- Color[] breakColor = new Color[breakNum];
- for (int i = 0; i < breakNum; i++)
- {
- breakValue = Convert.ToDouble(lgs.LegendBreaks.EndValue);
- breakColor = lgs.LegendBreaks.Color;
- }
- Color defaultColor = breakColor[breakNum - 1]; //默认颜色为最后一个颜色
- //初始化画板
- Graphics g = this.panel1.CreateGraphics();
- g.Clear(Color.Transparent);
- Pen p = new Pen(Color.Blue, 2);//定义外围圆圈画笔
- Pen rp = new Pen(Color.Red, 1);//定义雷达图像画笔
- g.DrawEllipse(p, 0, 0, 920, 920);//定义雷达图像矩形
- //开始绘制
- //每个仰角360个方位
- for (int i = 0; i < 360; i++)
- {
- //每个方位460个径向数据
- for (int b = 0; b < 460; b++)
- {
- //起点偏移!!
- g.TranslateTransform(460 - b, 460 - b);
- float data = T_RData[t_ElIndex, i, b];//雷达基数据,详见《CINRAD_雷达基数据产品格式》
- if (data != 999 && data != -999)
- {
- //每个径向数据的椭圆矩形
- Rectangle rt = new Rectangle(0, 0, b * 2, b * 2);
- //遍历数据对应的颜色值
- Color oneColor = defaultColor;
- for (int k = 0; k < breakNum - 1; k++)
- {
- if (data < breakValue[k])
- {
- oneColor = breakColor[k];
- rp = new Pen(oneColor, 1);
- break;
- }
- }
- //绘制弧线
- g.DrawArc(rp, rt, i, 1);
- }
- //偏移复位
- g.ResetTransform();
- }
- }
- //下一个仰角
- t_ElIndex++;
|
-
|