c# arcgis 给map添加设备选择器
来源:互联网 发布:服务器网络加速 编辑:程序博客网 时间:2024/04/29 19:16
public void AddGraphicToMap(ESRI.ArcGIS.Carto.IMap map, ESRI.ArcGIS.Geometry.IGeometry geometry, ESRI.ArcGIS.Display.IRgbColor rgbColor, ESRI.ArcGIS.Display.IRgbColor outlineRgbColor, int width)
{
ESRI.ArcGIS.Carto.IGraphicsContainer graphicsContainer = (ESRI.ArcGIS.Carto.IGraphicsContainer)map; // Explicit Cast
ESRI.ArcGIS.Carto.IElement element = null;
if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPoint)
{
// Marker symbols
ESRI.ArcGIS.Display.ISimpleMarkerSymbol simpleMarkerSymbol = new ESRI.ArcGIS.Display.SimpleMarkerSymbolClass();
simpleMarkerSymbol.Color = rgbColor;
simpleMarkerSymbol.Outline = true;
simpleMarkerSymbol.OutlineColor = outlineRgbColor;
simpleMarkerSymbol.Size = 5;
simpleMarkerSymbol.Style = ESRI.ArcGIS.Display.esriSimpleMarkerStyle.esriSMSCircle;
ESRI.ArcGIS.Carto.IMarkerElement markerElement = new ESRI.ArcGIS.Carto.MarkerElementClass();
markerElement.Symbol = simpleMarkerSymbol;
element = (ESRI.ArcGIS.Carto.IElement)markerElement; // Explicit Cast
}
else if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolyline)
{
// Line elements
ESRI.ArcGIS.Display.ISimpleLineSymbol simpleLineSymbol = new ESRI.ArcGIS.Display.SimpleLineSymbolClass();
simpleLineSymbol.Color = rgbColor;
simpleLineSymbol.Style = ESRI.ArcGIS.Display.esriSimpleLineStyle.esriSLSSolid;
simpleLineSymbol.Width = width;
ESRI.ArcGIS.Carto.ILineElement lineElement = new ESRI.ArcGIS.Carto.LineElementClass();
lineElement.Symbol = simpleLineSymbol;
element = (ESRI.ArcGIS.Carto.IElement)lineElement; // Explicit Cast
}
else if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolygon)
{
// Polygon elements
ESRI.ArcGIS.Display.ISimpleFillSymbol simpleFillSymbol = new ESRI.ArcGIS.Display.SimpleFillSymbolClass();
simpleFillSymbol.Color = rgbColor;
simpleFillSymbol.Style = ESRI.ArcGIS.Display.esriSimpleFillStyle.esriSFSSolid;
ESRI.ArcGIS.Carto.IFillShapeElement fillShapeElement = new ESRI.ArcGIS.Carto.PolygonElementClass();
fillShapeElement.Symbol = simpleFillSymbol;
element = (ESRI.ArcGIS.Carto.IElement)fillShapeElement; // Explicit Cast
}
if (!(element == null))
{
element.Geometry = geometry;
graphicsContainer.AddElement(element, 0);
}
}
{
ESRI.ArcGIS.Carto.IGraphicsContainer graphicsContainer = (ESRI.ArcGIS.Carto.IGraphicsContainer)map; // Explicit Cast
ESRI.ArcGIS.Carto.IElement element = null;
if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPoint)
{
// Marker symbols
ESRI.ArcGIS.Display.ISimpleMarkerSymbol simpleMarkerSymbol = new ESRI.ArcGIS.Display.SimpleMarkerSymbolClass();
simpleMarkerSymbol.Color = rgbColor;
simpleMarkerSymbol.Outline = true;
simpleMarkerSymbol.OutlineColor = outlineRgbColor;
simpleMarkerSymbol.Size = 5;
simpleMarkerSymbol.Style = ESRI.ArcGIS.Display.esriSimpleMarkerStyle.esriSMSCircle;
ESRI.ArcGIS.Carto.IMarkerElement markerElement = new ESRI.ArcGIS.Carto.MarkerElementClass();
markerElement.Symbol = simpleMarkerSymbol;
element = (ESRI.ArcGIS.Carto.IElement)markerElement; // Explicit Cast
}
else if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolyline)
{
// Line elements
ESRI.ArcGIS.Display.ISimpleLineSymbol simpleLineSymbol = new ESRI.ArcGIS.Display.SimpleLineSymbolClass();
simpleLineSymbol.Color = rgbColor;
simpleLineSymbol.Style = ESRI.ArcGIS.Display.esriSimpleLineStyle.esriSLSSolid;
simpleLineSymbol.Width = width;
ESRI.ArcGIS.Carto.ILineElement lineElement = new ESRI.ArcGIS.Carto.LineElementClass();
lineElement.Symbol = simpleLineSymbol;
element = (ESRI.ArcGIS.Carto.IElement)lineElement; // Explicit Cast
}
else if ((geometry.GeometryType) == ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolygon)
{
// Polygon elements
ESRI.ArcGIS.Display.ISimpleFillSymbol simpleFillSymbol = new ESRI.ArcGIS.Display.SimpleFillSymbolClass();
simpleFillSymbol.Color = rgbColor;
simpleFillSymbol.Style = ESRI.ArcGIS.Display.esriSimpleFillStyle.esriSFSSolid;
ESRI.ArcGIS.Carto.IFillShapeElement fillShapeElement = new ESRI.ArcGIS.Carto.PolygonElementClass();
fillShapeElement.Symbol = simpleFillSymbol;
element = (ESRI.ArcGIS.Carto.IElement)fillShapeElement; // Explicit Cast
}
if (!(element == null))
{
element.Geometry = geometry;
graphicsContainer.AddElement(element, 0);
}
}
- c# arcgis 给map添加设备选择器
- ArcGIS JS Map添加FeatureLayer
- 给Android系统添加google map支持
- 给C#代码添加行号
- C# 给图片添加水印
- C# 给Excel添加水印
- 给通知添加可穿戴设备特征
- 如何给.JPG格式图片添加坐标信息(ArcGIS)
- C#给图片添加版权信息
- C#给图片添加版权信息
- C#给MDI主窗口添加背景
- C#给RichTextBox添加查找画面
- 给c#添加SetTimeout和SetInterval函数
- C#给XmlNode节点添加Name属性
- C# 如何给Panel 添加背景图片
- c# winform 给自定义控件添加事件
- c# winform 给自定义控件添加事件
- C#动态给页面添加样式
- Linux架构
- Java类加载器及其委托机制
- 十种常用的网页挂马方法(附源代码)
- 如何使 SQL Server高效 -- 疑难(ITPUT 讨论汇总)
- input:-webkit-autofill 谷歌浏览器 修改input输入框的颜色
- c# arcgis 给map添加设备选择器
- 【Chrome】RSA算法在扩展程序中的运用
- retain和release倒底怎么玩?
- linux NAND驱动之一:内核中的NAND代码布局
- 算法之二分查找【C语言】
- Difference between MBCS and UTF-8 on Windows
- 没有学位,他通过以下四步进入Google
- Android程序中安装APP总结
- 进程的创建与可执行程序的加载