转载:http://blog.sina.com.cn/s/blog_6023833e0100t5t0.html

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.Controls;
using ESRI.ArcGIS.SystemUI;
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.DataSourcesFile;
using ESRI.ArcGIS.Display;

namespace lesson3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

private void Form1_Load(object sender, EventArgs e)
        {
            loadMapDocument();
        }
        //加载地图文档
        private void loadMapDocument()
        {
            System.Windows.Forms.OpenFileDialog openFileDialog;
            openFileDialog = new OpenFileDialog();
            openFileDialog.Title = "打开地图文档";
            openFileDialog.Filter = "map documents(*.mxd)|*.mxd";
            openFileDialog.ShowDialog();
            string filePath = openFileDialog.FileName;
            if (axMapControl1.CheckMxFile(filePath))
            {
                axMapControl1.MousePointer = esriControlsMousePointer.esriPointerHourglass;
                axMapControl1.LoadMxFile(filePath, 0, Type.Missing);
                axMapControl1.MousePointer = esriControlsMousePointer.esriPointerDefault;
            }
            else
            {
                MessageBox.Show(filePath + "不是有效的地图文档");
            }
        }
                //获取颜色对象
        private IRgbColor getRGB(int r, int g, int b)
        {
            IRgbColor pColor;
            pColor = new RgbColorClass();
            pColor.Red = r;
            pColor.Green = g;
            pColor.Blue = b;
            return pColor;
        }
        private IGeoFeatureLayer getGeoLayer(string layerName)
        {
            ILayer layer;
            IGeoFeatureLayer geoFeatureLayer ;
            for (int i = 0; i < this.axMapControl1.LayerCount; i++)
            {
                layer = this.axMapControl1.get_Layer(i);
                if (layer != null && layer.Name == layerName)
                {
                    geoFeatureLayer = layer as IGeoFeatureLayer ;
                    return geoFeatureLayer;
                }
            }
            return null;
        }
        //简单渲染专题图
        private void button1_Click(object sender, EventArgs e)
        {
            //简单填充符号
            ISimpleFillSymbol simpleFillSymbol = new SimpleFillSymbolClass();
            simpleFillSymbol.Style = esriSimpleFillStyle.esriSFSDiagonalCross;
            simpleFillSymbol.Color = getRGB(255, 0, 0);
            //创建边线符号
            ISimpleLineSymbol simpleLineSymbol = new SimpleLineSymbolClass();
            simpleLineSymbol.Style = esriSimpleLineStyle.esriSLSDashDotDot;
            simpleLineSymbol.Color = getRGB(0, 255, 0);
            ISymbol symbol = simpleLineSymbol as ISymbol;
            symbol.ROP2 = esriRasterOpCode.esriROPNotXOrPen;
            simpleFillSymbol.Outline = simpleLineSymbol;

ISimpleRenderer simpleRender =new SimpleRendererClass ();
            simpleRender .Symbol =simpleFillSymbol as ISymbol  ;
            simpleRender.Label ="continent";
            simpleRender.Description ="简单渲染";

IGeoFeatureLayer geoFeatureLayer;
            geoFeatureLayer = getGeoLayer("Continents");
            if (geoFeatureLayer != null)
            {
                geoFeatureLayer.Renderer = simpleRender as IFeatureRenderer ;
            }
            this.axMapControl1.Refresh();
        }
        //创建颜色带
        private IColorRamp CreateAlgorithmicColorRamp(int count )
        {
            //创建一个新AlgorithmicColorRampClass对象
            IAlgorithmicColorRamp algColorRamp = new AlgorithmicColorRampClass();
            IRgbColor fromColor = new RgbColorClass();
            IRgbColor toColor = new RgbColorClass();
            //创建起始颜色对象
            fromColor.Red = 255;
            fromColor.Green = 0;
            fromColor.Blue = 0;
            //创建终止颜色对象          
            toColor.Red = 0;
            toColor.Green = 0;
            toColor.Blue = 255;
            //设置AlgorithmicColorRampClass的起止颜色属性
            algColorRamp.ToColor = fromColor;
            algColorRamp.FromColor = toColor;
            //设置梯度类型
            algColorRamp.Algorithm = esriColorRampAlgorithm.esriCIELabAlgorithm;
            //设置颜色带颜色数量
            algColorRamp.Size = count ;
            //创建颜色带
            bool bture = true;
            algColorRamp.CreateRamp(out bture);
            return algColorRamp;

}
        //分级专题图
        private void button2_Click(object sender, EventArgs e)
        {
            int classCount = 6;
            ITableHistogram tableHistogram;
            IBasicHistogram basicHistogram;
            ITable table;           
            IGeoFeatureLayer geoFeatureLayer;
            geoFeatureLayer = getGeoLayer("Continents");
            ILayer layer = geoFeatureLayer as ILayer;
            table = layer as ITable;
            tableHistogram =new BasicTableHistogramClass ();
             //按照 数值字段分级
            tableHistogram.Table =table ;
            tableHistogram.Field ="sqmi";
            basicHistogram =tableHistogram as IBasicHistogram ;
            object   values;
            object   frequencys;
            //先统计每个值和各个值出现的次数
            basicHistogram.GetHistogram (out values ,out frequencys );
            //创建平均分级对象
            IClassifyGEN classifyGEN =new QuantileClass ();
            //用统计结果进行分级 ,级别数目为classCount
            classifyGEN.Classify (values ,frequencys , ref classCount );
            //获得分级结果,是个 双精度类型数组
            double [] classes;
            classes=classifyGEN.ClassBreaks as double [];

IEnumColors enumColors = CreateAlgorithmicColorRamp(classes.Length ).Colors;
            IColor color;
          
            IClassBreaksRenderer classBreaksRenderer = new ClassBreaksRendererClass();
            classBreaksRenderer.Field = "sqmi";
            classBreaksRenderer.BreakCount = classCount;
            classBreaksRenderer.SortClassesAscending = true;

ISimpleFillSymbol  simpleFillSymbol;
            for (int i = 0; i < classes.Length-1 ; i++)
            {
                color = enumColors.Next();
                simpleFillSymbol = new  SimpleFillSymbolClass ();
                simpleFillSymbol.Color = color;
                simpleFillSymbol.Style = esriSimpleFillStyle.esriSFSSolid;

classBreaksRenderer.set_Symbol(i, simpleFillSymbol as ISymbol);
                classBreaksRenderer.set_Break(i, classes[i]);          
             
            }
         
            if (geoFeatureLayer != null)
            {
                geoFeatureLayer.Renderer = classBreaksRenderer as IFeatureRenderer;
            }
          
            this.axMapControl1.ActiveView.Refresh();        
        }
        //单一值专题图
        private void button3_Click(object sender, EventArgs e)
        {
            IGeoFeatureLayer geoFeatureLayer;
            geoFeatureLayer = getGeoLayer("Continents");
            IUniqueValueRenderer uniqueValueRenderer =new UniqueValueRendererClass ();
            uniqueValueRenderer.FieldCount =1;
            uniqueValueRenderer.set_Field (0,"continent");

//简单填充符号
            ISimpleFillSymbol simpleFillSymbol = new SimpleFillSymbolClass();
            simpleFillSymbol.Style = esriSimpleFillStyle.esriSFSSolid ;

IFeatureCursor featureCursor = geoFeatureLayer.FeatureClass.Search(null, false);
            IFeature feature;
           
            if (featureCursor != null)
            {
                IEnumColors enumColors = CreateAlgorithmicColorRamp(8).Colors;
                int fieldIndex =geoFeatureLayer.FeatureClass.Fields.FindField ("continent");
                for (int i = 0; i <8; i++)
                {
                    feature = featureCursor.NextFeature();
                    string nameValue = feature.get_Value(fieldIndex).ToString ();
                    simpleFillSymbol = new SimpleFillSymbolClass();                  
                    simpleFillSymbol.Color = enumColors.Next();                  
                    uniqueValueRenderer.AddValue(nameValue, "continent", simpleFillSymbol as ISymbol);
                }
            }
           
            geoFeatureLayer.Renderer = uniqueValueRenderer as IFeatureRenderer;
            this.axMapControl1.Refresh();
        }
        //ProportionalSymbolRenderer
        private void button4_Click(object sender, EventArgs e)
        {

IGeoFeatureLayer geoFeatureLayer;
            IFeatureLayer featureLayer ;
            IProportionalSymbolRenderer proportionalSymbolRenderer ;
            ITable table ;
            ICursor cursor;
            IDataStatistics  dataStatistics ;
            IStatisticsResults statisticsResult;
            stdole.IFontDisp  fontDisp;

geoFeatureLayer = getGeoLayer("Continents");
            featureLayer =geoFeatureLayer as IFeatureLayer ;
            table =geoFeatureLayer as ITable ;
            cursor =table.Search (null,true );
            dataStatistics =new DataStatisticsClass ();
            dataStatistics.Cursor =cursor ;
            dataStatistics.Field ="sqmi";
            statisticsResult =dataStatistics.Statistics ;
            if (statisticsResult !=null)
            {
                IFillSymbol  fillSymbol =new SimpleFillSymbolClass ();
                fillSymbol.Color =getRGB (0,255,0);
                ICharacterMarkerSymbol characterMarkerSymbol=new CharacterMarkerSymbolClass ();
                fontDisp =new stdole.StdFontClass () as stdole.IFontDisp ;
                fontDisp.Name ="arial";
                fontDisp.Size =20;
                characterMarkerSymbol.Font =fontDisp ;
                characterMarkerSymbol.CharacterIndex =90;
                characterMarkerSymbol.Color =getRGB (255,0,0);
                characterMarkerSymbol.Size =8;
                proportionalSymbolRenderer=new ProportionalSymbolRendererClass ();
                proportionalSymbolRenderer.ValueUnit =esriUnits.esriUnknownUnits;
                proportionalSymbolRenderer .Field ="sqmi";
                proportionalSymbolRenderer.FlanneryCompensation =false ;
                proportionalSymbolRenderer.MinDataValue =statisticsResult.Minimum ;
                proportionalSymbolRenderer.MaxDataValue =statisticsResult.Maximum ;
                proportionalSymbolRenderer.BackgroundSymbol =fillSymbol ;
                proportionalSymbolRenderer.MinSymbol =characterMarkerSymbol as ISymbol ;
                proportionalSymbolRenderer.LegendSymbolCount =10;
                proportionalSymbolRenderer.CreateLegendSymbols ();
                geoFeatureLayer.Renderer =proportionalSymbolRenderer as IFeatureRenderer ;
            }
            this.axMapControl1.Refresh();
        }
        //BarChartSymbol
        private void button5_Click(object sender, EventArgs e)
        {
            IGeoFeatureLayer geoFeatureLayer ;
            IFeatureLayer featureLayer ;
            ITable table ;
            ICursor cursor;
            IRowBuffer rowBuffer;
            //设置渲染要素
            string field1="sqmi";
            string field2="sqkm";
            //获取渲染图层
            geoFeatureLayer = getGeoLayer("Continents");
            featureLayer =geoFeatureLayer as IFeatureLayer ;
            table =featureLayer as ITable ;
            geoFeatureLayer.ScaleSymbols =true;
            IChartRenderer chartRenderer =new ChartRendererClass ();
            IRendererFields rendererFields=chartRenderer as IRendererFields ;
            rendererFields.AddField (field1 ,field1 );
            rendererFields.AddField (field2,field2);
            int [] fieldIndexs=new int [2];
            fieldIndexs [0]=table.FindField (field1);
            fieldIndexs [1]=table.FindField (field2);
            //获取要素最大值
            double fieldValue =0.0,maxValue=0.0;
            cursor = table.Search(null, true);
            rowBuffer =cursor .NextRow ();
            while (rowBuffer!=null  )
            {
                for (int i =0;i<2;i++)
                {
                    fieldValue =double .Parse (rowBuffer.get_Value (fieldIndexs[i]).ToString ()) ;
                    if (fieldValue >maxValue )
                    {
                        maxValue =fieldValue ;
                    }
                }
                rowBuffer =cursor.NextRow ();
            }
            //创建水平排列符号
            IBarChartSymbol barChartSymbol =new BarChartSymbolClass ();
            barChartSymbol.Width =10;
            IMarkerSymbol markerSymbol =barChartSymbol as IMarkerSymbol ;
            markerSymbol.Size =50;
            IChartSymbol chartSymbol=barChartSymbol as IChartSymbol ;
            chartSymbol.MaxValue =maxValue ;
            //添加渲染符号
            ISymbolArray symbolArray =barChartSymbol as ISymbolArray ;
            IFillSymbol fillSymbol =new SimpleFillSymbolClass ();
            fillSymbol.Color =getRGB (255,0,0);
            symbolArray.AddSymbol (fillSymbol as ISymbol );
            fillSymbol =new SimpleFillSymbolClass ();
            fillSymbol .Color =getRGB (0,255,0);
            symbolArray .AddSymbol (fillSymbol as ISymbol );
            //设置柱状图符号
            chartRenderer.ChartSymbol =barChartSymbol as IChartSymbol ;
            fillSymbol =new SimpleFillSymbolClass ();
            fillSymbol.Color =getRGB (0,0,255);
            chartRenderer.BaseSymbol =fillSymbol as ISymbol ;
            chartRenderer.UseOverposter =false ;
            //创建图例
            chartRenderer.CreateLegend ();
            geoFeatureLayer.Renderer =chartRenderer as IFeatureRenderer ;
            this.axMapControl1.Refresh();
        }
        //StackedChartSymbol
        private void button6_Click(object sender, EventArgs e)
        {
            IGeoFeatureLayer geoFeatureLayer;
            IFeatureLayer featureLayer;
            ITable table;
            ICursor cursor;
            IRowBuffer rowBuffer;
            //设置渲染要素
            string field1 = "sqmi";
            string field2 = "sqkm";
            //获取渲染图层
            geoFeatureLayer = getGeoLayer("Continents");
            featureLayer = geoFeatureLayer as IFeatureLayer;
            table = featureLayer as ITable;
            geoFeatureLayer.ScaleSymbols = true;
            IChartRenderer chartRenderer = new ChartRendererClass();
            IRendererFields rendererFields = chartRenderer as IRendererFields;
            rendererFields.AddField(field1, field1);
            rendererFields.AddField(field2, field2);
            int[] fieldIndexs = new int[2];
            fieldIndexs[0] = table.FindField(field1);
            fieldIndexs[1] = table.FindField(field2);
            //获取要素最大值
            double fieldValue = 0.0, maxValue = 0.0;
            cursor = table.Search(null, true);
            rowBuffer = cursor.NextRow();
            while (rowBuffer != null)
            {
                for (int i = 0; i < 2; i++)
                {
                    fieldValue = double.Parse(rowBuffer.get_Value(fieldIndexs[i]).ToString());
                    if (fieldValue > maxValue)
                    {
                        maxValue = fieldValue;
                    }
                }
                rowBuffer = cursor.NextRow();
            }
            //创建累积排列符号
            IStackedChartSymbol stackedChartSymbol = new StackedChartSymbolClass();
          
            stackedChartSymbol.Width = 10;
            IMarkerSymbol markerSymbol = stackedChartSymbol as IMarkerSymbol;
            markerSymbol.Size = 50;
            IChartSymbol chartSymbol = stackedChartSymbol as IChartSymbol;
            chartSymbol.MaxValue = maxValue;
            //添加渲染符号
            ISymbolArray symbolArray = stackedChartSymbol as ISymbolArray;
            IFillSymbol fillSymbol = new SimpleFillSymbolClass();
            fillSymbol.Color = getRGB(255, 0, 0);
            symbolArray.AddSymbol(fillSymbol as ISymbol);
            fillSymbol = new SimpleFillSymbolClass();
            fillSymbol.Color = getRGB(0, 255, 0);
            symbolArray.AddSymbol(fillSymbol as ISymbol);
            //设置柱状图符号
            chartRenderer.ChartSymbol = stackedChartSymbol as IChartSymbol;
            fillSymbol = new SimpleFillSymbolClass();
            fillSymbol.Color = getRGB(0, 0, 255);
            chartRenderer.BaseSymbol = fillSymbol as ISymbol;
            chartRenderer.UseOverposter = false;
            //创建图例
            chartRenderer.CreateLegend();
            geoFeatureLayer.Renderer = chartRenderer as IFeatureRenderer;
            this.axMapControl1.Refresh();
        }
        //PieChartRenderer
        private void button7_Click(object sender, EventArgs e)
        {
            IGeoFeatureLayer geoFeatureLayer;
            IFeatureLayer featureLayer;
            ITable table;
            ICursor cursor;
            IRowBuffer rowBuffer;
            //设置饼图的要素
            string field1 = "sqmi";
            string field2 = "sqkm";
            //获取渲染图层
            geoFeatureLayer = getGeoLayer("Continents");
            featureLayer = geoFeatureLayer as IFeatureLayer;
            table = featureLayer as ITable;
            geoFeatureLayer.ScaleSymbols = true;
            IChartRenderer chartRenderer = new ChartRendererClass();
            IPieChartRenderer pieChartRenderer =chartRenderer as IPieChartRenderer ;
            IRendererFields rendererFields = chartRenderer as IRendererFields;
            rendererFields.AddField(field1, field1);
            rendererFields.AddField(field2, field2);
            int[] fieldIndexs = new int[2];
            fieldIndexs[0] = table.FindField(field1);
            fieldIndexs[1] = table.FindField(field2);
            //获取渲染要素的最大值
            double fieldValue = 0.0, maxValue = 0.0;
            cursor = table.Search(null, true);
            rowBuffer = cursor.NextRow();
            while (rowBuffer != null)
            {
                for (int i = 0; i < 2; i++)
                {
                    fieldValue = double.Parse(rowBuffer.get_Value(fieldIndexs[i]).ToString());
                    if (fieldValue > maxValue)
                    {
                        maxValue = fieldValue;
                    }
                }
                rowBuffer = cursor.NextRow();
            }
            //设置饼图符号
            IPieChartSymbol pieChartSymbol =new PieChartSymbolClass ();
            pieChartSymbol.Clockwise =true ;
            pieChartSymbol.UseOutline =true ;
            IChartSymbol chartSymbol =pieChartSymbol as IChartSymbol ;
            chartSymbol.MaxValue =maxValue ;
            ILineSymbol lineSymbol =new SimpleLineSymbolClass ();
            lineSymbol.Color =getRGB (255,0,0);
            lineSymbol.Width =2;
            pieChartSymbol.Outline =lineSymbol ;
            IMarkerSymbol markerSymbol=pieChartSymbol as IMarkerSymbol  ;
            markerSymbol.Size =30;
            //添加渲染符号
            ISymbolArray symbolArray=pieChartSymbol as ISymbolArray ;
            IFillSymbol fillSymbol =new SimpleFillSymbolClass ();
            fillSymbol.Color =getRGB (0,255,0);
            symbolArray.AddSymbol (fillSymbol as ISymbol  );
            fillSymbol =new SimpleFillSymbolClass ();
            fillSymbol .Color=getRGB  (0,0,255);
            symbolArray.AddSymbol (fillSymbol as ISymbol );
            chartRenderer.ChartSymbol =pieChartSymbol as IChartSymbol  ;
            fillSymbol=new SimpleFillSymbolClass ();
            fillSymbol.Color =getRGB (100,100,100);
            chartRenderer.BaseSymbol =fillSymbol as ISymbol ;
            chartRenderer.UseOverposter =false ;
            //创建图例
            chartRenderer.CreateLegend ();
            geoFeatureLayer.Renderer =chartRenderer as IFeatureRenderer ;
            this.axMapControl1.Refresh ();

}
        //DotDensityFillSymbol
        private void button8_Click(object sender, EventArgs e)
        {
            IGeoFeatureLayer geoFeatureLayer ;
            IDotDensityFillSymbol dotDensityFillSymbol;
            IDotDensityRenderer dotDensityRenderer ;
            //获取渲染图层
            geoFeatureLayer = getGeoLayer("Continents");
            dotDensityRenderer=new DotDensityRendererClass ();
            IRendererFields rendererFields =dotDensityRenderer as IRendererFields ;
            //设置渲染字段
            string field1="sqmi";
            rendererFields.AddField (field1 ,field1 );
            //设置填充颜色和背景色
            dotDensityFillSymbol =new DotDensityFillSymbolClass ();
            dotDensityFillSymbol.DotSize =3;
            dotDensityFillSymbol.Color =getRGB (255,0,0);
            dotDensityFillSymbol.BackgroundColor =getRGB (0,255,0);
            //设置渲染符号
            ISymbolArray symbolArray =dotDensityFillSymbol as ISymbolArray ;
            ISimpleMarkerSymbol simpleMarkerSymbol =new SimpleMarkerSymbolClass ();
            simpleMarkerSymbol.Style =esriSimpleMarkerStyle.esriSMSCircle ;
            simpleMarkerSymbol.Size =2;
            simpleMarkerSymbol.Color =getRGB (0,0,255);
            symbolArray.AddSymbol (simpleMarkerSymbol as ISymbol );
            dotDensityRenderer.DotDensitySymbol =dotDensityFillSymbol ;
            //设置渲染密度
            dotDensityRenderer.DotValue =50000;
            //创建图例
            dotDensityRenderer.CreateLegend ();
            geoFeatureLayer .Renderer =dotDensityRenderer as IFeatureRenderer ;
            this.axMapControl1.Refresh ();
        }
    }
}

