|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD>: SegY<67><59>ʽ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д:
|
|
|
|
|
|
//<2F><><EFBFBD>ڣ<EFBFBD>2005-12-07
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include ".\mxnbase.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace NMxn
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
class AFX_EXT_CLASS CMxnRow : public CMxnBase
|
|
|
|
|
|
{
|
|
|
|
|
|
protected:
|
|
|
|
|
|
virtual void RowMath(void);
|
|
|
|
|
|
CPoint* solid;
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
CMxnRow(void);
|
|
|
|
|
|
virtual ~CMxnRow(void);
|
|
|
|
|
|
|
|
|
|
|
|
virtual int Initialize(CString name);
|
|
|
|
|
|
virtual void Close(void);
|
|
|
|
|
|
void operator=(CMxnRow& row);
|
|
|
|
|
|
|
|
|
|
|
|
int Read(); //<2F><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СֵҲͬʱ<CDAC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int ReadRowHead(void);
|
|
|
|
|
|
int ReadRowTrace(void);
|
|
|
|
|
|
int ReadRowTrace(int begin_index, int end_index); //ָ<><D6B8>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
BOOL IsNullTrace(void);
|
|
|
|
|
|
|
|
|
|
|
|
void Write(CFileSegy& fw);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> dSampleInterval
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> nSampleNumber
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> nDataType
|
|
|
|
|
|
//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>վ<EFBFBD><D5BE>ʽIsPC
|
|
|
|
|
|
//<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD> nFormatCode
|
|
|
|
|
|
void WriteTrace (CFileSegy& fw, short dSampleInterval, short nSampleNumber, CFileSegy::EDataType dt, int IsPC);
|
|
|
|
|
|
void WriteFileHead (CFileSegy& fw, short dSampleInterval=-1, short nSampleNumber=-1, CFileSegy::EDataType dt=CFileSegy::typeIbmFloat);
|
|
|
|
|
|
void WriteSourceTrace(CFileSegy& fw, short nSampleStep, short nSampleNumber);
|
|
|
|
|
|
|
|
|
|
|
|
double A(int index); //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
|
void SetAt(int index,double v);
|
|
|
|
|
|
|
|
|
|
|
|
int GetRowLength(void); //һ<><D2BB><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
void DrawSolidLeft (CDC *pDC, CPoint2D &point, int y1, int y2, double dx, double dy);
|
|
|
|
|
|
void DrawSolidRight (CDC *pDC, CPoint2D &point, int y1, int y2, double dx, double dy);
|
|
|
|
|
|
void DrawRow (CDC *pDC, CPoint2D &point, int y1, int y2, double dx, double dy);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
|
|
|
|
|
|
double FitScale(double av, double dx);
|
|
|
|
|
|
|
|
|
|
|
|
double times; // <20><><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
char *row_head; //<2F><>ͷ
|
|
|
|
|
|
double *value; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
double average; //<2F><><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ƽ<EFBFBD><C6BD>ֵ
|
|
|
|
|
|
double amin,amax; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ
|
|
|
|
|
|
double rms; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
}//namespace
|
|
|
|
|
|
|