public void Set(FlightLog flightLog)
        {
            Clear();

            PrepareCharts();

            foreach (var snapshot in flightLog.Plots)
                AddPlot(snapshot);

            foreach (Waypoint waypoint in flightLog.Waypoints)
            {
                _waypointMarkers.AddPoint(new ChartPoint("",
                    new Point(waypoint.Position.X, waypoint.Position.Z)));
            }

            RenderAndSetScale(flightLog.Plots.Last().Time);
        }
        public void AddToComparison(FlightLog flightLog, Color graphColor, string label, double thickness)
        {
            var posGraph = new ChartPrimitive
            {
                Filled = false,
                Dashed = false,
                ShowInLegend = true,
                LineThickness = thickness,
                HitTest = true,
                Color = graphColor,
                Label = label
            };

            var altitudeGraph = new ChartPrimitive
            {
                Filled = false,
                Dashed = false,
                ShowInLegend = true,
                LineThickness = thickness,
                HitTest = true,
                Color = graphColor,
                Label = label
            };

            _positionChart.Primitives.Add(posGraph);
            _heightChart.Primitives.Add(altitudeGraph);

            if (_comparisonIsEmpty)
                _heightChart.Primitives.Add(_groundHeightGraph);

            //            _waypointMarkers = new ChartMarkerSet(_waypointGraph)
            //            {
            //                Stroke = Colors.Black,
            //                Fill = Color.FromArgb(150, 255, 255, 0),
            //                Size = 20,
            //                StrokeWidth = 1,
            //            };
            //
            //            _positionChart.MarkerSets.Add(_waypointMarkers);

            foreach (var snapshot in flightLog.Plots)
            {
                AppendLineXZ(posGraph, snapshot.True.Position);
                AppendLine(altitudeGraph, snapshot.Time.TotalSeconds, snapshot.True.Position.Y);

                if (_comparisonIsEmpty)
                    AppendLine(_groundHeightGraph, snapshot.Time.TotalSeconds, snapshot.GroundAltitude);
            }

            //            foreach (Waypoint waypoint in flightLog.Waypoints)
            //            {
            //                _waypointMarkers.AddPoint(new ChartPoint("",
            //                    new Point(waypoint.Position.X, waypoint.Position.Z)));
            //            }

            RenderAndSetScale(flightLog.Plots.Last().Time);

            _comparisonIsEmpty = false;
        }