示例#1
0
        private void CreateBufferedSeries()
        {
            int color = (int)KnownColor.AliceBlue;

            bufferedSeries = new UlDoubleBufferedSeriesCollection();

            foreach (KeyValuePair <string, ValueRow> row in Resource.Variables.Graph)
            {
                if (row.Value.Unit.Type == EUnitType.Time)
                {
                    continue;
                }

                bufferedSeries.Add(new UlDoubleBufferedSeries(row.Value.Name, Color.FromKnownColor((KnownColor)color)));

                if ((KnownColor)color == KnownColor.YellowGreen)
                {
                    color = (int)KnownColor.AliceBlue;
                }
                else
                {
                    color++;
                }
            }
        }
示例#2
0
        public CtrlViewGraphPanel(int index, ConditionMethod method, UlDoubleBufferedSeriesCollection series)
        {
            InitializeComponent();

            Index  = index;
            Method = method;
            Initialize(series);
        }
示例#3
0
        public CtrlTestGraphPanel(int index, TestContext context, UlDoubleBufferedSeriesCollection series)
        {
            InitializeComponent();

            Index        = index;
            this.context = context;
            handle       = context.Handle;
            Method       = context.Condition.Method;
            Initialize(series);
        }
示例#4
0
        private void Initialize(UlDoubleBufferedSeriesCollection series)
        {
            zoomAxisCombo.SelectedIndex = 0;

            viewGraph.Series.Clear();
            viewGraph.Mode       = EChartMode.Dynamic;
            viewGraph.BackColor  = Color.White;
            viewGraph.LegendFont = new Font("Arial", 7, FontStyle.Regular);

            viewGraph.SetBufferedSeries(series);
            viewGraph.SetPrimaryAxisX(AxisAlignment.Near, "Time", StringAlignment.Center, 0, 60000);

            InitializeYAxes();
            LoadYAxes();

            foreach (YAxisRow row in YAxisRows)
            {
                AxisAlignment align = (row.Align == EAxisAlign.Left) ? AxisAlignment.Near : AxisAlignment.Far;

                if (row.AxisNo == 0)
                {
                    viewGraph.SetPrimaryAxisY(align, row.DescriptionUnit, StringAlignment.Far, row.WholeMin, row.WholeMax);
                }
                else
                {
                    viewGraph.AddSecondaryAxisY(align, row.DescriptionUnit, StringAlignment.Far, row.WholeMin, row.WholeMax);
                }
            }

            InitializePlotSeries();
            LoadPlotSeries();

            xAxis = new XAxisRow();
            LoadXAxis();
            ResetRangeAxisX();

            viewGraph.Prepare();
            viewGraph.SetGridLinesAxisX(true);
            viewGraph.SetGridLinesAxisY(true);

            foreach (SeriesRow row in PlotSeriesRows)
            {
                viewGraph.Series[row.Name].View.Color = row.Color;
                viewGraph.Series[row.Name].Visible    = row.Checked;
                viewGraph.SetSeriesAxisY(row.Name, GetIndexAxisY(row.UnitType));
            }

            foreach (YAxisRow row in YAxisRows)
            {
                viewGraph.AxesY[row.AxisNo].Visibility =
                    (row.Checked == true) ? DefaultBoolean.True : DefaultBoolean.False;
            }

            viewGraph.MarkLine.ShowValueMarkPoint += DoShowValueMarkPoint;
            viewGraph.MarkLine.Visible             = false;

            viewGraph.Zooming.ZoomStackChanged += DoZoomStackChanged;
            viewGraph.Zooming.Clear();

            graphPauseLed.Active = false;

            plotSeriesGrid.DataSource      = PlotSeriesRows;
            plotSeriesGrid.UseDirectXPaint = DefaultBoolean.False;
            plotSeriesGridView.Columns["Checked"].ImageOptions.ImageIndex = 1;
            plotSeriesGridView.Appearance.EvenRow.BackColor        = Color.FromArgb(244, 244, 236);
            plotSeriesGridView.OptionsView.EnableAppearanceEvenRow = true;

            SetCursorAColumnVisible(false);
            SetCursorBColumnVisible(false);

            plotSeriesGridView.RefreshData();
        }