ArcGISPortalViewer.Helpers.MeasureEditor.OnGenerateSymbol C# (CSharp) Method

OnGenerateSymbol() protected method

Used to override the symbols for midvertex with a different SimpleMarkerSymbol, vertex and selected vertex with a CompositeSymbol that contains TextSymbol where TextSymbol.Text includes the coordinate index of vertex.
protected OnGenerateSymbol ( GenerateSymbolInfo generateSymbolInfo ) : Symbol
generateSymbolInfo GenerateSymbolInfo
return Symbol
        protected override Symbol OnGenerateSymbol(GenerateSymbolInfo generateSymbolInfo)
        {
            if (generateSymbolInfo.GenerateSymbolType != GenerateSymbolType.Vertex &&
                generateSymbolInfo.GenerateSymbolType != GenerateSymbolType.SelectedVertex &&
                generateSymbolInfo.GenerateSymbolType != GenerateSymbolType.MidVertex)
                return base.OnGenerateSymbol(generateSymbolInfo);
            if (generateSymbolInfo.GenerateSymbolType == GenerateSymbolType.MidVertex)
                return new SimpleMarkerSymbol()
                {
                    Color = Color.FromArgb(1, 0, 0, 0),
                    Outline = new SimpleLineSymbol() {Width = 2, Color = Colors.White},
                    Size = 6
                };
            return new CompositeSymbol()
            {
                Symbols = new SymbolCollection(new Symbol[]
                {
                    new SimpleMarkerSymbol()
                    {
                        Color = Colors.White, Size = 14,
                        Outline = new SimpleLineSymbol() {Width = 1.5, Color = Colors.CornflowerBlue},
                    },
                    new TextSymbol()
                    {
                        Text =
                            Convert.ToString(generateSymbolInfo.VertexPosition.CoordinateIndex + 1, CultureInfo.InvariantCulture),
                        HorizontalTextAlignment = HorizontalTextAlignment.Center,
                        VerticalTextAlignment = VerticalTextAlignment.Middle
                    },
                })
            };
        }
MeasureEditor