// DlgWHTJDCNew.cpp : 实现文件

#include "stdafx.h"
#include "DlgWHTJDCNew.h"
#include "afxdialogex.h"

/*组播发送*/
#include <stdio.h>
#include <winsock2.h>
#include <ws2tcpip.h> 


//tag_RecBind
HWND g_hwndWHTJDCNew = nullptr;
//线程函数 单次
void ThreadWHTJDCNew()
{
	//发送消息
	::PostMessage(g_hwndWHTJDCNew,WM_WHTJDC_UPDAFRAME,(WPARAM)g_WHTJDCCmdNum,(LPARAM)0);
	Sleep(50);
	::PostMessage(g_hwndWHTJDCNew,WM_WHTJDC_UPDAFRAME,(WPARAM)g_WHTJDCCmdNum,(LPARAM)1);

}
//线程函数 连续
void ThreadWHTJDCNew2()
{
	do
	{
		::PostMessage(g_hwndWHTJDCNew,WM_WHTJDC_UPDAFRAME,(WPARAM)g_WHTJDCCmdNum,(LPARAM)0);
		Sleep(80);
	}
	while(g_bBindData==true);//按钮抬起,g_bBindData变成fasle,循环结束
	//::PostMessage(g_hwndWHTJDCNew,WM_WHTJDC_UPDAFRAME,(WPARAM)g_WHTJDCCmdNum,(LPARAM)1);
}

IMPLEMENT_DYNAMIC(DlgWHTJDCNew, CDialogEx)

DlgWHTJDCNew::DlgWHTJDCNew(CWnd* pParent /*=NULL*/)
	: CDialogEx(DlgWHTJDCNew::IDD, pParent)
	, m_TarTakTemSizeSetWidth(_T(""))
	, m_TarTakTemSizeSetHigth(_T(""))
	, m_FocalDistanceSet(_T(""))
	, m_DigitalGuidanceDir(_T(""))
	, m_DigitalGuidancePitch(_T(""))
	, m_SCanModelAngle(_T(""))
	, m_SCanModelSpeed(_T(""))
	, m_DirSCanSetCentre(_T(""))
	, m_DirSCanSetRange(_T(""))
	, m_PitchSCanSetCentre(_T(""))
	, m_PitchSCanSetRange(_T(""))
{
	CharacterSuperpositionSet = 0;
	FogThroughMode = 0;
	PseudoColorSwitch = 0;
	FocalDistanceSIZE = 3;
	DirAndPitchCrlSize = 8;
}

DlgWHTJDCNew::~DlgWHTJDCNew()
{
}

void DlgWHTJDCNew::DoDataExchange(CDataExchange* pDX)
{
	CDialogEx::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW, DC13InsBtn[0]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW2, DC13InsBtn[1]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW3, DC13InsBtn[2]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW4, DC13InsBtn[3]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW5, DC13InsBtn[4]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW6, DC13InsBtn[5]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW7, DC13InsBtn[6]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW8, DC13InsBtn[7]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW9, DC13InsBtn[8]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW10, DC13InsBtn[9]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW11, DC13InsBtn[10]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW12, DC13InsBtn[11]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW13, DC13InsBtn[12]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW14, DC13InsBtn[13]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW15, DC13InsBtn[14]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW16, DC13InsBtn[15]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW17, DC13InsBtn[16]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW18, DC13InsBtn[17]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW19, DC13InsBtn[18]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW20, DC13InsBtn[19]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW21, DC13InsBtn[20]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW22, DC13InsBtn[21]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW23, DC13InsBtn[22]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW24, DC13InsBtn[23]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW25, DC13InsBtn[24]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW26, DC13InsBtn[25]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW27, DC13InsBtn[26]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW28, DC13InsBtn[27]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW29, DC13InsBtn[28]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW30, DC13InsBtn[29]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW31, DC13InsBtn[30]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW32, DC13InsBtn[31]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW33, DC13InsBtn[32]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW34, DC13InsBtn[33]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW35, DC13InsBtn[34]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW36, DC13InsBtn[35]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW37, DC13InsBtn[36]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW38, DC13InsBtn[37]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW39, DC13InsBtn[38]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW40, DC13InsBtn[39]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW41, DC13InsBtn[40]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW42, DC13InsBtn[41]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW43, DC13InsBtn[42]);
	DDX_Control(pDX, IDC_BTN_WHTJDC_NEW44, DC13InsBtn[43]);
	//DDX_Text(pDX, IDC_EDIT_Pitch_Param, Param1);

	//DDX_Text(pDX, IDC_EDIT_Dir_Param, Param2);


	DDX_Control(pDX, IDC_BUTTON1, m_DCFlyCmd[0]);//吊舱通道1
	DDX_Control(pDX, IDC_BUTTON2, m_DCFlyCmd[1]);//吊舱通道2
	DDX_Control(pDX, IDC_BUTTON3, m_DCFlyCmd[2]);
	DDX_Control(pDX, IDC_BUTTON4, m_DCFlyCmd[3]);
	DDX_Control(pDX, IDC_BUTTON5, m_DCFlyCmd[4]);
	DDX_Control(pDX, IDC_BUTTON6, m_DCFlyCmd[5]);
	DDX_Control(pDX, IDC_BUTTON7, m_DCFlyCmd[6]);
	DDX_Control(pDX, IDC_BUTTON8, m_DCFlyCmd[7]);
	DDX_Control(pDX, IDC_BUTTON9, m_DCFlyCmd[8]);
	DDX_Control(pDX, IDC_BUTTON10, m_DCFlyCmd[9]);
	DDX_Control(pDX, IDC_BUTTON11, m_DCFlyCmd[10]);
	DDX_Control(pDX, IDC_BUTTON12, m_DCFlyCmd[11]);

	DDX_Text(pDX, IDC_EDIT_WHTD_6, m_TarTakTemSizeSetWidth);
	DDX_Text(pDX, IDC_EDIT_WHTD_7, m_TarTakTemSizeSetHigth);
	DDX_Text(pDX, IDC_EDIT_WHTD_5, m_FocalDistanceSet);
	DDX_Text(pDX, IDC_EDIT_WHTD_3, m_DigitalGuidanceDir);
	DDX_Text(pDX, IDC_EDIT_WHTD_4, m_DigitalGuidancePitch);
	DDX_Text(pDX, IDC_EDIT_WHTD_1, m_SCanModelAngle);
	DDX_Text(pDX, IDC_EDIT_WHTD_2, m_SCanModelSpeed);
	DDX_Text(pDX, IDC_EDIT_WHTD_8, m_DirSCanSetCentre);
	DDX_Text(pDX, IDC_EDIT_WHTD_9, m_DirSCanSetRange);
	DDX_Text(pDX, IDC_EDIT_WHTD_10, m_PitchSCanSetCentre);
	DDX_Text(pDX, IDC_EDIT_WHTD_11, m_PitchSCanSetRange);
}

