Example #1
0
        /// <summary>
        /// 构造函数
        /// </summary>
        public MainWinForm()
        {
            m_videoPanels = new ArrayList();

            InitializeComponent();

            devideScreen();

            m_sdkOperator = new BVCUSdkOperator(this);

            m_getPuList = new GetPuListDel(procGetPuList);//设置获得设备列表后的响应,初始化treeview

            m_capturePath = "";
            m_recordPath  = "";

            m_activePanelBorder = new RectBorder(panelVideo, Color.Red);
            Panel panel = m_videoPanels[0] as Panel;

            m_activePanelBorder.show(panel.Location, panel.Width, panel.Height, ACTIVE_PANEL_BORDER_WIDTH);
            m_activePanel = panel;
            RecordPath    = "E:\\PIPE_DATA\\TEST";

            //定时器
            sndData_timer           = new System.Timers.Timer(1000);
            sndData_timer.Elapsed  += new ElapsedEventHandler(sndMsg_TSP);
            sndData_timer.AutoReset = true;
            sndData_timer.Enabled   = false;

            //连接数据库
            if (conn != null)
            {
                conn.Close();
            }

            string connStr = "server=127.0.0.1;user id=root; password=TBG244; database=controlbox; pooling=false";

            try
            {
                conn = new MySqlConnection(connStr);
                conn.Open();
            }
            catch (MySqlException ex)
            {
                MessageBox.Show("Error connecting to the server: " + ex.Message);
            }

            /*test
             * gsSrData = new gsData();
             * gsSrData.CH4 = 23;
             * gsSrData.CO = 24;
             * gsSrData.CO2 = 25;
             * gsSrData.H2S = 26;
             * gsSrData.NH3 = 27;
             * gsSrData.O2 = 28;
             *
             * string sql1 = string.Format(@"insert into gassensordata(DataTime,CO,CO2,H2S,NH3) values('{0}', '{1}', '{2}', '{3}', '{4}')", DateTime.Now, gsSrData.CO, gsSrData.CO2, gsSrData.CO2, gsSrData.NH3);
             * MySqlCommand mycmd = new MySqlCommand(sql1, conn);
             * mycmd.ExecuteNonQuery();
             * */
        }
Example #2
0
        /// <summary>
        /// 构造函数
        /// </summary>
        public MainWinForm()
        {
            m_videoPanels = new ArrayList();

            InitializeComponent();

            devideScreen();

            m_sdkOperator = new BVCUSdkOperator(this);

            m_getPuList = new GetPuListDel(procGetPuList);//设置获得设备列表后的响应

            m_capturePath = "";
            m_recordPath  = "";

            m_activePanelBorder = new RectBorder(panelVideo, Color.Red);
            Panel panel = m_videoPanels[0] as Panel;

            m_activePanelBorder.show(panel.Location, panel.Width, panel.Height, ACTIVE_PANEL_BORDER_WIDTH);
            m_activePanel = panel;

            m_sdkOperator.PtzSpeed = (int)numericUpDownPTZSpeed.Value;

            dateTimePickerBegin.Value = dateTimePickerBegin.Value.AddDays(-2);
        }
Example #3
0
        public Form1()
        {
            m_videoPanels = new ArrayList();
            InitializeComponent();
            devideScreen();
            m_sdkOperator       = new BVCUSDKOperator(this);
            m_getPuList         = new GetPuListDel(procGetPuList);
            m_capturePath       = "";
            m_recordPath        = "";
            m_activePanelBorder = new RectBorder(panelVideo, Color.Red);
            Panel panel = m_videoPanels[0] as Panel;

            m_activePanelBorder.show(panel.Location, panel.Width, panel.Height, ACTIVE_PANEL_BORDER_WIDTH);
            m_activePanel          = panel;
            m_sdkOperator.PtzSpeed = (int)numericUpDownPTZSpeed.Value;
        }
        private void drawRectangle(double x, double y, double width, double height, string label)
        {
            Rect.Width  = width;
            Rect.Height = height;
            Rect.SetValue(Canvas.LeftProperty, x);
            Rect.SetValue(Canvas.TopProperty, y);
            Rect.Visibility = Visibility.Visible;

            RectText.Text = label;
            RectText.SetValue(Canvas.LeftProperty, x);
            RectText.SetValue(Canvas.TopProperty, y);

            RectBorder.SetValue(Canvas.LeftProperty, x);
            RectBorder.SetValue(Canvas.TopProperty, y);
            RectBorder.Visibility = Visibility.Visible;
            RectText.Visibility   = Visibility.Visible;
        }
Example #5
0
    public static Rect Next(this Rect r, RectBorder direction)
    {
        Rect rect = new Rect(r);

        switch (direction)
        {
        case RectBorder.Down:
            rect.y += r.height;
            break;

        case RectBorder.Up:
            rect.y -= r.height;
            break;

        case RectBorder.Left:
            rect.x -= r.width;
            break;

        case RectBorder.Right:
            rect.x += r.width;
            break;
        }
        return(rect);
    }
