136 lines
4.3 KiB
C++
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 |