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.

79 lines
2.3 KiB
C

1 month ago
#ifndef TRACKCOREWELLOBJ_H
#define TRACKCOREWELLOBJ_H
#pragma once
//////////////////////////////////////////////////////////////////////////////
//<2F>ļ<EFBFBD> TrackCoreWellObj.h
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
// <09><><EFBFBD><EFBFBD>ȡо<C8A1><D0BE><EFBFBD><EFBFBD>
/////////////////////////////////////////////////////////////////////////////
typedef std::vector<std::vector<CWellBaseObj*>> DRAWOBJVEC2;
// <20><><EFBFBD><EFBFBD>ȡо<C8A1><D0BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
class AFX_EXT_CLASS CTrackCoreWell : public CInclinedTrack
{
protected:
//DECLARE_SERIAL(CTrackCoreWell);
public:
CTrackCoreWell();
CTrackCoreWell(const CRect8& position);
virtual ~CTrackCoreWell();
public:
protected:
DWORD m_nTrackCoreWellFlags; //<2F><><EFBFBD><EFBFBD>ȡо<C8A1><D0BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
// <20><><EFBFBD>ŵ<EFBFBD>Flags
enum TrackCoreWellFlags
{
TrackCoreWellFlagLeftArrow = 0x0001, // ȡо<C8A1><D0BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
TrackCoreWellFlagTimes = 0x0002, // <20><>ʾȡо<C8A1><D0BE><EFBFBD><EFBFBD>
TrackCoreWellFlagClrFill = 0x0004, // ȡо<C8A1><D0BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
};
// Implementation
public:
////// <20>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD>
void BuidChildObject(vector<CString> &fields, StringVectorSet &datas, BOOL bInit=FALSE);
/////<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void GetChildDatas(StringVectorSet &dataContent, BOOL bHaveWellName);
virtual void ResetChildProperties();
virtual void Serialize(CArchive& ar, const short &ver);
//virtual void CalcBorders();
//<2F><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>ֵ
virtual void SetTrackCoreWellFlags(DWORD flags);
virtual void EnableLeftArrow(BOOL bFlag);
virtual void EnableTimes(BOOL bFlag);
virtual void EnableColorFill(BOOL bFlag);
virtual DWORD GetTrackCoreWellFlags();
virtual BOOL IsLeftArrow();
virtual BOOL IsTimes();
virtual BOOL IsColorFill();
virtual void Draw(CXyDC* pDC);
virtual int ReadPCG_Self(CFile &fr,CXmlParse& xp,const short& ver);
//<2F><>pcg<63><67>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual int ReadPCG_Data(CFile &fr,const short& ver);
//дpcg<63><67>ʽ<EFBFBD>ĵ<EFBFBD>
virtual void WritePCG_Trace(CFile &fw,int nBaseTabNum);
//дpcg<63><67>ʽ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void WritePCG_Data(CFile &fw,int nBaseTabNum);
//void GetDepthCoreWellData(double depth,std::vector<CDrawObj*>&trackInVec,std::vector<int>&tmpNumVec);
void GetDepthCoreWellData(double depth,DRAWOBJVEC2 &trackInVec2);//<2F><>ͬһ<CDAC><D2BB><EFBFBD>ȵ<EFBFBD>ȡо<C8A1><D0BE><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29>ŵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ά<EFBFBD><CEAC>vector<6F><72>
virtual int ReadPCG_Self( CKXmlParse& xp, const short& ver);
//<2F><>pcg<63><67>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual int ReadPCG_Data(CKXmlParse& xp, const short& ver);
public:
virtual void GetChildDatas(CString& jsonStr);
virtual BOOL SetChildDatas(CString& jsonStr);
};
#endif