arcengine 画多边形
private void axMapControl1_OnMouseDown(object sender, ESRI.ArcGIS.Controls.IMapControlEvents2_OnMouseDownEvent e)
{
IRgbColor pRgbColor;
IActiveView pActiveView;
IRubberBand pRubberBand;
IElement pElement;
IGraphicsContainer pGraphicsContainer;//起到容器的作用,可使画的内容不消失
IPolygonElement pPolygonElement;
ISimpleFillSymbol pSimpleFillSymbol;
IPolygon pPolygon;
pActiveView = axMapControl1.ActiveView;
pSimpleFillSymbol = new SimpleFillSymbolClass();
pSimpleFillSymbol.Style = esriSimpleFillStyle.esriSFSBackwardDiagonal;//面的样式
pRgbColor = new RgbColorClass();
pRgbColor.Red = 250;
pSimpleFillSymbol.Color = pRgbColor;
pRubberBand = new RubberPolygonClass();
pPolygonElement = new PolygonElementClass();
pPolygon = pRubberBand.TrackNew(pActiveView.ScreenDisplay, pSimpleFillSymbol as ISymbol) as IPolygon;
pElement = new PolygonElement();
pElement = pPolygonElement as IElement;
pElement.Geometry = pPolygon;
pGraphicsContainer = axMapControl1.ActiveView.FocusMap as IGraphicsContainer;
pGraphicsContainer.AddElement(pElement, 0);
axMapControl1.ActiveView.Refresh();
}
作者:jinqier
出处:http://www.cnblogs.com/jinqier/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。