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

📄 parameterset.cpp

📁 机器人视觉处理程序
💻 CPP
字号:
// ParameterSet.cpp : implementation file
//

#include "stdafx.h"
#include "IRExpPlatform.h"
#include "ParameterSet.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CParameterSet dialog


CParameterSet::CParameterSet(CWnd* pParent /*=NULL*/)
	: CDialog(CParameterSet::IDD, pParent)
{
	//{{AFX_DATA_INIT(CParameterSet)
	m_nWhiteParm1 = 0;
	m_nWhiteParm2 = 0;
	m_nObstacleParm1 = 0;
	m_nObstacleParm2 = 0;
	m_nObjectParm1 = 0;
	m_nObjectParm2 = 0;
	m_nLeftRightEdgeParm1 = 0;
	m_nLeftRightEdgeParm2 = 0;
	m_nLineEdgeParm1 = 0;
	m_nLineEdgeParm2 = 0;
	m_nColumnEdgeParm1 = 0;
	m_nColumnEdgeParm2 = 0;
	//}}AFX_DATA_INIT
}


void CParameterSet::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CParameterSet)
	DDX_Text(pDX, IDC_WHITEPARM1, m_nWhiteParm1);
	DDX_Text(pDX, IDC_WHITEPARM2, m_nWhiteParm2);
	DDX_Text(pDX, IDC_OBSTACLEPARM1, m_nObstacleParm1);
	DDX_Text(pDX, IDC_OBSTACLEPARM2, m_nObstacleParm2);
	DDX_Text(pDX, IDC_OBJECTPARM1, m_nObjectParm1);
	DDX_Text(pDX, IDC_OBJECTPARM2, m_nObjectParm2);
	DDX_Text(pDX, IDC_LEFTRIGHTEDGEPARM1, m_nLeftRightEdgeParm1);
	DDX_Text(pDX, IDC_LEFTRIGHTEDGEPARM2, m_nLeftRightEdgeParm2);
	DDX_Text(pDX, IDC_LINEEDGEPARM1, m_nLineEdgeParm1);
	DDX_Text(pDX, IDC_LINEEDGEPARM2, m_nLineEdgeParm2);
	DDX_Text(pDX, IDC_COLUMNEDGEPARM1, m_nColumnEdgeParm1);
	DDX_Text(pDX, IDC_COLUMNEDGEPARM2, m_nColumnEdgeParm2);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CParameterSet, CDialog)
	//{{AFX_MSG_MAP(CParameterSet)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CParameterSet message handlers

BOOL CParameterSet::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	//初始化各变量
	m_nWhiteParm1		= theApp.nWhiteParm1;
	m_nWhiteParm2		= theApp.nWhiteParm2;
	m_nObjectParm1		= theApp.nObjectParm1;
	m_nObjectParm2		= theApp.nObjectParm2;
	m_nObstacleParm1	= theApp.nObstacleParm1;
	m_nObstacleParm2	= theApp.nObstacleParm2;
	m_nLineEdgeParm1	= theApp.nLineEdgeParm1;
	m_nLineEdgeParm2	= theApp.nLineEdgeparm2;
	m_nColumnEdgeParm1	= theApp.nColumnEdgeParm1;
	m_nColumnEdgeParm2	= theApp.nColumnEdgeParm2;
	m_nLeftRightEdgeParm1 = theApp.nLeftRightEdgeParm1;
	m_nLeftRightEdgeParm2 = theApp.nLeftRightEdgeParm2;

	UpdateData(FALSE);					//在编辑框中显示变量初始值
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CParameterSet::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);				//将编辑框中的值传给变量
	
	//图像窗口的宽度是320
	if(m_nWhiteParm1	>=320
	|| m_nObjectParm1	>=320
	|| m_nObstacleParm1	>=320
	|| m_nLineEdgeParm1	>=320
	|| m_nColumnEdgeParm1	>=320
	|| m_nLeftRightEdgeParm1>=320)
	{
		MessageBox("参数一的值应小于320!","输入值错误!",MB_OK|MB_ICONWARNING);
		return;
	}
	//图像窗口的高度是240
	if(m_nWhiteParm2	>=240
	|| m_nObjectParm2	>=240
	|| m_nObstacleParm2	>=240
	|| m_nLineEdgeParm2	>=240
	|| m_nColumnEdgeParm2	>=240
	|| m_nLeftRightEdgeParm2>=240)
	{
		MessageBox("参数二的值应小于240!","输入值错误!",MB_OK|MB_ICONWARNING);
		return;
	}
	//各参数值均应大于0
	if(m_nWhiteParm1	< 0
	|| m_nObjectParm1	< 0
	|| m_nObstacleParm1	< 0
	|| m_nLineEdgeParm1 < 0
	|| m_nColumnEdgeParm1	< 0
	|| m_nLeftRightEdgeParm1< 0
	||	m_nWhiteParm2	< 0
	|| m_nObjectParm2	< 0
	|| m_nObstacleParm2 < 0
	|| m_nLineEdgeParm2 < 0
	|| m_nColumnEdgeParm2	 < 0
	|| m_nLeftRightEdgeParm2 < 0)
	{
		MessageBox("参数一的值和参数二的值均应大于0!","输入值错误!",MB_OK|MB_ICONWARNING);
		return;
	}
	
	//将变量值赋值给公用变量
	theApp.nWhiteParm1		= m_nWhiteParm1;
	theApp.nWhiteParm2		= m_nWhiteParm2;
	theApp.nObjectParm1		= m_nObjectParm1;
	theApp.nObjectParm2		= m_nObjectParm2;
	theApp.nObstacleParm1	= m_nObstacleParm1;
	theApp.nObstacleParm2	= m_nObstacleParm2;
	theApp.nLineEdgeParm1	= m_nLineEdgeParm1;
	theApp.nLineEdgeparm2	= m_nLineEdgeParm2;
	theApp.nColumnEdgeParm1 = m_nColumnEdgeParm1;
	theApp.nColumnEdgeParm2 = m_nColumnEdgeParm2;
	theApp.nLeftRightEdgeParm1 = m_nLeftRightEdgeParm1;
	theApp.nLeftRightEdgeParm2 = m_nLeftRightEdgeParm2;
	
	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -