Files
envi-code/SourceCode/Code2026/tg_shs/shs_blklib/SaniFittingAttr.cpp
T
2026-09-28 15:28:50 +08:00

83 lines
2.5 KiB
C++

// SaniFittingAttr.cpp: implementation of the CSaniFittingAttr class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "resource.h"
#include "SaniFittingAttr.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
CSaniFittingAttr::CSaniFittingAttr()
{
m_dOrigenalSizeX = m_dOrigenalSizeY = 0; // 构件的原始尺寸
m_dInitSpace = m_dComponentSpace = 0; // 初始间距, 构件间距
m_dDistToWall = 0; // 缺省距离墙体的距离
m_nPlaceFlag = 0; // 布置标记: 0--多个; 1--单个; 2--浴缸系列(单个); 3--逐点; 4--参数绘制
}
CSaniFittingAttr::CSaniFittingAttr(const CSaniFittingAttr &src)
{
*this = src;
}
CSaniFittingAttr::CSaniFittingAttr(DbfTable *pTable)
{
ReadFromTable(pTable);
}
CSaniFittingAttr::~CSaniFittingAttr()
{
}
//////////////////////////////////////////////////////////////////////////
void CSaniFittingAttr::ReadFromTable(DbfTable *pTable)
{
GET_FIELD(pTable, _T("block"), m_csBlockName);
GET_FIELD(pTable, _T("desc"), m_csDescName);
GET_FIELD(pTable, _T("kind"), m_csKindName);
GET_FIELD(pTable, _T("cspace"), m_dComponentSpace);
GET_FIELD(pTable, _T("distwall"), m_dDistToWall);
GET_FIELD(pTable, _T("ispace"), m_dInitSpace);
GET_FIELD(pTable, _T("sizex"), m_dOrigenalSizeX);
GET_FIELD(pTable, _T("sizey"), m_dOrigenalSizeY);
GET_FIELD(pTable, _T("place"), m_nPlaceFlag);
}
void CSaniFittingAttr::WriteToTable(DbfTable *pTable)
{
SET_FIELD(pTable, _T("block"), (const TCHAR *)m_csBlockName);
SET_FIELD(pTable, _T("desc"), (const TCHAR *)m_csDescName);
SET_FIELD(pTable, _T("kind"), (const TCHAR *)m_csKindName);
SET_FIELD(pTable, _T("cspace"), m_dComponentSpace);
SET_FIELD(pTable, _T("distwall"), m_dDistToWall);
SET_FIELD(pTable, _T("ispace"), m_dInitSpace);
SET_FIELD(pTable, _T("sizex"), m_dOrigenalSizeX);
SET_FIELD(pTable, _T("sizey"), m_dOrigenalSizeY);
SET_FIELD(pTable, _T("place"), m_nPlaceFlag);
}
int CSaniFittingAttr::CompareForSortByKindName(const CSaniFittingAttr *p1, const CSaniFittingAttr *p2)
{
return _tcscmp(p1->m_csKindName, p2->m_csKindName);
}
CSaniFittingAttr & CSaniFittingAttr::operator = (const CSaniFittingAttr &src)
{
m_csBlockName = src.m_csBlockName;
m_csDescName = src.m_csDescName;
m_csKindName = src.m_csKindName;
m_dComponentSpace = src.m_dComponentSpace;
m_dDistToWall = src.m_dDistToWall;
m_dInitSpace = src.m_dInitSpace;
m_dOrigenalSizeX = src.m_dOrigenalSizeX;
m_dOrigenalSizeY = src.m_dOrigenalSizeY;
m_nPlaceFlag = src.m_nPlaceFlag;
return *this;
}