关键之处在于获取每个点所代表的的值 这里使用geodatabase类库中idatastatistic接口进行统计字段,再将结果传递给esrisysytem.istatisticsResult进行.

需用到引用

 using ESRI.ArcGIS.Display;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.Geodatabase;

代码

 private void dotToolStripMenuItem_Click(object sender, EventArgs e)
{
IGeoFeatureLayer pLayer = this.axMapControl1.get_Layer()as IGeoFeatureLayer;
ITable pTable = pLayer.FeatureClass as ITable;
IQueryFilter pQueryFilter=new QueryFilterClass();
pQueryFilter.AddField("PERIMETER");
ICursor pCursor = pTable.Search(pQueryFilter, true);
IDataStatistics pDataStatistics = new DataStatisticsClass();
pDataStatistics.Cursor = pCursor;//数据来源
pDataStatistics.Field = "PERIMETER";
IStatisticsResults pStatisticsResult = pDataStatistics.Statistics;
double Dvalues = (pStatisticsResult.Minimum+pStatisticsResult.Maximum)/;//根据情况而定 IDotDensityRenderer pDotDensityRenderer=new DotDensityRendererClass(); IRendererFields pRendererField = pDotDensityRenderer as IRendererFields;
pRendererField.AddField("PERIMETER", "PERIMETER"); IDotDensityFillSymbol pDotDensityFillSymbol = new DotDensityFillSymbolClass();
pDotDensityFillSymbol.DotSize =;
pDotDensityFillSymbol.BackgroundColor = GetRgbColor(, , );
pDotDensityFillSymbol.Color = GetRgbColor(, , ); ISymbolArray pSymbolArray = pDotDensityFillSymbol as ISymbolArray;
ISimpleMarkerSymbol pMarkerSymbol = new SimpleMarkerSymbolClass();
pMarkerSymbol.Color = GetRgbColor(, , );
pMarkerSymbol.Style = esriSimpleMarkerStyle.esriSMSDiamond;
pMarkerSymbol.Size = ;
pSymbolArray.AddSymbol(pMarkerSymbol as ISymbol); pDotDensityRenderer.DotDensitySymbol = pDotDensityFillSymbol;
pDotDensityRenderer.DotValue = Dvalues;
pDotDensityRenderer.CreateLegend(); pLayer.Renderer = pDotDensityRenderer as IFeatureRenderer;
this.axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null);
this.axTOCControl1.Update(); }

DotDensityRenderer的更多相关文章

  1. ArcGIS Engine渲染

    符号化之Renderer( 渲染)体系 ArcGIS Engine9.3对GIS数据的符号化分为矢量数据渲染和栅格数据渲染两大类.接下来分别介绍FeatureRender和RasterRender. ...

  2. ae专题图

    点密度图.分层设色图/等级图.单值图.柱状图.饼状图的实现代码 C# private void 点密度图ToolStripMenuItem_Click(object sender, EventArgs ...

  3. [转] ArcEngine 产生专题图

    小生原文 ArcEngine 产生专题图 ArcEngine提供多个着色对象用于产生专题图,可以使用标准着色方案,也可以自定义着色方案,ArcEngine提供8中标准着色方案. 一.SimpleRen ...

  4. [转] Symbol对象

    GIS中的离散实体有三种:点.线.面,在ArcEngine中用三种符号对应表示,分别是:MarkSymbol.LineSymbol和FillSymbol.此外还有TextSymbol用于文字标注,3D ...

  5. c#+arcAE对图层进行各种渲染操作

    转载:http://blog.sina.com.cn/s/blog_6023833e0100t5t0.html using System;using System.Collections.Generi ...

  6. ArcGIS Engine专题地图渲染器的实现(入门版)

    专题地图(Thematic Map)是着重表示一种或数种自然要素特征或社会经济现象的地图 专题地图的内容由两部分构成: 1.专题内容——图上突出表示的自然或社会经济现象及其有关特征 2.地理基础——用 ...

  7. arcgis点密度专题

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. ArcGIS Server 动态图层发布调用图解

    目录 1 前言 1.1 简介 1.2 适用场景 2 动态图层 2.1 共享地图服务 2.2 动态工作空间添加 2.2.1 企业级数据库 2.2.2 shapefile文件夹 2.2.3 栅格文件夹 2 ...

随机推荐

  1. MySQL复制协议

    http://hamilton.duapp.com/detail?articleId=27

  2. Redis的快照功能

    引言:  Redis是基于内存的数据库,同时也提供了若干持久化的方案,允许用户把内存中的数据,写入本地文件系统,以备下次重启或者当机之后继续使用.本文将描述如何基于Redis来设置这些功能. 快照的设 ...

  3. JS高级程序设计学习笔记之Date类型

    日期对象的创建:var now =new Date(),不传递参数时,对象自动获取当前时间.(若要创建特定日期与时间的对象,必须传入该日期距离1970/1/1零点的毫秒数). Date.parse() ...

  4. WebApi2官网学习记录---Html Form Data

    HTML Forms概述 <form action="api/values" method="post"> 默认的method是GET,如果使用GE ...

  5. C# XML,XmlDocument简单操作实例

    private static string _Store = LocalPathHelper.CurrentSolutionPath + "/data/bookstore.xml" ...

  6. Java数据结构漫谈-Vector

    List除了ArrayList和LinkedList之外,还有一个最常用的就是Vector. Vector在中文的翻译是矢量,向量,所以大家喜欢把Vector叫做矢量数组,或者向量数组. 其实就底层实 ...

  7. 大转盘Demo

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  8. dedecms likearticle 调用附加表的字段调用方式

    [field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select 字段名 From `dede_a ...

  9. 阿铭linux笔记

    2015-09-06虚拟机网络设置.wmv: curl     获取在命令行显示的网页 dhclient     分配ip地址 ifdown eth0     关闭网卡eth0 ifup eh0   ...

  10. python Cmd实例之网络爬虫应用

    python Cmd实例之网络爬虫应用 标签(空格分隔): python Cmd 爬虫 废话少说,直接上代码 # encoding=utf-8 import os import multiproces ...