c#+arcAE对图层进行各种渲染操作的更多相关文章

  1. AE开发中栅格图层实现分级渲染

    GP工具IDW执行后,生成的栅格图层是黑白二色,需要手动进行分级渲染,似乎不是所有栅格图层都可以进行分级渲染,注意异常处理.注意ARCMAP中是有颜色的,无需自己处理. IRasterClassify ...

  2. 图片下载、渲染操作 小例子 看多FutureTask

    并发执行下载图片操作 import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent. ...

  3. ArcGIS Desktop和Engine中对点要素图层Graduated Symbols渲染的实现 Rotation Symbol (转)

    摘要         ArcGIS中,对于要素图层的渲染,支持按照要素字段的值渲染要素的大小,其中Graduated Symbols可以对大小进行分级渲染.在个人开发系统的过程中,也可以用来美化数据显 ...

  4. 浮点型/小数/栅格图层转为整数型arcgis操作

    有时候会遇到将32位栅格数据提取属性表的操作,但是一般此类数据都是浮点型,是无法计算得到属性表的.因此我们可以利用数据管理工具下的: 复制栅格工具,在最下面选择16位即可,看自己数据情况选择signe ...

  5. vue学习笔记:数据渲染操作

    {{xxx}} 基本的插值表达式 插值表达式 使用两个大括号 {{ data中定义的数据名 }} 可以将数据插入到指定的位置 这种写法不仅可以显示data属性里定义的值,也可以书写js中的表达式,可以 ...

  6. CAD画三维图怎么渲染?一分钟教你快速操作

    从事过CAD相关工作的都知道,CAD绘制的方式有二维平面图以及三维图形,三维图形,画三维图方式也是比较简单的.那当然三维图画完后一般还需要进行渲染操作,步骤也是比较简洁的.下面就来给大家操作一下CAD ...

  7. iOS 离屏渲染的研究

    GPU渲染机制: CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照 VSync 信号逐行读取帧缓冲区的数据,经过可能的数模转换传递给显示器显示. G ...

  8. iOS离屏渲染简书

    更详细地址https://zsisme.gitbooks.io/ios-/content/chapter15/offscreen-rendering.html(包含了核心动画) GPU渲染机制: CP ...

  9. 离屏渲染学习笔记 /iOS圆角性能问题

    离屏渲染学习笔记 一.概念理解 OpenGL中,GPU屏幕渲染有以下两种方式: On-Screen Rendering 意为当前屏幕渲染,指的是GPU的渲染操作是在当前用于显示的屏幕缓冲区中进行. O ...

