#pragma once #include "AecDbEntityBaseEx.h" #include "globalFunc.h" class AecXDbSymbWithText : public AecXDbEntityBaseEx { private: void *operator new[](size_t nSize) { return 0; } void operator delete[](void *p) {}; void *operator new[](size_t nSize, const TCHAR *file, int line) { return 0; } private: const static Adesk::UInt8 g_nVersion; protected: // 文字参数 AcDbHardPointerId m_idTextStyle; // 文字样式 double m_nTextHeight; // TArch6 member double m_nTextRotation; // 旋转角度,目前只有标高用到 AcDbHardPointerId m_idTextLayer; // TArch7 Adesk::UInt16 m_colorText; // 文字颜色 public: ACRX_DECLARE_MEMBERS(AecXDbSymbWithText); AecXDbSymbWithText(); ~AecXDbSymbWithText(); //virtual BOOL IsValid() const; virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag); //virtual Acad::ErrorStatus DownGradeSave(int nDrawMode, AcDbVoidPtrArray &entSet, BOOL *bErase); // virtual Acad::ErrorStatus getClassID(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 subTransformBy(const AcGeMatrix3d& xform); // drived from TDbEntity virtual DrawModeType GetDrawType() const; virtual const TCHAR *GetDefaultLayer() const; // Properties double GetTextHeight() const; AcDbObjectId GetTextStyleId() const; AcDbObjectId GetTextLayerId() const; void SetTextHeight(double nHeight); void SetTextStyleId(AcDbObjectId id); void SetTextLayerId(AcDbObjectId id); void SetTextRotation(double nRot); double GetTextRotation() const; BOOL IsTextRotated() const; // sg add 090608,增加颜色设置接口 void SetTextColor(Adesk::UInt16 color); Adesk::UInt16 GetTextColor() const; };