www.pudn.com > final_6.rar > SetShapeDialog.cpp
// SetShapeDialog.cpp : implementation file
//
#include "stdafx.h"
#include "CG.h"
#include "SetShapeDialog.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSetShapeDialog dialog
CSetShapeDialog::CSetShapeDialog(CWnd* pParent /*=NULL*/)
: CDialog(CSetShapeDialog::IDD, pParent)
{
//{{AFX_DATA_INIT(CSetShapeDialog)
m_Ka = 0.3;
m_Kd = 0.5;
m_Ks = 0.3;
m_Ns = 6;
m_tran = 1;
//}}AFX_DATA_INIT
}
void CSetShapeDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSetShapeDialog)
DDX_Text(pDX, IDC_KA, m_Ka);
DDV_MinMaxDouble(pDX, m_Ka, 0., 1.);
DDX_Text(pDX, IDC_KD, m_Kd);
DDX_Text(pDX, IDC_KS, m_Ks);
DDV_MinMaxDouble(pDX, m_Ks, 0., 1.);
DDX_Text(pDX, IDC_NS, m_Ns);
DDV_MinMaxInt(pDX, m_Ns, 0, 100);
DDX_Text(pDX, IDC_TRAN, m_tran);
DDV_MinMaxFloat(pDX, m_tran, 0.f, 1.f);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSetShapeDialog, CDialog)
//{{AFX_MSG_MAP(CSetShapeDialog)
ON_BN_CLICKED(IDC_SelectColor, OnSelectColor)
ON_BN_CLICKED(IDC_SLIVER, OnSliver)
ON_BN_CLICKED(IDC_GE, OnGe)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSetShapeDialog message handlers
void CSetShapeDialog::OnSelectColor()
{
CColorDialog dlg;
if (dlg.DoModal()==IDOK)
{
COLORREF color=dlg.GetColor();
m_Red=GetRValue(color);
m_Blue=GetBValue(color);
m_Green=GetGValue(color);
}
}
void CSetShapeDialog::OnSliver()
{
m_Ka=0.192;
m_Kd=0.508;
m_Ks=0.508;
m_Ns=6;
m_Blue=(int)255*m_Ka;
m_Green=(int)255*m_Ka;
m_Red=(int)255*m_Ka;
m_tran=1;
UpdateData(FALSE);
}
void CSetShapeDialog::OnGe()
{
m_Ka=0.250;
m_Kd=0.400;
m_Ks=0.775;
m_Ns=6;
m_Blue=(int)255*m_Ka;
m_Green=(int)255*m_Ka;
m_Red=(int)255*m_Ka;
m_tran=1;
UpdateData(FALSE);
}