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.

55 lines
1.3 KiB
C++

//////////////////////////////////////////////////////////////////////////////
//文件: SegY文件操作类
//主要功能:
//
//程序编写: 2005-12-07
//
//
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include "..\SectionLib\sectionprocess.h"
#include "..\DrawImage\ImageBase.h"
class AFX_EXT_CLASS CSegyBase : public CSectionProcess
{
public:
CSegyBase(void);
virtual ~CSegyBase(void);
int64_t GetId() const;
void SetId(int64_t id);
void Serialize(CArchive& ar, const short& ver) override;
virtual int Read(CFile& fr, const short& ver);
virtual void Clear(void);
virtual int GetRange(double& min, double& max);
CGrid* m_pZoom;
CImageBase* m_Image;
CDimension3D* m_pDim;
BOOL SetImageSize(CSize sz);
void SetImageBkColor(COLORREF color);
void SetImagePenColor(COLORREF color);
void SetImageBrushColor(COLORREF color);
int CreateDim();
void CreateZoom(double x0, double y0, double dx, double dy, int m, int n);
BOOL CreateImage(CDC* pDC);
void DrawSection(CDC *pDC,int step,double times,int IsSolid);
protected:
void DrawImage(CCurve& cv, double x0, double y0, double dx, double dy, int nStartIndex, int nEndIndex, int IsSolid);
COLORREF m_colorLine;
COLORREF m_colorBrush;
COLORREF m_colorBk;
private:
int64_t m_id = -1;
};