Example #6
0
        public static Rect GetBorder(this Rect r, RectBorder border, int size, bool showResizeCursor = false)
        {
            Rect retRect = r;

            // Dimensions
            if (border == RectBorder.Left || border == RectBorder.Right)
            {
                retRect.height = r.height - size * 2;
            }
            else
            {
                retRect.height = size;
            }

            if (border == RectBorder.Top || border == RectBorder.Bottom)
            {
                retRect.width = r.width - size * 2;
            }
            else
            {
                retRect.width = size;
            }

            // Position
            if (border == RectBorder.Left || border == RectBorder.Center || border == RectBorder.Right)
            {
                retRect.y += size;
            }
            if (border == RectBorder.BottomLeft || border == RectBorder.Bottom || border == RectBorder.BottomRight)
            {
                retRect.y += r.height - size;
            }

            if (border == RectBorder.Top || border == RectBorder.Center || border == RectBorder.Bottom)
            {
                retRect.x += size;
            }
            if (border == RectBorder.TopRight || border == RectBorder.Right || border == RectBorder.BottomRight)
            {
                retRect.x += r.width - size;
            }


            if (showResizeCursor)
            {
                MouseCursor cursor;

                if (border == RectBorder.Top || border == RectBorder.Bottom)
                {
                    cursor = MouseCursor.ResizeVertical;
                }
                else if (border == RectBorder.Left || border == RectBorder.Right)
                {
                    cursor = MouseCursor.ResizeHorizontal;
                }
                else if (border == RectBorder.TopLeft || border == RectBorder.BottomRight)
                {
                    cursor = MouseCursor.ResizeUpLeft;
                }
                else if (border == RectBorder.BottomLeft || border == RectBorder.TopRight)
                {
                    cursor = MouseCursor.ResizeUpRight;
                }
                else
                {
                    cursor = MouseCursor.MoveArrow;
                }

                SF_GUI.AssignCursor(retRect, cursor);
            }

            return(retRect);
        }
Example #7
0
    /// <summary>
    /// Splits the super fixed.
    ///
    /// </summary>
    /// <returns>The super fixed.</returns>
    /// <param name="r">The rect component.</param>
    /// <param name="option">RectBorder Option Up/Left/Down/Right </param>
    /// <param name="parts">Parts.
    ///     Value <  0 == Percent
    ///     Value >= 1 == Fixed Pixels
    /// </param>
    public static Rect[] Split(this Rect r, RectBorder option, params float[] parts)
    {
        float freespace;
        float fixedSize = 0;

        List <float> sizes  = new List <float>(parts);
        int          lenght = parts.Length + 1;

        Rect[] rects     = new Rect[lenght];
        float  fixedTemp = 0;

        for (int x = 0; x < parts.Length; x++)
        {
            if (parts[x] < 1)
            {
                //Percent
                switch (option)
                {
                case RectBorder.Down:
                case RectBorder.Up:
                    fixedTemp = parts[x] * r.height;
                    break;

                case RectBorder.Left:
                case RectBorder.Right:
                    fixedTemp = parts[x] * r.width;
                    break;
                }
            }
            else
            {
                fixedTemp = parts[x];
            }
            sizes[x]   = fixedTemp;
            fixedSize += fixedTemp;
        }

        switch (option)
        {
        case RectBorder.Down:
            freespace = r.height - fixedSize;
            sizes.Reverse();
            sizes.Insert(0, freespace);
            break;

        case RectBorder.Up:
            freespace = r.height - fixedSize;
            sizes.Add(freespace);
            break;

        case RectBorder.Left:
            freespace = r.width - fixedSize;
            sizes.Add(freespace);
            break;

        case RectBorder.Right:
            freespace = r.width - fixedSize;
            sizes.Reverse();
            sizes.Insert(0, freespace);
            break;
        }

        switch (option)
        {
        case RectBorder.Down:
        case RectBorder.Up:

            for (int x = 0; x < sizes.Count; x++)
            {
                rects[x]        = new Rect(r);
                rects[x].height = sizes[x];
                if (x > 0)
                {
                    rects[x].y = rects[x - 1].yMax;
                }
            }
            break;

        case RectBorder.Left:
        case RectBorder.Right:
            for (int x = 0; x < sizes.Count; x++)
            {
                rects[x]       = new Rect(r);
                rects[x].width = sizes[x];
                if (x > 0)
                {
                    rects[x].x = rects[x - 1].xMax;
                }
            }
            break;
        }
        return(rects);
    }
Example #8
0
 public static Rect[] SplitSuperFixed(this Rect r, RectBorder option, params float[] parts) => Split(r, option, parts);