diff --git a/.gitignore b/.gitignore
index 742e971..766e31c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,10 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
+##
+## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
+*.rsuser
*.suo
*.user
*.userosscache
@@ -10,48 +13,68 @@
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
+# Mono auto generated files
+mono_crash.*
+
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
-[Xx]64/
-[Xx]86/
-[Bb]uild/
+x64/
+x86/
+[Aa][Rr][Mm]/
+[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
+[Ll]og/
+
-# Visual Studio 2015 cache/options directory
+# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
+# Visual Studio 2017 auto generated files
+Generated\ Files/
+
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
-# NUNIT
+# NUnit
*.VisualState.xml
TestResult.xml
+nunit-*.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
-# DNX
+# Benchmark Results
+BenchmarkDotNet.Artifacts/
+
+# .NET Core
project.lock.json
+project.fragment.lock.json
artifacts/
+# StyleCop
+StyleCopReport.xml
+
+# Files built by Visual Studio
*_i.c
*_p.c
-*_i.h
+*_h.h
*.ilk
*.meta
*.obj
+*.iobj
*.pch
*.pdb
+*.ipdb
*.pgc
*.pgd
*.rsp
@@ -61,6 +84,7 @@ artifacts/
*.tlh
*.tmp
*.tmp_proj
+*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
@@ -81,6 +105,7 @@ ipch/
*.sdf
*.cachefile
*.VC.db
+*.VC.VC.opendb
# Visual Studio profiler
*.psess
@@ -88,6 +113,9 @@ ipch/
*.vspx
*.sap
+# Visual Studio Trace Files
+*.e2e
+
# TFS 2012 Local Workspace
$tf/
@@ -108,6 +136,14 @@ _TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
+# AxoCover is a Code Coverage Tool
+.axoCover/*
+!.axoCover/settings.json
+
+# Visual Studio code coverage results
+*.coverage
+*.coveragexml
+
# NCrunch
_NCrunch_*
.*crunch*.local.xml
@@ -139,22 +175,27 @@ publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
-
-# TODO: Un-comment the next line if you do not want to checkin
-# your web deploy settings because they may include unencrypted
-# passwords
-#*.pubxml
+# Note: Comment the next line if you want to checkin your web deploy settings,
+# but database connection strings (with potential passwords) will be unencrypted
+*.pubxml
*.publishproj
+# Microsoft Azure Web App publish settings. Comment the next line if you want to
+# checkin your Azure Web App publish settings, but sensitive information contained
+# in these scripts will be unencrypted
+PublishScripts/
+
# NuGet Packages
*.nupkg
+# NuGet Symbol Packages
+*.snupkg
# The packages folder can be ignored because of Package Restore
-**/packages/*
+**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
-!**/packages/build/
+!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
-#!**/packages/repositories.config
-# NuGet v3's project.json files produces more ignoreable files
+#!**/[Pp]ackages/repositories.config
+# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
@@ -166,28 +207,40 @@ csx/
ecf/
rcf/
-# Windows Store app package directory
+# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
+Package.StoreAssociation.xml
+_pkginfo.txt
+*.appx
+*.appxbundle
+*.appxupload
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
-!*.[Cc]ache/
+!?*.[Cc]ache/
# Others
ClientBin/
-[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
+*.jfm
*.pfx
*.publishsettings
-node_modules/
orleans.codegen.cs
+# Including strong name files can present a security risk
+# (https://github.com/github/gitignore/pull/2483#issue-259490424)
+#*.snk
+
+# Since there are multiple workflows, uncomment next line to ignore bower_components
+# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
+#bower_components/
+
# RIA/Silverlight projects
Generated_Code/
@@ -198,15 +251,22 @@ _UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
+ServiceFabricBackup/
+*.rptproj.bak
# SQL Server files
*.mdf
*.ldf
+*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
+*.rptproj.rsuser
+*- [Bb]ackup.rdl
+*- [Bb]ackup ([0-9]).rdl
+*- [Bb]ackup ([0-9][0-9]).rdl
# Microsoft Fakes
FakesAssemblies/
@@ -216,6 +276,7 @@ FakesAssemblies/
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
+node_modules/
# Visual Studio 6 build log
*.plg
@@ -223,6 +284,9 @@ FakesAssemblies/
# Visual Studio 6 workspace options file
*.opt
+# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
+*.vbw
+
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
@@ -231,20 +295,71 @@ FakesAssemblies/
**/*.Server/ModelManifest.xml
_Pvt_Extensions
-# LightSwitch generated files
-GeneratedArtifacts/
-ModelManifest.xml
-
# Paket dependency manager
.paket/paket.exe
+paket-files/
# FAKE - F# Make
.fake/
-#klocwork
-.klocwork/
-#GIS
-GISControlDlg20140626/
-.cpptest/
-.parasoft
-.parasoft.dat/
+# CodeRush personal settings
+.cr/personal
+
+# Python Tools for Visual Studio (PTVS)
+__pycache__/
+*.pyc
+
+# Cake - Uncomment if you are using it
+# tools/**
+# !tools/packages.config
+
+# Tabs Studio
+*.tss
+
+# Telerik's JustMock configuration file
+*.jmconfig
+
+# BizTalk build output
+*.btp.cs
+*.btm.cs
+*.odx.cs
+*.xsd.cs
+
+# OpenCover UI analysis results
+OpenCover/
+
+# Azure Stream Analytics local run output
+ASALocalRun/
+
+# MSBuild Binary and Structured Log
+*.binlog
+
+# NVidia Nsight GPU debugger configuration file
+*.nvuser
+
+# MFractors (Xamarin productivity tool) working folder
+.mfractor/
+
+# Local History for Visual Studio
+.localhistory/
+
+# BeatPulse healthcheck temp database
+healthchecksdb
+
+# Backup folder for Package Reference Convert tool in Visual Studio 2017
+MigrationBackup/
+
+# Ionide (cross platform F# VS Code tools) working folder
+.ionide/
+
+# The folders defined by Robin to be ignored
+Bin/
+Lib/
+Src/Debug/
+Src/Release/
+Src/FH98ViewOnPlane_Setup/
+Src/ipch/
+Src/XtremeToolKitPro/
+Src/JoyStick/
+Src/QB_ImgProcessFun/
+Src/QB_ImgShowBase/
\ No newline at end of file
diff --git a/Lib/Decoder_H264_ALLD.lib b/Lib/Decoder_H264_ALLD.lib
index a261865..065fdc5 100644
Binary files a/Lib/Decoder_H264_ALLD.lib and b/Lib/Decoder_H264_ALLD.lib differ
diff --git a/Lib/Decoder_H264_ALLR.lib b/Lib/Decoder_H264_ALLR.lib
index b45e06e..e619bc5 100644
Binary files a/Lib/Decoder_H264_ALLR.lib and b/Lib/Decoder_H264_ALLR.lib differ
diff --git a/Src/CH91PayloadSoftware.sln b/Src/CH91PayloadSoftware.sln
index 1ca0bcd..318d72c 100644
--- a/Src/CH91PayloadSoftware.sln
+++ b/Src/CH91PayloadSoftware.sln
@@ -1,6 +1,8 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.9.34728.123
+MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CH91PayloadSoftware", "CH91PayloadSoftware\CH91PayloadSoftware.vcxproj", "{89E02284-2466-4FFA-B5D4-12173645A4F1}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Decoder_H264_ALL", "Decoder_H264_ALL\Decoder_H264_ALL.vcxproj", "{5756743E-2CA9-41B7-A71D-0A4044E2F1A0}"
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftware.rc b/Src/CH91PayloadSoftware/CH91PayloadSoftware.rc
index 4063695..37da237 100644
Binary files a/Src/CH91PayloadSoftware/CH91PayloadSoftware.rc and b/Src/CH91PayloadSoftware/CH91PayloadSoftware.rc differ
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftware.sln b/Src/CH91PayloadSoftware/CH91PayloadSoftware.sln
new file mode 100644
index 0000000..3619ff7
--- /dev/null
+++ b/Src/CH91PayloadSoftware/CH91PayloadSoftware.sln
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CH91PayloadSoftware", "CH91PayloadSoftware.vcxproj", "{89E02284-2466-4FFA-B5D4-12173645A4F1}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {89E02284-2466-4FFA-B5D4-12173645A4F1}.Debug|Win32.ActiveCfg = Debug|Win32
+ {89E02284-2466-4FFA-B5D4-12173645A4F1}.Debug|Win32.Build.0 = Debug|Win32
+ {89E02284-2466-4FFA-B5D4-12173645A4F1}.Release|Win32.ActiveCfg = Release|Win32
+ {89E02284-2466-4FFA-B5D4-12173645A4F1}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj b/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj
index c0148c3..3061e0d 100644
--- a/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj
+++ b/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj
@@ -49,15 +49,15 @@
true
..\..\Bin\
$(Configuration)\
- E:\FH-98机载相机监控软件2023\ProgramFiles\boost_1_56;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\include;E:\FH-98机载相机监控软件2023\ProgramFiles\gdal\include;$(IncludePath)
- C:\ProgramFiles\boost_1_56\stage\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\boost_1_56\stage\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;$(LibraryPath)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\boost_1_56;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\include;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\include;$(IncludePath)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\boost_1_56\stage\lib;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;$(LibraryPath)
false
..\..\Bin\
..\..\Bin\
- C:\ProgramFiles\boost_1_56;E:\FH-98机载相机监控软件2023\ProgramFiles\boost_1_56;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\include\opencv;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\include\opencv2;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\include;E:\FH-98机载相机监控软件2023\ProgramFiles\gdal\include;$(IncludePath)
- C:\ProgramFiles\boost_1_56\stage\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\boost_1_56\stage\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;E:\FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;$(LibraryPath)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\boost_1_56;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\include\opencv;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\include\opencv2;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\include;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\include;$(IncludePath)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\boost_1_56\stage\lib;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;$(LibraryPath)
FH98PayloadOnBoard
@@ -67,14 +67,14 @@
Disabled
WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)
Async
- ..\..\Include;..\XtremeToolKitPro;C:\ProgramFiles\gdal\include;C:\ProgramFiles\opencv245\include;%(AdditionalIncludeDirectories)
+ ..\..\Include;..\XtremeToolKitPro;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\include;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\include;%(AdditionalIncludeDirectories)
Windows
true
QB_SimpleImgShowD.lib;QB_GoogleMapOperateD.lib;MapPrj.lib;QB_ImgShowBaseD.lib;QB_ImgProcessFunD.lib;QB_AutoMapD.lib;OIS_static_d.lib;Decoder_H264_ALLD.lib;%(AdditionalDependencies)
$(OutDir)$(TargetName)$(TargetExt)
- C:\ProgramFiles\opencv245\lib\x86;C:\ProgramFiles\gdal\lib;%(AdditionalLibraryDirectories)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;%(AdditionalLibraryDirectories)
false
@@ -104,7 +104,7 @@
true
true
QB_SimpleImgShow.lib;QB_GoogleMapOperate.lib;MapPrj.lib;QB_ImgShowBase.lib;QB_AutoMap.lib;QB_ImgProcessFun.lib;OIS_static.lib;Decoder_H264_ALLR.lib;%(AdditionalDependencies)
- C:\ProgramFiles\gdal\lib;C:\ProgramFiles\opencv245\lib\x86;%(AdditionalLibraryDirectories)
+ C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\gdal\lib;C:\1、Htsdfp\2、GCS\3、FH-98机载相机监控软件2023\ProgramFiles\opencv245\lib\x86;%(AdditionalLibraryDirectories)
false
@@ -180,9 +180,14 @@
+
+
+
+
+
@@ -233,8 +238,12 @@
+
+
+
+
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj.filters b/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj.filters
index 5c51045..3a99993 100644
--- a/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj.filters
+++ b/Src/CH91PayloadSoftware/CH91PayloadSoftware.vcxproj.filters
@@ -94,6 +94,9 @@
{8eb1f68d-8c2d-485d-b3bd-9859d81467d5}
+
+ {be9a2dce-ba4c-44fd-9db6-fefe7b53caa0}
+
@@ -384,6 +387,21 @@
IMP\协议
+
+ CYH新增
+
+
+ CYH新增
+
+
+ CYH新增
+
+
+ CYH新增
+
+
+ CYH新增
+
@@ -509,6 +527,18 @@
IMP\协议
+
+ CYH新增
+
+
+ CYH新增
+
+
+ CYH新增
+
+
+ CYH新增
+
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.cpp b/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.cpp
index 002d511..79843db 100644
--- a/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.cpp
+++ b/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.cpp
@@ -10,6 +10,7 @@
#include "GlobalMember.h"
#include "GetElevation.h"
#include
+
using namespace cv;
#ifdef _DEBUG
@@ -80,9 +81,9 @@ CCH91PayloadSoftwareDlg::CCH91PayloadSoftwareDlg(CWnd* pParent /*=NULL*/)
g_bMapDirectGuide = FALSE; // Ƿǵͼֱӵ־
- p_DlgCameraCtrl = NULL;
+ p_DlgCameraCtrl = NULL;//տҳ
g_DlgIMP = NULL;//IMPԻʼָ
-
+ p_Dlg13InstituteDCNewCtrl = NULL;//13¿Ʒҳ
}
void CCH91PayloadSoftwareDlg::DoDataExchange(CDataExchange* pDX)
@@ -376,16 +377,30 @@ void CCH91PayloadSoftwareDlg::OnInitControlDlg()
}
m_CControlDlgFH96Page1Dlg->MoveWindow(&rc_ControlInstruction);
m_CControlDlgFH96Page1Dlg->ShowWindow(SW_SHOW);*/
-
+
+ /**************ԭտҳ***********/
p_DlgCameraCtrl = new CDlgCameraCtrl();
if (p_DlgCameraCtrl != NULL)
{
p_DlgCameraCtrl->Create(IDD_DLG_CAMERA_CTRL, this);
}
+
p_DlgCameraCtrl->MoveWindow(&rc_ControlInstruction);
- p_DlgCameraCtrl->ShowWindow(SW_SHOW);
+ //p_DlgCameraCtrl->ShowWindow(SW_SHOW);
+ p_DlgCameraCtrl->ShowWindow(SW_HIDE);
+ /*************ԭտҳ************/
+ /**********13װָҳ**********/
+ p_Dlg13InstituteDCNewCtrl = new Dlg13InstituteDCNew();
+ if (p_Dlg13InstituteDCNewCtrl != NULL)
+ {
+ p_Dlg13InstituteDCNewCtrl->Create(IDD_DIALOG_DC_13INSTITUTE_NEW, this);
+ }
+ p_Dlg13InstituteDCNewCtrl->MoveWindow(&rc_ControlInstruction);
+ p_Dlg13InstituteDCNewCtrl->ShowWindow(SW_HIDE);
+ /**********13װָҳ**********/
+
/***********IMP************/
CRect rc_ControlInstructionIMP;
GetDlgItem(IDC_STATIC_CONTROLINSTRUCTION_IMP)->GetWindowRect(rc_ControlInstructionIMP);
@@ -397,7 +412,8 @@ void CCH91PayloadSoftwareDlg::OnInitControlDlg()
g_DlgIMP->Create(IDD_DLG_IMP, this);
}
g_DlgIMP->MoveWindow(&rc_ControlInstructionIMP);
- g_DlgIMP->ShowWindow(SW_SHOW);
+ //g_DlgIMP->ShowWindow(SW_SHOW);
+ g_DlgIMP->ShowWindow(SW_HIDE);
if(g_DlgIMP->IsWindowVisible())
{
IMPDlgWindowVisible=true;
@@ -406,6 +422,17 @@ void CCH91PayloadSoftwareDlg::OnInitControlDlg()
{
IMPDlgWindowVisible=false;
}
+ /***********IMP************/
+
+ /**********װָҳ**********/
+ p_DlgDCOverroll = new DCOverrollDlg();
+ if(p_DlgDCOverroll != NULL)
+ {
+ p_DlgDCOverroll->Create(IDD_DIALOG_DC,this);
+ }
+ p_DlgDCOverroll->MoveWindow(&rc_ControlInstruction);
+ p_DlgDCOverroll->ShowWindow(SW_SHOW);
+ /**********װָҳ**********/
}
// Խгʼ
@@ -450,6 +477,9 @@ void CCH91PayloadSoftwareDlg::OnInitCH96Decoder()
GetDlgItem(IDC_STATIC_EO_REGION)->GetWindowRect(&rect);
ScreenToClient(&rect);
+ m_wndShowEO_Position_Max_x = rect.right - rect.left; //ͼʾֵx
+ m_wndShowEO_Position_Max_y = rect.bottom - rect.top; //ͼʾֵy
+
m_wndShowEO->MoveWnd(rect);
m_wndShowEO->ShowWnd(SW_SHOW);
m_wndShowEO->SetCallBackFun(GetEOImgCenterOffset);
@@ -607,12 +637,19 @@ void CCH91PayloadSoftwareDlg::OnDestroy()
}
// жƵ
m_JoyKeybord.OnDestoryJoyKeybord();
-
+
+ //տҳ
if(p_DlgCameraCtrl)
{
delete p_DlgCameraCtrl;
p_DlgCameraCtrl = NULL;
}
+ //13¿Ʒҳ
+ if(p_Dlg13InstituteDCNewCtrl)
+ {
+ delete p_Dlg13InstituteDCNewCtrl;
+ p_Dlg13InstituteDCNewCtrl = NULL;
+ }
// жIMPԻ
if(g_DlgIMP !=NULL)
{
diff --git a/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.h b/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.h
index a3d38f0..a554a17 100644
--- a/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.h
+++ b/Src/CH91PayloadSoftware/CH91PayloadSoftwareDlg.h
@@ -22,6 +22,8 @@
#include "afxcmn.h"
#include "DlgCameraCtrl.h"
#include "DlgIMP.h"
+#include "Dlg13InstituteDCNew.h"
+#include "DCOverrollDlg.h"
//#include "FrameIMP_DOWN.h"
// CCH91PayloadSoftwareDlg Ի
@@ -169,7 +171,9 @@ private:
CUDPSocket m_UdpSend2Payload;
bool m_bCreatUDP;
//CControlDlgFH96Page1* m_CControlDlgFH96Page1Dlg;
- CDlgCameraCtrl * p_DlgCameraCtrl;
+ CDlgCameraCtrl * p_DlgCameraCtrl;//տҳ
+ Dlg13InstituteDCNew * p_Dlg13InstituteDCNewCtrl;//13¿Ʒҳ
+ DCOverrollDlg *p_DlgDCOverroll;//տҳ
public:
afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
diff --git a/Src/CH91PayloadSoftware/CMDBtn.cpp b/Src/CH91PayloadSoftware/CMDBtn.cpp
index e4cb732..cd4bd4a 100644
--- a/Src/CH91PayloadSoftware/CMDBtn.cpp
+++ b/Src/CH91PayloadSoftware/CMDBtn.cpp
@@ -12,9 +12,10 @@ static char THIS_FILE[] = __FILE__;
CCMDBtn::CCMDBtn(void)
{
Cmd = 0x00;
+ Cmdpage = 0;
}
-BEGIN_MESSAGE_MAP(CCMDBtn, CButton)
+BEGIN_MESSAGE_MAP(CCMDBtn, CMFCButton)
//{{AFX_MSG_MAP(CMCBtn)
ON_WM_LBUTTONUP()
ON_WM_LBUTTONDOWN()
@@ -36,9 +37,53 @@ void CCMDBtn::OnLButtonUp( UINT nFlags, CPoint point )
void CCMDBtn::OnLButtonDown( UINT nFlags, CPoint point )
{
- g_FrameCamera.ckCmd = Cmd;
+ BYTE byFcCmd;
+ byFcCmd = GetFcCmdFromPane( Cmdpage, Cmd );
+ g_FrameCamera.ckCmd = byFcCmd;
g_FrameCamera.SendPrepare();
if(g_IsSending)
g_MUDPCamera.SendToY(g_FrameCamera.Addr(),8);
CButton::OnLButtonDown( nFlags, point );
+}
+BYTE CCMDBtn::GetFcCmdFromPane( int page, BYTE cmd )
+{
+ BYTE B;
+ /*Ƶָ-֮տҳ*/
+ if( page == 20)
+ {
+ switch ( cmd )
+ {
+ case 1:
+ B = 0xC4; break;//2M
+ case 2:
+ B = 0xC5; break;//4M
+ case 3:
+ B = 0xC6; break;//ͨ1
+ case 4:
+ B = 0xC7; break;//ͨ2
+ case 5:
+ B = 0xC8; break;//0-3ƴͼ
+ case 6:
+ B = 0xC9; break;//4-6ƴͼ
+ case 7:
+ B = 0xCB; break;//¼
+ case 8:
+ B = 0xCC; break;//ֹͣ¼
+ case 9:
+ B = 0xCD; break;//
+ case 10:
+ B = 0xC0; break;//L/SPI
+ case 11:
+ B = 0xC1; break;//ͨ/
+ case 12:
+ B = 0xC2; break;//˫·/·
+ default:
+ B = 0x00; break;
+ }
+ }
+ else if(page==0)
+ {
+
+ }
+ return B;
}
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/CMDBtn.h b/Src/CH91PayloadSoftware/CMDBtn.h
index 50af3c5..e583012 100644
--- a/Src/CH91PayloadSoftware/CMDBtn.h
+++ b/Src/CH91PayloadSoftware/CMDBtn.h
@@ -5,11 +5,12 @@
#pragma once
#endif // _MSC_VER > 1000
-class CCMDBtn : public CButton
+class CCMDBtn : public CMFCButton
{
public:
CCMDBtn();
BYTE Cmd;
+ int Cmdpage;
virtual ~CCMDBtn();
protected:
//{{AFX_MSG(CMCBtn)
@@ -18,5 +19,7 @@ protected:
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
+public:
+ BYTE GetFcCmdFromPane(int page,BYTE cmd);
};
#endif // !defined(AFX_XPBTN_H__1806C3A3_0278_4B10_A383_905233E78AD1__INCLUDED_)
diff --git a/Src/CH91PayloadSoftware/CYHMudpSend.cpp b/Src/CH91PayloadSoftware/CYHMudpSend.cpp
new file mode 100644
index 0000000..60b240d
--- /dev/null
+++ b/Src/CH91PayloadSoftware/CYHMudpSend.cpp
@@ -0,0 +1,34 @@
+#include "StdAfx.h"
+#include "CYHMudpSend.h"
+/*鲥*/
+CYHMudpSend::CYHMudpSend()
+{
+
+}
+CYHMudpSend::~CYHMudpSend()
+{
+
+}
+
+
+bool CYHMudpSend::initMUDP(const char *IP,u_short Port)
+{
+ WSAStartup(MAKEWORD(2, 2), &wsaData);
+ sock = socket(AF_INET, SOCK_DGRAM, 0);
+ n = 0;
+ setsockopt(sock, IPPROTO_IP, IP_MULTICAST_TTL, (char*)&n, sizeof(n));
+
+ addr.sin_addr.S_un.S_addr = inet_addr(IP);
+ addr.sin_family = AF_INET;
+ addr.sin_port = htons(Port);
+ return true;
+}
+
+bool CYHMudpSend::SendData(BYTE* const bufs,int length)
+{
+ char* buf = (char*)bufs;
+ //sendto(sock, buf, strlen(buf) + 1, 0, (sockaddr*)&addr, sizeof(sockaddr));
+ sendto(sock, buf, length, 0, (sockaddr*)&addr, sizeof(sockaddr));
+ return true;
+}
+
diff --git a/Src/CH91PayloadSoftware/CYHMudpSend.h b/Src/CH91PayloadSoftware/CYHMudpSend.h
new file mode 100644
index 0000000..25c912d
--- /dev/null
+++ b/Src/CH91PayloadSoftware/CYHMudpSend.h
@@ -0,0 +1,19 @@
+#pragma once
+#include
+#include
+#include
+class CYHMudpSend
+{
+public:
+ CYHMudpSend();
+ ~CYHMudpSend();
+public:
+ WSADATA wsaData;
+ SOCKET sock;
+ int n;
+ sockaddr_in addr;
+public:
+ bool initMUDP(const char* IP, u_short Port);
+ bool SendData(BYTE* const,int);
+};
+
diff --git a/Src/CH91PayloadSoftware/DCFrameCkCmd.h b/Src/CH91PayloadSoftware/DCFrameCkCmd.h
new file mode 100644
index 0000000..ff3b117
--- /dev/null
+++ b/Src/CH91PayloadSoftware/DCFrameCkCmd.h
@@ -0,0 +1,214 @@
+#ifndef _CDCFrameCkCmdFrame_
+#define _CDCFrameCkCmdFrame_
+
+//עָӿطЭ
+
+#pragma once
+//#include "framelib/basetype.h"
+//#include "framelib/DataInject.h"
+#pragma pack(1)
+
+typedef struct struProtocalDataInject_DC
+{
+ UINT8 DCtype; //
+ union
+ {
+ struct
+ {
+ UINT8 SwitchCmd; //ָ
+ INT16 param1; //1
+ INT16 param2; //2
+ UINT8 reserve[9]; //
+ }DC_13Ins;//13տָ
+ struct
+ {
+ BYTE param; //
+ BYTE param2; //
+ BYTE param3; //
+ BYTE param4; //
+ BYTE param5; //
+ BYTE param6; //
+ BYTE param7; //
+ BYTE param8; //
+ BYTE param9; //
+ BYTE param10; //
+ BYTE param11; //
+ BYTE param12; //
+ BYTE param13; //
+ BYTE param14; //
+ }DC_WHTJ; //տָ
+ BYTE DataIn[14];//14ֽ
+ };
+}ProtocalDataInject_DC;
+
+typedef struct struDataInject_DC
+{
+ UINT8 DCtype; //
+ union
+ {
+ struct
+ {
+ UINT8 SwitchCmd; //ָ
+ double param1; //1
+ double param2; //2
+ UINT8 reserve[9]; //
+ }DC_13Ins;//13տָ
+ struct
+ {
+ BYTE param; //
+ BYTE param2; //
+ BYTE param3; //
+ BYTE param4; //
+ BYTE param5; //
+ BYTE param6; //
+ BYTE param7; //
+ BYTE param8; //
+ BYTE param9; //
+ BYTE param10; //
+ BYTE param11; //
+ BYTE param12; //
+ BYTE param13; //
+ BYTE param14; //
+ }DC_WHTJ;//տָ
+ BYTE DC_Data[14];//14ֽ
+ };
+}DataInject_DC;
+
+
+//עָӿط֡---13
+typedef struct struDCFrameCkCmd
+{
+ UINT8 FrameHead[2]; //֡ͷEB 90
+ UINT8 fcode; //עָ
+ ProtocalDataInject_DC protocalDataInject_DC;
+ UINT16 crc16; //Уλ
+}DCFrameCkCmd;
+
+
+#pragma pack()
+//ݽṹ
+typedef struct struDCFrameCkCmdData
+{
+ UINT8 fcode; //עָ
+ DataInject_DC dataInject_DC;
+ UINT16 crc16; //Уλ
+}DCFrameCkCmdData;
+#pragma pack()
+
+class CDCFrameCkCmdFrame : public CFrameAbstract
+{
+public:
+ DCFrameCkCmdData Data;
+public:
+ CDCFrameCkCmdFrame()
+ {
+ //ݳ
+ _tcscpy(Name, _T("DateInject_CK_DC"));//ע ӿ
+ FrameLength = 20;
+ HeadLength = 2;
+ Head[0] = 0xEB;
+ Head[1] = 0x90;
+ memcpy(Addr(), Head, HeadLength);//HeadĵһλHeadLengthλֵֵAddr()
+ CheckLength = 2;
+ CheckPos = FrameLength - 2;
+ FrameType = ftFKu;
+ memset(&Data,0,sizeof(DCFrameCkCmdData));//DataеȫʼΪ0
+ }
+
+ virtual ~CDCFrameCkCmdFrame(){}
+ virtual void Encode()
+ {
+ DCFrameCkCmd *pBuff = (DCFrameCkCmd*) Addr();
+ pBuff->fcode = Data.fcode;
+ pBuff->protocalDataInject_DC.DCtype = Data.dataInject_DC.DCtype;
+ switch(Data.dataInject_DC.DCtype)
+ {
+ case 0x01:
+ pBuff->protocalDataInject_DC.DC_13Ins.SwitchCmd = Data.dataInject_DC.DC_13Ins.SwitchCmd;
+ pBuff->protocalDataInject_DC.DC_13Ins.param1 = Data.dataInject_DC.DC_13Ins.param1;
+ pBuff->protocalDataInject_DC.DC_13Ins.param2 = Data.dataInject_DC.DC_13Ins.param2;
+ memset(&(pBuff->protocalDataInject_DC.DC_13Ins.reserve),0,sizeof(pBuff->protocalDataInject_DC.DC_13Ins.reserve));
+ break;
+ case 0x02:
+ pBuff->protocalDataInject_DC.DC_WHTJ.param = Data.dataInject_DC.DC_WHTJ.param;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param2 = Data.dataInject_DC.DC_WHTJ.param2;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param3 = Data.dataInject_DC.DC_WHTJ.param3;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param4 = Data.dataInject_DC.DC_WHTJ.param4;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param5 = Data.dataInject_DC.DC_WHTJ.param5;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param6 = Data.dataInject_DC.DC_WHTJ.param6;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param7 = Data.dataInject_DC.DC_WHTJ.param7;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param8 = Data.dataInject_DC.DC_WHTJ.param8;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param9 = Data.dataInject_DC.DC_WHTJ.param9;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param10 = Data.dataInject_DC.DC_WHTJ.param10;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param11 = Data.dataInject_DC.DC_WHTJ.param11;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param12 = Data.dataInject_DC.DC_WHTJ.param12;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param13 = Data.dataInject_DC.DC_WHTJ.param13;
+ pBuff->protocalDataInject_DC.DC_WHTJ.param14 = Data.dataInject_DC.DC_WHTJ.param14;
+ break;
+ default:
+ break;
+ }
+ /*
+ switch(Data.fcode)
+ {
+ case 0x70:
+ if(Data.details.DataZ70.DCtype == 0x01){
+ EncodeUZ70( &( pBuff->details ),&( Data.details ));
+ }
+ if(Data.details.DataZ70_TJDC.DCTpye == 0x02){
+ EncodeUZ70_TJDC( &( pBuff->details ),&( Data.details ));
+ }
+ break;
+ default:
+ break;
+ }
+ */
+ }
+ virtual void Decode()
+ {
+ DCFrameCkCmd *pBuff = (DCFrameCkCmd*) Addr();
+ Data.fcode = pBuff->fcode;
+ Data.dataInject_DC.DCtype = pBuff->protocalDataInject_DC.DCtype;
+ switch(pBuff->protocalDataInject_DC.DCtype)
+ {
+ case 0x01:
+ Data.dataInject_DC.DC_13Ins.SwitchCmd = pBuff->protocalDataInject_DC.DC_13Ins.SwitchCmd;
+ Data.dataInject_DC.DC_13Ins.param1 = pBuff->protocalDataInject_DC.DC_13Ins.param1;
+ Data.dataInject_DC.DC_13Ins.param2 = pBuff->protocalDataInject_DC.DC_13Ins.param2;
+ memset(&(Data.dataInject_DC.DC_13Ins.reserve),0,sizeof(Data.dataInject_DC.DC_13Ins.reserve));
+ break;
+ case 0x02:
+ Data.dataInject_DC.DC_WHTJ.param = pBuff->protocalDataInject_DC.DC_WHTJ.param;
+ Data.dataInject_DC.DC_WHTJ.param2 = pBuff->protocalDataInject_DC.DC_WHTJ.param2;
+ Data.dataInject_DC.DC_WHTJ.param3 = pBuff->protocalDataInject_DC.DC_WHTJ.param3;
+ Data.dataInject_DC.DC_WHTJ.param4 = pBuff->protocalDataInject_DC.DC_WHTJ.param4;
+ Data.dataInject_DC.DC_WHTJ.param5 = pBuff->protocalDataInject_DC.DC_WHTJ.param5;
+ Data.dataInject_DC.DC_WHTJ.param6 = pBuff->protocalDataInject_DC.DC_WHTJ.param6;
+ Data.dataInject_DC.DC_WHTJ.param7 = pBuff->protocalDataInject_DC.DC_WHTJ.param7;
+ Data.dataInject_DC.DC_WHTJ.param8 = pBuff->protocalDataInject_DC.DC_WHTJ.param8;
+ Data.dataInject_DC.DC_WHTJ.param9 = pBuff->protocalDataInject_DC.DC_WHTJ.param9;
+ Data.dataInject_DC.DC_WHTJ.param10 = pBuff->protocalDataInject_DC.DC_WHTJ.param10;
+ Data.dataInject_DC.DC_WHTJ.param11 = pBuff->protocalDataInject_DC.DC_WHTJ.param11;
+ Data.dataInject_DC.DC_WHTJ.param12 = pBuff->protocalDataInject_DC.DC_WHTJ.param12;
+ Data.dataInject_DC.DC_WHTJ.param13 = pBuff->protocalDataInject_DC.DC_WHTJ.param13;
+ Data.dataInject_DC.DC_WHTJ.param14 = pBuff->protocalDataInject_DC.DC_WHTJ.param14;
+ break;
+ default:
+ break;
+ }
+ Data.crc16 = pBuff->crc16;
+ }
+ //void Phrase(const BYTE* Src, const UINT32 Count)
+ //{
+
+ //}
+
+ virtual struCHECK CheckCRC(BYTE* const p)
+ {
+ //return MakeCheckSum_WuHanTJDC(p,31);
+ return MakeCheckCRC(p+2,16);
+ }
+
+};
+
+#endif//_CDCFrameCkCmdFrame_
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/DCOverrollDlg.cpp b/Src/CH91PayloadSoftware/DCOverrollDlg.cpp
new file mode 100644
index 0000000..82e2222
--- /dev/null
+++ b/Src/CH91PayloadSoftware/DCOverrollDlg.cpp
@@ -0,0 +1,321 @@
+// DCOverrollDlg.cpp : ʵļ
+//
+
+#include "stdafx.h"
+#include "DCOverrollDlg.h"
+#include "afxdialogex.h"
+
+
+// DCOverrollDlg Ի
+
+IMPLEMENT_DYNAMIC(DCOverrollDlg, CDialogEx)
+
+DCOverrollDlg::DCOverrollDlg(CWnd* pParent /*=NULL*/)
+ : CDialogEx(DCOverrollDlg::IDD, pParent)
+{
+ //m_bkBrush.CreateSolidBrush(BKGCLR);
+
+ m_CurSelect = 99;
+}
+
+DCOverrollDlg::~DCOverrollDlg()
+{
+ /*رնʱ*/
+ DelateTimer();
+}
+//ʱص
+void FAR PASCAL m_DCOverrollTimer(WORD IDEvent, WORD uReserved, DWORD dwUser, DWORD dwReserved1, DWORD dwReserve2)
+{
+ DCOverrollDlg *m_pView = (DCOverrollDlg *)dwUser;
+ m_pView->DC0verrollStep(dwUser);
+}
+void DCOverrollDlg::DoDataExchange(CDataExchange* pDX)
+{
+ CDialogEx::DoDataExchange(pDX);
+ //DDX_Control(pDX, IDC_STATIC_DC, m_DCFrameInfoTab);
+ DDX_Control(pDX, IDC_STATIC_DC, m_ShowPosition);
+}
+
+
+BEGIN_MESSAGE_MAP(DCOverrollDlg, CDialogEx)
+ //ON_COMMAND(ID_13Ins, &DCOverrollDlg::OnUpdate13Ins)
+ //ON_UPDATE_COMMAND_UI(ID_WHTJ, &DCOverrollDlg::OnUpdateWHTJ)
+ ON_WM_CTLCOLOR()
+ ON_WM_CLOSE()
+ ON_BN_CLICKED(IDC_BTN_SHOW, &DCOverrollDlg::OnBnClickedBtnShow)
+ ON_CBN_SELCHANGE(IDC_DC_CHOSET, &DCOverrollDlg::OnCbnSelchangeDcChoset)
+ ON_BN_CLICKED(IDC_RADIO1, &DCOverrollDlg::OnBnClickedRadio1)
+ ON_BN_CLICKED(IDC_RADIO2, &DCOverrollDlg::OnBnClickedRadio2)
+ ON_MESSAGE(WM_PROCESS_DC_CMD, ProcessDCCMD)
+END_MESSAGE_MAP()
+
+HBRUSH DCOverrollDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
+{
+ HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
+
+ // TODO: ڴ˸ DC κ
+ /*
+ if(nCtlColor==CTLCOLOR_STATIC)
+ {
+ pDC->SetBkColor(RGB(0,0,0));
+ pDC->SetTextColor(TXTCLR);
+ pDC->SetBkMode(TRANSPARENT);
+ }*/
+ // TODO: ĬϵIJ軭ʣһ
+ return m_bkBrush;
+}
+
+// DCOverrollDlg Ϣ
+BOOL DCOverrollDlg::OnInitDialog()
+{
+ CDialogEx::OnInitDialog();
+ DlgDCOverroll_Hwnd = GetSafeHwnd();//Ĵھ
+
+ //CRect m_crect;
+ //GetDlgItem(IDC_STATIC_DC_PUBLCI)->GetWindowRect(m_crect);
+ //ScreenToClient(&m_crect);
+ //this->MoveWindow(m_crect.left, m_crect.top, m_crect.Width()*1.05, m_crect.Height()*12);
+ this->CenterWindow();
+
+ ///*Ļֱʾ*/
+ //int cx = 0.65*GetSystemMetrics(SM_CXMAXIMIZED);
+ //int cy = 0.5*GetSystemMetrics(SM_CYMAXIMIZED);
+ //CRect rcRect(0,0,cx,cy);
+ //this->MoveWindow(rcRect,true);
+ //this->CenterWindow();
+
+ //CSize tabSize(180,25);
+ //m_DCFrameInfoTab.SetItemSize(tabSize);
+ //m_DCFrameInfoTab.SetNormalColor(RGB(230,230,230));
+ //m_DCFrameInfoTab.SetSelectedColor(0x32CD32);
+
+ CreateAllDlg();
+
+ ((CComboBox *)GetDlgItem(IDC_DC_CHOSET))->InsertString(0, "13տ");
+ ((CComboBox *)GetDlgItem(IDC_DC_CHOSET))->InsertString(1, "տ");
+ ((CComboBox *)GetDlgItem(IDC_DC_CHOSET))->SetCurSel(0);
+
+ ((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(true);
+
+ /*ʱ*/
+ //ȹر
+ DelateTimer();
+ //
+ if((DCDC0verrollTimerId = timeSetEvent(20, 10, (LPTIMECALLBACK)m_DCOverrollTimer, (DWORD)this, TIME_PERIODIC)) == 0)
+ {
+ MessageBox( "ͨÿƵնʱ!" );
+ }
+
+ return 0;
+}
+
+BOOL DCOverrollDlg::CreateAllDlg()
+{
+ CRect m_crect;
+ GetDlgItem(IDC_STATIC_DC_PUBLCI)->GetWindowRect(m_crect);//IDC_STATIC_DC_PUBLCIλ
+ ScreenToClient(&m_crect);
+
+ CRect m_crect2;
+ GetDlgItem(IDC_STATIC_DC)->GetWindowRect(m_crect2);//IDC_STATIC_DCλ
+ ScreenToClient(&m_crect2);
+
+
+ //µĿƷʽ Ĭʾ
+ if(!m_13InstituteDCNewDlg.GetSafeHwnd())
+ {
+ m_13InstituteDCNewDlg.Create(IDD_DIALOG_DC_13INSTITUTE_NEW,this);
+ }
+
+ m_13InstituteDCNewDlg.MoveWindow(m_crect2);//IDD_DIALOG_DC_13INSTITUTE_NEWƵIDC_STATIC_DC_PUBLCIڵλ
+ m_13InstituteDCNewDlg.ShowWindow(SW_SHOW);
+
+ if(!m_WHTJDCNewDlg.GetSafeHwnd())
+ {
+ m_WHTJDCNewDlg.Create(IDD_DIALOG_DC_WuHanTJ_NEW,this);
+ }
+
+ m_WHTJDCNewDlg.MoveWindow(m_crect2);//IDD_DIALOG_DC_13INSTITUTE_NEWƵIDC_STATIC_DC_PUBLCIڵλ
+ m_WHTJDCNewDlg.ShowWindow(SW_HIDE);
+
+ CRect m_RectShow; //ʾֵ
+ GetWindowRect(&m_RectLarge);
+ GetDlgItem(IDC_STATIC_DC_PUBLCI)->GetWindowRect(&m_RectShow);
+ m_RectSmall.left = m_RectLarge.left;
+ m_RectSmall.top = m_RectLarge.top;
+ m_RectSmall.right = m_RectShow.right;
+ m_RectSmall.bottom = m_RectLarge.bottom;
+ SetWindowPos(NULL,0,0,m_RectSmall.Width(),m_RectSmall.Height(),SWP_NOMOVE|SWP_NOZORDER);
+
+ return true;
+}
+//ʱ
+void DCOverrollDlg::DC0verrollStep(DWORD)
+{
+
+}
+void DCOverrollDlg::DelateTimer()
+{
+ if(DCDC0verrollTimerId!=0)
+ {
+ timeKillEvent(DCDC0verrollTimerId);
+ DCDC0verrollTimerId = 0;
+ }
+}
+void DCOverrollDlg::OnClose()
+{
+ // TODO: ڴϢ/Ĭֵ
+ /*رնʱ*/
+ DelateTimer();
+
+ m_CurSelect = 99;
+ CDialogEx::OnClose();
+}
+
+
+void DCOverrollDlg::OnBnClickedBtnShow()
+{
+ // TODO: ڴӿؼ֪ͨ
+
+ CString str;
+ GetDlgItemText(IDC_BTN_SHOW, str);
+ if(str == _T("չʾ>>"))
+ {
+ SetDlgItemText(IDC_BTN_SHOW, _T("ʾ<<"));
+ SetWindowPos(NULL, 0, 0, m_RectLarge.Width(), m_RectLarge.Height(),SWP_NOMOVE|SWP_NOZORDER);
+ }
+ else if(str == _T("ʾ<<"))
+ {
+ SetDlgItemText(IDC_BTN_SHOW, _T("չʾ>>"));
+ SetWindowPos(NULL, 0, 0, m_RectSmall.Width(), m_RectSmall.Height(),SWP_NOMOVE|SWP_NOZORDER);
+ }
+
+}
+//LRESULT DCOverrollDlg::ProcessDCCMD(WPARAM wParam, LPARAM lParam)
+//{
+// if(!gCurGCSCtrlFlag)
+// {
+// return 0;
+// }
+// if(m_CurSelect == 1)
+// {
+// m_WHTJDCNewDlg.UpdateTJDCAction((int)lParam);
+// }
+// else if(m_CurSelect == 0 || m_CurSelect == 99)//ĬϿ13
+// {
+// m_13InstituteDCNewDlg.UpdateDC13Action((int)lParam);
+// }
+//
+// return 0;
+//}
+
+void DCOverrollDlg::OnCbnSelchangeDcChoset()
+{
+ // TODO: ڴӿؼ֪ͨ
+ // TODO: ڴӿؼ֪ͨ
+ //int a = m_DCFrameInfoTab.GetCurSel();
+ UpdateData( true );
+ int iCount =((CComboBox *)GetDlgItem(IDC_DC_CHOSET))->GetCurSel();
+ if(m_CurSelect != iCount)
+ {
+ m_CurSelect = iCount;
+
+ if(m_CurSelect == 0)
+ {
+ /*
+ //վɵĿƷʽ
+ //ɾնԻ
+ m_WuHanTJDCDlg.ShowWindow(SW_HIDE);
+ m_WuHanTJDCDlg.DelateTimer();
+ m_WuHanTJDCDlg.m_DCCommonDateProcess.DelateTimer();
+ //ʾ13տƶԻ
+ m_13InstituteDCDlg.ShowWindow(SW_SHOW);
+ m_13InstituteDCDlg.InitializeTimer();
+ */
+
+ //µĿƷʽ
+ //ʾ13տƶԻ
+ m_13InstituteDCNewDlg.ShowWindow(SW_SHOW);
+ //տƶԻ
+ m_WHTJDCNewDlg.ShowWindow(SW_HIDE);
+
+ Sleep(120);
+ }
+ if(m_CurSelect == 1)
+ {
+ /*
+ //վɵĿƷʽ
+ //ɾ13նԻ
+ m_13InstituteDCDlg.ShowWindow(SW_HIDE);
+ m_13InstituteDCDlg.DelateTimer();
+ m_13InstituteDCDlg.m_DCCommonDateProcess.DelateTimer();
+ //ʾտƶԻ
+ m_WuHanTJDCDlg.ShowWindow(SW_SHOW);
+ m_WuHanTJDCDlg.InitializeTimer();
+ */
+
+ //µĿƷʽ
+ //13տƶԻ
+ m_13InstituteDCNewDlg.ShowWindow(SW_HIDE);
+ //ʾտƶԻ
+ m_WHTJDCNewDlg.ShowWindow(SW_SHOW);
+
+ Sleep(120);
+ }
+ if(m_CurSelect == 99)//Ĭʾ13
+ {
+ /*
+ //վɵĿƷʽ
+ m_WuHanTJDCDlg.DelateTimer();
+ m_WuHanTJDCDlg.ShowWindow(SW_HIDE);
+ m_WuHanTJDCDlg.m_DCCommonDateProcess.DelateTimer();
+ m_13InstituteDCDlg.DelateTimer();
+ m_13InstituteDCDlg.ShowWindow(SW_HIDE);
+ m_13InstituteDCDlg.m_DCCommonDateProcess.DelateTimer();
+ */
+
+ //µĿƷʽ
+ //13տƶԻ
+ m_13InstituteDCNewDlg.ShowWindow(SW_HIDE);
+ //տƶԻ
+ m_WHTJDCNewDlg.ShowWindow(SW_HIDE);
+
+ Sleep(120);
+ }
+ }
+}
+
+
+void DCOverrollDlg::OnBnClickedRadio1()
+{
+
+ m_CurSelect = 0;
+ //ʾ13տƶԻ
+ m_13InstituteDCNewDlg.ShowWindow(SW_SHOW);
+ //տƶԻ
+ m_WHTJDCNewDlg.ShowWindow(SW_HIDE);
+ Sleep(120);
+}
+
+
+void DCOverrollDlg::OnBnClickedRadio2()
+{
+ m_CurSelect = 1;
+ //13տƶԻ
+ m_13InstituteDCNewDlg.ShowWindow(SW_HIDE);
+ //ʾտƶԻ
+ m_WHTJDCNewDlg.ShowWindow(SW_SHOW);
+ Sleep(120);
+}
+LRESULT DCOverrollDlg::ProcessDCCMD(WPARAM wParam, LPARAM lParam)
+{
+ if(m_CurSelect == 1)
+ {
+ m_WHTJDCNewDlg.UpdateTJDCAction((int)lParam);
+ }
+ //else if(m_CurSelect == 0 || m_CurSelect == 99)//ĬϿ13
+ //{
+ // m_13InstituteDCNewDlg.UpdateDC13Action((int)lParam);
+ //}
+
+ return 0;
+}
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/DCOverrollDlg.h b/Src/CH91PayloadSoftware/DCOverrollDlg.h
new file mode 100644
index 0000000..bec6190
--- /dev/null
+++ b/Src/CH91PayloadSoftware/DCOverrollDlg.h
@@ -0,0 +1,61 @@
+#pragma once
+#include "resource.h"
+#include "DlgWHTJDCNew.h" //人Ի
+#include "Dlg13InstituteDCNew.h" //13նԻ
+
+#include "afxwin.h"
+#include "CMDBtn.h"
+#include "BtnST.h"
+#include "afxdlgs.h"
+// DCOverrollDlg Ի
+
+class DCOverrollDlg : public CDialogEx
+{
+ DECLARE_DYNAMIC(DCOverrollDlg)
+private:
+ CBrush m_bkBrush; //汳ˢ
+public:
+ afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
+public:
+ DCOverrollDlg(CWnd* pParent = NULL); // 캯
+ virtual ~DCOverrollDlg();
+
+// Ի
+ enum { IDD = IDD_DIALOG_DC };
+ virtual BOOL OnInitDialog();
+ BOOL CreateAllDlg();
+ //CXTabCtrl m_DCFrameInfoTab;
+
+protected:
+ virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧
+
+ DECLARE_MESSAGE_MAP()
+public:
+
+ //µĿƷʽ
+ Dlg13InstituteDCNew m_13InstituteDCNewDlg; //13¿ƽԻ
+ DlgWHTJDCNew m_WHTJDCNewDlg; //人¿ƽԻ
+
+
+
+private:
+ CRect m_RectLarge; //ȫ
+ CRect m_RectSmall; //֮
+
+public:
+ //CMFCToolBar m_wndToolBar;
+ //afx_msg void OnUpdate13Ins();
+ //afx_msg void OnUpdateWHTJ(CCmdUI *pCmdUI);
+ void DC0verrollStep(DWORD); //ʱ
+ int DCDC0verrollTimerId; //ʱID
+ int m_CurSelect;
+ void DelateTimer(); //ɾʱ
+ afx_msg void OnBnClickedButton1();
+ afx_msg void OnClose();
+ afx_msg void OnBnClickedBtnShow();
+ LRESULT ProcessDCCMD(WPARAM param, LPARAM lparam); //
+ afx_msg void OnCbnSelchangeDcChoset();
+ CStatic m_ShowPosition;
+ afx_msg void OnBnClickedRadio1();
+ afx_msg void OnBnClickedRadio2();
+};
diff --git a/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.cpp b/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.cpp
new file mode 100644
index 0000000..488fee5
--- /dev/null
+++ b/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.cpp
@@ -0,0 +1,1337 @@
+// Dlg13InstituteDCNew.cpp : ʵļ
+
+#include "stdafx.h"
+#include "Dlg13InstituteDCNew.h"
+#include "afxdialogex.h"
+
+/*鲥*/
+#include
+#include
+#include
+
+
+//tag_RecBind
+HWND g_hwnd13InstituteDCNew = nullptr;
+
+//̺߳ ֵһ
+void ThreadInstituteDCNew()
+{
+ //Ϣ
+ ::PostMessage(g_hwnd13InstituteDCNew,WM_13DC_UPDAFRAME,(WPARAM)g_commandNum,(LPARAM)0);
+ Sleep(50);
+ ::PostMessage(g_hwnd13InstituteDCNew,WM_13DC_UPDAFRAME,(WPARAM)g_commandNum,(LPARAM)1);
+
+}
+//λ-̺߳80뷢һ
+void ThreadInstituteDCNew2()
+{
+ do
+ {
+ ::PostMessage(g_hwnd13InstituteDCNew,WM_13DC_UPDAFRAME,(WPARAM)g_commandNum,(LPARAM)0);
+ Sleep(80);
+ }
+ while(g_bBindData==true);//ţ̌g_bBindDatafasleѭ
+ //::PostMessage(g_hwnd13InstituteDCNew,WM_13DC_UPDAFRAME,(WPARAM)g_commandNum,(LPARAM)1);
+}
+
+IMPLEMENT_DYNAMIC(Dlg13InstituteDCNew, CDialogEx)
+
+Dlg13InstituteDCNew::Dlg13InstituteDCNew(CWnd* pParent /*=NULL*/)
+ : CDialogEx(Dlg13InstituteDCNew::IDD, pParent)
+ ,InfraredOrVisibleLight(0)
+ ,Param1(0)
+ ,Param2(0)
+{
+ SwitchCmd = 0x00;
+ PitchControl = 0x00;
+ DirControl = 0x00;
+ PitchRecord = 0x00;
+ DirRecord = 0x00;
+ mTimerId = 0;
+ num = 0;
+ injectstart = false;
+}
+
+Dlg13InstituteDCNew::~Dlg13InstituteDCNew()
+{
+ //رնʱ
+ if(mTimerId!=0)
+ {
+ timeKillEvent(mTimerId);
+ mTimerId = 0;
+ }
+}
+
+//ʱص
+void FAR PASCAL TimeCALLBACK(WORD IDEvent, WORD uReserved, DWORD dwUser, DWORD dwReserved1, DWORD dwReserve2)
+{
+ Dlg13InstituteDCNew *m_pView = (Dlg13InstituteDCNew *)dwUser;
+ m_pView->TimeStep(dwUser);
+}
+//ʱ
+void Dlg13InstituteDCNew::TimeStep(DWORD dwUser)
+{
+
+ if (g_IsSending && g_bBindData)
+ {
+ //m_MudpSend.SendData(DCFrameCkCmd13.Addr(),20);
+ //g_DCMUDP.SendTo(DCFrameCkCmd13.Addr(), 20);
+ //g_MUDPCamera.SendToY(DCFrameCkCmd13.Addr(), 20);
+ }
+}
+void Dlg13InstituteDCNew::DoDataExchange(CDataExchange* pDX)
+{
+ CDialogEx::DoDataExchange(pDX);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW, DC13InsBtn[0]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW2, DC13InsBtn[1]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW3, DC13InsBtn[2]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW4, DC13InsBtn[3]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW5, DC13InsBtn[4]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW6, DC13InsBtn[5]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW7, DC13InsBtn[6]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW8, DC13InsBtn[7]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW9, DC13InsBtn[8]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW10, DC13InsBtn[9]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW11, DC13InsBtn[10]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW12, DC13InsBtn[11]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW13, DC13InsBtn[12]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW14, DC13InsBtn[13]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW15, DC13InsBtn[14]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW16, DC13InsBtn[15]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW17, DC13InsBtn[16]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW18, DC13InsBtn[17]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW19, DC13InsBtn[18]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW20, DC13InsBtn[19]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW21, DC13InsBtn[20]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW22, DC13InsBtn[21]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW23, DC13InsBtn[22]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW24, DC13InsBtn[23]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW25, DC13InsBtn[24]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW26, DC13InsBtn[25]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW27, DC13InsBtn[26]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW28, DC13InsBtn[27]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW29, DC13InsBtn[28]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW30, DC13InsBtn[29]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW31, DC13InsBtn[30]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW32, DC13InsBtn[31]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW33, DC13InsBtn[32]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW34, DC13InsBtn[33]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW35, DC13InsBtn[34]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW36, DC13InsBtn[35]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW37, DC13InsBtn[36]);
+ DDX_Control(pDX, IDC_BTN_DC_13INSTITUTE_NEW38, DC13InsBtn[37]);
+
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_1, m_DCFlyCmd[0]);//ͨ1
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_2, m_DCFlyCmd[1]);//ͨ2
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_3, m_DCFlyCmd[2]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_4, m_DCFlyCmd[3]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_5, m_DCFlyCmd[4]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_6, m_DCFlyCmd[5]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_7, m_DCFlyCmd[6]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_8, m_DCFlyCmd[7]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_9, m_DCFlyCmd[8]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_10, m_DCFlyCmd[9]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_11, m_DCFlyCmd[10]);
+ DDX_Control(pDX, IDC_BUTTON_DCOverroll_13Ins_12, m_DCFlyCmd[11]);
+
+ //DDX_Control(pDX, IDC_STATIC, DC13InsBtn[38]);
+ DDX_Text(pDX, IDC_EDIT_Pitch_Param, Param1);
+ //DDV_MinMaxInt(pDX, Param1, -18000, 18000);
+ DDX_Text(pDX, IDC_EDIT_Dir_Param, Param2);
+ //DDV_MinMaxInt(pDX, Param2, -18000, 18000);
+}
+
+BOOL Dlg13InstituteDCNew::OnInitDialog()
+{
+ CDialogEx::OnInitDialog();
+ CenterWindow();
+ g_hwnd13InstituteDCNew = this->GetSafeHwnd();
+
+ CFont m_oFont;//
+ m_oFont.CreatePointFont(80, _T("Times New Roman"));
+ for(int i = 0;i<38;++i)
+ {
+ //DC13InsBtn[i].SetTextColor(RGB(255,255,255));
+ //DC13InsBtn[i].SetFont(&m_oFont);
+ //DC13InsBtn[i].SetFaceColor(RGB(54,54,54),true);
+ if(i==34||i==35||i==36||i==37||i==3)
+ {
+ 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);
+ }
+
+ }
+
+ m_font.CreatePointFont(100,_T(""),NULL);
+ CWnd* pWnd = GetDlgItem(IDC_STATIC_PitchAndDir);
+ pWnd->SetFont(&m_font);
+
+ CWnd* pWnd2 = GetDlgItem(IDC_EDIT_Pitch_Param);
+ pWnd2->SetFont(&m_font);
+ GetDlgItem(IDC_EDIT_Pitch_Param)->SetWindowText("0.00");
+ CWnd* pWnd3 = GetDlgItem(IDC_EDIT_Dir_Param);
+ pWnd3->SetFont(&m_font);
+ GetDlgItem(IDC_EDIT_Dir_Param)->SetWindowText("0.00");
+
+
+
+ ////ʱ
+ //if((mTimerId = timeSetEvent(50, 20, (LPTIMECALLBACK)TimeCALLBACK, (DWORD)this, TIME_PERIODIC)) == 0)
+ //{
+ // MessageBox( "13նʱ!", _T("ʾ"));
+ //}
+
+ m_MudpSend.initMUDP("224.1.1.1",5622);
+
+ 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(DC13InsCmdBuffer,0,sizeof(DC13InsCmdBuffer));
+
+
+
+ return TRUE;
+}
+
+BEGIN_MESSAGE_MAP(Dlg13InstituteDCNew, CDialogEx)
+
+ ON_MESSAGE(WM_13DC_UPDAFRAME, &Dlg13InstituteDCNew::OnUpdate13DCFrame)
+ ON_WM_CTLCOLOR()
+END_MESSAGE_MAP()
+
+
+// Dlg13InstituteDCNew Ϣ
+//߳ϢϢ
+afx_msg LRESULT Dlg13InstituteDCNew::OnUpdate13DCFrame(WPARAM wParam, LPARAM lParam)
+{
+ injectstart = true;//װʼ
+ switch ((int)wParam)
+ {
+ case 0://ģʽ
+ UpdateFrame((int&)lParam);
+ break;
+ case 2://ɨģʽ
+ UpdateFrame2((int&)lParam);
+ break;
+ case 3://ģʽ
+ UpdateFrame3((int&)lParam);
+ break;
+ case 4://ƽ̨λ
+ UpdateFrame4((int&)lParam);
+ break;
+ case 5:
+ UpdateFrame5();
+ break;
+ case 6:
+ UpdateFrame6();
+ 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();
+ break;
+ case 15:
+ UpdateFrame15();
+ 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();
+ break;
+ case 21:
+ UpdateFrame21();
+ 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((int&)lParam);
+ break;
+ case 31:
+ UpdateFrame31((int&)lParam);
+ break;
+ case 32:
+ UpdateFrame32((int&)lParam);
+ break;
+ case 33:
+ UpdateFrame33((int&)lParam);
+ break;
+ case 34:
+ UpdateFrame34((int&)lParam);
+ break;
+ case 35://+
+ UpdateFrame35();
+ break;
+ case 36://-
+ UpdateFrame36();
+ break;
+ case 37://λ+
+ UpdateFrame37();
+ break;
+ case 38://λ-
+ UpdateFrame38();
+ break;
+ default:
+ break;
+ }
+ //if((int&)lParam == 0)
+ //{
+ // if(g_IsSending){
+ // g_MUDPCamera.SendToY(DCFrameCkCmd13.Addr(), 20);
+ // }
+ //}
+ /*
+ if((int&)lParam==0)
+ {
+ if(!gCurGCSCtrlFlag)//ӿ
+ {
+ if(gComFlags.test(11))//((gCommuFlags & 0x0800) != 0x00) )
+ {
+ //עָӿط---13
+ DCFrameCkCmd13.Data.fcode = 0x70;
+ DCFrameCkCmd13.Data.DCtype = g_FrameFKU.Data.details.DataZ70.DCtype ;
+ DCFrameCkCmd13.Data.SwitchCmd =g_FrameFKU.Data.details.DataZ70.SwitchCmd;
+ DCFrameCkCmd13.Data.param1 = g_FrameFKU.Data.details.DataZ70.param1;
+ DCFrameCkCmd13.Data.param2 = g_FrameFKU.Data.details.DataZ70.param2;
+ DCFrameCkCmd13.SendPrepare();
+ g_UDPACmdSwi.WriteBuffer(DCFrameCkCmd13.Addr(),11);
+ }
+ }
+ }
+ */
+ return 0;
+}
+
+//13տָ ť£д
+//ظ͵ֱָӸֱֵţ̌װ־Ϊfalseֹͣ
+//ֻһεָһ̣߳߳100msȺֵղֵڼָ(GCSView::Setp)պָٷ͡
+void Dlg13InstituteDCNew::Update13InsNewCmdBuffer(HWND hwnd)
+{
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW)->m_hWnd)
+ {
+ g_commandNum = 0;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW2)->m_hWnd)
+ {
+ g_commandNum = 2;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW3)->m_hWnd)
+ {
+ g_commandNum = 3;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW4)->m_hWnd)
+ {
+ g_commandNum = 4;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW5)->m_hWnd)
+ {
+ //UpdateFrame5();
+ g_commandNum = 5;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW6)->m_hWnd)
+ {
+ //UpdateFrame6();
+ g_commandNum = 6;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW7)->m_hWnd)
+ {
+ //UpdateFrame7();
+ g_commandNum = 7;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW8)->m_hWnd)
+ {
+ //UpdateFrame8();
+ g_commandNum = 8;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW9)->m_hWnd)
+ {
+ g_commandNum = 9;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW10)->m_hWnd)
+ {
+ g_commandNum = 10;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW11)->m_hWnd)
+ {
+ g_commandNum = 11;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW12)->m_hWnd)
+ {
+ g_commandNum = 12;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW13)->m_hWnd)
+ {
+ g_commandNum = 13;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW14)->m_hWnd)
+ {
+ //UpdateFrame14();
+ g_commandNum = 14;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW15)->m_hWnd)
+ {
+ //UpdateFrame15();
+ g_commandNum = 15;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW16)->m_hWnd)
+ {
+ g_commandNum = 16;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW17)->m_hWnd)
+ {
+ g_commandNum = 17;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW18)->m_hWnd)
+ {
+ g_commandNum = 18;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW19)->m_hWnd)
+ {
+ g_commandNum = 19;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW20)->m_hWnd)
+ {
+ //UpdateFrame20();
+ g_commandNum = 20;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW21)->m_hWnd)
+ {
+ //UpdateFrame21();
+ g_commandNum = 21;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW22)->m_hWnd)
+ {
+ g_commandNum = 22;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW23)->m_hWnd)
+ {
+ g_commandNum = 23;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW24)->m_hWnd)
+ {
+ g_commandNum = 24;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW25)->m_hWnd)
+ {
+ g_commandNum = 25;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW26)->m_hWnd)
+ {
+ g_commandNum = 26;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW27)->m_hWnd)
+ {
+ g_commandNum = 27;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW28)->m_hWnd)
+ {
+ g_commandNum = 28;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW29)->m_hWnd)
+ {
+ g_commandNum = 29;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW30)->m_hWnd)
+ {
+ g_commandNum = 30;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW31)->m_hWnd)
+ {
+ g_commandNum = 31;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW32)->m_hWnd)
+ {
+ g_commandNum = 32;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW33)->m_hWnd)
+ {
+ g_commandNum = 33;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW34)->m_hWnd)
+ {
+ g_commandNum = 34;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew, NULL, 0, &ThreadCheckIDRegion);//߳
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW35)->m_hWnd)//+
+ {
+ g_commandNum = 35;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW36)->m_hWnd)//-
+ {
+ g_commandNum = 36;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW37)->m_hWnd)//λ+
+ {
+ g_commandNum = 37;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+ if(hwnd ==GetDlgItem(IDC_BTN_DC_13INSTITUTE_NEW38)->m_hWnd)//λ-
+ {
+ g_commandNum = 38;
+ hCheckThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInstituteDCNew2, NULL, 0, &ThreadCheckIDRegion);//߳2
+ CloseHandle(hCheckThread);
+ }
+}
+//buffer֡ṹ
+void Dlg13InstituteDCNew::UpdateDataZ70_13Ins()
+{
+ DCFrameCkCmd13.Data.fcode = 0x70;
+ DCFrameCkCmd13.Data.dataInject_DC.DCtype = 0x01;
+ DCFrameCkCmd13.Data.dataInject_DC.DC_13Ins.SwitchCmd = DC13InsCmdBuffer[0];
+ DCFrameCkCmd13.Data.dataInject_DC.DC_13Ins.param1 = DC13InsCmdBuffer[1]+DC13InsCmdBuffer[2]*255;
+ DCFrameCkCmd13.Data.dataInject_DC.DC_13Ins.param2 = DC13InsCmdBuffer[3]+DC13InsCmdBuffer[4]*255;
+ DCFrameCkCmd13.SendPrepare();
+ if(g_IsSending){
+ g_MUDPCamera.SendToY(DCFrameCkCmd13.Addr(), 20);
+ }
+ //DC13InsCmdBuffer
+ memset(DC13InsCmdBuffer,0,sizeof(DC13InsCmdBuffer));
+}
+//ģʽDC13InsCmdBuffer
+void Dlg13InstituteDCNew::UpdateFrame(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x15;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ɨģʽ
+void Dlg13InstituteDCNew::UpdateFrame2(int &sendEnd)
+{
+ if (sendEnd == 0)
+ {
+ DC13InsCmdBuffer[0] = 0x17;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ģʽ
+void Dlg13InstituteDCNew::UpdateFrame3(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ UpdateData(TRUE);
+ DC13InsCmdBuffer[0] = 0x19;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+
+ /**/
+ INT16 MinPitch = 0xD508;//-11000
+ INT16 MaxPitch = 0x1388;//5000
+ if(Param1*100MaxPitch)
+ {
+ PitchControl = MaxPitch;
+ }
+ else
+ {
+ PitchControl = Param1*100;
+ }
+ /*λ*/
+ INT16 MinDir = 0xB9B0;//-18000
+ INT16 MaxDir = 0x4650;//+18000
+ if(Param2*100MaxDir)
+ {
+ DirControl = MaxDir;
+ }
+ else
+ {
+ DirControl = Param2*100;
+ }
+ DC13InsCmdBuffer[1] = PitchControl;
+ DC13InsCmdBuffer[2] = PitchControl>>8;
+ DC13InsCmdBuffer[3] = DirControl;
+ DC13InsCmdBuffer[4] = DirControl>>8;
+ PitchRecord = PitchControl;
+ DirRecord = DirControl;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ƽ̨λ
+void Dlg13InstituteDCNew::UpdateFrame4(int &sendEnd)
+{
+ if (sendEnd == 0)
+ {
+ DC13InsCmdBuffer[0] = 0x1B;
+ PitchRecord = 0;
+ DirRecord = 0;
+ PitchControl = 0;
+ DirControl = 0;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//Ưλ-
+void Dlg13InstituteDCNew::UpdateFrame5()
+{
+ DC13InsCmdBuffer[0] = 0x1D;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+ g_bBindData = true;
+}
+//Ưλ+
+void Dlg13InstituteDCNew::UpdateFrame6()
+{
+ DC13InsCmdBuffer[0] = 0x1F;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+ g_bBindData = true;
+}
+//Ư-
+void Dlg13InstituteDCNew::UpdateFrame7()
+{
+ DC13InsCmdBuffer[0] = 0x21;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+ g_bBindData = true;
+}
+//Ư+
+void Dlg13InstituteDCNew::UpdateFrame8()
+{
+ DC13InsCmdBuffer[0] = 0x23;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+ g_bBindData = true;
+}
+//ֶģʽ
+void Dlg13InstituteDCNew::UpdateFrame9(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x25;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ɼ
+void Dlg13InstituteDCNew::UpdateFrame10(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x27;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//
+void Dlg13InstituteDCNew::UpdateFrame11(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x28;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//
+void Dlg13InstituteDCNew::UpdateFrame12(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x81;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//
+void Dlg13InstituteDCNew::UpdateFrame13(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x82;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//+
+void Dlg13InstituteDCNew::UpdateFrame14()
+{
+ DC13InsCmdBuffer[0] = 0x85;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//-
+void Dlg13InstituteDCNew::UpdateFrame15()
+{
+ DC13InsCmdBuffer[0] = 0x86;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//Сӳ
+void Dlg13InstituteDCNew::UpdateFrame16(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x87;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//ӳ
+void Dlg13InstituteDCNew::UpdateFrame17(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x89;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//OSD on/off
+void Dlg13InstituteDCNew::UpdateFrame18(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xA1;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//ͼл
+void Dlg13InstituteDCNew::UpdateFrame19(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xA3;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//л
+void Dlg13InstituteDCNew::UpdateFrame20()
+{
+ DC13InsCmdBuffer[0] = 0xB5;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//л
+void Dlg13InstituteDCNew::UpdateFrame21()
+{
+ DC13InsCmdBuffer[0] = 0xB6;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//ͼȶ
+void Dlg13InstituteDCNew::UpdateFrame22(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xB7;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//ͼȶ
+void Dlg13InstituteDCNew::UpdateFrame23(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xB8;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//ɼ1
+void Dlg13InstituteDCNew::UpdateFrame24(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xBB;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+
+}
+//ɼ2
+void Dlg13InstituteDCNew::UpdateFrame25(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xBC;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ɼ3
+void Dlg13InstituteDCNew::UpdateFrame26(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xBD;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ɼ
+void Dlg13InstituteDCNew::UpdateFrame27(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xBE;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ʼ
+void Dlg13InstituteDCNew::UpdateFrame28(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xC1;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//ֹͣ
+void Dlg13InstituteDCNew::UpdateFrame29(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xC3;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//һ
+void Dlg13InstituteDCNew::UpdateFrame30(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0xC5;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//Դ
+void Dlg13InstituteDCNew::UpdateFrame31(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x92;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//Դ
+void Dlg13InstituteDCNew::UpdateFrame32(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x93;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//
+void Dlg13InstituteDCNew::UpdateFrame33(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x94;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//
+void Dlg13InstituteDCNew::UpdateFrame34(int &sendEnd)
+{
+ if(sendEnd==0)
+ {
+ DC13InsCmdBuffer[0] = 0x95;
+ DC13InsCmdBuffer[1] = 0x00;
+ DC13InsCmdBuffer[2] = 0x00;
+ DC13InsCmdBuffer[3] = 0x00;
+ DC13InsCmdBuffer[4] = 0x00;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+ }
+ else
+ g_bBindData = false;
+}
+//+Χ50~-110
+void Dlg13InstituteDCNew::UpdateFrame35()
+{
+ DC13InsCmdBuffer[0] = 0x19;
+ if(PitchControl<0x1388)//5000
+ {
+ PitchRecord = PitchRecord+100;
+ }
+ else
+ {
+ PitchRecord = 0x1388;
+ }
+ //DirRecord = DirRecord;
+ PitchControl = PitchRecord;
+ DirControl = DirRecord;
+ DC13InsCmdBuffer[1] = PitchControl;
+ DC13InsCmdBuffer[2] = PitchControl>>8;
+ DC13InsCmdBuffer[3] = DirControl;
+ DC13InsCmdBuffer[4] = DirControl>>8;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//-
+void Dlg13InstituteDCNew::UpdateFrame36()
+{
+ DC13InsCmdBuffer[0] = 0x19;
+ INT16 MinPitch = 0xD508;//-11000
+ if(PitchRecord>MinPitch)
+ {
+ PitchRecord = PitchRecord-100;
+ }
+ else
+ {
+ PitchRecord = MinPitch;
+ }
+ //DirRecord = DirRecord;
+ PitchControl = PitchRecord;
+ DirControl = DirRecord;
+ DC13InsCmdBuffer[1] = PitchControl;
+ DC13InsCmdBuffer[2] = PitchControl>>8;
+ DC13InsCmdBuffer[3] = DirControl;
+ DC13InsCmdBuffer[4] = DirControl>>8;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//λ+Χ180~-180
+void Dlg13InstituteDCNew::UpdateFrame37()
+{
+ DC13InsCmdBuffer[0] = 0x19;
+ //PitchRecord = PitchRecord;
+ if(DirRecord<0x4650)//18000
+ {
+ DirRecord = DirRecord+100;
+ }
+ else
+ {
+ DirRecord = 0x4650;
+ }
+ PitchControl = PitchRecord;
+ DirControl = DirRecord;
+ DC13InsCmdBuffer[1] = PitchControl;
+ DC13InsCmdBuffer[2] = PitchControl>>8;
+ DC13InsCmdBuffer[3] = DirControl;
+ DC13InsCmdBuffer[4] = DirControl>>8;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+//λ-
+void Dlg13InstituteDCNew::UpdateFrame38()
+{
+ DC13InsCmdBuffer[0] = 0x19;
+ //PitchRecord = PitchRecord;
+ INT16 MinDir = 0xb9b0;
+ if(DirRecord>MinDir)//-18000
+ {
+ DirRecord = DirRecord-100;
+ }
+ else
+ {
+ DirRecord = MinDir;
+ }
+ PitchControl = PitchRecord;
+ DirControl = DirRecord;
+ DC13InsCmdBuffer[1] = PitchControl;
+ DC13InsCmdBuffer[2] = PitchControl>>8;
+ DC13InsCmdBuffer[3] = DirControl;
+ DC13InsCmdBuffer[4] = DirControl>>8;
+ UpdateDataZ70_13Ins();
+
+ g_bBindData = true;
+}
+
+//ť¡̧˺
+BOOL Dlg13InstituteDCNew::PreTranslateMessage(MSG* pMsg)
+{
+ if(g_IsSending)
+ {
+ // TODO: ڴרô/û
+ if(pMsg->message == WM_LBUTTONDOWN)//
+ {
+ Update13InsNewCmdBuffer(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);
+}
+
diff --git a/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.h b/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.h
new file mode 100644
index 0000000..ccb4d1b
--- /dev/null
+++ b/Src/CH91PayloadSoftware/Dlg13InstituteDCNew.h
@@ -0,0 +1,106 @@
+#pragma once
+#include "resource.h"
+#include "global.h"
+#include
+#include "afxwin.h"
+#include "DCFrameCkCmd.h"
+#include "CYHMudpSend.h"//Զ鲥
+#include "CMDBtn.h"
+// Dlg13InstituteDCNew Ի
+
+
+class Dlg13InstituteDCNew : public CDialogEx
+{
+ DECLARE_DYNAMIC(Dlg13InstituteDCNew)
+
+public:
+ Dlg13InstituteDCNew(CWnd* pParent = NULL); // 캯
+ virtual ~Dlg13InstituteDCNew();
+
+ // Ի
+ enum { IDD = IDD_DIALOG_DC_13INSTITUTE_NEW };
+ virtual BOOL OnInitDialog();
+
+protected:
+ virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧
+
+ DECLARE_MESSAGE_MAP()
+public:
+ void TimeStep(DWORD); //ʱ
+ int mTimerId; //ʱID
+ int num; //ָ
+ bool injectstart; //װʼı־
+public:
+ UINT8 SwitchCmd; //ָ
+ INT16 PitchControl; //
+ INT16 DirControl; //λ
+ INT16 PitchRecord; //¼
+ INT16 DirRecord; //λ¼
+
+public:
+ void Update13InsNewCmdBuffer(HWND);//¿ָЭ
+ void UpdateDataZ70_13Ins();//buffer֡ṹ
+ void UpdateFrame(int&);
+ void UpdateFrame2(int&);
+ void UpdateFrame3(int&);
+ void UpdateFrame4(int&);
+ void UpdateFrame5();
+ void UpdateFrame6();
+ void UpdateFrame7();
+ void UpdateFrame8();
+ void UpdateFrame9(int&);
+ void UpdateFrame10(int&);
+ void UpdateFrame11(int&);
+ void UpdateFrame12(int&);
+ void UpdateFrame13(int&);
+ void UpdateFrame14();
+ void UpdateFrame15();
+ void UpdateFrame16(int&);
+ void UpdateFrame17(int&);
+ void UpdateFrame18(int&);
+ void UpdateFrame19(int&);
+ void UpdateFrame20();
+ void UpdateFrame21();
+ void UpdateFrame22(int&);
+ void UpdateFrame23(int&);
+ void UpdateFrame24(int&);
+ void UpdateFrame25(int&);
+ void UpdateFrame26(int&);
+ void UpdateFrame27(int&);
+ void UpdateFrame28(int&);
+ void UpdateFrame29(int&);
+ void UpdateFrame30(int&);
+ void UpdateFrame31(int&);
+ void UpdateFrame32(int&);
+ void UpdateFrame33(int&);
+ void UpdateFrame34(int&);
+ void UpdateFrame35();//+Χ50~-110
+ void UpdateFrame36();//-
+ void UpdateFrame37();//λ+Χ180~-180
+ void UpdateFrame38();//λ-
+ //void UpdateFrame39(int&);
+ //void UpdateFrame40(int&);
+ //void UpdateDC13Action(int);
+
+public:
+ HANDLE hCheckThread;//߳
+ DWORD ThreadCheckIDRegion;
+ afx_msg LRESULT OnUpdate13DCFrame(WPARAM wParam, LPARAM lParam);
+ int InfraredOrVisibleLight;//ɼл
+ virtual BOOL PreTranslateMessage(MSG* pMsg);
+ //CFont m_oFont;//
+
+ CMFCButton DC13InsBtn[38];
+ CCMDBtn m_DCFlyCmd[12];
+ double Param1;
+ double Param2;
+ BYTE DC13InsCmdBuffer[5];
+public:
+ CBrush m_brush;
+ CFont m_font;
+public:
+ //afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
+ CDCFrameCkCmdFrame DCFrameCkCmd13;//עָӿط֡---13
+ CYHMudpSend m_MudpSend;
+
+};
diff --git a/Src/CH91PayloadSoftware/DlgWHTJDCNew.cpp b/Src/CH91PayloadSoftware/DlgWHTJDCNew.cpp
new file mode 100644
index 0000000..59d01d2
--- /dev/null
+++ b/Src/CH91PayloadSoftware/DlgWHTJDCNew.cpp
@@ -0,0 +1,1712 @@
+// DlgWHTJDCNew.cpp : ʵļ
+
+#include "stdafx.h"
+#include "DlgWHTJDCNew.h"
+#include "afxdialogex.h"
+
+/*鲥*/
+#include
+#include
+#include
+
+
+//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_bBindDatafasleѭ
+ //::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("dz"));
+ ((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("dz"));
+ ((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);
+}
diff --git a/Src/CH91PayloadSoftware/DlgWHTJDCNew.h b/Src/CH91PayloadSoftware/DlgWHTJDCNew.h
new file mode 100644
index 0000000..035774b
--- /dev/null
+++ b/Src/CH91PayloadSoftware/DlgWHTJDCNew.h
@@ -0,0 +1,126 @@
+#pragma once
+#include "resource.h"
+#include "global.h"
+#include
+#include "afxwin.h"
+#include "DCFrameCkCmd.h"
+#include "CYHMudpSend.h"//Զ鲥
+#include "CMDBtn.h"
+//#include "MCBtn.h"
+// DlgWHTJDCNew Ի
+
+class DlgWHTJDCNew : public CDialogEx
+{
+ DECLARE_DYNAMIC(DlgWHTJDCNew)
+
+public:
+ DlgWHTJDCNew(CWnd* pParent = NULL); // 캯
+ virtual ~DlgWHTJDCNew();
+
+ // Ի
+ enum { IDD = IDD_DIALOG_DC_WuHanTJ_NEW };
+ virtual BOOL OnInitDialog();
+
+protected:
+ virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧
+
+ DECLARE_MESSAGE_MAP()
+
+public:
+ CCMDBtn m_DCFlyCmd[12];
+ CMFCButton DC13InsBtn[44];
+ BYTE TJDCCmdBuffer[15];
+public:
+ UINT8 SwitchCmd; //ָ
+ INT16 PitchControl; //
+ INT16 DirControl; //λ
+ INT16 PitchRecord; //¼
+ INT16 DirRecord; //λ¼
+ double Param1;
+ double Param2;
+ UINT8 CharacterSuperpositionSet;//ַ
+ INT16 DirAndPitchCrlSize;//λ
+ CString m_TarTakTemSizeSetWidth;
+ CString m_TarTakTemSizeSetHigth;
+ UINT8 FogThroughMode; //ģʽ
+ UINT8 PseudoColorSwitch;//αɫл
+ CString m_FocalDistanceSet;//
+ CString m_DigitalGuidancePitch;//ģʽ
+ CString m_DigitalGuidanceDir;//ģʽ λ
+ CString m_SCanModelAngle;//ɨ Ƕ
+ CString m_SCanModelSpeed;//ɨ ٶ
+ CString m_DirSCanSetCentre;//λɨ
+ CString m_DirSCanSetRange;//λɨ Χ
+ CString m_PitchSCanSetCentre;//ɨ
+ CString m_PitchSCanSetRange;//ɨ Χ
+ int FocalDistanceSIZE;///䱶ȼ1-7
+public:
+ void UpdateWHTJDCCmdBuffer(HWND);//¿ָЭ
+ void DlgWHTJDCNew::UpdateDataZ70_TJDC();//עָZ70
+ void UpdateFrame(); //+
+ void UpdateFrame2(); //-
+ void UpdateFrame3(); //λ+
+ void UpdateFrame4(); //λ-
+ void UpdateFrame5(int&); //λ
+ void UpdateFrame6(int&); //ͼл
+ void UpdateFrame7(); //+
+ void UpdateFrame8(); //-
+ void UpdateFrame9(int&); //ɼ
+ void UpdateFrame10(int&); //һ
+ void UpdateFrame11(int&); //ֹͣ
+ void UpdateFrame12(int&); //ַ
+ void UpdateFrame13(int&); //ѡ
+ void UpdateFrame13_1(); //ѡִ
+
+ void UpdateFrame14(int&); //ò
+ void UpdateFrame15(int&); //μ
+ void UpdateFrame16(int&); //
+ void UpdateFrame17(int&); //ʼ¼
+ void UpdateFrame18(int&); //ֹͣ¼
+ void UpdateFrame19(int&); //ȡ
+ void UpdateFrame20(int&); //ģС
+ void UpdateFrame21(int&); //ѯ
+ void UpdateFrame22(int&); //
+ void UpdateFrame23(int&); //αɫл
+ void UpdateFrame24(int&); //Ų
+ void UpdateFrame25(int&); //ӷŴ
+ void UpdateFrame26(int&); //ͼǿ
+ void UpdateFrame27(int&); //̨ɨ
+ void UpdateFrame28(int&); //ֱ
+ void UpdateFrame29(int&); //ֹͣ
+ void UpdateFrame30(); //䱶+
+ void UpdateFrame31(int&); //ģʽ
+ void UpdateFrame32(int&); //ŷ
+ void UpdateFrame33(int&); //λ涯
+ void UpdateFrame34(); //䱶-
+ void UpdateFrame35(int&); //նģʽ
+ void UpdateFrame36(int&); //
+ void UpdateFrame37(int&); //ղģʽ
+ void UpdateFrame38(int&); //λ
+ void UpdateFrame39(int&); // 72
+ void UpdateFrame40(int&); //ɨ
+ void UpdateFrame41(int&); //ָ̬ 7C
+ void UpdateFrame43(int&); //λɨ
+ void UpdateFrame44(int&); //ɨ
+
+ void UpdateFrame100(int&); //Ϊ1
+ void UpdateFrame101(int&); //Ϊ2
+ void UpdateTJDCAction(int); //Ϊ
+
+public:
+ HANDLE hCheckThread;//߳
+ DWORD ThreadCheckIDRegion;
+ afx_msg LRESULT OnUpdateWHTJDCFrame(WPARAM wParam, LPARAM lParam);
+ int InfraredOrVisibleLight;//ɼл
+ virtual BOOL PreTranslateMessage(MSG* pMsg);
+private:
+ CBrush m_brush;
+ //CFont m_font;
+public:
+ CDCFrameCkCmdFrame DCFrameCkCmdWHTJ;//עָӿط֡---人
+
+
+
+ afx_msg void OnCbnSelchangeComboTjdc2();//ŷƲѡ
+ afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
+};
diff --git a/Src/CH91PayloadSoftware/Global.cpp b/Src/CH91PayloadSoftware/Global.cpp
index 1faf0cf..d068a56 100644
--- a/Src/CH91PayloadSoftware/Global.cpp
+++ b/Src/CH91PayloadSoftware/Global.cpp
@@ -252,6 +252,13 @@ void CALLBACK GetEOImgCenterOffset(CPoint offset, int flag)
{
g_payloadCtrlProtocol = 11;
g_TrackOffset = offset;
+
+ //-ѡ
+ if(SelectPointTrack)
+ {
+ g_TrackOffset = offset;
+ ::SendMessageA(DlgDCOverroll_Hwnd, WM_PROCESS_DC_CMD, 0, 2);
+ }
}
// Ҽɼ⣬תΪֶ
@@ -506,6 +513,177 @@ void CH96_h264DecodeResultCallbackFun(unsigned char* data,int width,int height)
ReleaseMutex(g_hMutex_DisplayVideoCH96);
}
+//void ProcessCH96Data()
+//{
+// while(g_bProcessDataFlag)
+// {
+// try
+// {
+// WaitForSingleObject(g_hMutex_ProcessDataCH96, INFINITE);
+// // ǷɹݸƵʱλã
+// bool bHaveRelease = false;
+// // С֡
+// if (g_validDataLen >= 512)
+// {
+// //if(DCTypeSelected_video==2)//h264
+// //{
+// // if (g_CH96_h264decoder != nullptr)
+// // {
+// // g_CH96_h264decoder->decoding(g_receiveDataBuffer , 2560);
+// // }
+// // if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+// // {
+// // fwrite(g_receiveDataBuffer, static_cast(1), 2560, g_pFileSaveVideoDataCH96); // д
+// // }
+// //}
+// //else//13人
+// //{
+//
+// if (g_CH96_h264decoder != nullptr)
+// {
+// g_CH96_h264decoder->decoding(g_receiveDataBuffer , 2560);
+// }
+// // ֡ͷ
+// int _head = 0; // head 0ʼ
+// bool _bfindhead = false;
+// int SetMaxLoc = g_validDataLen - 256; // ҵβ256ֽڴ
+//
+// unsigned char midBuffer[256];
+//
+// for (_head = 0; ((_head < SetMaxLoc) && (_bfindhead == false)); _head++)
+// {
+// if (g_receiveDataBuffer[_head + 0] == 0xEB &&
+// g_receiveDataBuffer[_head + 1] == 0x90)
+// {
+// _bfindhead = true;
+// break; // forѭ
+// }
+// } // for ѭ֡ͷ
+//
+// // ҵ֡ͷ
+// if (_bfindhead == true)
+// {
+// // ݸ
+// memcpy(midBuffer, g_receiveDataBuffer + _head, 256);
+// // ڴ
+// unsigned int frameLen = 256;
+// g_validDataLen = g_validDataLen - _head - frameLen;
+// memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head + frameLen, g_validDataLen);
+// memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
+// ReleaseMutex(g_hMutex_ProcessDataCH96);
+// // ݳɹƵʱλ
+// bHaveRelease = true;
+//
+// //if(DCTypeSelected_video==0)//13
+// //{
+// // ң
+// if (midBuffer[4] == 0x2A)
+// {
+//
+// }
+// //
+// else if (midBuffer[4] == 0x50)
+// {
+// // ȡݣֻе9-158ֽڣ150ֽڣ
+// WaitForSingleObject(g_hMutex_SaveFJData, INFINITE);
+// memcpy(&g_CH96FJData, midBuffer + 8, 150);
+// // ת
+// TransCH96FJData(g_CH96TransFJData, g_CH96FJData);
+// // תΪ鱨ø
+// TransCH96FJDatatoQBData(g_CH96QBData, g_CH96TransFJData);
+// ReleaseMutex(g_hMutex_SaveFJData);
+// // 鲥ҳʾFJ
+// ::PostMessageA(g_MulticastSocketReceiveDlgHwnd, WN_SHOW_CH96_FJDATA, 0, 0);
+// // Ϣʾ
+// //::PostMessageA(g_mainDlgHwnd, WM_SHOW_CH96_INFO, 0, 0);
+// // ʾֵ
+// ::PostMessageA(g_QBTargetTrackFunctionsHwnd, WM_SHOW_LASERDIS_QBFUNCTIONSDLG, 0, 0);
+// // µͼ״̬
+// ::PostMessageA(g_MapGuideHwnd, WM_UPDATA_GOOGLEMAP, 0, 0);
+// }
+// // ͼ
+// else if (midBuffer[4] == 0xD5)
+// {
+// //
+// if (g_CH96_h264decoder != nullptr)
+// {
+// g_CH96_h264decoder->decoding(midBuffer + 8, 248);
+// g_UDPTrans2Server.WriteBuffer(midBuffer + 8, 248);
+// }
+// /*
+// if(g_tcpStarted==true){
+//
+// memcpy(g_tcpData+26,midBuffer + 8, 248);
+// //֡
+// memcpy(g_tcpData+5,&g_frameCountTX,4);
+// g_frameCountTX++;
+// unsigned int crc_;
+// crc_=CreateCRC2(g_tcpData+2, 272);
+// memcpy(g_tcpData+274,&crc_,2);
+// g_TCPYYDT.WriteBuffer(g_tcpData,276);
+//
+// //g_TCPYYDT.WriteBuffer(g_tcpData + 5,4);
+// //g_TCPYYDT.WriteBuffer(g_tcpData + 26,248);
+// }
+// */
+//
+// // 洢
+// // д뱾ļ
+// if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+// {
+// fwrite(midBuffer + 8, static_cast(1), 248, g_pFileSaveVideoDataCH96); // д
+// }
+// }
+// //
+// else
+// {
+// // do nothing
+// }
+// //}
+//
+//
+// //else if(DCTypeSelected_video==1)//人 EB 90 H264
+// //{
+// // if (g_CH96_h264decoder != nullptr)
+// // {
+// // g_CH96_h264decoder->decoding(midBuffer + 2, 254);
+// // }
+// // if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+// // {
+// // fwrite(midBuffer + 2, static_cast(1), 254, g_pFileSaveVideoDataCH96); // д
+// // }
+// //}
+//
+//
+// }
+// // ûҵ֡ͷ
+// else
+// {
+// // head֮ǰɾ
+// g_validDataLen = g_validDataLen - _head;
+// memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head, g_validDataLen);
+// memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
+// }
+//
+//
+// //}
+//
+//
+//
+// }
+//
+// if (bHaveRelease == false)
+// {
+// ReleaseMutex(g_hMutex_ProcessDataCH96);
+// }
+// }
+// catch(...)
+// {
+// //ReleaseMutex(g_hMutex_ProcessDataCH96);
+// }
+// }
+//}
+
void ProcessCH96Data()
{
while(g_bProcessDataFlag)
@@ -518,108 +696,150 @@ void ProcessCH96Data()
// С֡
if (g_validDataLen >= 512)
{
- // ֡ͷ
- int _head = 0; // head 0ʼ
- bool _bfindhead = false;
- int SetMaxLoc = g_validDataLen - 256; // ҵβ256ֽڴ
-
- unsigned char midBuffer[256];
- for (_head = 0; ((_head < SetMaxLoc) && (_bfindhead == false)); _head++)
+ if(DCTypeSelected_video==2)//h264
{
- if (g_receiveDataBuffer[_head + 0] == 0xEB &&
- g_receiveDataBuffer[_head + 1] == 0x90)
+ if (g_CH96_h264decoder != nullptr)
{
- _bfindhead = true;
- break; // forѭ
+ g_CH96_h264decoder->decoding(g_receiveDataBuffer , g_validDataLen);
}
- } // for ѭ֡ͷ
+ if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+ {
+ fwrite(g_receiveDataBuffer, static_cast(1), g_validDataLen, g_pFileSaveVideoDataCH96); // д
+ }
+ g_validDataLen = 0;
+ }
+
- // ҵ֡ͷ
- if (_bfindhead == true)
+ else//13人
{
- // ݸ
- memcpy(midBuffer, g_receiveDataBuffer + _head, 256);
- // ڴ
- unsigned int frameLen = 256;
- g_validDataLen = g_validDataLen - _head - frameLen;
- memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head + frameLen, g_validDataLen);
- memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
- ReleaseMutex(g_hMutex_ProcessDataCH96);
- // ݳɹƵʱλ
- bHaveRelease = true;
- // ң
- if (midBuffer[4] == 0x2A)
- {
+ // ֡ͷ
+ int _head = 0; // head 0ʼ
+ bool _bfindhead = false;
+ int SetMaxLoc = g_validDataLen - 256; // ҵβ256ֽڴ
- }
- //
- else if (midBuffer[4] == 0x50)
- {
- // ȡݣֻе9-158ֽڣ150ֽڣ
- WaitForSingleObject(g_hMutex_SaveFJData, INFINITE);
- memcpy(&g_CH96FJData, midBuffer + 8, 150);
- // ת
- TransCH96FJData(g_CH96TransFJData, g_CH96FJData);
- // תΪ鱨ø
- TransCH96FJDatatoQBData(g_CH96QBData, g_CH96TransFJData);
- ReleaseMutex(g_hMutex_SaveFJData);
- // 鲥ҳʾFJ
- ::PostMessageA(g_MulticastSocketReceiveDlgHwnd, WN_SHOW_CH96_FJDATA, 0, 0);
- // Ϣʾ
- //::PostMessageA(g_mainDlgHwnd, WM_SHOW_CH96_INFO, 0, 0);
- // ʾֵ
- ::PostMessageA(g_QBTargetTrackFunctionsHwnd, WM_SHOW_LASERDIS_QBFUNCTIONSDLG, 0, 0);
- // µͼ״̬
- ::PostMessageA(g_MapGuideHwnd, WM_UPDATA_GOOGLEMAP, 0, 0);
- }
- // ͼ
- else if (midBuffer[4] == 0xD5)
+ unsigned char midBuffer[256];
+
+ for (_head = 0; ((_head < SetMaxLoc) && (_bfindhead == false)); _head++)
{
- //
- if (g_CH96_h264decoder != nullptr)
+ if (g_receiveDataBuffer[_head + 0] == 0xEB &&
+ g_receiveDataBuffer[_head + 1] == 0x90)
{
- g_CH96_h264decoder->decoding(midBuffer + 8, 248);
- g_UDPTrans2Server.WriteBuffer(midBuffer + 8, 248);
+ _bfindhead = true;
+ break; // forѭ
}
- /*
- if(g_tcpStarted==true){
+ } // for ѭ֡ͷ
+
+ // ҵ֡ͷ
+ if (_bfindhead == true)
+ {
+ // ݸ
+ memcpy(midBuffer, g_receiveDataBuffer + _head, 256);
+ // ڴ
+ unsigned int frameLen = 256;
+ g_validDataLen = g_validDataLen - _head - frameLen;
+ memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head + frameLen, g_validDataLen);
+ memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
+ ReleaseMutex(g_hMutex_ProcessDataCH96);
+ // ݳɹƵʱλ
+ bHaveRelease = true;
+
+ if(DCTypeSelected_video==0)//13
+ {
+ // ң
+ if (midBuffer[4] == 0x2A)
+ {
+
+ }
+ //
+ else if (midBuffer[4] == 0x50)
+ {
+ // ȡݣֻе9-158ֽڣ150ֽڣ
+ WaitForSingleObject(g_hMutex_SaveFJData, INFINITE);
+ memcpy(&g_CH96FJData, midBuffer + 8, 150);
+ // ת
+ TransCH96FJData(g_CH96TransFJData, g_CH96FJData);
+ // תΪ鱨ø
+ TransCH96FJDatatoQBData(g_CH96QBData, g_CH96TransFJData);
+ ReleaseMutex(g_hMutex_SaveFJData);
+ // 鲥ҳʾFJ
+ ::PostMessageA(g_MulticastSocketReceiveDlgHwnd, WN_SHOW_CH96_FJDATA, 0, 0);
+ // Ϣʾ
+ //::PostMessageA(g_mainDlgHwnd, WM_SHOW_CH96_INFO, 0, 0);
+ // ʾֵ
+ ::PostMessageA(g_QBTargetTrackFunctionsHwnd, WM_SHOW_LASERDIS_QBFUNCTIONSDLG, 0, 0);
+ // µͼ״̬
+ ::PostMessageA(g_MapGuideHwnd, WM_UPDATA_GOOGLEMAP, 0, 0);
+ }
+ // ͼ
+ else if (midBuffer[4] == 0xD5)
+ {
+ //
+ if (g_CH96_h264decoder != nullptr)
+ {
+ g_CH96_h264decoder->decoding(midBuffer + 8, 248);
+ g_UDPTrans2Server.WriteBuffer(midBuffer + 8, 248);
+ }
+ /*
+ if(g_tcpStarted==true){
- memcpy(g_tcpData+26,midBuffer + 8, 248);
- //֡
- memcpy(g_tcpData+5,&g_frameCountTX,4);
- g_frameCountTX++;
- unsigned int crc_;
- crc_=CreateCRC2(g_tcpData+2, 272);
- memcpy(g_tcpData+274,&crc_,2);
- g_TCPYYDT.WriteBuffer(g_tcpData,276);
-
- //g_TCPYYDT.WriteBuffer(g_tcpData + 5,4);
- //g_TCPYYDT.WriteBuffer(g_tcpData + 26,248);
+ memcpy(g_tcpData+26,midBuffer + 8, 248);
+ //֡
+ memcpy(g_tcpData+5,&g_frameCountTX,4);
+ g_frameCountTX++;
+ unsigned int crc_;
+ crc_=CreateCRC2(g_tcpData+2, 272);
+ memcpy(g_tcpData+274,&crc_,2);
+ g_TCPYYDT.WriteBuffer(g_tcpData,276);
+
+ //g_TCPYYDT.WriteBuffer(g_tcpData + 5,4);
+ //g_TCPYYDT.WriteBuffer(g_tcpData + 26,248);
+ }
+ */
+
+ // 洢
+ // д뱾ļ
+ if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+ {
+ fwrite(midBuffer + 8, static_cast(1), 248, g_pFileSaveVideoDataCH96); // д
+ }
+ }
+ //
+ else
+ {
+ // do nothing
+ }
}
- */
- // 洢
- // д뱾ļ
- if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+
+ else if(DCTypeSelected_video==1)//人 EB 90 H264
{
- fwrite(midBuffer + 8, static_cast(1), 248, g_pFileSaveVideoDataCH96); // д
+ if (g_CH96_h264decoder != nullptr)
+ {
+ g_CH96_h264decoder->decoding(midBuffer + 2, 254);
+ }
+ if (g_pFileSaveVideoDataCH96 != NULL && g_bVideoCapture == TRUE)
+ {
+ fwrite(midBuffer + 2, static_cast(1), 254, g_pFileSaveVideoDataCH96); // д
+ }
}
+
+
}
- //
+ // ûҵ֡ͷ
else
{
- // do nothing
+ // head֮ǰɾ
+ g_validDataLen = g_validDataLen - _head;
+ memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head, g_validDataLen);
+ memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
}
+
+
}
- // ûҵ֡ͷ
- else
- {
- // head֮ǰɾ
- g_validDataLen = g_validDataLen - _head;
- memcpy(g_receiveDataBuffer_middle, g_receiveDataBuffer + _head, g_validDataLen);
- memcpy(g_receiveDataBuffer, g_receiveDataBuffer_middle, g_validDataLen);
- }
+
+
+
}
if (bHaveRelease == false)
@@ -633,6 +853,7 @@ void ProcessCH96Data()
}
}
}
+
// ȡCH96
void TransCH96FJData(Data96TXD &dst, Protocal96TXD &src)
{
@@ -2770,6 +2991,11 @@ void ProcessH264VideoData()
{
g_CH96_h264decoder->decoding(g_receiveDataBufferSocket, g_validDataLenSocket);
}
+ // ս
+ if (g_CH96_h264decoder != nullptr)
+ {
+ g_CH96_h264decoder->decoding(g_receiveDataBufferSocket , 25600);
+ }
}
/*if (bHaveRelease == false)
@@ -2799,4 +3025,69 @@ void GetSerialPortNumber(char *port, const CString portID)
memcpy( port, str.GetBuffer( 255 ), str.GetLength() );
str.ReleaseBuffer();
+}
+
+//+
+bool IsNumber(CString str)
+{
+ str = str.Trim();
+ if (str == "")
+ {
+ return false;
+ }
+ if (str[0] == '-') //Ϊ
+ {
+ str = str.Mid(1);
+ }
+ if (str.SpanIncluding(_T("0123456789.")) != str)
+ {
+ return false;
+ }
+ return true;
+}
+//
+bool IsPositiveNumber(CString str)
+{
+ str = str.Trim();
+ if(str == "")
+ {
+ return false;
+ }
+ if(str.SpanIncluding(_T("0123456789.")) != str)
+ {
+ return false;
+ }
+ return true;
+}
+//
+bool IsInteger(CString str)
+{
+ str = str.Trim();
+ if (str == "")
+ {
+ return false;
+ }
+ if (str[0] == '-') //Ϊ
+ {
+ str = str.Mid(1);
+ }
+ if (str.SpanIncluding(_T("0123456789")) != str)
+ {
+ return false;
+ }
+ return true;
+}
+//
+bool IsPositiveInteger(CString str)
+{
+ str = str.Trim();
+ if (str == "")
+ {
+ return false;
+ }
+ if (str.SpanIncluding(_T("0123456789")) != str)
+ {
+ return false;
+ }
+ return true;
}
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/Global.h b/Src/CH91PayloadSoftware/Global.h
index be0ff31..528e912 100644
--- a/Src/CH91PayloadSoftware/Global.h
+++ b/Src/CH91PayloadSoftware/Global.h
@@ -3,7 +3,7 @@
#include "GlobalMember.h" // ȫֱ
#include "MUDP.h"
#include "FrameFKU_Camera.h"
-
+#include "MulticastSocket.h"
#define SAFE_DELETE(p) { if(p) { delete (p); (p) = nullptr; } }
#define SAFE_DELETE_ARRAY(p) { if(p) { delete[] (p); (p) = nullptr; } }
@@ -12,6 +12,7 @@ extern CFrameFK_U_CAMERA g_FrameCamera;
extern CMUDP g_MUDPCamera;
extern BOOL g_IsSending;
+
// ȡָʣռ
extern long GetFreeVolumeLen(char *p = "C");
// ܣȡǰĿ¼
@@ -136,4 +137,9 @@ extern void GetH264VideoDataFromNet();
extern void SocketReceiveH264VideoData(const void* buffer, int length);
extern void ProcessH264VideoData();
-extern void GetSerialPortNumber(char *port, const CString portID);//ֻ㵽Ĵ
\ No newline at end of file
+extern void GetSerialPortNumber(char *port, const CString portID);//ֻ㵽Ĵ
+
+extern bool IsNumber(CString str);//+
+extern bool IsPositiveNumber(CString str);//
+extern bool IsInteger(CString str);//
+extern bool IsPositiveInteger(CString str);//
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/GlobalMember.cpp b/Src/CH91PayloadSoftware/GlobalMember.cpp
index 08a9c95..9e5819a 100644
--- a/Src/CH91PayloadSoftware/GlobalMember.cpp
+++ b/Src/CH91PayloadSoftware/GlobalMember.cpp
@@ -487,4 +487,16 @@ CString gComBaudItems[BAUDITEMNUM] =
"56000",
"57600",
"115200"
-};
\ No newline at end of file
+};
+bool g_bBindData = false;//Ƿװı־
+
+//13տ
+int g_commandNum; //ָ
+CDCFrameCkCmdFrame g_DCFrameCkCmd13; //עָӿط֡---13
+//人տ
+int g_WHTJDCCmdNum; //ָ
+int DCTypeSelected_video = 0; //ѡ_ͼ
+bool SelectPointTrack;//ѡ
+HWND DlgDCOverroll_Hwnd; //DCOverrollDlg
+float m_wndShowEO_Position_Max_x; //ͼʾֵx
+float m_wndShowEO_Position_Max_y; //ͼʾֵy
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/GlobalMember.h b/Src/CH91PayloadSoftware/GlobalMember.h
index 225c9a1..4d417bd 100644
--- a/Src/CH91PayloadSoftware/GlobalMember.h
+++ b/Src/CH91PayloadSoftware/GlobalMember.h
@@ -12,6 +12,7 @@ using namespace cv;
#include "QBStru.h"
#include "FrameIMP_DOWN.h"
#include "DlgIMP.h"
+#include "DCFrameCkCmd.h"
//
typedef unsigned __int8 UINT8;
@@ -498,4 +499,20 @@ extern bool IMPDlgWindowVisible;//IMP
const unsigned BAUDITEMNUM =10; //Ŀ
const unsigned NCOUNTER=500; //ʧܳԴ
//б
-extern CString gComBaudItems[BAUDITEMNUM];
\ No newline at end of file
+extern CString gComBaudItems[BAUDITEMNUM];
+
+extern bool g_bBindData;//Ƿװı־
+
+//13տ
+#define WM_13DC_UPDAFRAME WM_USER + 148 //
+extern int g_commandNum; //ָ
+extern CDCFrameCkCmdFrame g_DCFrameCkCmd13; //עָӿط֡---13
+//人տ
+#define WM_WHTJDC_UPDAFRAME WM_USER + 149 //
+extern int g_WHTJDCCmdNum; //ָ
+extern int DCTypeSelected_video; //ѡ_ͼ
+extern bool SelectPointTrack;//ѡ
+extern HWND DlgDCOverroll_Hwnd; //DCOverrollDlg
+
+extern float m_wndShowEO_Position_Max_x; //ͼʾֵx
+extern float m_wndShowEO_Position_Max_y; //ͼʾֵy
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/GlobalMessage.h b/Src/CH91PayloadSoftware/GlobalMessage.h
index 85403a3..36747aa 100644
--- a/Src/CH91PayloadSoftware/GlobalMessage.h
+++ b/Src/CH91PayloadSoftware/GlobalMessage.h
@@ -96,4 +96,8 @@ const UINT WM_OUTPUT_QUADRANGLE = WM_USER + 6007;
#define WM_UPDATE_IMPDOWN_CHECKED WM_USER + 7008
#define WM_UPDATE_IMP_SERIAL_CONNECT WM_USER + 7009
+
+//
+#define WM_PROCESS_DC_CMD WM_USER + 7010
+
#endif
\ No newline at end of file
diff --git a/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.cpp b/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.cpp
index 754404d..e651d99 100644
--- a/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.cpp
+++ b/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.cpp
@@ -69,13 +69,13 @@ CMulticastSocketReceiveDlg::~CMulticastSocketReceiveDlg()
void CMulticastSocketReceiveDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
- DDX_Control(pDX, IDC_IPADDRESS4,m_IPAddress_MultiCastIP);
+ DDX_Control(pDX, IDC_IPADDRESS4,m_IPAddress_MultiCastIP);//IP
DDX_Radio(pDX, IDC_RADIO_L, m_iVideoSrc);
DDX_CBString(pDX, IDC_COMBO_PORT_IMP, mComPortIMP);
DDX_CBString(pDX, IDC_COMBO_BAUD_IMP, mComBaudIMP);
-
+
}
@@ -94,6 +94,9 @@ BEGIN_MESSAGE_MAP(CMulticastSocketReceiveDlg, CDialogEx)
ON_BN_CLICKED(IDC_BTN_IMP_SERIAL_CONNECT, &CMulticastSocketReceiveDlg::OnBnClickedBtnImpSerialConnect)
ON_BN_CLICKED(IDC_BTN_IMP_SERIAL_DISCONNECT, &CMulticastSocketReceiveDlg::OnBnClickedBtnImpSerialDisconnect)
+ ON_BN_CLICKED(IDC_RADIO_DC_13Ins, &CMulticastSocketReceiveDlg::OnBnClickedRadioDc13ins)
+ ON_BN_CLICKED(IDC_RADIO_DC_WHTJ, &CMulticastSocketReceiveDlg::OnBnClickedRadioDcWhtj)
+ ON_BN_CLICKED(IDC_RADIO_H264Data, &CMulticastSocketReceiveDlg::OnBnClickedRadioH264data)
END_MESSAGE_MAP()
BOOL CMulticastSocketReceiveDlg::OnInitDialog()
@@ -126,6 +129,10 @@ BOOL CMulticastSocketReceiveDlg::OnInitDialog()
//Ӳʵб
AddBaudNumberToComboBox();
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_13Ins))->SetCheck(true);
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(false);
+ ((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(false);
+
return TRUE; // return TRUE unless you set the focus to a control
// 쳣: OCX ҳӦ FALSE
}
@@ -186,6 +193,9 @@ void CMulticastSocketReceiveDlg::OnBnClickedBtnMultisocketConnect()
GetDlgItem(IDC_RADIO_L)->EnableWindow(FALSE);
GetDlgItem(IDC_RADIO_SAC1)->EnableWindow(FALSE);
GetDlgItem(IDC_RADIO_SAC2)->EnableWindow(FALSE);
+ GetDlgItem(IDC_RADIO_DC_13Ins)->EnableWindow(FALSE);
+ GetDlgItem(IDC_RADIO_DC_WHTJ)->EnableWindow(FALSE);
+ GetDlgItem(IDC_RADIO_H264Data)->EnableWindow(FALSE);
//UDP
g_UDPTrans2Server.SetCallBack(NULL, this);
@@ -410,7 +420,9 @@ void CMulticastSocketReceiveDlg::OnBnClickedBtnMultisocketDisconnect()
GetDlgItem(IDC_RADIO_L)->EnableWindow(TRUE);
GetDlgItem(IDC_RADIO_SAC1)->EnableWindow(TRUE);
GetDlgItem(IDC_RADIO_SAC2)->EnableWindow(TRUE);
-
+ GetDlgItem(IDC_RADIO_DC_13Ins)->EnableWindow(TRUE);
+ GetDlgItem(IDC_RADIO_DC_WHTJ)->EnableWindow(TRUE);
+ GetDlgItem(IDC_RADIO_H264Data)->EnableWindow(TRUE);
}
void CMulticastSocketReceiveDlg::ShowMulticastSocketInfo()
@@ -480,7 +492,16 @@ void CMulticastSocketReceiveDlg::CreateUDPSocketReceiveData()
{
//ͨUDP
m_nSACUDPSocket.SetCallBack(OnReadFromUDPSACKU, this);
- CString strLocalIPAddr = _T("192.168.1.20"); // ͨIP
+ CString strLocalIPAddr;
+ strLocalIPAddr = _T("192.168.1.20"); // ͨIP
+ GetDlgItem(IDC_EDIT_LOCALIP_RECEIVE)->GetWindowTextA(strLocalIPAddr);
+ /*Բ*/
+ //strLocalIPAddr = _T("172.10.1.183");
+ //m_strSACUDPIPAddr = _T("172.10.1.183");
+ //m_nSACUDPLocalPort = 8080;
+ //m_nSACUDPRemotePort = 8081;
+ /*Բ*/
+
m_nSACUDPSocket.SetParams(strLocalIPAddr, m_nSACUDPLocalPort, m_strSACUDPIPAddr, m_nSACUDPRemotePort);
if (m_nSACUDPSocket.StartListening())
{
@@ -673,8 +694,6 @@ void CMulticastSocketReceiveDlg::OnBnClickedBtnImpSerialConnect()
::SendMessageA(g_IMPDLGhwnd,WM_UPDATE_IMP_SERIAL_CONNECT,(WPARAM)mComPortIMP.AllocSysString(), (LPARAM)mComBaudIMP.AllocSysString());
}
-
-
void CMulticastSocketReceiveDlg::OnBnClickedBtnImpSerialDisconnect()
{
// TODO: ڴӿؼ֪ͨ
@@ -683,3 +702,50 @@ void CMulticastSocketReceiveDlg::OnBnClickedBtnImpSerialDisconnect()
::SendMessageA(g_IMPDLGhwnd,WM_UPDATE_IMP_SERIAL_CONNECT,(WPARAM)mComPortIMP.AllocSysString(), (LPARAM)mComBaudIMP.AllocSysString());
}
+
+
+void CMulticastSocketReceiveDlg::OnBnClickedRadioDc13ins()
+{
+ // TODO: ڴӿؼ֪ͨ
+ UpdateData(TRUE);
+ DCTypeSelected_video = 0;
+ //switch(m_DCvideoTypeSelct)
+ //{
+ //case 0:
+ // DCTypeSelected_video =0;
+ // break;
+ //case 1:
+ // DCTypeSelected_video =1;
+ // break;
+ //case 2:
+ // DCTypeSelected_video =2;
+ // break;
+ //default:
+ // DCTypeSelected_video =0;
+ //}
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_13Ins))->SetCheck(true);
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(false);
+ ((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(false);
+}
+
+
+void CMulticastSocketReceiveDlg::OnBnClickedRadioDcWhtj()
+{
+ // TODO: ڴӿؼ֪ͨ
+ UpdateData(TRUE);
+ DCTypeSelected_video = 1;
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_13Ins))->SetCheck(false);
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(true);
+ ((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(false);
+}
+
+
+void CMulticastSocketReceiveDlg::OnBnClickedRadioH264data()
+{
+ // TODO: ڴӿؼ֪ͨ
+ UpdateData(TRUE);
+ DCTypeSelected_video = 2;
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_13Ins))->SetCheck(false);
+ ((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(false);
+ ((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(true);
+}
diff --git a/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.h b/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.h
index 8c662ac..7114182 100644
--- a/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.h
+++ b/Src/CH91PayloadSoftware/MulticastSocketReceiveDlg.h
@@ -33,7 +33,8 @@ public:
CString str_LocalIP_ReceiveMUDP;
- CIPAddressCtrl m_IPAddress_MultiCastIP; //鲥
+ CIPAddressCtrl m_IPAddress_MultiCastIP; //鲥 //IP
+
// WinSoc
HANDLE m_hThread_GetFH96DataFromNet;
DWORD m_ThreadID_GetFH96DataFromNet;
@@ -107,4 +108,8 @@ private:
public:
afx_msg void OnBnClickedBtnImpSerialConnect();
afx_msg void OnBnClickedBtnImpSerialDisconnect();
+ afx_msg void OnBnClickedRadioDc13ins();//ѡ-13
+ afx_msg void OnBnClickedRadioDcWhtj();//ѡ-人
+ afx_msg void OnBnClickedRadioH264data();//ѡ-h264
+ int m_DCvideoTypeSelct;
};
diff --git a/Src/CH91PayloadSoftware/resource.h b/Src/CH91PayloadSoftware/resource.h
index c33093b..99cf08b 100644
Binary files a/Src/CH91PayloadSoftware/resource.h and b/Src/CH91PayloadSoftware/resource.h differ
diff --git a/版本说明.txt b/版本说明.txt
index b00c468..d460109 100644
--- a/版本说明.txt
+++ b/版本说明.txt
@@ -1,3 +1,15 @@
202401221
增加IMP对话框
-增加IMP上下行通信连接
\ No newline at end of file
+增加IMP上下行通信连接
+
+20240510
+增加13所吊舱控制功能
+隐藏IMP对话框及上下行通信连接
+
+20240617
+优化13所吊舱控制协议帧
+增加天进吊舱控制功能
+优化控制指令发送逻辑(装订指令)
+增加视频管理计算机指令(开关指令)发送
+增加13所吊舱协议、天进吊舱协议、H264裸流视频协议解析选择
+增加天进吊舱点击“单点跟踪”按钮后,双击图像区域发送吊舱跟踪坐标点
\ No newline at end of file