Files
envi-code/SourceCode/Code2026/EarthWormCmd/RTLKDlg.cpp
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

157 lines
4.9 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();
}