/// <summary> /// Clone /// </summary> public override object Clone() { LegendNode aLN = new LegendNode(); aLN.ShapeType = _ShapeType; aLN.LegendBreak = _LegendBreak; return(aLN); }
/// <summary> /// Update legend nodes using a legend scheme /// </summary> /// <param name="aLS">legend scheme</param> public void UpdateLegendScheme(LegendScheme aLS) { if (_mapLayer.LayerType != LayerTypes.ImageLayer) { _legendNodes.Clear(); LegendNode aTN = new LegendNode(); for (int i = 0; i < aLS.BreakNum; i++) { if (aLS.LegendBreaks[i].DrawShape) { aTN = new LegendNode(); aTN.ShapeType = ShapeType; aTN.LegendBreak = aLS.LegendBreaks[i]; _legendNodes.Add(aTN); } } if (_mapLayer.LayerType == LayerTypes.VectorLayer) { VectorLayer aLayer = (VectorLayer)_mapLayer; if (aLayer.ChartSet.DrawCharts && aLayer.ChartPoints.Count > 0) { LegendNode aLN = new LegendNode(); aLN.ShapeType = ShapeTypes.Polygon; ChartBreak aCB = ((ChartBreak)aLayer.ChartPoints[0].Legend).GetSampleChartBreak(); aLN.LegendBreak = aCB; aLN.Height = ((ChartBreak)aLN.LegendBreak).GetHeight() + 10; _legendNodes.Add(aLN); for (int i = 0; i < aLayer.ChartSet.LegendScheme.BreakNum; i++) { aLN = new LegendNode(); aLN.ShapeType = ShapeTypes.Polygon; aLN.LegendBreak = aLayer.ChartSet.LegendScheme.LegendBreaks[i]; _legendNodes.Add(aLN); } } } } }