Files
envi-code/SourceCode/Code2026/tg_shs/inc/TArch/TDbStruEntityBase.h
T
2026-09-28 15:28:50 +08:00

136 lines
4.3 KiB
C++

//------------------------------------------------------------------------+
// Copyright (C), 1998-2011, Beijing Tangent Software Co. Ltd.
// = FileName : TDbStruEntityBase类
// = Version : ver1.0
// = Author : xlc
// = CreateDate : 2011-06-09
// = Description: 结构对象基类声明
// = Maintainers:
//
//------------------------------------------------------------------------+
#ifdef TASD
#ifndef _TDBSTRUENTITYBASE_H_
#define _TDBSTRUENTITYBASE_H_
#ifndef _TDBXDATAMAP_H__
#include "TDbXDataMap.h"
#endif
#ifndef _TASSOCMSG_H_
#include "TAssocMsg.h"
#endif
#ifndef _TSTRULOAD_H_
#include "TStruLoad.h"
#endif
#ifndef _TCOMBFORCEDATA_H_
#include "TCombForceData.h"
#endif
#ifndef _TREINSECTDATA_H_
#include "TReinSectData.h"
#endif
#ifndef _TCRACKDATA_H_
#include "TCrackData.h"
#endif
class TARCH_EXP TDbStruEntityBase : public TDbCurveEntity
{
TCH_DECLARE_MEMBERS();
ACRX_DECLARE_MEMBERS(TDbStruEntityBase);
public:
// 数据存取
virtual bool SetAt(LPCTSTR pszKey,int nVal);//ok
virtual bool SetAt(LPCTSTR pszKey,double dVal);//ok
virtual bool SetAt(LPCTSTR pszKey,const AcGeVector3d& vt,BOOL bTransformBy = FALSE);//ok
virtual bool SetAt(LPCTSTR pszKey,const AcGePoint3d& ptGe,BOOL bTransformBy = FALSE);//ok
virtual bool SetAt(LPCTSTR pszKey,const AcGePoint3dArray& arPt,BOOL bTransformBy = FALSE);//ok
virtual bool SetAt(LPCTSTR pszKey,LPCTSTR pszValue);//ok
virtual bool SetAt(LPCTSTR pszKey,const AcDbObjectId& id,BOOL bIsSoft = TRUE);//ok
virtual bool SetAt(LPCTSTR pszKey,const AcGeMatrix3d& xform);//ok
virtual bool GetAt(LPCTSTR pszKey,int& nVal) const;//ok
virtual bool GetAt(LPCTSTR pszKey,double& dVal) const;//ok
virtual bool GetAt(LPCTSTR pszKey,AcGeVector3d& vt) const;//ok
virtual bool GetAt(LPCTSTR pszKey,AcGePoint3d& ptGe) const;//ok
virtual bool GetAt(LPCTSTR pszKey,AcGePoint3dArray& arPt) const;//ok
virtual bool GetAt(LPCTSTR pszKey,AcGeMatrix3d& xform) const;//ok
virtual bool GetAt(LPCTSTR pszKey,CString &sValue) const;//ok
virtual bool GetAt(LPCTSTR pszKey,AcDbObjectId& id) const;//ok
virtual bool SetAt(LPCTSTR pszKey,int iIndex,LPCTSTR pszValue);//ok
virtual bool GetAt(LPCTSTR pszKey,int iIndex,CString &sValue);//ok
virtual bool SetAt(LPCTSTR pszKey,const TXData& XData);//ok
virtual bool GetAt(LPCTSTR pszKey,TXData& XData);//ok
virtual bool SetAt(LPCTSTR pszKey,const std::vector<TStruLoad>& vectLoads);
virtual bool GetAt(LPCTSTR pszKey,std::vector<TStruLoad>& vectLoads)const;
virtual void RemoveLoadsKey(LPCTSTR pszKey);
// add by wjx on 120223 弯距包络图
virtual bool SetAt(LPCTSTR pszKey,const std::vector<TCombForceData>& vecMin,const std::vector<TCombForceData>& vecMax);
virtual bool GetAt(LPCTSTR pszKey,std::vector<TCombForceData>& vecMin, std::vector<TCombForceData> &vecMax)const;
virtual void RemoveMGraKey(LPCTSTR pszKey);
// add by wjx on 120329 轴力包络图
virtual bool SetAt(LPCTSTR pszKey,const std::vector<TCombForceData>& vecData);
virtual bool GetAt(LPCTSTR pszKey,std::vector<TCombForceData>& vecData)const;
virtual void RemoveNGraKey(LPCTSTR pszKey);
// 截面配筋面积数据
virtual bool SetAt(LPCTSTR pszKey,const std::vector<TReinSectData>& vecData);
virtual bool GetAt(LPCTSTR pszKey,std::vector<TReinSectData>& vecData)const;
virtual void RemoveRSDataKey(LPCTSTR pszKey);
// 消息处理
// 对象修改发出关联更改消息
virtual void PostAssocMsg(TAssocMsg assocMsg)const;
// 对象接收到更改消息
virtual void ReceiveAssocMsg(TAssocMsg assocMsg);
// 建立关联关系
virtual void MakeAssocRelation(AcDbObjectIdArray& ids);
// 不验证关系,直接建立关联关系
virtual void MakeAssocRelationDirect(const AcDbObjectId& idObj);
// 移除关联关系
virtual void RemoveAssocRelation(AcDbObjectId& id);
// 获取关联关系,nType:关联类型;ar:关联对象句柄数组
virtual void GetAssocRelation(int nType, AcDbObjectIdArray& ar)const;
// 夹点消息后,更新自己边界
virtual void UpdateMeOnGripMsg(TAssocMsg assocMsg);
//add by xlc on 120118
//设置荷载数组
virtual bool SetLoadsArray(const std::vector<TStruLoad>& vectLoads);
//获得荷载数组
virtual bool GetLoadsArray(std::vector<TStruLoad>& vectLoads);
//清除荷载数组
virtual void ClearLoadsArray();
virtual bool SetAt(LPCTSTR pszKey, const TCrackData& data);
virtual bool GetAt(LPCTSTR pszKey, TCrackData& data) const;
protected:
TDbStruEntityBase();
virtual ~TDbStruEntityBase();
};
#endif
#endif