📄 singlepointdlg.cpp
字号:
// SinglePointDlg.cpp : implementation file
//
#include "stdafx.h"
#include "SinglePointDataField.h"
#include "SinglePointDlg.h"
#include "SinglePointDataFieldDoc.h"
#include "SinglePointDataFieldView.h"
#include "MainFrm.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSinglePointDlg dialog
CSinglePointDlg::CSinglePointDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSinglePointDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CSinglePointDlg)
m_M = 20.0;
m_press = 10.0f;
m_X = 20.0f;
m_Y = 20.0f;
//}}AFX_DATA_INIT
m_pContour = NULL;
}
void CSinglePointDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSinglePointDlg)
DDX_Text(pDX, IDC_M, m_M);
DDX_Text(pDX, IDC_PRESS, m_press);
DDX_Text(pDX, IDC_X, m_X);
DDX_Text(pDX, IDC_Y, m_Y);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSinglePointDlg, CDialog)
//{{AFX_MSG_MAP(CSinglePointDlg)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSinglePointDlg message handlers
void CSinglePointDlg::OnOK()
{
// TODO: Add extra validation here
datafield.init(); //重新初始化
UpdateData(TRUE);
float x=m_X;
float y=m_Y;
float z=m_M;
float p=m_press;
/*
CEdit* pedit1 = (CEdit*)GetDlgItem(IDC_EDIT1);
CEdit* pedit2 = (CEdit*)GetDlgItem(IDC_EDIT2);
CEdit* pedit3 = (CEdit*)GetDlgItem(IDC_EDIT3);
CString s1;
CString s2;
CString s3;
pedit1->GetWindowText(s1);
pedit2->GetWindowText(s2);
pedit3->GetWindowText(s3);
// int x=atoi(s1);
// int y=atoi(s2);
// int z=atoi(s3);
float x=m_XValue;
float y=m_YValue;
float z=m_ZValue;
// int num=GetIntLengh(z)-s3.GetLength();
*/
if ((x<=50)&&(x>=1)&&(y<=50)&&(y>=1)&&(z>=1)&&(z<=1500))
{
CMainFrame* pFrm = (CMainFrame*)AfxGetMainWnd();
CSinglePointDataFieldDoc* pDoc = (CSinglePointDataFieldDoc*)pFrm->GetActiveFrame()->GetActiveDocument();
CSinglePointDataFieldView* pView = (CSinglePointDataFieldView*)pFrm->GetActiveView();
BeginWaitCursor();// 更改光标形状
datafield.m_press=p;
datafield.ModifyGridData((int)x,(int)y,(int)z); //接受用户输入的坐标点和质量
datafield.GenerateDatafield(); //生成数据场数据
datafield.SetDataInfo(); //得到等势值的范围信息
if( m_pContour!=NULL)
{
delete m_pContour;
m_pContour = NULL;
}
if(m_pContour==NULL)
{
m_pContour = new CContour;
m_pContour->SetDataOwner(&datafield);
}
m_pContour->GenerateDefaultContourValues(); //生成默认的等值划分线值
m_pContour->GenerateContours(); //生成等值线
Invalidate(true);
pView->UpdateTest(m_pContour);
// WPARAM wp;
// pView->SendMessage(WM_UPDATE,WPARAM(m_pContour),0);
EndWaitCursor(); //结束等待光标
}
// CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -