zoukankan      html  css  js  c++  java
  • MapXtreme2004代码 之 自定义范围主题地图

    MapXtreme2004代码 之 自定义范围主题地图
    private void showTheme(string temp,bool flag)
    {
        FeatureLayer lyrPnt=MapControl1.Map.Layers[_findLayerName] as FeatureLayer;
        lyrPnt.Modifiers.Clear();
        RangedTheme thm = new RangedTheme(lyrPnt,temp,"ph",4,DistributionMethod.CustomRanges);

        //自定义
        double x,y;
        x=thm.NumericMin;
        y=thm.NumericMax;
        lyrPnt.Modifiers.Insert(0,thm);
        if(flag==true)
        {
            //获取设置的最大最小值
            if(TextBox1.Text!="")
                 x=double.Parse(TextBox1.Text);
            if(TextBox2.Text!="")
                 y=double.Parse(TextBox2.Text);
        }
        thm.Bins[0].Min = x;
        thm.Bins[0].Max = x+(y-x)/4;
        thm.Bins[1].Min = x+(y-x)/4;
        thm.Bins[1].Max = x+(y-x)/2;
        thm.Bins[2].Min = x+(y-x)/2;
        thm.Bins[2].Max = x+3*(y-x)/4;
        thm.Bins[3].Min = x+3*(y-x)/4;
        thm.Bins[3].Max = y;
        thm.RecomputeBins();
        //平均
        ThemeLegendFrame frame = LegendFrameFactory.CreateThemeLegendFrame(temp,"pp",thm);
        MapControl1.Map.Legends.Clear();
        Legend legend = MapControl1.Map.Legends.CreateLegend(new Size(5,5));
        legend.Frames.Append(frame);
        MapControl1.Map.Adornments.Append(legend);
        //MapControl1上显示Legend图例
        TextBox1.Text=x.ToString();
        TextBox2.Text=y.ToString();
    }
    此方法函数可以获取两个TextBox中的数值,然后显示两个数值范围之间的主题地图.当flag为flase时候,为默认生成的主题地图,当flag为true时候,为自定义范围的主题地图.

  • 相关阅读:
    资源限制
    垃圾收集器
    GC日志
    happens-before
    maven相互依赖导致无法编译成功
    LVM-逻辑卷常用命令和示意图
    取消RAID5
    扩展RAID5的容量
    模拟RAID5损坏
    创建RAID5
  • 原文地址:https://www.cnblogs.com/googlegis/p/2978969.html
Copyright © 2011-2022 走看看