⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 singlepointdlg.cpp

📁 With the De-Yi Li academician s data field theory, creating a single point of data field
💻 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 + -