ArcGIS Engine 中 线加箭头

时间:2023-03-10 06:39:19
ArcGIS Engine 中 线加箭头
        void AddArrowElement(IGeometry pGeometry, IActiveView pActiveView)
        {
            IRgbColor pColor = new RgbColorClass();
            pColor.Red = ;             ICartographicLineSymbol pCartoLineSymbol = new CartographicLineSymbolClass();
            pCartoLineSymbol.Cap = esriLineCapStyle.esriLCSRound;             ILineProperties pLineProp = pCartoLineSymbol as ILineProperties;
            pLineProp.DecorationOnTop = true;             ILineDecoration pLineDecoration = new LineDecorationClass();
            ISimpleLineDecorationElement pSimpleLineDecoElem = new SimpleLineDecorationElementClass();
            pSimpleLineDecoElem.AddPosition();
            IArrowMarkerSymbol pArrowMarkerSym = new ArrowMarkerSymbolClass();
            pArrowMarkerSym.Size = ;
            pArrowMarkerSym.Color = pColor;
            pSimpleLineDecoElem.MarkerSymbol = pArrowMarkerSym as IMarkerSymbol;
            pLineDecoration.AddElement(pSimpleLineDecoElem as ILineDecorationElement);
            pLineProp.LineDecoration = pLineDecoration;             ILineSymbol pLineSymbol = pCartoLineSymbol as ILineSymbol;             pLineSymbol.Color = pColor;
            pLineSymbol.Width = ;             ILineElement pLineElem = new LineElementClass();
            pLineElem.Symbol = pLineSymbol;
            IElement pElem = pLineElem as IElement;
            pElem.Geometry = pGeometry;             IGraphicsContainer pGraphicsContainer = mCtrl.Map as IGraphicsContainer;
            pGraphicsContainer.AddElement(pElem, );             mCtrl.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null);
        }