Ejemplo n.º 1
0
        private void InitialGraph()
        {
            graphProperties = new GraphProperties();
            graphData       = new DataGraph();
            initialRect     = new DataRect();

            // 默认初始处于滚动模式
            GraphStyle = GraphMode.FixMoveMode;

            IsShowGrid = false;

            GraphTitle = "位移实时显示曲线";
            AxisXTitle = "时间(s)";
            AxisYTitle = "位移(mm)";

            pbZoom.BackColor = Color.FromArgb(50, 0, 64, 128);
            pbZoom.Visible   = false;

            MsgOutput = "Ready";
        }
Ejemplo n.º 2
0
        /// <summary>矩形框选放大
        /// </summary>
        private void ZoomInSelectedRect()
        {
            DataRect selectedRect = new DataRect(
                pbZoom.Location.X, pbZoom.Location.X + pbZoom.Width,
                pbZoom.Location.Y, pbZoom.Location.Y + pbZoom.Height);
            DataRect zoomInRect = GetZoomedRect(selectedRect);

            if (zoomInRect.XRange >= XDataAccuracy && zoomInRect.YRange >= YDataAccuracy)
            {
                SetDisplayRect(zoomInRect);
                MsgOutput = "Zoom in normally";
            }
            else if (zoomInRect.XRange >= XDataAccuracy)
            {
                SetDisplayRect(zoomInRect.XMin, zoomInRect.XMax,
                               (zoomInRect.YMin + zoomInRect.YMax - YDataAccuracy) / 2F,
                               (zoomInRect.YMin + zoomInRect.YMax + YDataAccuracy) / 2F);
                MsgOutput = "Zoom in to the Y data accuracy";
            }
            else if (zoomInRect.YRange >= YDataAccuracy)
            {
                SetDisplayRect(
                    (zoomInRect.XMin + zoomInRect.XMax - XDataAccuracy) / 2F,
                    (zoomInRect.XMin + zoomInRect.XMax + XDataAccuracy) / 2F,
                    zoomInRect.YMin, zoomInRect.YMax);
                MsgOutput = "Zoom in to the X data accuracy";
            }
            else
            {
                SetDisplayRect(
                    (zoomInRect.XMin + zoomInRect.XMax - XDataAccuracy) / 2F,
                    (zoomInRect.XMin + zoomInRect.XMax + XDataAccuracy) / 2F,
                    (zoomInRect.YMin + zoomInRect.YMax - YDataAccuracy) / 2F,
                    (zoomInRect.YMin + zoomInRect.YMax + YDataAccuracy) / 2F);
                MsgOutput = "Zoom in to all data accuracy";
            }
        }
Ejemplo n.º 3
0
 private void SetDisplayRect(DataRect newRect)
 {
     graphData.DisplayRect.UpdateRect(newRect);
 }