#include "stdafx.h" #include "XFYCDlg.h" #include "AecDbEarthWorm.h" #include "KTCADUtilityEx.h" #include "UITools.h" #include "CCSYDlg.h" IMPLEMENT_DYNAMIC(CXFYCDlg, CBaseDialog) CXFYCDlg::CXFYCDlg(CWnd* pParent /*=NULL*/) : CBaseDialog(CXFYCDlg::IDD, _T("XFYC"), IDC_STATIC_FRM, pParent) , m_fYinChuKou_Len(0) , m_fYinChuKou_W(0) , m_fShuiGuan_Wall_D(0) , m_fShuiGuan_Size(0) , m_bShuiPingKaiKou(FALSE) , m_fShuiGuan_Ding_Size(0) , m_fShuiGuan_D(0) , m_fShuiGuan_KaiKong_D(0) { } CXFYCDlg::~CXFYCDlg() { } void CXFYCDlg::DoDataExchange(CDataExchange* pDX) { CBaseDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDITH, m_fYinChuKou_Len); DDV_MinMaxFloat(pDX, m_fYinChuKou_Len, 0.1f, 500000.0f); DDX_Text(pDX, IDC_EDITH2, m_fYinChuKou_W); DDV_MinMaxFloat(pDX, m_fYinChuKou_W, 0.1f, 500000.0f); DDX_Text(pDX, IDC_EDITH3, m_fShuiGuan_KaiKong_D); DDV_MinMaxFloat(pDX, m_fShuiGuan_Wall_D, 0.1f, 500000.0f); DDX_Text(pDX, IDC_EDITH4, m_fShuiGuan_Size); DDV_MinMaxFloat(pDX, m_fShuiGuan_Size, 0.1f, 500000.0f); DDX_Check(pDX, IDC_CHECK1, m_bShuiPingKaiKou); DDX_Text(pDX, IDC_EDITH5, m_fShuiGuan_Ding_Size); DDV_MinMaxFloat(pDX, m_fShuiGuan_Ding_Size, 0.1f, 500000.0f); DDX_Text(pDX, IDC_EDITH7, m_fShuiGuan_KaiKong_D); DDV_MinMaxFloat(pDX, m_fShuiGuan_KaiKong_D, 0.1f, 500000.0f); DDX_Text(pDX, IDC_EDITH6, m_fShuiGuan_D); DDV_MinMaxFloat(pDX, m_fShuiGuan_D, 0.1f, 500000.0f); } BEGIN_MESSAGE_MAP(CXFYCDlg, CBaseDialog) ON_BN_CLICKED(IDOK, &CXFYCDlg::OnBnClickedOk) ON_BN_CLICKED(IDC_BUTTON2, &CXFYCDlg::OnBnClickedButton2) END_MESSAGE_MAP() BOOL CXFYCDlg::OnInitDialog() { CBaseDialog::OnInitDialog(); m_fYinChuKou_Len = AS_M2MM(m_data.fNodeDef[0]); m_fYinChuKou_W = AS_M2MM(m_data.fNodeDef[1]); m_fShuiGuan_Wall_D = AS_M2MM(m_data.fNodeDef[3]); m_fShuiGuan_Size = AS_M2MM(m_data.fNodeDef[4]); m_fShuiGuan_Ding_Size = AS_M2MM(m_data.fNodeDef[5]); m_fShuiGuan_D = AS_M2MM(m_data.fNodeDef[6]); m_fShuiGuan_KaiKong_D = AS_M2MM(m_data.fNodeDef[7]); m_bShuiPingKaiKou = m_data.nFlag; UpdateData(FALSE); return TRUE; } void CXFYCDlg::SetDefaultFnctNode(EWFnctNode &fncNode) { memset(&fncNode, 0, sizeof(EWFnctNode)); fncNode.dDistFromPre = AS_MUNIT(9000.0);//9米位置 fncNode.eFnType = kFireOutlet; _tcscpy(fncNode.szNodeSpec, _T("消防引出口")); fncNode.nRoomIndex = 1;//舱1 fncNode.fNodeDef[0] = AS_MUNITF(800.0f);//宽 fncNode.fNodeDef[1] = AS_MUNITF(800.0f);//宽 fncNode.fNodeDef[2] = AS_MUNITF(0.0);//深,无 fncNode.fNodeDef[3] = AS_MUNITF(300.0f);//水管子定位尺寸靠外墙上开孔直径 fncNode.fNodeDef[4] = AS_MUNITF(400.0f);//水管沿管廊方向定位尺寸 fncNode.fNodeDef[5] = AS_MUNITF(400.0f);//开孔距离顶尺寸,水平开孔情况 fncNode.fNodeDef[6] = AS_MUNITF(100.0f);//水管直径 fncNode.fNodeDef[7] = AS_MUNITF(150.0f);//水管在管廊上的开孔直径 fncNode.nFlag = 0; //0垂直开孔 水平开孔1 _tcscpy(fncNode.szNodeDefSpec, _T("消防引出口")); } void CXFYCDlg::OnBnClickedOk() { UpdateData(); if (GetIdxOfRoom() == -1) { AfxMessageBox(_T("没有选择舱室,请选择舱室!")); return; } m_data.fNodeDef[0] = AS_MUNITF(m_fYinChuKou_Len); m_data.fNodeDef[1] = AS_MUNITF(m_fYinChuKou_W); m_data.fNodeDef[2] = .0f; m_data.fNodeDef[3] = AS_MUNITF(m_fShuiGuan_Wall_D); m_data.fNodeDef[4] = AS_MUNITF(m_fShuiGuan_Size); m_data.fNodeDef[5] = AS_MUNITF(m_fShuiGuan_Ding_Size); m_data.fNodeDef[6] = AS_MUNITF(m_fShuiGuan_D); m_data.fNodeDef[7] = AS_MUNITF(m_fShuiGuan_KaiKong_D); m_data.nFlag = m_bShuiPingKaiKou; CBaseDialog::OnOK(); } void CXFYCDlg::OnBnClickedButton2() { CCCSYDlg dlg; dlg.SetBmpFileName(_T("XFYC.bmp")); dlg.DoModal(); }