📄 videodlg.h
字号:
//{{AFX_INCLUDES()
//}}AFX_INCLUDES
#if !defined(AFX_VIDEODLG_H__990D166D_F298_4F38_B0C2_F040181703A7__INCLUDED_)
#define AFX_VIDEODLG_H__990D166D_F298_4F38_B0C2_F040181703A7__INCLUDED_
#include "ConfigDlg.h"
#include "CG400-32.H"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// VideoDlg.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CVideoDlg dialog
class CVideoDlg : public CDialog
{
// Construction
public:
int whichNum(int LM1,int LM2,int LM3);
bool ScanNearRect1(CRect rect,double percent,byte Upper[],byte Lower[],int ReturnCentrePoint[],int colnum);
bool myone;
int num2;
void SearchObject();
BOOL SensitiveScan(double percent, int i,int j,byte Upper[],byte Lower[],int ReturnCentrePoint[]);
void initYuv();
bool rectExist(byte upper[], byte low[],CRect Rect,int colnum);
bool issearchGreen;
bool issearchWhite;
bool their_yellow;
CPoint pinkCenter;
CPoint greenCenter;
bool pointExist(byte upper[], byte low[], CPoint* point,int colnum);
bool rectSearch(CRect rect, byte upper[], byte low[], CPoint* point,int colnum);
bool isBall(int tempCentreGravity[]);
void RGB_TO_YUV(byte Col_RGB[],byte Col_YUV[]);
BOOL flag;
friend void CALLBACK TimerProc(HWND hWnd,UINT nMsg,UINT nTimerID,DWORD dwTime);
friend void PASCAL MMProc_TurnTo(UINT wTimerID, UINT msg,DWORD dwUser,DWORD dwl,DWORD dw2);
friend class CDebugDlg;
friend class CInfoDlg;
friend class Player;
friend class CDecisionThread;
static CVideoDlg *m_pVideoDlg;
void setPlayer(int LableX, int LableY,int LM1,int LM2,int FX, int FY,int num);
char colour[930000];
char *lpSourceBuf;
BOOL bIsSkip;
bool isInRect(int x,int y,CRect rect);
int num,n;
int pNum;
CPoint point;
CRect ScanRect;
CRect ScanRect2;
CRect ScanRect3[3];
CRect sample_rect;
void SetPixDrawAllCap();
void SetPixelDrawRect(CRect rect);
BOOL m_IsGetFieldRectChecked;
BOOL m_IsSnapToMem;
void DrawFieldRect(CRect rect);
HCG400 hcg400;
CRect m_FieldRect;//场地矩形框
CRect my_Door;
CRect th_Door;
CRect ObjectRect[20];
//纪录已识别物体的包围框,然后跳过,避免重复扫描
int BallRectNum;
int MyTeamRectNum[5];
int TheirTeamRectNum[5];
int MyLableRectNum;
int TheirLableRectNum;
int ObjectRectNum;
int My_LableCentreGravity[10][2];
int Their_LableCentreGravity[10][2];
int My_CentreGravity[5][2];
int Ball_CentreGravity[10][2];
int m_x,m_y;
int i, j, k;
byte Get_RGB[3];
byte Col_YUV[3];
int l,m;
BOOL m_bIsLBDown;//鼠标左键是否按下
CConfigDlg* m_pConfigDlg;//设置对话框指针
int m_FrameHeight;//帧图象高度
int m_FrameWidth;//帧图象宽度
int m_TotalSeconds;
int m_FrameCount;
CTime m_StartTime;
CTime m_EndTime;
void SetConfigDlg(CConfigDlg* pConfigDlg);
void InitVideo();
void GetPixelColor(int X, int Y,byte Col_RGB[]);
//得到一个像素点的值
BOOL IsMeetRestrict(byte Col_RGB[],
byte Col_rgb[],
byte Lower[]);
BOOL ScanNearRect(//char Data,
CRect rect,
double percent,
byte Upper[],
byte Lower[],
int ReturnCentrePoint[],
int colnum);
void InitTeam();
void TimeStart();
void TimeEnd();
CVideoDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CVideoDlg)
enum { IDD = IDD_VIDEO_DIALOG };
CScrollBar m_yuv_yl;
CScrollBar m_yuv_yh;
CScrollBar m_yuv_vl;
CScrollBar m_yuv_vh;
CScrollBar m_yuv_ul;
CScrollBar m_yuv_uh;
CScrollBar m_sat_scrollbar;
CScrollBar m_hue_scrollbar;
CScrollBar m_con_scrollbar;
CScrollBar m_brt_scrollbar;
CString m_brt_edit;
CString m_con_edit;
CString m_hue_edit;
CString m_sat_edit;
DWORD m_time;
int m_yuv_u;
int m_yuv_v;
int m_yuv_y;
int m_u_high;
int m_u_low;
int m_v_high;
int m_v_low;
int m_y_high;
int m_y_low;
int m_lable1x;
int m_lable2x;
int m_lable3x;
int m_lable1y;
int m_lable2y;
int m_lable3y;
int m_angle;
int m_k;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CVideoDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
afx_msg void OnRead();
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CVideoDlg)
virtual BOOL OnInitDialog();
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnSnapToMem();
afx_msg void OnDisplay();
afx_msg void OnStopdisp();
afx_msg void OnDefault();
afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
afx_msg void OnButton1();
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnButton3();
afx_msg void OnButton4();
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnButton5();
afx_msg void OnButton6();
afx_msg void OnGet();
afx_msg void OnInitYUVClass();
afx_msg void OnSave();
DECLARE_EVENTSINK_MAP()
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_VIDEODLG_H__990D166D_F298_4F38_B0C2_F040181703A7__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -