You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
1.8 KiB
C++

// ShowWaveDlg.cpp : 实现文件
//
#include "stdafx.h"
#include "CH91PayloadSoftware.h"
#include "ShowWaveDlg.h"
#include "afxdialogex.h"
#include "Global.h"
#include "GlobalMessage.h"
#include "GlobalMember.h"
// CShowWaveDlg 对话框
IMPLEMENT_DYNAMIC(CShowWaveDlg, CDialogEx)
CShowWaveDlg::CShowWaveDlg(CWnd* pParent /*=NULL*/)
: CDialogEx(CShowWaveDlg::IDD, pParent)
{
}
CShowWaveDlg::~CShowWaveDlg()
{
}
void CShowWaveDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_STATIC_WAVESHOW, m_WaveShow);
}
BEGIN_MESSAGE_MAP(CShowWaveDlg, CDialogEx)
ON_MESSAGE(WM_SHOW_WAVE, CShowWaveDlg::ShowWave)
ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()
// CShowWaveDlg 消息处理程序
BOOL CShowWaveDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 获取句柄
g_ShowWaveHwnd = GetSafeHwnd();
m_WaveShow.SetTitle(0,"载荷方位角");
m_WaveShow.SetTitle(1,"载荷俯仰角");
m_WaveShow.SetTitle(2,"UAV方位角");
m_WaveShow.SetTitle(3,"UAV俯仰角");
m_WaveShow.SetTitle(4,"UAV滚转角");
m_WaveShow.SetXRange(0,100);
m_WaveShow.SetYRange(-50,50);
m_wavetime = 0;
return TRUE;
}
LRESULT CShowWaveDlg::ShowWave(WPARAM wParam, LPARAM lParam)
{
m_wavetime += 0.1;
m_WaveShow.AddValue(0, m_wavetime, g_ZH_Azimuth);
m_WaveShow.AddValue(1, m_wavetime, g_ZH_Pitch);
m_WaveShow.AddValue(2, m_wavetime, g_GPS_LR_Heading);
m_WaveShow.AddValue(3, m_wavetime, g_GPS_FB_Pitch);
m_WaveShow.AddValue(4, m_wavetime, g_GPS_LR_Roll);
m_WaveShow.UpdateCurve();
return 0;
}
// 相应鼠标左键点击消息
void CShowWaveDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
CRect rect;
GetDlgItem(IDC_STATIC_WAVESHOW)->GetWindowRect(&rect);
ScreenToClient(rect);
point.x -= rect.left;
point.y -= rect.top;
m_WaveShow.OnLButtonDown(nFlags, point);
CDialogEx::OnLButtonDown(nFlags, point);
}