#ifndef TRACKSHOTOBJ_H #define TRACKSHOTOBJ_H #pragma once ////////////////////////////////////////////////////////////////////////////// //文件 TrackShotObj.h: // 射孔道类 ///////////////////////////////////////////////////////////////////////////// typedef struct RENDERSTYLE { CString strType; double fLeft; double fRight; CString strDepthText; double fFrameVertLinePos; COLORREF PatternBordercolor; COLORREF PatternFillcolor; CString PatternShape; CString strStyle; CString strTextLineAlign; }Struct_RenderStyle; class AFX_EXT_CLASS CTrackShot : public CInclinedTrack { public: CTrackShot(); CTrackShot(const CRect8& position); virtual ~CTrackShot(); CLONE_WELLOBJECT(CTrackShot) virtual void operator=(CTrackShot& object); protected: DWORD m_nTrackShotFlags; //射孔道开关状态 // 射孔道Flags enum TrackShotFlags { TrackShotMark = 0x0001 // 显示标注 }; // Implementation public: virtual void AddObjChild(); //创建子对象 virtual void MoveChildren(); virtual void CalcBorders(); virtual void Serialize(CArchive& ar, const short &ver); //开关变量值 virtual void SetTrackShotFlags(DWORD flags); virtual void SetShowMark(BOOL bFlag); virtual DWORD GetTrackShotFlags(); virtual BOOL IsShowMark(); virtual void ResetChildProperties(); ////// 2015.9.17 从工区导入数据时创建道内子对象 void BuidChildObject(vector &fields, StringVectorSet &datas, BOOL bInit=FALSE); ////// 2015.8.26 获取道内对象的具体内容 void GetChildDatas(StringVectorSet &dataContent, BOOL bHaveWellName = TRUE); public: //PCG读写 //读pcg格式的道 virtual int ReadPCG_Self(CFile &fr,CXmlParse& xp,const short& ver ); //读pcg格式的数据 virtual int ReadPCG_Data(CFile &fr,const short& ver); int PCG_ReadTrackRenderStyle(CXmlParse& xp,const short &ver,Struct_RenderStyle &RenderStyle); //写pcg格式的道 virtual void WritePCG_Trace(CFile &fw,int nBaseTabNum); //写pcg格式的道内数据 virtual void WritePCG_Data(CFile &fw,int nBaseTabNum); public: virtual int ReadPCG_Self(CKXmlParse& xp, const short& ver); //读pcg格式的数据 virtual int ReadPCG_Data(CKXmlParse& xp, const short& ver); int PCG_ReadTrackRenderStyle(CKXmlParse& xp, const short &ver, Struct_RenderStyle &RenderStyle); public: virtual void GetChildDatas(CString& jsonStr); virtual BOOL SetChildDatas(CString& jsonStr); }; #endif