Exemplo n.º 1
0
 // 云台控制
 public bool PTZControl(int channel, PtzCommand command, PtzStop stop, PtzSpeed speed)
 {
     return(HCNetSDK.NET_DVR_PTZControlWithSpeed(_real_handles[channel - 1]
                                                 , (uint)command
                                                 , (uint)stop
                                                 , (uint)speed));
 }
Exemplo n.º 2
0
 /// <summary>
 /// 转动一次云台,按钮控制,彭海波增加
 /// </summary>
 /// <param name="channelId">通道号</param>
 /// <param name="command">转动方向</param>
 private void TurnDirectionByButton(int channelId,PtzCommand command)
 {
     if (_measApp != null && _measApp.Dvr != null)
     {
         _measApp.Dvr.PTZControl(channelId, command, PtzStop.START, PtzSpeed.LEVEL4);
         _measApp.Dvr.PTZControl(channelId, command, PtzStop.STOP, PtzSpeed.LEVEL4);
     }
 }
Exemplo n.º 3
0
 // 云台控制
 public bool PTZControl(int channel, PtzCommand command, PtzStop stop, PtzSpeed speed)
 {
     return HCNetSDK.NET_DVR_PTZControlWithSpeed(_real_handles[channel - 1]
        , (uint)command
        , (uint)stop
        , (uint)speed);
 }
Exemplo n.º 4
0
 /// <summary>
 /// 处理云台移动方向
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="channelId"></param>
 /// <param name="x"></param>
 /// <param name="y"></param>
 private void MovePTZ(object sender, int channelId, int x, int y)
 {
     if (_mousedown && _measApp != null && _measApp.Dvr != null)
     {
         //tbCharge.Text = Convert.ToString(Math.Atan2(y - _moveTop, x - _moveLeft) * 180 / Math.PI);
         double angle = Math.Atan2(y - _moveTop, x - _moveLeft) * 180 / Math.PI;
         if (angle < 22.5 && angle >= -22.5)
         {
             _direction = PtzCommand.PAN_RIGHT;
             ((Control)sender).Cursor = Cursors.PanEast;
         }
         else if (angle >= 22.5 && angle < 67.5)
         {
             _direction = PtzCommand.DOWN_RIGHT;
             ((Control)sender).Cursor = Cursors.PanSE;
         }
         else if (angle >= 67.5 && angle < 112.5)
         {
             _direction = PtzCommand.TILT_DOWN;
             ((Control)sender).Cursor = Cursors.PanSouth;
         }
         else if (angle >= 112.5 && angle < 157.5)
         {
             _direction = PtzCommand.DOWN_LEFT;
             ((Control)sender).Cursor = Cursors.PanSW;
         }
         else if (angle >= 157.5 || angle < -157.5)
         {
             _direction = PtzCommand.PAN_LEFT;
             ((Control)sender).Cursor = Cursors.PanWest;
         }
         else if (angle >= -157.5 && angle < -112.5)
         {
             _direction = PtzCommand.UP_LEFT;
             ((Control)sender).Cursor = Cursors.PanNW;
         }
         else if (angle >= -112.5 && angle < -67.5)
         {
             _direction = PtzCommand.TILT_UP;
             ((Control)sender).Cursor = Cursors.PanNorth;
         }
         else if (angle >= -67.5 && angle < -22.5)
         {
             _direction = PtzCommand.UP_RIGHT;
             ((Control)sender).Cursor = Cursors.PanNE;
         }
     }
 }