You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.4 KiB
C++
49 lines
1.4 KiB
C++
#ifndef TRACK_INSYMBOL_H
|
|
#define TRACK_INSYMBOL_H
|
|
#pragma once
|
|
|
|
class CInTrackDepthSegment;
|
|
class AFX_EXT_CLASS CInTrackSymbol : public CInTrackDepthSegment
|
|
{
|
|
public:
|
|
CInTrackSymbol();
|
|
CInTrackSymbol(const CRect8& position);
|
|
virtual ~CInTrackSymbol() {}
|
|
CLONE_WELLOBJECT(CInTrackSymbol)
|
|
virtual void operator=(CInTrackSymbol& object);
|
|
|
|
public:
|
|
|
|
int m_nKind; // 0居中 1横纵都拉伸 2横向拉伸 3纵向拉伸
|
|
CString m_strName; // 符号名称
|
|
CSize8 m_Size; // 符号大小
|
|
|
|
CXy* m_pMarkSymbol; // 符号指针
|
|
// Implementation
|
|
public:
|
|
virtual void Serialize(CArchive& ar, const short &ver);
|
|
virtual void DrawSymbol(CXyDC* pDC, CRect8 rect, int kind=1, CSize8 size=CSize8(1,1));
|
|
virtual void DrawSymbol(CXyDC* pDC, CRect8 rect, double rotatedAngle,int kind=1, CSize8 size=CSize8(1,1));
|
|
virtual void Draw(CXyDC* pDC);
|
|
//获取斜井状态下岩性符号对应的左右井边界,供TrackLithObj computedata(),BuidChildObject()调用
|
|
virtual bool CalcInclinedBorder();
|
|
|
|
void SetSymbolName(CString symbolName);
|
|
|
|
protected:
|
|
//绘制斜井深度段
|
|
void DrawInclined(CXyDC* pDC);
|
|
void DrawSymbolInclined(CXyDC* pDC, int kind=1, CSize8 size=CSize8(1,1));
|
|
//左右边线中点
|
|
dfPoint m_ptL;
|
|
dfPoint m_ptR;
|
|
CCurveEx m_rotaRectCurve;
|
|
|
|
void DrawRect(CXyDC *pDC,CRect8 showRect);
|
|
|
|
public:
|
|
virtual int ReadPCG_SelfData(CKXmlParse& xp, const short& ver, CTrackObj* pTrack);
|
|
virtual void WritePCG_SelfData(CFile &fw, int nBaseTabNum);
|
|
};
|
|
|
|
#endif |