Beispiel #1
0
        private CurveViewItem LoadCurveViewItem(TextDocument document, int offset, CurveInfo curveInfo)
        {
            var tableHeader = GetTableHeaderLine(document, offset, curveInfo);

            if (tableHeader == null)
            {
                return(null);
            }

            double        duration;
            List <GPoint> points = ExtractPoints(document, tableHeader, curveInfo.IsGeoCoordinate, out duration);

            if (points.Count < 3)
            {
                return(null);
            }

            string        key           = CurvePlotModel.MakeKey(document.FileName, points, curveInfo);
            CurveViewItem curveViewItem = m_CurveViewItems.FirstOrDefault(x => x.Key == key);

            if (curveViewItem == null)
            {
                var curveModel = new CurvePlotModel(document.FileName, points, ShowPlotMarker, curveInfo, m_CurveManeuverParameter, duration);
                curveViewItem = new CurveViewItem(curveModel);
                m_CurveViewItems.Insert(0, curveViewItem);
            }

            Util.Util.RemoveLastItems(m_CurveViewItems, max_num: CacheSize);

            return(curveViewItem);
        }
Beispiel #2
0
        public BitmapImage LoadImage(TextDocument document, int offset, CurveInfo curveInfo)
        {
            CurveViewItem curveViewItem = LoadCurveViewItem(document, offset, curveInfo);

            return(curveViewItem?.BitmapImage);
        }
Beispiel #3
0
        public OxyPlot.Wpf.PlotView LoadPlotView(TextDocument document, int offset, CurveInfo curveInfo)
        {
            CurveViewItem curveViewItem = LoadCurveViewItem(document, offset, curveInfo);

            return(curveViewItem?.PlotView);
        }