157 lines
4.7 KiB
C++
157 lines
4.7 KiB
C++
#include "stdafx.h"
|
|
#include "RTLKDlg.h"
|
|
#include "AecDbEarthWorm.h"
|
|
#include "KTCADUtilityEx.h"
|
|
#include "CCSYDlg.h"
|
|
#include "UITools.h"
|
|
|
|
IMPLEMENT_DYNAMIC(CRTLKDlg, CBaseDialog)
|
|
|
|
CRTLKDlg::CRTLKDlg(CWnd* pParent /*=NULL*/)
|
|
: CBaseDialog(CRTLKDlg::IDD, _T("RTLK"), IDC_STATIC_FRM, pParent)
|
|
, m_fKou_Len(0)
|
|
, m_fKou_W(0)
|
|
, m_fKou_Left(0)
|
|
, m_fFangZi_Size(0)
|
|
, m_fFangZi_W(0)
|
|
, m_fFangZi_Len(0)
|
|
, m_fFangZi_H(0)
|
|
, m_fFangZi_Wall_Thickness(0)
|
|
, m_fFangZi_Count(0)
|
|
, m_fFangZi_GaiBan_W(0)
|
|
, m_fFangZi_GaiBan_Thickness(0)
|
|
, m_fX(5050.f)
|
|
{ }
|
|
|
|
CRTLKDlg::~CRTLKDlg() { }
|
|
|
|
void CRTLKDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CBaseDialog::DoDataExchange(pDX);
|
|
DDX_Text(pDX, IDC_EDITH, m_fKou_Len);
|
|
DDV_MinMaxFloat(pDX, m_fKou_Len, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH2, m_fKou_W);
|
|
DDV_MinMaxFloat(pDX, m_fKou_W, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH3, m_fKou_Left);
|
|
DDV_MinMaxFloat(pDX, m_fKou_Left, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH4, m_fFangZi_Size);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_Size, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH6, m_fFangZi_W);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_W, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH5, m_fFangZi_Len);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_Len, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH7, m_fFangZi_H);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_H, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH9, m_fFangZi_Wall_Thickness);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_Wall_Thickness, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH8, m_fFangZi_Count);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_Count, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH10, m_fFangZi_GaiBan_W);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_GaiBan_W, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDITH11, m_fFangZi_GaiBan_Thickness);
|
|
DDV_MinMaxFloat(pDX, m_fFangZi_GaiBan_Thickness, 0.1f, 500000.0f);
|
|
DDX_Text(pDX, IDC_EDIT33, m_fX);
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CRTLKDlg, CBaseDialog)
|
|
ON_BN_CLICKED(IDOK, &CRTLKDlg::OnBnClickedOk)
|
|
ON_BN_CLICKED(IDC_BUTTON2, &CRTLKDlg::OnBnClickedButton2)
|
|
END_MESSAGE_MAP()
|
|
|
|
BOOL CRTLKDlg::OnInitDialog()
|
|
{
|
|
CBaseDialog::OnInitDialog();
|
|
|
|
m_fKou_Len = AS_M2MM(m_data.fNodeDef[0]);
|
|
m_fKou_W = AS_M2MM(m_data.fNodeDef[1]);
|
|
m_fKou_Left = AS_M2MM(m_data.fNodeDef[2]);
|
|
|
|
m_fFangZi_Size = AS_M2MM(m_data.fNodeDef[10]);
|
|
m_fFangZi_W = AS_M2MM(m_data.fNodeDef[11]);
|
|
m_fFangZi_Len = AS_M2MM(m_data.fNodeDef[12]);
|
|
m_fFangZi_H = AS_M2MM(m_data.fNodeDef[13]);
|
|
m_fFangZi_Wall_Thickness = AS_M2MM(m_data.fNodeDef[14]);
|
|
m_fFangZi_Count = m_data.fNodeDef[15];
|
|
m_fFangZi_GaiBan_W = AS_M2MM(m_data.fNodeDef[16]);
|
|
m_fFangZi_GaiBan_Thickness = AS_M2MM(m_data.fNodeDef[17]);
|
|
m_fX = AS_M2MM(m_data.fNodeDef[18]);
|
|
|
|
UpdateData(FALSE);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
void CRTLKDlg::SetDefaultFnctNode(EWFnctNode &fncNode)
|
|
{
|
|
memset(&fncNode, 0, sizeof(EWFnctNode));
|
|
|
|
fncNode.dDistFromPre = AS_MUNIT(5000.0);//5米位置
|
|
fncNode.eFnType = kHeatDoghouse;
|
|
_tcscpy(fncNode.szNodeSpec, _T("热力投料口"));
|
|
fncNode.nRoomIndex = 0;//舱0
|
|
|
|
fncNode.fNodeDef[0] = AS_MUNITF(7000.0f);//沿管廊方向开口内长
|
|
fncNode.fNodeDef[1] = AS_MUNITF(1200.0f);//管廊断面方向宽
|
|
fncNode.fNodeDef[2] = AS_MUNITF(1600.0f);//左室定位尺寸
|
|
_tcscpy(fncNode.szNodeDefSpec, _T("热力投料口"));
|
|
|
|
fncNode.fNodeDef[10] = AS_MUNITF(1350.0f);//房子左室定位尺寸
|
|
fncNode.fNodeDef[11] = AS_MUNITF(1500.0f);//房子横向宽
|
|
fncNode.fNodeDef[12] = AS_MUNITF(7500.0f);//房子纵向长
|
|
fncNode.fNodeDef[13] = AS_MUNITF(3000.0f);//房子高度
|
|
fncNode.fNodeDef[14] = AS_MUNITF(250.0f); //墙厚
|
|
fncNode.fNodeDef[15] = 14.0f; //钢筋混凝土活动盖板数量
|
|
fncNode.fNodeDef[16] = AS_MUNITF(500.0f); //钢筋混凝土活动盖板宽
|
|
fncNode.fNodeDef[17] = AS_MUNITF(50.0f); //钢筋混凝土活动盖板厚
|
|
fncNode.fNodeDef[18] = AS_MUNITF(4500.0f); //房子伸出部分距离 X:
|
|
}
|
|
|
|
void CRTLKDlg::OnViewLButtonDownMsg()
|
|
{
|
|
UpdateData();
|
|
if (m_idxRoom != -1 && m_pRectCell != NULL)
|
|
{
|
|
AcGePoint2d pt1,pt2;
|
|
m_pRectCell->getPointAt(0,pt1);
|
|
m_pRectCell->getPointAt(1,pt2);
|
|
m_fFangZi_W = pt2.distanceTo(pt1) * 1000.0f;
|
|
m_fFangZi_Size = 50.0f;
|
|
UpdateData(FALSE);
|
|
}
|
|
}
|
|
|
|
void CRTLKDlg::OnBnClickedOk()
|
|
{
|
|
UpdateData(TRUE);
|
|
|
|
if (GetIdxOfRoom() == -1)
|
|
{
|
|
AfxMessageBox(_T("没有选择舱室,请选择舱室!"));
|
|
return;
|
|
}
|
|
|
|
m_data.fNodeDef[0] = AS_MUNITF(m_fKou_Len);
|
|
m_data.fNodeDef[1] = AS_MUNITF(m_fKou_W);
|
|
m_data.fNodeDef[2] = AS_MUNITF(m_fKou_Left);
|
|
|
|
m_data.fNodeDef[10] = AS_MUNITF(m_fFangZi_Size);
|
|
m_data.fNodeDef[11] = AS_MUNITF(m_fFangZi_W);
|
|
m_data.fNodeDef[12] = AS_MUNITF(m_fFangZi_Len);
|
|
m_data.fNodeDef[13] = AS_MUNITF(m_fFangZi_H);
|
|
m_data.fNodeDef[14] = AS_MUNITF(m_fFangZi_Wall_Thickness);
|
|
m_data.fNodeDef[15] = m_fFangZi_Count;
|
|
m_data.fNodeDef[16] = AS_MUNITF(m_fFangZi_GaiBan_W);
|
|
m_data.fNodeDef[17] = AS_MUNITF(m_fFangZi_GaiBan_Thickness);
|
|
m_data.fNodeDef[18] = AS_MUNITF(m_fX); //房子伸出部分距离 X:
|
|
|
|
CBaseDialog::OnOK();
|
|
}
|
|
|
|
|
|
void CRTLKDlg::OnBnClickedButton2()
|
|
{
|
|
CCCSYDlg dlg;
|
|
dlg.SetBmpFileName(_T("RTLK.bmp"));
|
|
dlg.DoModal();
|
|
}
|