247 lines
5.2 KiB
C++
247 lines
5.2 KiB
C++
#include "stdafx.h"
|
|
#include "DPLTDlg.h"
|
|
#include "AecDbZLineStair.h"
|
|
|
|
IMPLEMENT_DYNAMIC(CDPLTDlg, CDialog)
|
|
|
|
CDPLTDlg::CDPLTDlg(CWnd* pParent /*=NULL*/)
|
|
: CDialog(CDPLTDlg::IDD, pParent)
|
|
, m_nZs(1)
|
|
, m_dSteepW(270)
|
|
, m_dSteepH(150)
|
|
, m_nSteeps1(11)
|
|
, m_nSteeps2(11)
|
|
, m_dStairTW(2560)
|
|
, m_dStairSW(1230)
|
|
, m_dWell(100)
|
|
, m_nUpSide(FALSE)
|
|
, m_dRestPtW(1200)
|
|
, m_dSbThick(80)
|
|
, m_dStiffnW(200)
|
|
, m_dStiffnH(180)
|
|
, m_dBarH(923)
|
|
, m_dGarSize0(40)
|
|
, m_dGarSize1(60)
|
|
, m_dBarSp(300)
|
|
, m_dBarSize0(30)
|
|
, m_dBarSize1(30)
|
|
, m_nGShape(FALSE)
|
|
, m_nBShape(FALSE)
|
|
, m_dGarExt(60)
|
|
, m_dZGarExt(60)
|
|
, m_sGarMat(_T("不锈钢"))
|
|
, m_sBarMat(_T("不锈钢"))
|
|
, m_dBomEl(0)
|
|
{
|
|
GET_CACHE(CDPLTDlg
|
|
, %d%f%f%d%d%f%f%f%d%f%f%f%f%f%f%f%f%f%f%d%d%f%f%s%s%f
|
|
, &m_nZs
|
|
, &m_dSteepW
|
|
, &m_dSteepH
|
|
, &m_nSteeps1
|
|
, &m_nSteeps2
|
|
, &m_dStairTW
|
|
, &m_dStairSW
|
|
, &m_dWell
|
|
, &m_nUpSide
|
|
, &m_dRestPtW
|
|
, &m_dSbThick
|
|
, &m_dStiffnW
|
|
, &m_dStiffnH
|
|
, &m_dBarH
|
|
, &m_dBarSize0
|
|
, &m_dBarSize1
|
|
, &m_dBarSp
|
|
, &m_dGarSize0
|
|
, &m_dGarSize1
|
|
, &m_nGShape
|
|
, &m_nBShape
|
|
, &m_dGarExt
|
|
, &m_dZGarExt
|
|
, &m_sGarMat
|
|
, &m_sBarMat
|
|
, &m_dBomEl
|
|
);
|
|
}
|
|
|
|
CDPLTDlg::~CDPLTDlg()
|
|
{
|
|
}
|
|
|
|
void CDPLTDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
DDX_Text(pDX, IDC_EDIT1, m_nZs);
|
|
DDX_Text(pDX, IDC_EDIT2, m_dSteepW);
|
|
DDX_Text(pDX, IDC_EDIT3, m_dSteepH);
|
|
DDX_Text(pDX, IDC_EDIT12, m_nSteeps1);
|
|
DDX_Text(pDX, IDC_EDIT13, m_nSteeps2);
|
|
DDX_Text(pDX, IDC_EDIT4, m_dStairTW);
|
|
DDX_Text(pDX, IDC_EDIT5, m_dStairSW);
|
|
DDX_Text(pDX, IDC_EDIT15, m_dWell);
|
|
DDX_Radio(pDX, IDC_RADIO1, m_nUpSide);
|
|
DDX_Text(pDX, IDC_EDIT14, m_dRestPtW);
|
|
DDX_Text(pDX, IDC_EDIT33, m_dSbThick);
|
|
DDX_Text(pDX, IDC_EDIT31, m_dStiffnW);
|
|
DDX_Text(pDX, IDC_EDIT32, m_dStiffnH);
|
|
DDX_Text(pDX, IDC_EDIT16, m_dBarH);
|
|
DDX_Text(pDX, IDC_EDIT30, m_dBarSize0);
|
|
DDX_Text(pDX, IDC_EDIT28, m_dBarSize1);
|
|
DDX_Text(pDX, IDC_EDIT17, m_dBarSp);
|
|
DDX_Text(pDX, IDC_EDIT21, m_dGarSize0);
|
|
DDX_Text(pDX, IDC_EDIT26, m_dGarSize1);
|
|
DDX_Check(pDX, IDC_CHECK1, m_nGShape);
|
|
DDX_Check(pDX, IDC_CHECK2, m_nBShape);
|
|
DDX_Text(pDX, IDC_EDIT19, m_dGarExt);
|
|
DDX_Text(pDX, IDC_EDIT39, m_dZGarExt);
|
|
DDX_CBString(pDX, IDC_COMBO6, m_sGarMat);
|
|
DDX_CBString(pDX, IDC_COMBO4, m_sBarMat);
|
|
DDX_Text(pDX, IDC_EDIT40, m_dBomEl);
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CDPLTDlg, CDialog)
|
|
ON_BN_CLICKED(IDOK, &CDPLTDlg::OnBnClickedOk)
|
|
ON_EN_CHANGE(IDC_EDIT5, &CDPLTDlg::OnEnChangeEdit5)
|
|
ON_EN_CHANGE(IDC_EDIT15, &CDPLTDlg::OnEnChangeEdit15)
|
|
END_MESSAGE_MAP()
|
|
|
|
BOOL CDPLTDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
UpdateData(FALSE);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
void CDPLTDlg::SetZLineStair(ZLineStair& data)
|
|
{
|
|
m_nZs = data.nZs;
|
|
m_dSteepW = data.dSteepW;
|
|
m_dSteepH = data.dSteepH;
|
|
m_nSteeps1 = data.nSteeps1;
|
|
m_nSteeps2 = data.nSteeps2;
|
|
m_dStairTW = data.dStairTW;
|
|
m_dStairSW = data.dStairSW;
|
|
m_dWell = data.dWellW;
|
|
m_nUpSide = data.nUpSide;
|
|
m_dRestPtW = data.dRestPtW;
|
|
m_dSbThick = data.dSbThick;
|
|
m_dStiffnW = data.dStiffnW;
|
|
m_dStiffnH = data.dStiffnH;
|
|
m_dBarH = data.dBarH;
|
|
m_dGarSize0 = data.dGarSize[0];
|
|
m_dGarSize1 = data.dGarSize[1];
|
|
m_dBarSp = data.dBarSp;
|
|
m_dBarSize0 = data.dBarSize[0];
|
|
m_dBarSize1 = data.dBarSize[1];
|
|
m_nGShape = data.nGShape;
|
|
m_nBShape = data.nBShape;
|
|
m_dGarExt = data.dGarExt;
|
|
m_dZGarExt = data.dZGarExt;
|
|
m_sGarMat = data.szGarMat;
|
|
m_sBarMat = data.szBarMat;
|
|
m_dBomEl = data.dBomEl;
|
|
}
|
|
|
|
bool CDPLTDlg::GetZLineStair(ZLineStair& data) const
|
|
{
|
|
data.nZs = m_nZs;
|
|
data.dSteepW = m_dSteepW;
|
|
data.dSteepH = m_dSteepH;
|
|
data.nSteeps1 = m_nSteeps1;
|
|
data.nSteeps2 = m_nSteeps2;
|
|
data.dStairTW = m_dStairTW;
|
|
data.dStairSW = m_dStairSW;
|
|
data.dWellW = m_dWell;
|
|
data.nUpSide = m_nUpSide;
|
|
data.dRestPtW = m_dRestPtW;
|
|
data.dSbThick = m_dSbThick;
|
|
data.dStiffnW = m_dStiffnW;
|
|
data.dStiffnH = m_dStiffnH;
|
|
data.dBarH = m_dBarH;
|
|
data.dGarSize[0] = m_dGarSize0;
|
|
data.dGarSize[1] = m_dGarSize1;
|
|
data.dBarSp = m_dBarSp;
|
|
data.dBarSize[0] = m_dBarSize0;
|
|
data.dBarSize[1] = m_dBarSize1;
|
|
data.nGShape = m_nGShape;
|
|
data.nBShape = m_nBShape;
|
|
data.dGarExt = m_dGarExt;
|
|
data.dZGarExt = m_dZGarExt;
|
|
data.dBomEl = m_dBomEl;
|
|
_tcscpy(data.szGarMat,m_sGarMat);
|
|
_tcscpy(data.szBarMat,m_sBarMat);
|
|
|
|
return true;
|
|
}
|
|
|
|
void CDPLTDlg::SetFromId(AcDbObjectId& id)
|
|
{
|
|
AcDbEntity* pEnt = NULL;
|
|
if (Acad::eOk == acdbOpenAcDbEntity(pEnt,id,AcDb::kForRead))
|
|
{
|
|
AecDbZLineStair* pZStair = AecDbZLineStair::cast(pEnt);
|
|
if (pZStair != NULL)
|
|
{
|
|
ZLineStair data;
|
|
memset(&data,0,sizeof(ZLineStair));
|
|
pZStair->GetZLineStairData(data);
|
|
|
|
SetZLineStair(data);
|
|
}
|
|
pEnt->close();
|
|
}
|
|
}
|
|
|
|
void CDPLTDlg::OnBnClickedOk()
|
|
{
|
|
if (!UpdateData(TRUE)) return;
|
|
SET_CACHE(CDPLTDlg
|
|
, %d%f%f%d%d%f%f%f%d%f%f%f%f%f%f%f%f%f%f%d%d%f%f%s%s%f
|
|
, m_nZs
|
|
, m_dSteepW
|
|
, m_dSteepH
|
|
, m_nSteeps1
|
|
, m_nSteeps2
|
|
, m_dStairTW
|
|
, m_dStairSW
|
|
, m_dWell
|
|
, m_nUpSide
|
|
, m_dRestPtW
|
|
, m_dSbThick
|
|
, m_dStiffnW
|
|
, m_dStiffnH
|
|
, m_dBarH
|
|
, m_dBarSize0
|
|
, m_dBarSize1
|
|
, m_dBarSp
|
|
, m_dGarSize0
|
|
, m_dGarSize1
|
|
, m_nGShape
|
|
, m_nBShape
|
|
, m_dGarExt
|
|
, m_dZGarExt
|
|
, m_sGarMat
|
|
, m_sBarMat
|
|
, m_dBomEl );
|
|
|
|
//数据合理性检查
|
|
|
|
OnOK();
|
|
}
|
|
|
|
void CDPLTDlg::OnEnChangeEdit5()
|
|
{
|
|
UpdateData();
|
|
m_dStairTW = m_dStairSW * 2 + m_dWell;
|
|
UpdateData(FALSE);
|
|
}
|
|
|
|
void CDPLTDlg::OnEnChangeEdit15()
|
|
{
|
|
UpdateData();
|
|
m_dStairTW = m_dStairSW * 2 + m_dWell;
|
|
UpdateData(FALSE);
|
|
}
|