506 lines
17 KiB
C++
506 lines
17 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
|
|
// = FileName : TDbColumn.cpp
|
|
// = Version : ver2.0
|
|
// = Author : xlc
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: 柱子类的定义
|
|
// = Maintainers:
|
|
//
|
|
//-----------------------------------------------------------------------------+
|
|
#ifndef _TDBCOLUMN_H_
|
|
#define _TDBCOLUMN_H_
|
|
|
|
#ifndef _TDBENTITY_H_
|
|
#include "TDbEntity.h"
|
|
#endif
|
|
|
|
#ifndef _TCOLUMNDATA_H_
|
|
#include "TColumnData.h"
|
|
#endif
|
|
|
|
#ifndef _TWALLBASE_H_
|
|
#include "TWallBase.h"
|
|
#endif
|
|
|
|
#ifndef _TDBWALL_H_
|
|
#include "TDbWall.h"
|
|
#endif
|
|
|
|
#ifdef TASD
|
|
#ifndef _TSTRULOAD_H_
|
|
#include "TStruLoad.h"
|
|
#endif
|
|
|
|
#ifndef _TCOMBSECTFORCEDATA_H_
|
|
#include "TCombSectForceData.h"
|
|
#endif
|
|
|
|
#ifndef _TCOMBFORCEDATA_H_
|
|
#include "TCombForceData.h"
|
|
#endif
|
|
|
|
#ifndef _TREINSECTDATA_H_
|
|
#include "TReinSectData.h"
|
|
#endif
|
|
|
|
#ifndef _TREINDATA_H_
|
|
#include "TReinData.h"
|
|
#endif
|
|
#endif
|
|
|
|
class TARCH_EXP TDbColumn: public TDbEntity, public TColumnData,public TWallBase
|
|
{
|
|
friend class TDbWall;
|
|
DECLARE_TENTBASE();
|
|
|
|
public:
|
|
TDbColumn();
|
|
ACRX_DECLARE_MEMBERS(TDbColumn);
|
|
|
|
// Overriden function from AcDbEntity
|
|
virtual Acad::ErrorStatus audit(AcDbAuditInfo* pAuditInfo);
|
|
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
|
|
virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler*);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
|
|
virtual Acad::ErrorStatus dxfInFields (AcDbDxfFiler*);
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const;
|
|
|
|
virtual Acad::ErrorStatus subGetGripPoints(AcGePoint3dArray& gripPoints,
|
|
AcDbIntArray& osnapModes,
|
|
AcDbIntArray& geomIds) const;
|
|
|
|
virtual Acad::ErrorStatus subGetStretchPoints(AcGePoint3dArray & stretchPoints) const;
|
|
|
|
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
|
|
|
|
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices,
|
|
const AcGeVector3d& offset);
|
|
|
|
virtual Acad::ErrorStatus subMoveStretchPointsAt(const AcDbIntArray& indices,
|
|
const AcGeVector3d& offset);
|
|
|
|
virtual Acad::ErrorStatus subGetOsnapPoints(AcDb::OsnapMode osnapMode,
|
|
INT_PTR gsSelectionMark,
|
|
const AcGePoint3d& pickPoint,
|
|
const AcGePoint3d& lastPoint,
|
|
const AcGeMatrix3d& viewXform,
|
|
AcGePoint3dArray& snapPoints,
|
|
AcDbIntArray& geomIds) const;
|
|
|
|
virtual Acad::ErrorStatus subWblockClone(AcRxObject* pOwner,
|
|
AcDbObject*& pClonedObject,
|
|
AcDbIdMapping& idMap,
|
|
Adesk::Boolean isPrimary) const;
|
|
// 为保留旧状态重载
|
|
virtual Acad::ErrorStatus subOpen(AcDb::OpenMode mode);
|
|
|
|
// drived from TDbEntity
|
|
virtual BOOL IsValid() const;
|
|
virtual bool IsModelEntity() const;
|
|
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
|
|
virtual Acad::ErrorStatus GetPathPoly(TGGePoly2D &poly,AcGeVector3d&vt)const;
|
|
virtual Acad::ErrorStatus SetPathPoly(const TGGePoly2D &poly,const AcGeVector3d&vt);
|
|
virtual Acad::ErrorStatus ExplodeOrDraw3d(TGGiExplodeDrawBase &dc) const;
|
|
virtual Acad::ErrorStatus ExplodeOrDraw2d(TGGiExplodeDrawBase &dc) const;
|
|
//add by xlc on 110407
|
|
virtual Acad::ErrorStatus DownGradeSave(int nDrawMode, AcDbVoidPtrArray &entSet, BOOL *bErase);
|
|
//是否去裁剪
|
|
virtual bool IsMeClip()const;
|
|
//取动态属性显示数据
|
|
virtual int GetCtrlToggleIndex()const;
|
|
virtual void GetTips(TDPtrList<TObjInfoUnit> &) const;
|
|
|
|
#if ADS > 15
|
|
virtual void CreateGrip();
|
|
virtual Acad::ErrorStatus EntityToDim(long iGrip,long iDim,const AcDbEntity*pEnt);
|
|
virtual Acad::ErrorStatus DimToEntity(long iGrip,long iDim,double newValue,const AcGeVector3d& offset);
|
|
#endif
|
|
|
|
virtual const TCHAR * GetDefaultLayer() const;
|
|
virtual Acad::ErrorStatus GetGripText(int i, CString &cs) const;
|
|
|
|
//override TWallBase
|
|
virtual AcDbEntity* GetMyEntity()const;
|
|
virtual int GetMaterialIndex()const;
|
|
virtual TWallBase::Usage GetUsage()const;
|
|
|
|
//add by wlw on 101026
|
|
virtual bool GetStandardFaceBody(AcDbVoidPtrArray& arFacePtrs) const;
|
|
|
|
virtual bool GetSafeProtectedSpace(AcDbVoidPtrArray& arFacePtrs) const;
|
|
|
|
virtual bool GetSection(const AcDbFace &face, const AcGeVector3d& vtPlaneSecDir,
|
|
std::vector<TObjSectionRecord> §ionRecords,
|
|
AcDbVoidPtrArray& arFillPtrs) const;
|
|
|
|
virtual CString GetXml(const AcGeMatrix3d& mat) const;
|
|
|
|
// sg add 101115,支持统一标高
|
|
virtual bool UnifyElevation(double dElevation = 0.0);
|
|
|
|
int GetPriority()const;
|
|
BOOL IsFortifyColumn() const;
|
|
BOOL IsShortColumn()const;
|
|
BOOL IsLabelEnabled() const;
|
|
|
|
void SetFortifyColumn(BOOL bTrue);
|
|
void SetShortColumn(BOOL bTrue);
|
|
void SetColumnFlag(Adesk::UInt16 nFlag);
|
|
void SetLayerHatch2d(AcDbObjectId id);
|
|
|
|
AcDbObjectId GetLayerHatch2d() const;
|
|
|
|
TADSGePoint3d GetLabelPos(BOOL bIsDefault = FALSE) const;
|
|
void SetLabelPos(TADSGePoint3d pt);
|
|
|
|
void EnableLabel(BOOL bTrue);
|
|
const TCHAR *GetLabel() const;
|
|
void SetLabel(const TCHAR *sz);
|
|
|
|
AcDbObjectId GetTextStyle() const;
|
|
void SetTextStyle(AcDbObjectId id);
|
|
|
|
AcDbObjectId GetLayerText() const;
|
|
void SetLayerText(AcDbObjectId id);
|
|
|
|
double GetTextHeight(BOOL bAsPaperUnit = TRUE) const;
|
|
void SetTextHeight(double dHeight, BOOL bAsPaperUnit = TRUE);
|
|
|
|
const TCHAR* GetMaterialText() const;
|
|
const TCHAR* GetHatchPattern() const;
|
|
Adesk::UInt16 GetHatchColor() const;
|
|
Adesk::UInt16 GetColumnFlag() const;
|
|
|
|
//取本墙线厚度,不管加粗开关是否开启
|
|
double GetLineWeight(BOOL bAsPaperUnit = TRUE) const;
|
|
void GetAxisColuInfo(TADSGePointDir2d &ptLoc, TVector3D &vtOffset) const;
|
|
|
|
// Helper Method
|
|
Acad::ErrorStatus AddLinkWallId(const AcDbObjectId &id);
|
|
void RemoveLinkWallId(const AcDbObjectId&id);
|
|
void ResetLinkage();
|
|
void PreErase()const;
|
|
void GetThinCurves(TDPtrList<TGGeCurveSegment> &lstResult, TDPtrList<TGGeCurveSegment> &lstResultIn) const;
|
|
void UpdateAssocWallGraphics() const;
|
|
|
|
//柱子保温接口函数wlw
|
|
//是否有保温
|
|
bool IsInsulateOnColumn() const;
|
|
//设置保温标识
|
|
void SetInsulateOnColumn(bool bAdd = true);
|
|
void SetInsulateThick(double nThick);
|
|
double GetInsulateThick() const;
|
|
void SetInsulateLayerId(AcDbObjectId id);
|
|
AcDbObjectId GetInsulateLayerId() const;
|
|
|
|
//通过一个向量,增加该方向上的保温层。vtdir = 柱子边线上一点 - 柱子原点
|
|
bool AppendInsulateDir(AcGeVector3d vtDir);
|
|
//删除该方向上的保温层vtdir = 柱子边线上一点 - 柱子原点
|
|
bool RemoveInsulateDir(AcGeVector3d vtDir);
|
|
|
|
//绘制保温层
|
|
void DrawInsulateLine(TGGiExplodeDrawBase &dc) const;
|
|
|
|
//nside = 1 加内墙方向柱子保温 = 0加外墙方向柱子保温
|
|
void DrawInsulateInExt(int nSide);
|
|
|
|
///*柱子保温内部计算函数
|
|
//从xdata中取得柱子的保温标识和有保温线的方向数组
|
|
bool ReadInsulateFromXData(bool& bHasInsulate, AcGeVector3dArray& arDir) const;
|
|
|
|
//将柱子的保温标识和保温线的方向数组存入xdata
|
|
bool WriteInsulateToXData(bool bHasInsulate, const AcGeVector3dArray& arDir);
|
|
|
|
//得到柱子的保温poly2D, bPerfect控制是否得到完美外轮廓,柱子3D显示将弥补墙的缺角
|
|
void GetColSurFacePoly2D(TGGePoly2D& polySurFace,BOOL bPerfect = FALSE) const;
|
|
|
|
//得到柱子的保温裁剪后的线段数组
|
|
void GetColSurFaceLines(TDPtrList<TGGeCurveSegment>& lstSegsSurFace) const;
|
|
|
|
//通过一点得到柱子的保温线数组中与该点相连的连续的线段数组
|
|
void GetConcatLine(TADSGePoint3d ptStart, TDPtrList<TGGeCurveSegment>& lstSegsSrc, TDPtrList<TGGeCurveSegment>& lstSegsCon) const;
|
|
|
|
//得到最终的保温线
|
|
void GetColSurFaceFinal(TDPtrList<TGGeCurveSegment>& lstSegsSurFinal) const;
|
|
|
|
//判断该方向上是否有保温线
|
|
bool HasSurFaceWithVector(AcGeVector3d vtDir) const;
|
|
bool HasSurFaceWithVector(AcGeVector3d vtDir, const TDPtrList<TGGeCurveSegment>& lstSegsSurFace) const;
|
|
|
|
//判断该方向上是否有保温线,并返回保温线数组
|
|
bool GetSurFaceWithVector(AcGeVector3d vtDir, TDPtrList<TGGeCurveSegment>& lstSegsSurFace) const;
|
|
|
|
//找到一个seg与outpoly的交点
|
|
bool GetIntersectWithCurveSeg(const TGGeCurveSegment& segSrc, TADSGePoint3d& ptInter);
|
|
bool GetIntersectWithLine(const TGGeLine& line, TADSGePoint3d& ptInter);
|
|
//配合DrawInsulateInExt函数使用
|
|
BOOL DrawInsulateInExtByPt(int nSide,const TGGeCurveSegment& segIns);
|
|
//柱子保温内部计算函数*/
|
|
|
|
//T20新材料wlw add140214
|
|
CString GetT20ColMat() const;
|
|
void SetT20ColMat(CString sMat);
|
|
|
|
#ifdef TASD
|
|
//结构数据
|
|
//add by xlc on 120118
|
|
//设置荷载数组
|
|
bool SetLoadsArray(const std::vector<TStruLoad>& vectLoads);
|
|
//获得荷载数组
|
|
bool GetLoadsArray(std::vector<TStruLoad>& vectLoads)const;
|
|
//清除荷载数组
|
|
void ClearLoadsArray();
|
|
|
|
// add by wjx on 120329 轴力包络图
|
|
virtual bool SetNGraArray(const std::vector<TCombForceData>& vecData);
|
|
//获得轴力包络图数组
|
|
virtual bool GetNGraArray(std::vector<TCombForceData>& vecData)const;
|
|
//清除弯轴力包络图数组
|
|
virtual void ClearNGraArray();
|
|
|
|
//底层墙柱
|
|
//X向最大剪力
|
|
bool SetVXMaxArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetVXMaxArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearVXMaxArray();
|
|
//Y向最大剪力
|
|
bool SetVYMaxArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetVYMaxArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearVYMaxArray();
|
|
//最大轴力
|
|
bool SetNMaxArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetNMaxArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearNMaxArray();
|
|
//最小轴力
|
|
bool SetNMinArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetNMinArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearNMinArray();
|
|
//X向最大弯矩
|
|
bool SetMXMaxArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetMXMaxArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearMXMaxArray();
|
|
//Y向最大弯矩
|
|
bool SetMYMaxArray(const std::vector<TCombForceData>& vecData);
|
|
bool GetMYMaxArray(std::vector<TCombForceData>& vecData)const;
|
|
void ClearMYMaxArray();
|
|
|
|
// 内力数据
|
|
bool SetForceArray(const std::vector<TCombSectForceData>& vecData);
|
|
bool GetForceArray(std::vector<TCombSectForceData>& vecData)const;
|
|
void ClearForceArray();
|
|
|
|
// 活载标准内力数据
|
|
bool SetVSForceArray(const std::vector<TCombSectForceData>& vecData);
|
|
bool GetVSForceArray(std::vector<TCombSectForceData>& vecData)const;
|
|
void ClearVSForceArray();
|
|
// 恒载标准内力数据
|
|
bool SetSForceArray(const std::vector<TCombSectForceData>& vecData);
|
|
bool GetSForceArray(std::vector<TCombSectForceData>& vecData)const;
|
|
void ClearSForceArray();
|
|
|
|
//柱正截面配筋面积数据
|
|
bool SetRSArray(const std::vector<TReinSectData>& vecRSData);
|
|
bool GetRSArray(std::vector<TReinSectData>& vecRSData)const;
|
|
void ClearRSArray();
|
|
|
|
//柱斜截面配筋面积数据
|
|
bool SetRSSArray(const std::vector<TReinSectData>& vecRSData);
|
|
bool GetRSSArray(std::vector<TReinSectData>& vecRSData)const;
|
|
void ClearRSSArray();
|
|
|
|
//柱实际配筋面积数据
|
|
bool SetRAreaArray(const TReinData& raData);
|
|
bool GetRAreaArray(TReinData& raData)const;
|
|
void ClearRAreaArray();
|
|
|
|
enum ColuKind
|
|
{
|
|
kColu = 1, //普通柱
|
|
kFrameColu, //框架柱
|
|
kEmbColu, //暗柱
|
|
kTieColu, //构造柱
|
|
kConerColu, //角柱
|
|
kTransColu, //转换柱
|
|
kTransConColu //转换角柱
|
|
};
|
|
|
|
//底层墙柱内力显示工况
|
|
enum SColuForce
|
|
{
|
|
eNormal = 0,
|
|
eVXMax,
|
|
eVYMax,
|
|
eNMax,
|
|
eNMin,
|
|
eMXMax,
|
|
eMYMax
|
|
};
|
|
|
|
double GetBottomElev() const; //ok
|
|
void SetBottomElev(double dElev); //ok
|
|
|
|
double GetTopElev() const;
|
|
void SetTopEleve(double dElev);
|
|
|
|
//铰接属性
|
|
int GetHinge()const; //返回值 0:普通柱,1:上端铰柱,2:下端铰柱,3:两端铰柱
|
|
void SetHinge(BOOL bTop, BOOL bTrue);
|
|
|
|
//柱填充图层
|
|
AcDbObjectId GetLayerHatch() const;
|
|
void SetLayerHatch(AcDbObjectId idLayer);
|
|
//柱尺寸图层
|
|
AcDbObjectId GetLayerDim() const;
|
|
void SetLayerDim(AcDbObjectId idLayer);
|
|
//柱编号图层
|
|
AcDbObjectId GetLayerNum() const;
|
|
void SetLayerNum(AcDbObjectId idLayer);
|
|
//柱标注图层
|
|
AcDbObjectId GetLayerMark() const;
|
|
void SetLayerMark(AcDbObjectId idLayer);
|
|
//柱截面注写图层
|
|
AcDbObjectId GetLayerSect() const;
|
|
void SetLayerSect(AcDbObjectId idLayer);
|
|
//柱表注写图层
|
|
AcDbObjectId GetLayerTbl() const;
|
|
void SetLayerTbl(AcDbObjectId idLayer);
|
|
//柱平法纵筋图层
|
|
AcDbObjectId GetLayerRBarV() const;
|
|
void SetLayerRBarV(AcDbObjectId idLayer);
|
|
//柱平法箍筋图层
|
|
AcDbObjectId GetLayerRBarR() const;
|
|
void SetLayerRBarR(AcDbObjectId idLayer);
|
|
//柱实配面积图层
|
|
AcDbObjectId GetLayerRealArea() const;
|
|
void SetLayerRealArea(AcDbObjectId idLayer);
|
|
//柱双偏压图层
|
|
AcDbObjectId GetLayerChkBias() const;
|
|
void SetLayerChkBias(AcDbObjectId idLayer);
|
|
//柱轴压比图层
|
|
AcDbObjectId GetLayerChkRati() const;
|
|
void SetLayerChkRati(AcDbObjectId idLayer);
|
|
//柱内力结果图层
|
|
AcDbObjectId GetLayerForce() const;
|
|
void SetLayerForce(AcDbObjectId idLayer);
|
|
//柱计算配筋图层
|
|
AcDbObjectId GetLayerCalcArea() const;
|
|
void SetLayerCalcArea(AcDbObjectId idLayer);
|
|
//柱荷载
|
|
AcDbObjectId GetLayerLoad() const;
|
|
void SetLayerLoad(AcDbObjectId idLayer);
|
|
//柱活荷值
|
|
AcDbObjectId GetLayerLoadL() const;
|
|
void SetLayerLoadL(AcDbObjectId idLayer);
|
|
//柱恒荷值
|
|
AcDbObjectId GetLayerLoadC() const;
|
|
void SetLayerLoadC(AcDbObjectId idLayer);
|
|
//文字样式
|
|
AcDbObjectId GetTextStyleRB() const;
|
|
void SetTextStyleRB(AcDbObjectId idLayer);
|
|
|
|
bool SetAt(LPCTSTR pszKey,const std::vector<TCombForceData>& vecData);
|
|
bool GetAt(LPCTSTR pszKey,std::vector<TCombForceData>& vecData)const;
|
|
void RemoveNGraKey(LPCTSTR pszKey);
|
|
bool SetAt(LPCTSTR pszKey,const std::vector<TStruLoad>& vectLoads);
|
|
bool GetAt(LPCTSTR pszKey,std::vector<TStruLoad>& vectLoads)const;
|
|
void RemoveLoadsKey(LPCTSTR pszKey);
|
|
// 截面配筋面积数据
|
|
bool SetAt(LPCTSTR pszKey,const std::vector<TReinSectData>& vecData);
|
|
bool GetAt(LPCTSTR pszKey,std::vector<TReinSectData>& vecData)const;
|
|
void RemoveRSDataKey(LPCTSTR pszKey);
|
|
|
|
// 构造截面
|
|
bool ConstructShape(const TADSGePoint3d &pt, TGGePoly2D &poly) const;
|
|
#endif
|
|
public:
|
|
TDPtrList<AcDbSoftPointerId> m_lstWallIds;
|
|
//TArch8
|
|
double m_nInsulateThick; //保温层厚
|
|
AcDbHardPointerId m_idLayerInsulate; //保温图层
|
|
|
|
protected:
|
|
Adesk::UInt16 _GetColumnFlag() const;
|
|
void _SetColumnFlag(Adesk::UInt16 val);
|
|
|
|
protected:
|
|
//TArch6 data
|
|
Adesk::UInt16 m_nColuFlag; //柱子控制标记
|
|
AcDbHardPointerId m_idLayerHatch2d;
|
|
TCString m_sLabel; //柱子编号,为结构做准备
|
|
TADSGePoint3d m_ptLabel; //标注点
|
|
AcDbHardPointerId m_idTextStyle, m_idLayerText; //文字样式
|
|
double m_nTextHeight; //文字高度(图纸尺寸)
|
|
#ifdef TASD
|
|
//结构数据
|
|
AcDbHardPointerId m_idLayerHatch; //柱填充图层
|
|
AcDbHardPointerId m_idLayerDim; //柱尺寸图层
|
|
AcDbHardPointerId m_idLayerNum; //柱编号图层
|
|
AcDbHardPointerId m_idLayerMark; //柱标注图层
|
|
AcDbHardPointerId m_idLayerSect; //柱截面注写图层
|
|
AcDbHardPointerId m_idLayerTbl; //柱表注写图层
|
|
AcDbHardPointerId m_idLayerRBarV; //柱平法纵筋图层
|
|
AcDbHardPointerId m_idLayerRBarR; //柱平法箍筋图层
|
|
AcDbHardPointerId m_idLayerRealArea; //柱实配面积图层
|
|
AcDbHardPointerId m_idLayerChkBias; //柱双偏压图层
|
|
AcDbHardPointerId m_idLayerChkRati; //柱轴压比图层
|
|
AcDbHardPointerId m_idLayerForce; //柱内力结果图层
|
|
AcDbHardPointerId m_idLayerCalcArea; //柱计算配筋图层
|
|
AcDbHardPointerId m_idLayerLoad; //柱荷载
|
|
AcDbHardPointerId m_idLayerLoadL; //活荷值
|
|
AcDbHardPointerId m_idLayerLoadC; //恒荷值
|
|
AcDbHardPointerId m_idTextStyleRB; //文字样式
|
|
private:
|
|
// 构造矩形
|
|
bool ConstructRectShape(const TADSGePoint3d &pt, TGGePoly2D &poly) const;
|
|
// 构造工字形
|
|
bool ConstructIShape(const TADSGePoint3d &pt, TGGePoly2D &poly) const;
|
|
// 构造圆形
|
|
bool ConstructCircleShape(const TADSGePoint3d &pt, TGGePoly2D &poly) const;
|
|
// 通过m_polyOutline计算轴转角
|
|
double GetCalcAngle() const;
|
|
|
|
Acad::ErrorStatus StruExplodeOrDraw3d(TGGiExplodeDrawBase &dc) const;
|
|
Acad::ErrorStatus StruExplodeOrDraw2d(TGGiExplodeDrawBase &dc) const;
|
|
// 柱子标注
|
|
void DrawBH(TGGiExplodeDrawBase &dc) const;
|
|
// 构件编号
|
|
void DrawClab(TGGiExplodeDrawBase &dc) const;
|
|
// 单元编号
|
|
void DrawCellNo(TGGiExplodeDrawBase &dc) const;
|
|
// 刚域
|
|
void DrawRG(TGGiExplodeDrawBase &dc) const;
|
|
// 坐标
|
|
void DrawCoordinate(TGGiExplodeDrawBase &dc)const;
|
|
// 荷载
|
|
void DrawColuLoad(TGGiExplodeDrawBase &dc, int nFlag2d3d)const;
|
|
// 2d荷载
|
|
void DrawColuLoad2d(TGGiExplodeDrawBase &dc, TStruLoad loadData,
|
|
XPoint ptLoadS, XPoint ptLoadE, double dArrow)const;
|
|
// 3d荷载
|
|
void DrawColuLoad3d(TGGiExplodeDrawBase &dc, TStruLoad loadData)const;
|
|
// 2d荷载文字
|
|
void DrawLoadText2d(TGGiExplodeDrawBase &dc, TStruLoad loadData,
|
|
XPoint ptInsert, double dTextDis)const;
|
|
// 3d荷载文字
|
|
void DrawLoadText3d(TGGiExplodeDrawBase &dc, TStruLoad loadData, double &dDis)const;
|
|
// 特殊柱填充
|
|
void SepColuHach(TGGiExplodeDrawBase &dc)const;
|
|
|
|
// add by wjx on 120329绘制轴力图
|
|
void DrawNGraph(TGGiExplodeDrawBase &dc)const;
|
|
|
|
//底层墙柱内力图
|
|
void DrawWallColu(TGGiExplodeDrawBase &dc)const;
|
|
//配筋面积图
|
|
void DrawColuRein(TGGiExplodeDrawBase &dc)const;
|
|
|
|
bool SetForceArray(LPCTSTR pszKey, const std::vector<TCombSectForceData>& vecData);
|
|
bool GetForceArray(LPCTSTR pszKey, std::vector<TCombSectForceData>& vecData)const;
|
|
void ClearForceArray(LPCTSTR pszKey);
|
|
#endif
|
|
private:
|
|
const static Adesk::UInt8 g_nVersion;
|
|
};
|
|
|
|
#endif |