Files
envi-code/SourceCode/Code2026/tg_shs/inc/pipewire/DbEquipDimNew.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

105 lines
4.0 KiB
C++

#ifndef AFX_DBEQUIPDIMNEW_H__
#define AFX_DBEQUIPDIMNEW_H__
#if _MSC_VER > 1000
#pragma once
#endif
#include "dbSymbolAnnotate.h"
//axc add 2015-05-15 保存文字插入点 查找替换命令使用
typedef struct _EquipDimTextInfo_
{
XPoint ptTitle1; //m_csTitle1插入点
XPoint ptTitle2; //m_csTitle2插入点
XPoint ptTitle3; //m_csTitle3插入点
XPoint ptTitle4; //m_csTitle4插入点
}EquipDimTextInfo;
class PS_EXP TDbEquipDimNew : public TDbSymbWithText
{
enum EDimType { eNoLine = 1, eLine = 2, eNone = 3,};
DECLARE_TENTBASE();
ACRX_DECLARE_MEMBERS(TDbEquipDimNew);
public:
TDbEquipDimNew();
TDbEquipDimNew(AcGePoint3d ptIns, bool bHasW, int nNum, CString csX,
CString csBulbNum, CString csSpec, CString csBulbPower,
CString csSetupHeight, CString csSetupMode, CString csLightType);
TDbEquipDimNew(AcGePoint3d ptIns, CString csBulbNum, CString csSetupHeight);
TDbEquipDimNew(AcGePoint3d ptIns, CString csBulbNum);
virtual ~TDbEquipDimNew();
//*************************************************************************
// Overridden methods from AcDbEntity
//*************************************************************************
virtual Acad::ErrorStatus subGetGripPoints(AcGePoint3dArray& gripPoints, AcDbIntArray& osnapModes, AcDbIntArray& geomIds) const;
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices, const AcGeVector3d& offset);
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
//*************************************************************************
// Overridden methods from AcDbObject
//*************************************************************************
virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler*);
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
//*************************************************************************
// TDbEquipDimNew Property
//*************************************************************************
//tangent 派生
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
virtual int GetFirstVersion()const{return 8;}
virtual TSubText* HitTestText(XPoint pt)const {return NULL;};
// 返回发现的位置,同时posStart往前移动(以便继续找下一个使用), axc add 2015-05-15
virtual TTextPosition FindSubText(const TCHAR *sSubText, TTextPosition &posStart, TTextRange *pRange=NULL) const;
// 返回下一次查找的开始位置
virtual TTextPosition ReplaceSubText(const TTextPosition &posRep, const TCHAR *sRepText, TTextRange *pRange=NULL);
virtual long GetSubTextNum()const{ return 4; } // ok
virtual void SetSubText(long i,CString sText); //ok
BOOL GetText(Adesk::UInt32 cookies, TDbText &text) const;
//add end
AcGePoint3d GetStartPt();
AcGePoint3d GetTurnPt();
void SetStartPt(const AcGePoint3d& ptS);
void SetTurnPt(const AcGePoint3d& ptT);
//axc add 2015-05-12 灯具标注样式2使用以下函数
void SetLineDir(const AcGeVector3d& vtDir);
AcGeVector3d GetLineDir() const;
void SetDimEquipType(const int type);
int GetDimEquipType() const;
void SetBaseLineLen(const double dBaseLineLen);
double GetBaseLineLen() const;
double GetTextLength() { return GetDimLength();};
//add end
void SetVector(const AcGeVector3d& vtDir);
int m_nType; // 0: 灯具标注 1: 设备标注
int m_nNum; //灯具数量
CString m_csSpec; //灯具型号
CString m_csBulbNum; //灯泡个数
CString m_csBulbPower; //灯泡功率
CString m_csSetupHeight; //安装高度
CString m_csSetupMode; //安装方式
CString m_csLightType; //光源种类
AcGePoint3d m_ptStart, m_ptIns; //引出线起点,插入点
CString m_csX, m_csTextStyle;
bool m_bHasW;
void InitData();
protected:
double GetDimLength() const;
CString m_csTitle1, m_csTitle2, m_csTitle3, m_csTitle4;
double m_nDimLen;
const static Adesk::UInt8 g_nVersion; //版本控制
};
#endif // !defined(AFX_DBEQUIPDIMNEW_H__7793433B_E587_45FC_9DE4_D7B380DC1208__INCLUDED_)