小马哥淡定 原文 ARCGIS动态画点
private void DrawPointOnMap(double x, double y,bool clear) { IMapControl2 pMapCtrl = (IMapControl2)mapCtrl.Object; IGraphicsLayer pGraphicsLyr = mapCtrl.Map.BasicGraphicsLayer; IActiveView pView = mapCtrl.ActiveView; IGraphicsContainer pGraphicsContainer = (IGraphicsContainer)pGraphicsLyr; IPoint pnt = new PointClass(); pnt.X = x; pnt.Y = y; IScreenDisplay pDisp = pView.ScreenDisplay; pDisp.StartDrawing(pDisp.hDC, (short)(ESRI.ArcGIS.Display.esriScreenCache.esriNoScreenCache)); pDisp.SetSymbol(new SimpleMarkerSymbolClass()); //下面两句关键 pGraphicsContainer.DeleteAllElements(); pView.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null); pDisp.DrawPoint(pnt); pDisp.FinishDrawing(); // When FinishDrawing is called, all the caches get flushed to the screen. FinishDrawing must be called before StartDrawing can be called again. IMarkerElement pMkElmt = new MarkerElementClass(); IElement pElmt = (IElement)pMkElmt; pMkElmt.Symbol = new SimpleMarkerSymbolClass(); pElmt.Geometry = pnt; pGraphicsContainer.AddElement(pElmt, 0); IGeometry geo = pElmt.Geometry; //mapCtrl.FlashShape(geo, 5, 1000, null); }
没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。
本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/6110196.html
,如需转载请自行联系原作者