随机推荐

  1. poj3624 Charm Bracelet

    http://poj.org/problem?id=3624 题目大意:贝茜去了商场的珠宝店,发现了一个迷人的手镯.当然,她想装最好的魅力(N(1≤N≤3402)可用的魅力).每个魅力提供的列表中都有 ...

  2. Linux中MySQLl单实例源码编译安装

    MySQL5.5以后源码安装要用cmake 1.3 安装相关包(cmake) 1.3.1 cmake软件 cd /home/Public/tools/ tar xf cmake-2.8.8.tar.g ...

  3. 【AGC012E】 Camel and Oases ST表+状压dp

    题目大意:一排点,两点间有距离. 初始你有一个行走值$v$,如果相邻两点距离不超过$v$你可以自由在这两点行走. 当$v$大于$0$时,你可以选择某一时刻突然飞到任意点,这样做后$v$会减半(下取整) ...

  4. 【bzoj1855】 [Scoi2010]股票交易 单调队列优化DP

    上一篇blog已经讲了单调队列与单调栈的用法,本篇将讲述如何借助单调队列优化dp. 我先丢一道题:bzoj1855 此题不难想出O(n^4)做法,我们用f[i][j]表示第i天手中持有j只股票时,所赚 ...

  5. 优化 JS 条件语句的 5 个技巧

    优化 JS 条件语句的 5 个技巧 原创: 前端大全 前端大全 昨天 (给前端大全加星标,提升前端技能) 编译:伯乐在线/Mr.Dcheng http://blog.jobbole.com/11467 ...

  6. Storm累计求和Demo并且在集群上运行

    打成jar包放在主节点上去运行. import java.util.Map; import backtype.storm.Config; import backtype.storm.StormSubm ...

  7. Linux 删除文件夹和文件的命令(转载)

    Linux 删除文件夹和文件的命令 听语音 | 浏览:93339 | 更新:2013-05-02 18:40 | 标签:linux 文件夹 linux删除目录很简单,很多人还是习惯用rmdir,不过一 ...

  8. Disconf 学习系列之Disconf 的模块架构图

    不多说,直接上干货!  Disconf 的模块架构主要包括: Disconf-Tools . Disconf-Web. Disconf-client 和  Disconf-Core. 每个模块的简单介 ...

  9. ES6-let、const和块级作用域

    1.介绍 总的来说,ES6是在ES2015的基础上改变了一些书写方式,开放了更多API,这样做的目的最终还是为了贴合实际开发的需要.如果说一门编程语言的诞生是天才的构思和实现,那它的发展无疑就是不断填 ...

  10. WebBench压力测试工具

    Webbench是有名的网站压力测试工具,它是由 Lionbridge公司(http://www.lionbridge.com)开发. Webbech能测试处在相同硬件上,不同服务的性能以及不同硬件上 ...