|
|
#ifndef TRACKINSHOT_H
|
|
|
#define TRACKINSHOT_H
|
|
|
#pragma once
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//主要功能:
|
|
|
// 射孔符号类
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
class AFX_EXT_CLASS CInTrackShot : public CInTrackTextBase
|
|
|
{
|
|
|
protected:
|
|
|
|
|
|
DWORD m_nShotFlags;//开关状态
|
|
|
enum ShotFlags
|
|
|
{
|
|
|
ShotFlagsShowDepthText = 0x0001, //显示顶底文本
|
|
|
};
|
|
|
|
|
|
void Init();
|
|
|
|
|
|
public:
|
|
|
CInTrackShot();
|
|
|
CInTrackShot(const CRect8& position);
|
|
|
|
|
|
double m_nShot; // 射孔数
|
|
|
CString m_strGun; // 枪型
|
|
|
CString m_strBullet; // 弹型
|
|
|
CString m_strResult; // 层解释类型
|
|
|
COleDateTime m_date; // 日期
|
|
|
CString m_strMark; // 填充符号
|
|
|
CXy* m_pMarkFill; // 填充符号指针
|
|
|
double m_fDensity; // 孔密
|
|
|
double m_fFluidDensity;// 压井液密度
|
|
|
double m_fFluidDepth; // 掏空深度
|
|
|
CString m_strFluidType; // 压井液类型
|
|
|
CString m_strMethod; // 射孔方式
|
|
|
double m_fFrameVertLinePos;//孔洞相对于层顶底的位置
|
|
|
COLORREF m_PatternBorderColor; //孔洞边缘颜色
|
|
|
COLORREF m_PatternFillColor;//孔洞填充颜色
|
|
|
CString m_PatternShape;//孔洞式样,Ellipse代表圆形
|
|
|
CString m_strStyle;//绘制式样,Pattern代表图案
|
|
|
int m_nAlign; //文本停靠式样 0 左 1 中 2 右
|
|
|
|
|
|
// Implementation
|
|
|
public:
|
|
|
virtual void Draw(CXyDC* pDC);
|
|
|
virtual void Serialize(CArchive& ar, const short &ver);
|
|
|
|
|
|
virtual void SetShotFlags(DWORD flags);
|
|
|
virtual void SetShowDepthText(BOOL bflag);
|
|
|
|
|
|
virtual DWORD GetShotFlags();
|
|
|
virtual BOOL IsShowDepthText();
|
|
|
|
|
|
void GetLayerTypeStrArr(CStringArray& strArr);
|
|
|
protected:
|
|
|
//绘制斜井深度段
|
|
|
void DrawInclined(CXyDC* pDC);
|
|
|
|
|
|
public:
|
|
|
virtual int ReadPCG_SelfData(CKXmlParse& xp, const short& ver, CTrackObj* pTrack);
|
|
|
virtual void WritePCG_SelfData(CFile &fw, int nBaseTabNum);
|
|
|
};
|
|
|
|
|
|
#endif
|