//------------------------------------------------------------------------+ // Copyright (C), 1998-2011, Beijing Tangent Software Co. Ltd. // = FileName : TStruLoad类 // = Version : ver1.0 // = Author : xlc // = CreateDate : 2011-11-08 // = Description: 荷载信息类实现 // = Maintainers: // //------------------------------------------------------------------------+ #include "StdAfx.h" #ifdef TASD #include "TStruLoad.h" TStruLoad::TStruLoad() { m_nEntType = ENT_BEAM; m_nLoadKind = LK_UNVARYING; m_nLoadType = LT_ALL_H; m_dValue = 0; m_dPara1 = 0; m_dPara2 = 0; m_dPara3 = 0; m_dForceX = 0; m_dForceY = 0; } TStruLoad::~TStruLoad() { } TStruLoad& TStruLoad::operator = (const TStruLoad& src) { if (this != &src) { m_nEntType = src.m_nEntType; m_nLoadKind = src.m_nLoadKind; m_nLoadType = src.m_nLoadType; m_dValue = src.m_dValue; m_dPara1 = src.m_dPara1; m_dPara2 = src.m_dPara2; m_dPara3 = src.m_dPara3; m_dForceX = src.m_dForceX; m_dForceY = src.m_dForceY; } return *this; } bool TStruLoad::operator == (const TStruLoad &src) { if (m_nEntType == src.m_nEntType) { if (m_nLoadKind == src.m_nLoadKind) { switch (m_nEntType) { case ENT_SLAB: if (fabs(m_dValue - src.m_dValue) < _DIST_SNAP) { return true; } break; case ENT_NODE: if (fabs(m_dValue - src.m_dValue) < _DIST_SNAP &&fabs(m_dPara1 - src.m_dPara1) < _DIST_SNAP &&fabs(m_dPara2 - src.m_dPara2) < _DIST_SNAP &&fabs(m_dPara3 - src.m_dPara3) < _DIST_SNAP &&fabs(m_dForceX -src.m_dForceX) < _DIST_SNAP &&fabs(m_dForceY -src.m_dForceY) < _DIST_SNAP) { return true; } break; default: if ((m_nLoadType == src.m_nLoadType)&& fabs(m_dValue - src.m_dValue) < _DIST_SNAP &&fabs(m_dPara1 - src.m_dPara1) < _DIST_SNAP &&fabs(m_dPara2 - src.m_dPara2) < _DIST_SNAP &&fabs(m_dPara3 - src.m_dPara3) < _DIST_SNAP) { return true; } } } } return false; } //属性接口 //对象类型 int TStruLoad::GetEntType()const { return m_nEntType; } void TStruLoad::SetEntType(int nVal) { m_nEntType = nVal; } //荷载类型 int TStruLoad::GetLoadType()const { return m_nLoadType; } void TStruLoad::SetLoadType(int nVal) { m_nLoadType = nVal; } //荷载种类 int TStruLoad::GetLoadKind()const { return m_nLoadKind; } void TStruLoad::SetLoadKind(int nVal) { m_nLoadKind = nVal; } //荷载数值 double TStruLoad::GetValue() const { return m_dValue; } void TStruLoad::SetValue(double dVal) { m_dValue = dVal; } //荷载参数1 double TStruLoad::GetPara1() const { return m_dPara1; } void TStruLoad::SetPara1(double dPara) { m_dPara1 = dPara; } //荷载参数2 double TStruLoad::GetPara2() const { return m_dPara2; } void TStruLoad::SetPara2(double dPara) { m_dPara2 = dPara; } //荷载参数3 double TStruLoad::GetPara3() const { return m_dPara3; } void TStruLoad::SetPara3(double dPara) { m_dPara3 = dPara; } //节点X向水平力Px double TStruLoad::GetForceX() const { return m_dForceX; } void TStruLoad::SetForceX(double dPara) { m_dForceX = dPara; } //节点X向水平力Py double TStruLoad::GetForceY() const { return m_dForceY; } void TStruLoad::SetForceY(double dPara) { m_dForceY = dPara; } #endif