59 lines
2.5 KiB
C++
59 lines
2.5 KiB
C++
#pragma once
|
|
#include "tdbcurveentity.h"
|
|
|
|
class TARCH_EXP TDbInSight : public TDbSymbWithText
|
|
{
|
|
protected:
|
|
DECLARE_TENTBASE();
|
|
ACRX_DECLARE_MEMBERS(TDbInSight);
|
|
public:
|
|
enum EInsightType{ENormalInsight = 0, EIndexInsight};
|
|
TDbInSight();
|
|
virtual ~TDbInSight();
|
|
void SetType(EInsightType uStyle) { m_InSightStyle = (short)uStyle; } // 0 - 单面, 1-双面(上下) 2-双面左右, 3-四面
|
|
EInsightType GetType(){ return (EInsightType)m_InSightStyle; }
|
|
void SetInsertPt(XPoint ptIns) { m_ptIns = ptIns; }
|
|
XPoint GetInsertPt() { return m_ptIns; }
|
|
|
|
void SetRadius(double nRadius);
|
|
double GetRadius() { return m_dRadius; }
|
|
void SetMapNoText(CString str); //图号
|
|
CString GetMapNoText() { return m_strTH; }
|
|
void SetNumberText(CString str); //编号
|
|
CString GetNumberText() { return m_strBH; }
|
|
void SetAngle(double dRotation);
|
|
double GetAngle();
|
|
void SetOldStyle(int nDraw);
|
|
int GetOldStyle() const;
|
|
double GetTextRatio() const; // 文字控制大小的比例
|
|
void SetTextRatio(double dVal);
|
|
virtual int GetFirstVersion() const;
|
|
public:
|
|
int GetTrueTextStyle() const;
|
|
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
|
|
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
|
|
virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler* pFiler);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler* pFiler) const;
|
|
virtual Acad::ErrorStatus GetGripText(int i, CString &cs) const;
|
|
virtual Acad::ErrorStatus DownGradeSave(int nDrawMode, AcDbVoidPtrArray &entSet,BOOL *bErase); // sg add 081223,导出低版本
|
|
virtual Acad::ErrorStatus ExplodeOrDraw2d(TGGiExplodeDrawBase &dc) const;
|
|
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
|
|
virtual Acad::ErrorStatus subGetGripPoints(AcGePoint3dArray&gripPoints,AcDbIntArray&,AcDbIntArray&)const;
|
|
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices, const AcGeVector3d& offset);
|
|
virtual TSubText* HitTestText(XPoint pt)const;
|
|
virtual void SetSubText(long i, CString sText);
|
|
void GetTextExtends(const TCHAR *sText, double &dX, double &dY, BOOL bDrawingLabel) const;
|
|
virtual long GetSubTextNum()const{return m_InSightStyle == ENormalInsight ? 1:2;}//ok
|
|
private:
|
|
short m_InSightStyle; //内饰符号样式
|
|
CString m_strTH; //文字1
|
|
CString m_strBH; //文字2
|
|
XPoint m_ptIns; //插入点
|
|
double m_dRadius; //半径
|
|
double m_dRotation; //图案旋转角
|
|
double m_dValue; //预留
|
|
int m_nFlag; //预留
|
|
double m_dTextRatio; // 文字控制大小的比例,0为随TDbConfig
|
|
Adesk::UInt8 m_bOldStyle;
|
|
};
|