📄 ckk.cpp
字号:
// Ckk.cpp : implementation file
//
#include "stdafx.h"
#include "lms.h"
#include "Ckk.h"
#include "math.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCkk dialog
CCkk::CCkk(CWnd* pParent /*=NULL*/)
: CDialog(CCkk::IDD, pParent)
{
//{{AFX_DATA_INIT(CCkk)
m_d2 = 0.0;
m_f2 = 0.0;
m_hb2 = 0.0;
m_hu2 = 0.0;
//}}AFX_DATA_INIT
}
void CCkk::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCkk)
DDX_Text(pDX, IDC_d2, m_d2);
DDX_Text(pDX, IDC_f2, m_f2);
DDX_Text(pDX, IDC_hb2, m_hb2);
DDX_Text(pDX, IDC_hu2, m_hu2);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCkk, CDialog)
//{{AFX_MSG_MAP(CCkk)
ON_WM_PAINT()
ON_BN_CLICKED(IDC_update, Onupdate)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCkk message handlers
void CCkk::OnPaint()
{
UpdateData(TRUE);
CPaintDC dc(this); // device context for painting
dc.SetMapMode(MM_ANISOTROPIC);//修改映射模式
dc.SetWindowOrg(0,100);//设备坐标(左上角)
dc.SetWindowExt(195,-100);//设备坐标(右下角)
CRect rc;
GetClientRect(rc);
dc.SetViewportOrg(0,0);//视图坐标
dc.SetViewportExt(rc.Width(),rc.Height());
dc.MoveTo(0,0);
for(int x=40;x<195;x+=15)
{
dc.MoveTo(x,30);
dc.LineTo(x,100);
}
for(int y=30;y<100;y+=15)
{
dc.MoveTo(35,y);
dc.LineTo(200,y);
}
CPen pen(PS_SOLID,0.5,RGB(255,0,0)),*pOldPen;
pOldPen=dc.SelectObject(&pen);
for(m_d2=40,m_la1=30;m_d2<195;m_d2+=15)
{
dc.MoveTo(m_d2,m_la1);
m_la1=69.55+26.16*log10(m_f2)-13.82*log10(m_hb2)-8.29*log10(1.54*m_hu2)*log10(1.54*m_hu2)-1.10+(44.9-6.55*log10(m_hb2))*log10((m_d2)+1)-100;
m_m=m_la1;
dc.LineTo(m_d2+15,m_m);
}
CPen pen1(PS_SOLID,0.5,RGB(0,255,0));
pOldPen=dc.SelectObject(&pen1);
for(m_d2=40,m_la1=30;m_d2<195;m_d2+=15)
{
dc.MoveTo(m_d2,m_la1);
m_la1=69.55+26.16*log10(m_f2)-13.82*log10(m_hb2)-8.29*log10(1.54*m_hu2)*log10(1.54*m_hu2)-1.10+(44.9-6.55*log10(m_hb2))*log10((m_d2)+1)-100-4.5+m_la1/7;
m_m=m_la1;
dc.LineTo(m_d2+15,m_m);
}
CPen pen2(PS_SOLID,0.5,RGB(0,0,255));
pOldPen=dc.SelectObject(&pen2);
for(m_d2=40,m_la1=30;m_d2<195;m_d2+=15)
{
dc.MoveTo(m_d2,m_la1);
m_la1=69.55+26.16*log10(m_f2)-13.82*log10(m_hb2)-8.29*log10(1.54*m_hu2)*log10(1.54*m_hu2)-1.10+(44.9-6.55*log10(m_hb2))*log10((m_d2)+1)-100+1.5;
m_m=m_la1;
dc.LineTo(m_d2+15,m_m);
}// TODO: Add your message handler code here
CPen pen3(PS_SOLID,0.5,RGB(125,125,125));
pOldPen=dc.SelectObject(&pen3);
for(m_d2=40,m_la1=30;m_d2<195;m_d2+=15)
{
dc.MoveTo(m_d2,m_la1);
m_la1=69.55+26.16*log10(m_f2)-13.82*log10(m_hb2)-8.29*log10(1.54*m_hu2)*log10(1.54*m_hu2)-1.10+(44.9-6.55*log10(m_hb2))*log10(m_d2)+2.25-4.78*log10(m_f2)*log10(m_f2)+18.33*log10(m_f2)-40.94-100;
m_m=m_la1;
dc.LineTo(m_d2+15,m_m);
}// Do not call CDialog::OnPaint() for painting messages
UpdateData(false);
}
void CCkk::Onupdate()
{ Invalidate();// TODO: Add your control notification handler code here
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -