ArcEngine 画图
来源:互联网 发布:网络营销软件三尾狐 编辑:程序博客网 时间:2024/05/10 21:17
方法一:
- private void DrawMapShape(IGeometry geometry)
- {
- ISimpleFillSymbol simpleFillSymbol;
- simpleFillSymbol = new SimpleFillSymbolClass();
- simpleFillSymbol.Style = esriSimpleFillStyle.esriSFSNull;
-
- IRgbColor color = new RgbColorClass();
- color.Green = 137;
- color.Blue = 209;
- ILineSymbol line = new SimpleLineSymbolClass();
- line.Color = color;
- line.Width = 3;
- simpleFillSymbol.Outline = line;
- object symbol = simpleFillSymbol;
- base.m_pMapCtrl.DrawShape(geometry, ref symbol);
- }
方法二:
- private void AddElement(IGeometry geometry)
- {
- IPolygonElement polygonElement;
- polygonElement = new PolygonElementClass();
- IElement element;
- element = polygonElement as IElement;
- element.Geometry = geometry;
- IGraphicsContainer graphicsContainer = base.m_pMapCtrl.Map as IGraphicsContainer;
- graphicsContainer.AddElement((IElement)polygonElement, 0);
- base.m_pMapCtrl.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null);
- }
方法三:
- private void DrawEnvelope(IEnvelope newEnvelope)
- {
- short cacheID = base.m_pMapCtrl.ActiveView.ScreenDisplay.AddCache();
-
- ISimpleFillSymbol fillSymbol = new SimpleFillSymbolClass();
- IRgbColor rgbColor = new RgbColorClass();
- rgbColor.Red = 255;
- fillSymbol.Color = rgbColor;
-
- base.m_pMapCtrl.ActiveView.ScreenDisplay.StartDrawing(base.m_pMapCtrl.ActiveView.ScreenDisplay.hDC, cacheID);
- base.m_pMapCtrl.ActiveView.ScreenDisplay.SetSymbol((ISymbol)fillSymbol);
- base.m_pMapCtrl.ActiveView.ScreenDisplay.DrawRectangle(newEnvelope);
- base.m_pMapCtrl.ActiveView.ScreenDisplay.FinishDrawing();
- }
0 0