a
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
// SaveInIP.h: interface for the CSaveInIP class.
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <math.h>
|
||||
#include "scriptor.h"
|
||||
#include <vector>
|
||||
|
||||
|
||||
#if !defined(AFX_SaveInIP_H__1810BA80_AE59_446C_B729_58E351D0C52E__INCLUDED_)
|
||||
#define AFX_SaveInIP_H__1810BA80_AE59_446C_B729_58E351D0C52E__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
|
||||
class CSaveInIP
|
||||
{
|
||||
public://function
|
||||
BOOL CreateIPFile(CString szFilePath); //打开需要创建的IP文件
|
||||
bool AddFileHeader(int method, int mediumType, CStringArray *szDataArray); //添加文件头
|
||||
BOOL AddDateToFile(CStringArray *szDateArray); //添加文件主体
|
||||
BOOL CloseFile(); //关闭文件
|
||||
|
||||
BOOL WriteLandInform(CStringArray *f_szArray); //添加地型文件
|
||||
|
||||
CSaveInIP();
|
||||
virtual ~CSaveInIP();
|
||||
public://attribute
|
||||
void Dipole_Dipole_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Pole_Dipole_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Pole_Dipole_3D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Add_3D_LandFile(CStringArray *szSRCArray);
|
||||
void Set_3D_LandSign(int f_type);
|
||||
void AddCEModel(CStringArray *szArray);
|
||||
void CE_Res_Schlumberger(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void CE_Schlumberger(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void GetInfoFromString(CString strInfo, CString strBreak, std::vector<CString>& vtRes);
|
||||
void SetPoleStep(int f_StepX, int f_StepY);
|
||||
void Custom_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Wenner_Schlumberger_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void AMN_ARRAY_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void A_M_ARRAY_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
//设置三维滚动方向
|
||||
void Set3DRollDirction(int iRollDirection){m_i3DRollDiecetion = iRollDirection;}
|
||||
void SetMidGardientInfo(float fAPosX, float fAPosY, float fABDistance, float fMinAMDistance);
|
||||
//2d地型文件
|
||||
int m_nLandSign;
|
||||
int m_nFirstPole;
|
||||
|
||||
//共有属性
|
||||
int m_methodType;
|
||||
private://function
|
||||
bool Init2DFileHeader(CStringArray *szArray);
|
||||
void Init3DFileHeader(CStringArray *szArray);
|
||||
CString TransformMediumType(CString szMediumType);
|
||||
void WriteZero(int nCount);
|
||||
|
||||
//2D
|
||||
void Wenner_2D(CStringArray *szSRCArray, CStringArray *szTARArray);//温纳
|
||||
void Schlumberger_2D(CStringArray *szSRCArray, CStringArray *szTARArray);//斯伦贝谢
|
||||
void dipole_2D(CStringArray *szSRCArray, CStringArray *szTARArray);//偶极
|
||||
|
||||
//3D
|
||||
void WennerAlfa3D(CStringArray *szSRCArray, CStringArray *szTARArray);//温纳A
|
||||
void WennerBeta3D(CStringArray *szSRCArray, CStringArray *szTARArray);//温纳B
|
||||
void Schlumberger3D(CStringArray *szSRCArray, CStringArray *szTARArray);//斯伦贝谢
|
||||
|
||||
private://attribute
|
||||
void Gradient_3D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Pole_Pole_3D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Wenner_Y_2D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Reverse_Pole_dipole_2d(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Pole_dipole_2d(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Dipole_Dipole_3D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void Mid_Gardient_Scan_3D(CStringArray *szSRCArray, CStringArray *szTARArray);
|
||||
void InitCeIpHeader(CStringArray *szArray);
|
||||
void InitCeResHeader(CStringArray *szArray);
|
||||
void InitCEFileHeader(CStringArray *szArray);
|
||||
FILE *m_resFile;
|
||||
int m_MediumType;
|
||||
//2D
|
||||
CString m_szDistancePole;
|
||||
float m_fPoleDistance;
|
||||
//3D
|
||||
_rect m_rect;
|
||||
CString m_szPoleStart;
|
||||
float m_fXDistancePole;//电极间距
|
||||
float m_fYDistancePole;
|
||||
|
||||
int m_nPoleStepX;
|
||||
int m_nPoleStepY;
|
||||
int m_i3DRollDiecetion; //三维滚动方向,这个用于合并任务时,1表示X轴方向合并,2表示Y轴方向合并
|
||||
float m_fABDistance;
|
||||
float m_fMinAMDistance;
|
||||
float m_fAPosX;
|
||||
float m_fAPosY;
|
||||
//3D地型文件
|
||||
int m_3DLandSign;
|
||||
|
||||
//1D
|
||||
|
||||
};
|
||||
|
||||
#endif // !defined(AFX_SaveInIP_H__1810BA80_AE59_446C_B729_58E351D0C52E__INCLUDED_)
|
||||
Reference in New Issue
Block a user