105 lines
3.9 KiB
C++
105 lines
3.9 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_)
|