BOOL DlgWHTJDCNew::OnInitDialog()
{
	CDialogEx::OnInitDialog();
	CenterWindow();

	g_hwndWHTJDCNew = this->GetSafeHwnd();

	CFont m_oFont;//字体
	m_oFont.CreatePointFont(80, _T("Times New Roman"),NULL);
	for(int i = 0;i<44;++i)
	{
		//DC13InsBtn[i].SetTextColor(RGB(255,255,255));
		//DC13InsBtn[i].SetFont(&m_oFont);
		//DC13InsBtn[i].SetFaceColor(RGB(54,54,54),true);
		if(i==0||i==1||i==2||i==3||i==6||i==7||i==29||i==33)
		{
			DC13InsBtn[i].SetTextColor(RGB(0,0,0));
			DC13InsBtn[i].SetFont(&m_oFont);
			DC13InsBtn[i].SetFaceColor(RGB(133,220,49),true);
		}
		else
		{
			DC13InsBtn[i].SetTextColor(RGB(0,0,0));
			DC13InsBtn[i].SetFont(&m_oFont);
			DC13InsBtn[i].SetFaceColor(RGB(204,255,255),true);
		}
	}

	CFont m_font;
	m_font.CreatePointFont(100,_T("宋体"),NULL);
	//CWnd* pWnd = GetDlgItem(IDC_STATIC_PitchAndDir);
	//pWnd->SetFont(&m_font);

	CFont m_font2;
	m_font2.CreatePointFont(120,_T("宋体"),NULL);

	CWnd* pWnd2 = GetDlgItem(IDC_EDIT_WHTD_1);
	pWnd2->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_1)->SetWindowText("100");

	CWnd* pWnd3 = GetDlgItem(IDC_EDIT_WHTD_2);
	pWnd3->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_2)->SetWindowText("5");

	CWnd* pWnd4 = GetDlgItem(IDC_EDIT_WHTD_3);
	pWnd4->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_3)->SetWindowText("0.00");

	CWnd* pWnd5 = GetDlgItem(IDC_EDIT_WHTD_4);
	pWnd5->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_4)->SetWindowText("0.00");

	CWnd* pWnd6 = GetDlgItem(IDC_EDIT_WHTD_5);
	pWnd6->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_5)->SetWindowText("0.0");

	CWnd* pWnd7 = GetDlgItem(IDC_EDIT_WHTD_6);
	pWnd7->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_6)->SetWindowText("0");

	CWnd* pWnd8 = GetDlgItem(IDC_EDIT_WHTD_7);
	pWnd8->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_7)->SetWindowText("0");

	CWnd* pWnd9 = GetDlgItem(IDC_EDIT_WHTD_8);
	pWnd9->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_8)->SetWindowText("0");

	CWnd* pWnd10 = GetDlgItem(IDC_EDIT_WHTD_9);
	pWnd10->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_9)->SetWindowText("100");

	CWnd* pWnd11 = GetDlgItem(IDC_EDIT_WHTD_10);
	pWnd11->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_10)->SetWindowText("-15");

	CWnd* pWnd12 = GetDlgItem(IDC_EDIT_WHTD_11);
	pWnd12->SetFont(&m_font2);
	GetDlgItem(IDC_EDIT_WHTD_11)->SetWindowText("50");

	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->InsertString(0,_TEXT("自定义大小"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->InsertString(1,_TEXT("小模版(16*16)"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->InsertString(2,_TEXT("中模版(32*32)"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->InsertString(3,_TEXT("大模版(64*64)"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->InsertString(4,_TEXT("超大模版(128*128)"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_1))->SetCurSel(0);

	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(0,_TEXT("非常慢"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(1,_TEXT("很慢"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(2,_TEXT("较慢"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(3,_TEXT("慢"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(4,_TEXT("中等"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(5,_TEXT("快"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(6,_TEXT("较快"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(7,_TEXT("很快"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->InsertString(8,_TEXT("非常快"));
	((CComboBox * )GetDlgItem(IDC_COMBO_TJDC_2))->SetCurSel(4);

	for(int i=0;i<12;++i)
	{
		m_DCFlyCmd[i].Cmd=i+1;
		m_DCFlyCmd[i].Cmdpage = 20;//这里的页面标志设置为20
		m_DCFlyCmd[i].SetTextColor(RGB(0,0,0));
		m_DCFlyCmd[i].SetFont(&m_oFont);
		m_DCFlyCmd[i].SetFaceColor(RGB(24,225,255),true);
	}

	memset(TJDCCmdBuffer,0,sizeof(TJDCCmdBuffer));

	return TRUE;
}

BEGIN_MESSAGE_MAP(DlgWHTJDCNew, CDialogEx)
	ON_MESSAGE(WM_WHTJDC_UPDAFRAME, &DlgWHTJDCNew::OnUpdateWHTJDCFrame)
	ON_WM_CTLCOLOR()
	ON_CBN_SELCHANGE(IDC_COMBO_TJDC_2, &DlgWHTJDCNew::OnCbnSelchangeComboTjdc2)
	ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()


// DlgWHTJDCNew 消息处理程序
//接收线程来的消息,处理消息
afx_msg LRESULT DlgWHTJDCNew::OnUpdateWHTJDCFrame(WPARAM wParam, LPARAM lParam)
{
	switch ((int)wParam)
	{
	case 0:
		UpdateFrame();
		break;
	case 2:
		UpdateFrame2();
		break;
	case 3:
		UpdateFrame3();
		break;
	case 4:
		UpdateFrame4();
		break;
	case 5:
		UpdateFrame5((int&)lParam);
		break;
	case 6:
		UpdateFrame6((int&)lParam);
		break;
	case 7:
		UpdateFrame7();
		break;
	case 8:
		UpdateFrame8();
		break;
	case 9:
		UpdateFrame9((int&)lParam);
		break;
	case 10:
		UpdateFrame10((int&)lParam);
		break;
	case 11:
		UpdateFrame11((int&)lParam);
		break;
	case 12:
		UpdateFrame12((int&)lParam);
		break;
	case 13:
		UpdateFrame13((int&)lParam);
		break;
	case 14:
		UpdateFrame14((int&)lParam);
		break;
	case 15:
		UpdateFrame15((int&)lParam);
		break;
	case 16:
		UpdateFrame16((int&)lParam);
		break;
	case 17:
		UpdateFrame17((int&)lParam);
		break;
	case 18:
		UpdateFrame18((int&)lParam);
		break;
	case 19:
		UpdateFrame19((int&)lParam);
		break;
	case 20:
		UpdateFrame20((int&)lParam);
		break;
	case 21:
		UpdateFrame21((int&)lParam);
		break;
	case 22:
		UpdateFrame22((int&)lParam);
		break;
	case 23:
		UpdateFrame23((int&)lParam);
		break;
	case 24:
		UpdateFrame24((int&)lParam);
		break;
	case 25:
		UpdateFrame25((int&)lParam);
		break;
	case 26:
		UpdateFrame26((int&)lParam);
		break;
	case 27:
		UpdateFrame27((int&)lParam);
		break;
	case 28:
		UpdateFrame28((int&)lParam);
		break;
	case 29:
		UpdateFrame29((int&)lParam);
		break;
	case 30:
		UpdateFrame30();
		break;
	case 31:
		UpdateFrame31((int&)lParam);
		break;
	case 32:
		UpdateFrame32((int&)lParam);
		break;
	case 33:
		UpdateFrame33((int&)lParam);
		break;
	case 34:
		UpdateFrame34();
		break;
	case 35:
		UpdateFrame35((int&)lParam);
		break;
	case 36:
		UpdateFrame36((int&)lParam);
		break;
	case 37:
		UpdateFrame37((int&)lParam);
		break;
	case 38:
		UpdateFrame38((int&)lParam);
		break;
	case 39:
		UpdateFrame39((int&)lParam);
		break;
	case 40:
		UpdateFrame40((int&)lParam);
		break;
	case 41:
		UpdateFrame41((int&)lParam);
		break;
	case 43:
		UpdateFrame43((int&)lParam);
		break;
	case 44:
		UpdateFrame44((int&)lParam);
		break;
	case 100:
		UpdateFrame100((int&)lParam);
		break;
	case 101:
		UpdateFrame101((int&)lParam);
		break;
	default:
		break;
	}

	//if((int&)lParam == 0)
	//{
	//	if(g_IsSending){
	//		g_MUDPCamera.SendToY(DCFrameCkCmdWHTJ.Addr(), 20);
	//	}
	//}
	return 0;
}

//更新13所吊舱控制指令 按钮按下,分类进行处理。
//对于重复发送的指令,直接赋值,直至按钮抬起,装订标志变为false,发送停止
//对于只发送一次的指令,开启一个线程,线程中相差100ms发送先后发送赋值和清空操作。赋值期间指令发送(GCSView::Setp函数),清空后指令不再发送。
void DlgWHTJDCNew::UpdateWHTJDCCmdBuffer(HWND hwnd)
{
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW)->m_hWnd)
	{
		g_WHTJDCCmdNum = 0;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW2)->m_hWnd)
	{
		g_WHTJDCCmdNum = 2;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW3)->m_hWnd)
	{
		g_WHTJDCCmdNum = 3;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW4)->m_hWnd)
	{
		g_WHTJDCCmdNum = 4;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW5)->m_hWnd)
	{
		g_WHTJDCCmdNum = 5;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW6)->m_hWnd)
	{
		g_WHTJDCCmdNum = 6;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW7)->m_hWnd)
	{
		g_WHTJDCCmdNum = 7;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW8)->m_hWnd)
	{
		g_WHTJDCCmdNum = 8;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW9)->m_hWnd)
	{
		g_WHTJDCCmdNum = 9;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW10)->m_hWnd)
	{
		g_WHTJDCCmdNum = 10;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW11)->m_hWnd)
	{
		g_WHTJDCCmdNum = 11;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW12)->m_hWnd)
	{
		g_WHTJDCCmdNum = 12;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW13)->m_hWnd)
	{
		g_WHTJDCCmdNum = 13;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW14)->m_hWnd)
	{
		//UpdateFrame14();
		g_WHTJDCCmdNum = 14;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW15)->m_hWnd)
	{
		//UpdateFrame15();
		g_WHTJDCCmdNum = 15;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW16)->m_hWnd)
	{
		g_WHTJDCCmdNum = 16;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW17)->m_hWnd)
	{
		g_WHTJDCCmdNum = 17;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW18)->m_hWnd)
	{
		g_WHTJDCCmdNum = 18;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW19)->m_hWnd)
	{
		g_WHTJDCCmdNum = 19;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW20)->m_hWnd)
	{
		//UpdateFrame20();
		g_WHTJDCCmdNum = 20;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW21)->m_hWnd)
	{
		//UpdateFrame21();
		g_WHTJDCCmdNum = 21;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW22)->m_hWnd)
	{
		g_WHTJDCCmdNum = 22;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW23)->m_hWnd)
	{
		g_WHTJDCCmdNum = 23;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW24)->m_hWnd)
	{
		g_WHTJDCCmdNum = 24;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW25)->m_hWnd)
	{
		g_WHTJDCCmdNum = 25;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW26)->m_hWnd)
	{
		g_WHTJDCCmdNum = 26;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW27)->m_hWnd)
	{
		g_WHTJDCCmdNum = 27;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW28)->m_hWnd)
	{
		g_WHTJDCCmdNum = 28;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW29)->m_hWnd)
	{
		g_WHTJDCCmdNum = 29;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW30)->m_hWnd)
	{
		g_WHTJDCCmdNum = 30;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW31)->m_hWnd)
	{
		g_WHTJDCCmdNum = 31;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW32)->m_hWnd)
	{
		g_WHTJDCCmdNum = 32;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW33)->m_hWnd)
	{
		g_WHTJDCCmdNum = 33;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW34)->m_hWnd)
	{
		g_WHTJDCCmdNum = 34;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew2, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW35)->m_hWnd)
	{
		g_WHTJDCCmdNum = 35;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW36)->m_hWnd)
	{
		g_WHTJDCCmdNum = 36;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW37)->m_hWnd)
	{
		g_WHTJDCCmdNum = 37;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW38)->m_hWnd)
	{
		g_WHTJDCCmdNum = 38;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW39)->m_hWnd)
	{
		g_WHTJDCCmdNum = 39;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW40)->m_hWnd)
	{
		g_WHTJDCCmdNum = 40;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW41)->m_hWnd)
	{
		g_WHTJDCCmdNum = 41;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW43)->m_hWnd)
	{
		g_WHTJDCCmdNum = 43;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
	if(hwnd ==GetDlgItem(IDC_BTN_WHTJDC_NEW44)->m_hWnd)
	{
		g_WHTJDCCmdNum = 44;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
	}
}
void DlgWHTJDCNew::UpdateDataZ70_TJDC()
{
	DCFrameCkCmdWHTJ.Data.fcode=0x70;
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DCtype = TJDCCmdBuffer[0];//0x02
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param = TJDCCmdBuffer[1];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param2 = TJDCCmdBuffer[2];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param3 = TJDCCmdBuffer[3];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param4 = TJDCCmdBuffer[4];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param5 = TJDCCmdBuffer[5];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param6 = TJDCCmdBuffer[6];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param7 = TJDCCmdBuffer[7];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param8 = TJDCCmdBuffer[8];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param9 = TJDCCmdBuffer[9];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param10 = TJDCCmdBuffer[10];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param11 = TJDCCmdBuffer[11];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param12 = TJDCCmdBuffer[12];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param13 = TJDCCmdBuffer[13];
	DCFrameCkCmdWHTJ.Data.dataInject_DC.DC_WHTJ.param14 = TJDCCmdBuffer[14];
	DCFrameCkCmdWHTJ.SendPrepare();

	if(g_IsSending){
		g_MUDPCamera.SendToY(DCFrameCkCmdWHTJ.Addr(), 20);
	}

	//TJDCCmdBuffer清空
	memset(TJDCCmdBuffer,0,sizeof(TJDCCmdBuffer));
	
}
void DlgWHTJDCNew::UpdateFrame()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[6]=0x70;
	TJDCCmdBuffer[7]=0x00;
	TJDCCmdBuffer[8]=0x00;
	TJDCCmdBuffer[9]=DirAndPitchCrlSize;
	TJDCCmdBuffer[10]=DirAndPitchCrlSize>>8;
	UpdateDataZ70_TJDC();
	g_bBindData = true;

}
void DlgWHTJDCNew::UpdateFrame2()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[6]=0x70;
	TJDCCmdBuffer[7]=0x00;
	TJDCCmdBuffer[8]=0x00;
	TJDCCmdBuffer[9]=-DirAndPitchCrlSize;
	TJDCCmdBuffer[10]=-DirAndPitchCrlSize>>8;
	UpdateDataZ70_TJDC();
	g_bBindData = true;

}
void DlgWHTJDCNew::UpdateFrame3()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[6]=0x70;
	TJDCCmdBuffer[7]=-DirAndPitchCrlSize;
	TJDCCmdBuffer[8]=-DirAndPitchCrlSize>>8;
	TJDCCmdBuffer[9]=0x00;
	TJDCCmdBuffer[10]=0x00;
	UpdateDataZ70_TJDC();
	g_bBindData = true;
}
void DlgWHTJDCNew::UpdateFrame4()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[6]=0x70;
	TJDCCmdBuffer[7]=DirAndPitchCrlSize;
	TJDCCmdBuffer[8]=DirAndPitchCrlSize>>8;
	TJDCCmdBuffer[9]=0x00;
	TJDCCmdBuffer[10]=0x00;
	UpdateDataZ70_TJDC();
	g_bBindData = true;
}
void DlgWHTJDCNew::UpdateFrame5(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x71;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame6(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x31;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame7()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[1]=0x45;
	TJDCCmdBuffer[2]=0x03;
	TJDCCmdBuffer[3]=FocalDistanceSIZE;
	UpdateDataZ70_TJDC();
	g_bBindData = true;
}
void DlgWHTJDCNew::UpdateFrame8()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[1]=0x45;
	TJDCCmdBuffer[2]=0x04;
	TJDCCmdBuffer[3]=FocalDistanceSIZE;
	UpdateDataZ70_TJDC();
	g_bBindData = true;
}
void DlgWHTJDCNew::UpdateFrame9(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x3A;
		TJDCCmdBuffer[2]=0x00;
		TJDCCmdBuffer[3]=0x00;
		TJDCCmdBuffer[4]=0x00;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame10(int &sendEnd)
{	
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x32;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame11(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x33;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame12(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x37;
		if(CharacterSuperpositionSet==0){CharacterSuperpositionSet = 1;}
		else if(CharacterSuperpositionSet==1){CharacterSuperpositionSet = 2;}
		else if(CharacterSuperpositionSet==2){CharacterSuperpositionSet = 0;}
		TJDCCmdBuffer[2]=CharacterSuperpositionSet;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame13(int &sendEnd)
{
	if(sendEnd==0)
	{
		SelectPointTrack = true;
		//TJDCCmdBuffer[0]=0x02;
		//TJDCCmdBuffer[1]=0x3A;
		//TJDCCmdBuffer[2]=0x00;
		//TJDCCmdBuffer[3]=0x00;
		//TJDCCmdBuffer[4]=0x00;
		//TJDCCmdBuffer[5]=0x00;
		//UpdateDataZ70_TJDC();
		g_bBindData = true;
		//MessageBox(_T("地面站不支持选点跟踪功能,默认选择图像中心"));
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame13_1()
{
	//x1 m_wndShowEO_Position_Max_x
	//y1 m_wndShowEO_Position_Max_y
	//x2 g_TrackOffset.x
	//y2 g_TrackOffset.y
	//double k1 = (float)1920/1080;
	
	//获取实际图像区域坐标
	//x,y实际图像区域坐标,b:实际图像区域和软件图像区域x方向偏移量,k比例系数
	int x,y,b;
	float k;
	k = 1080/m_wndShowEO_Position_Max_y;
	y = g_TrackOffset.y * k;
	b = 0.5*(m_wndShowEO_Position_Max_x * k-1920);
	x = (g_TrackOffset.x - b) * k;
	if(x<0||x>1920)
	{
		return;
	}
	//转化为吊舱控制指令坐标,中心为零,x范围:[-960,960],y范围:[-540,540];
	int xx = x-960;
	int yy = y-540;
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[1]=0x3A;
	TJDCCmdBuffer[2]=xx;
	TJDCCmdBuffer[3]=xx>>8;
	TJDCCmdBuffer[4]=yy;
	TJDCCmdBuffer[5]=yy>>8;
	UpdateDataZ70_TJDC();
	SelectPointTrack = false;

}
void DlgWHTJDCNew::UpdateFrame14(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x36;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame15(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x3D;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame16(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x34;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame17(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x33;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame18(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x33;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame19(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x3B;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame20(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}

		if(!IsPositiveInteger(m_TarTakTemSizeSetWidth)||!IsPositiveInteger(m_TarTakTemSizeSetHigth))
		{
			MessageBox(_T("请输入一个0-255的正整数!"));
			return;
		}
		int TarTakTemSizeSetWidth,TarTakTemSizeSetHigth;
		TarTakTemSizeSetWidth = _ttoi(m_TarTakTemSizeSetWidth);
		TarTakTemSizeSetHigth = _ttoi(m_TarTakTemSizeSetHigth);
		if(TarTakTemSizeSetWidth<0||TarTakTemSizeSetWidth>255||TarTakTemSizeSetHigth<0||TarTakTemSizeSetHigth>255)
		{
			MessageBox(_T("目标跟踪模板大小设置范围0-255!"));
			return;
		}

		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x23;
		int m_TDFlag = ((CComboBox*)GetDlgItem(IDC_COMBO_TJDC_1))->GetCurSel();//获得IDC_COMBO_TJDC_1按钮的当前选择
		switch (m_TDFlag)
		{
		case 0:
			TJDCCmdBuffer[2]=0x00;
			TJDCCmdBuffer[3]=0;
			TJDCCmdBuffer[4]=TarTakTemSizeSetWidth;
			TJDCCmdBuffer[5]=TarTakTemSizeSetHigth;
			break;
		case 1:
			TJDCCmdBuffer[2]=0x01;
			TJDCCmdBuffer[3]=0;
			TJDCCmdBuffer[4]=0;
			TJDCCmdBuffer[5]=0;
			break;
		case 2:
			TJDCCmdBuffer[2]=0x02;
			TJDCCmdBuffer[3]=0;
			TJDCCmdBuffer[4]=0;
			TJDCCmdBuffer[5]=0;
			break;
		case 3:
			TJDCCmdBuffer[2]=0x03;
			TJDCCmdBuffer[3]=0;
			TJDCCmdBuffer[4]=0;
			TJDCCmdBuffer[5]=0;
			break;
		case 4:
			TJDCCmdBuffer[2]=0x04;
			TJDCCmdBuffer[3]=0;
			TJDCCmdBuffer[4]=0;
			TJDCCmdBuffer[5]=0;
			break;
		default:
			break;
		}
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}

}
void DlgWHTJDCNew::UpdateFrame21(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x38;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame22(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x3E;
		TJDCCmdBuffer[2]=0x02;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame23(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x53;
		TJDCCmdBuffer[2]=0x01;
		if(PseudoColorSwitch==0){PseudoColorSwitch = 1;}
		else if(PseudoColorSwitch==1){PseudoColorSwitch = 2;}
		else if(PseudoColorSwitch==2){PseudoColorSwitch = 3;}
		else if(PseudoColorSwitch==3){PseudoColorSwitch = 4;}
		else if(PseudoColorSwitch==4){PseudoColorSwitch = 5;}
		else if(PseudoColorSwitch==5){PseudoColorSwitch = 6;}
		else if(PseudoColorSwitch==6){PseudoColorSwitch = 7;}
		else if(PseudoColorSwitch==7){PseudoColorSwitch = 8;}
		else if(PseudoColorSwitch==8){PseudoColorSwitch = 9;}
		else if(PseudoColorSwitch==9){PseudoColorSwitch = 10;}
		else if(PseudoColorSwitch==10){PseudoColorSwitch = 0;}
		TJDCCmdBuffer[3]=PseudoColorSwitch;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame24(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x56;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame25(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x54;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame26(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x57;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame27(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x79;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame28(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x73;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame29(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x3F;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame30()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[1]=0x45;
	TJDCCmdBuffer[2]=0x01;
	TJDCCmdBuffer[3]=FocalDistanceSIZE;
	UpdateDataZ70_TJDC();
	g_bBindData = true;

}
void DlgWHTJDCNew::UpdateFrame31(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x4A;
		if(FogThroughMode==0){FogThroughMode = 1;}
		else if(FogThroughMode==1){FogThroughMode = 2;}
		else if(FogThroughMode==2){FogThroughMode = 0;}
		TJDCCmdBuffer[2]=FogThroughMode;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame32(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x75;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame33(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x7B;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame34()
{
	TJDCCmdBuffer[0]=0x02;
	TJDCCmdBuffer[1]=0x45;
	TJDCCmdBuffer[2]=0x02;
	TJDCCmdBuffer[3]=FocalDistanceSIZE;
	UpdateDataZ70_TJDC();
	g_bBindData = true;
}
void DlgWHTJDCNew::UpdateFrame35(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x4B;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame36(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}
		if(!IsPositiveNumber(m_FocalDistanceSet))
		{
			MessageBox(_T("请输入[4.3,129.0]之间的正数"));
			return;
		}
		float FocalDistanceSet;
		FocalDistanceSet = _ttof(m_FocalDistanceSet);
		if(FocalDistanceSet<0.0||FocalDistanceSet>129.0)
		{
			MessageBox("焦距设置有效范围[4.3,129.0]");
			return;
		}
		UINT16 UINT16FocalDistanceSet;
		UINT16FocalDistanceSet = (UINT16)(FocalDistanceSet*10);

		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x4C;
		TJDCCmdBuffer[2]=UINT16FocalDistanceSet;
		TJDCCmdBuffer[3]=UINT16FocalDistanceSet>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame37(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x74;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame38(int &sendEnd)
{
	if(sendEnd==0)
	{
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x7A;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame39(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}

		if(!IsNumber(m_DigitalGuidanceDir)||!IsNumber(m_DigitalGuidancePitch))
		{
			MessageBox(_T("请输入数字!"));
			return;
		}
		float DigitalGuidanceDir,DigitalGuidancePitch;
		DigitalGuidanceDir = _ttof(m_DigitalGuidanceDir);
		DigitalGuidancePitch = _ttof(m_DigitalGuidancePitch);
		if(DigitalGuidanceDir<-180||DigitalGuidanceDir>180)
		{
			MessageBox(_T("数字导引方位设置范围[-180.00,180.00]"));
			return;
		}
		if(DigitalGuidancePitch<-120||DigitalGuidancePitch>90)
		{
			MessageBox(_T("数字导引俯仰设置范围[-120.00,90.00]"));
			return;
		}
		INT16 UINT16DigitalGuidanceDir,UINT16DigitalGuidancePitch;
		UINT16DigitalGuidanceDir = (INT16)(DigitalGuidanceDir*100);
		UINT16DigitalGuidancePitch = (INT16)(DigitalGuidancePitch*100);

		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x72;
		TJDCCmdBuffer[2]=UINT16DigitalGuidanceDir;
		TJDCCmdBuffer[3]=UINT16DigitalGuidanceDir>>8;
		TJDCCmdBuffer[4]=UINT16DigitalGuidancePitch;
		TJDCCmdBuffer[5]=UINT16DigitalGuidancePitch>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame40(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}
		if(!IsPositiveInteger(m_SCanModelSpeed)||!IsPositiveInteger(m_SCanModelAngle))
		{
			MessageBox(_T("请输入正整数!"));
			return;
		}
		INT16 SCanModelSpeed,SCanModelAngle;
		SCanModelSpeed = _ttoi(m_SCanModelSpeed);
		SCanModelAngle = _ttoi(m_SCanModelAngle);
		if(SCanModelAngle<0||SCanModelAngle>180)
		{
			MessageBox(_T("扫描角度设置范围0-180!"));
			return;
		}
		if(SCanModelSpeed<0||SCanModelSpeed>100)
		{
			MessageBox(_T("扫描速度设置范围0-100!"));
			return;
		}
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x79;
		TJDCCmdBuffer[2]=SCanModelAngle;
		TJDCCmdBuffer[3]=SCanModelAngle>>8;
		TJDCCmdBuffer[4]=SCanModelSpeed;
		TJDCCmdBuffer[5]=SCanModelSpeed>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame41(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}

		if(!IsNumber(m_DigitalGuidanceDir)||!IsNumber(m_DigitalGuidancePitch))
		{
			MessageBox(_T("请输入数字!"));
			return;
		}
		float DigitalGuidanceDir,DigitalGuidancePitch;
		DigitalGuidanceDir = _ttof(m_DigitalGuidanceDir);
		DigitalGuidancePitch = _ttof(m_DigitalGuidancePitch);
		if(DigitalGuidanceDir<-180||DigitalGuidanceDir>180)
		{
			MessageBox(_T("姿态指引方位设置范围[-180.00,180.00]"));
			return;
		}
		if(DigitalGuidancePitch<-120||DigitalGuidancePitch>90)
		{
			MessageBox(_T("姿态指引俯仰设置范围[-120.00,90.00]"));
			return;
		}
		INT16 UINT16DigitalGuidanceDir,UINT16DigitalGuidancePitch;
		UINT16DigitalGuidanceDir = (INT16)(DigitalGuidanceDir*100);
		UINT16DigitalGuidancePitch = (INT16)(DigitalGuidancePitch*100);

		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x7C;
		TJDCCmdBuffer[2]=UINT16DigitalGuidanceDir;
		TJDCCmdBuffer[3]=UINT16DigitalGuidanceDir>>8;
		TJDCCmdBuffer[4]=UINT16DigitalGuidancePitch;
		TJDCCmdBuffer[5]=UINT16DigitalGuidancePitch>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame43(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}
		if(!IsPositiveInteger(m_DirSCanSetCentre)||!IsPositiveInteger(m_DirSCanSetRange))
		{
			MessageBox(_T("请输入正整数!"));
			return;
		}
		INT16 DirSCanSetCentre,DirSCanSetRange;
		DirSCanSetCentre = _ttoi(m_DirSCanSetCentre);
		DirSCanSetRange = _ttoi(m_DirSCanSetRange);
		if(DirSCanSetCentre<0||DirSCanSetCentre>360)
		{
			MessageBox(_T("方位扫描中心点设置范围0-360!"));
			return;
		}
		if(DirSCanSetRange<0||DirSCanSetRange>180)
		{
			MessageBox(_T("方位扫描范围设置范围0-180!"));
			return;
		}
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x77;
		TJDCCmdBuffer[2]=DirSCanSetCentre;
		TJDCCmdBuffer[3]=DirSCanSetCentre>>8;
		TJDCCmdBuffer[4]=DirSCanSetRange;
		TJDCCmdBuffer[5]=DirSCanSetRange>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
void DlgWHTJDCNew::UpdateFrame44(int &sendEnd)
{
	if(sendEnd==0)
	{
		if(!UpdateData(TRUE))//更新对话框对应的变量内容
		{
			MessageBox(_T("请输入正确数据!!!"));
			return;
		}
		if(!IsInteger(m_PitchSCanSetCentre))
		{
			MessageBox(_T("俯仰扫描中心点设置为整数!"));
			return;
		}
		if(!IsPositiveInteger(m_PitchSCanSetRange))
		{
			MessageBox(_T("俯仰扫描范围设置为正整数!"));
			return;
		}
		INT16 PitchSCanSetCentre,PitchSCanSetRange;
		PitchSCanSetCentre = _ttoi(m_PitchSCanSetCentre);
		PitchSCanSetRange = _ttoi(m_PitchSCanSetRange);
		if(PitchSCanSetCentre<-180||PitchSCanSetCentre>180)
		{
			MessageBox(_T("俯仰扫描中心点设置范围-180-180!"));
			return;
		}
		if(PitchSCanSetRange<0||PitchSCanSetRange>180)
		{
			MessageBox(_T("俯仰扫描范围设置范围0-180!"));
			return;
		}
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x78;
		TJDCCmdBuffer[2]=PitchSCanSetCentre;
		TJDCCmdBuffer[3]=PitchSCanSetCentre>>8;
		TJDCCmdBuffer[4]=PitchSCanSetRange;
		TJDCCmdBuffer[5]=PitchSCanSetRange>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}


void DlgWHTJDCNew::UpdateFrame100(int &sendEnd)
{
	UpdateFrame28(sendEnd);//垂直下视
}
void DlgWHTJDCNew::UpdateFrame101(int &sendEnd)
{
	if(sendEnd==0)
	{
		//吊舱朝前
		INT16 CmdDir,CmdPitch;
		CmdDir = 0x0000;
		CmdPitch = 0x0000;
		TJDCCmdBuffer[0]=0x02;
		TJDCCmdBuffer[1]=0x72;
		TJDCCmdBuffer[2]=CmdDir;
		TJDCCmdBuffer[3]=CmdDir>>8;
		TJDCCmdBuffer[4]=CmdPitch;
		TJDCCmdBuffer[5]=CmdPitch>>8;
		UpdateDataZ70_TJDC();
		g_bBindData = true;
	}
	else
	{
		g_bBindData = false;
	}
}
//0:UpdateFrame101
//1:UpdateFrame100
//2:UpdateFrame13_1
void DlgWHTJDCNew::UpdateTJDCAction(int num)
{	
	switch(num)
	{
	case 0:
		g_WHTJDCCmdNum = 100;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
		break;
	case 1:
		g_WHTJDCCmdNum = 101;
		hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadWHTJDCNew, NULL, 0, &ThreadCheckIDRegion);//开启线程
		CloseHandle(hCheckThread);
		break;
	case 2:
		UpdateFrame13_1();
		break;
	default:
		break;
	}
}


//按钮按下、抬起触发此函数
BOOL DlgWHTJDCNew::PreTranslateMessage(MSG* pMsg)
{
	if(g_IsSending)
	{	
		// TODO: 在此添加专用代码和/或调用基类
		if(pMsg->message == WM_LBUTTONDOWN)//按下
		{
			UpdateWHTJDCCmdBuffer(pMsg->hwnd);
		}
		if(pMsg->message == WM_LBUTTONUP)//抬起
		{
			g_bBindData = false;//装订标志变成false

			//if(!gCurGCSCtrlFlag)
			//{
			//	if(gComFlags.test(11))//((gCommuFlags & 0x0800) != 0x00) )
			//	{
			//		g_DC13FrameCkCmd = g_FrameFKU;
			//		g_UDPACmdSwi.WriteBuffer(g_DC13FrameCkCmd.Addr(),g_DC13FrameCkCmd.GetFrameLength());//写从控指令转发网口

			//	}
			//}


		}
	}

	return CDialogEx::PreTranslateMessage(pMsg);
}
//伺服控制步长选择
void DlgWHTJDCNew::OnCbnSelchangeComboTjdc2()
{
	// TODO: 在此添加控件通知处理程序代码
	int m_TDFlag = ((CComboBox*)GetDlgItem(IDC_COMBO_TJDC_2))->GetCurSel();//获得IDC_COMBO_TJDC_1按钮的当前选择
	switch(m_TDFlag)
	{
	case 0:
		DirAndPitchCrlSize = 1;
		break;
	case 1:
		DirAndPitchCrlSize = 2;
		break;	
	case 2:
		DirAndPitchCrlSize = 4;
		break;	
	case 3:
		DirAndPitchCrlSize = 6;
		break;
	case 4:
		DirAndPitchCrlSize = 8;
		break;
	case 5:
		DirAndPitchCrlSize = 10;
		break;	
	case 6:
		DirAndPitchCrlSize = 12;
		break;	
	case 7:
		DirAndPitchCrlSize = 14;
		break;
	case 8:
		DirAndPitchCrlSize = 16;
		break;
	default:
		DirAndPitchCrlSize = 8;
		break;
	}
}


void DlgWHTJDCNew::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	if(SelectPointTrack)
	{
		CPoint point_g;
		GetCursorPos(&point_g);
		SelectPointTrack = false;
	}
	CDialogEx::OnLButtonDown(nFlags, point);
}