Files
envi-code/SourceCode/Code2026/Pool3dCmd/KTStatusRecord.h
T
2026-09-28 15:28:50 +08:00

79 lines
1.7 KiB
C++

#ifndef _KTSTATUSRECORD_H__
#define _KTSTATUSRECORD_H__
#if _MSC_VER > 1000
#pragma once
#endif
class KTStatusRecord
{
public:
KTStatusRecord();
virtual ~KTStatusRecord();
enum EQuire
{
kPoint = 1,
kAngle = 2,
kDist = 3,
kString = 4,
kEntity = 5
};
void SetPrompt(LPCTSTR pszPrompt);
BOOL GetPrompt(CString& sPrompt);
void SetKeyList(LPCTSTR pszList);
BOOL GetKeylist(CString& sKeylist);
void SetQuire(KTStatusRecord::EQuire eQuire);
KTStatusRecord::EQuire GetQuire();
void SetChildStaRec(LPCTSTR pszKeyWord,KTStatusRecord * pRec);
BOOL GetChildKey(CString& sKey);
void SetAcquireVal(const AcGePoint3d& ptGe);
void GetAcquireVal(AcGePoint3d& ptGe);
void SetAcquireVal(double dVal);
void GetAcquireVal(double& dVal);
void SetAcquireVal(AcDbObjectId id);
void GetAcquireVal(AcDbObjectId& id);
KTStatusRecord * GetChildStaRec(LPCTSTR pszKeyWord);
KTStatusRecord * GetParentStaRec();
void SetNextStaRec(KTStatusRecord * pRec);
KTStatusRecord * GetNextStaRec();
KTStatusRecord * GetLastStaRec();
void SetSegStatusFinish(BOOL bFlag);
BOOL IsStatusFinish();
void SetPlanPos(int nPos);
void GetPlanPos(int& nPos);
void SetClockwise(BOOL bClockwise);
void GetClockwise(BOOL& bClockwise);
private:
AcDbObjectId m_id;
AcGePoint3d m_ptGe;
double m_dVal;
BOOL m_bStatusFlag;
BOOL m_bClockwise; // 圆弧专用,是否从上一点到当前点顺时针绘制
int m_nPlanPos;
CString m_sPrompt;
CString m_sKeylist;
KTStatusRecord::EQuire m_eQuire;
KTStatusRecord * m_pParentStaRec;
CMapStringToPtr m_mapChildRecPtrs;
KTStatusRecord * m_pNextStaRec;
KTStatusRecord * m_pLastStaRec;
};
#endif //_KTStatusRecord_H__