Files
envi-code/SourceCode/Code2026/tg_shs/inc/pipewire/TDbCircleText.h
T
2026-09-28 15:28:50 +08:00

144 lines
4.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// TDbCircleText.h: interface for the TDbCircleText class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_TDBCIRCLETEXT_H__EB4892FC_58BB_470B_97CC_00D5FA56EEAB__INCLUDED_)
#define AFX_TDBCIRCLETEXT_H__EB4892FC_58BB_470B_97CC_00D5FA56EEAB__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <dbSymbolAnnotate.h>
/*============================================================================*
* Copyright(c), 1994-2007, Beijing Tangent Engineering Software Co.Ltd.
* 文 件 名: TDbCircleText.h
* 归属项目: 暖通
=============================================================================*/
/*============================================================================*
* 类 名: TDbCircleText
* 功能描述: 立管标注文字
==============================================================================*/
#define IDS_TENTITY_FIELDS_DIM_HAS_LEADER _T("立管标注是否带引线")
class PS_EXP TDbCircleText : public TDbSymbWithText
{
DECLARE_TENTBASE();
ACRX_DECLARE_MEMBERS(TDbCircleText);
private:
const static Adesk::UInt8 g_nVersion;
public:
TDbCircleText();
virtual ~TDbCircleText();
protected:
CString m_csText; // 图号
XPoint m_ptCenter; // 圆心
XPoint m_ptFrom; // 引出点
double m_nRadius; // 图纸单位
double m_nLineWidth; // 线粗(图纸单位) -1 为双圆
AcDbHardPointerId m_idOwner;
//BOOL m_bHasLeader; // 是否带有引线 2009-6-1
public:
CString GetText() const {
return m_csText;
}
void SetText(const CString pszText) {
assertWriteEnabled();
m_csText = pszText;
}
XPoint GetCenter() const {
return m_ptCenter;
}
void SetCenter(XPoint pt) {
assertWriteEnabled();
m_ptCenter = pt;
}
XPoint GetFrom() const {
return m_ptFrom;
}
void SetFrom(XPoint pt) {
assertWriteEnabled();
m_ptFrom = pt;
}
double GetRadius() const {
return m_nRadius;
}
void SetRadius(double val) {
assertWriteEnabled();
m_nRadius = val;
}
double GetLineWidth() const {
return m_nLineWidth;
}
void SetLineWidth(double val) {
assertWriteEnabled();
m_nLineWidth = val;
}
AcDbObjectId GetPipeId() const {
return m_idOwner;
}
void SetPipeId(const AcDbObjectId &id) {
assertWriteEnabled();
m_idOwner = id;
}
Adesk::Boolean GetDimHasLeader() const
{
const TEntityFields &fd = GetFields();
Adesk::Boolean bHasLeader = Adesk::kFalse;
fd.GFD(IDS_TENTITY_FIELDS_DIM_HAS_LEADER, bHasLeader);
return bHasLeader;
}
void SetDimHasLeader(BOOL bHasLeader = TRUE)
{
assertWriteEnabled();
Adesk::Boolean bDimHasLeader = bHasLeader ? Adesk::kTrue : Adesk::kFalse;
TEntityFields &fd = Fields();
fd.SFD(IDS_TENTITY_FIELDS_DIM_HAS_LEADER, bDimHasLeader);
}
public: // Override AcDbEntity
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 subMoveGripPointsAt(const AcDbIntArray& indices,
const AcGeVector3d& offset);
virtual Acad::ErrorStatus subMoveStretchPointsAt(const AcDbIntArray& indices,
const AcGeVector3d& offset);
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
public: // Override TDbEntity
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
virtual void GetTips(DList<TObjInfoUnit> &) const; // 取动态属性显示数据
virtual Acad::ErrorStatus GetGripText(int i, CString &cs) const;
virtual void SetSubText(long i, CString sText); // sg add
virtual long GetSubTextNum() const { return 1; } // ok
};
#endif // !defined(AFX_TDBCIRCLETEXT_H__EB4892FC_58BB_470B_97CC_00D5FA56EEAB__INCLUDED_)