|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
|
|
struct SCATTEREDDATAINDEX//<2F><><EFBFBD>ڲ<EFBFBD>ֵʱ<D6B5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
short int index;
|
|
|
|
|
|
double distance;//<2F><>ɢ<EFBFBD>㵽<EFBFBD><E3B5BD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#include "PointSearcher.h"
|
|
|
|
|
|
#include "Interpolator.h"
|
|
|
|
|
|
#include "TriangleCreator.h"
|
|
|
|
|
|
#include "ScatteredTracer.h"
|
|
|
|
|
|
#include "FaciesTracer.h"
|
|
|
|
|
|
|
|
|
|
|
|
class CGDFMap;
|
|
|
|
|
|
|
|
|
|
|
|
class CScatteredPoint
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CScatteredPoint();
|
|
|
|
|
|
~CScatteredPoint();
|
|
|
|
|
|
public:
|
|
|
|
|
|
double x;
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4>ڴ<EFBFBD><DAB4>ڱ߽<DAB1><DFBD>ϵIJ<CFB5><C4B2><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
|
double y;
|
|
|
|
|
|
/*0x00--<2D><><EFBFBD>ڱ߽<DAB1><DFBD><EFBFBD>δʹ<CEB4>õ<EFBFBD><C3B5><EFBFBD>ɢ<EFBFBD><C9A2> 0x01--<2D><>ɢ<EFBFBD><C9A2> 0x02--<2D><><EFBFBD>ڱ߽<DAB1><DFBD><EFBFBD> 0x04--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0x08--<2D><><EFBFBD>⾮ //jxd 0x10--<2D><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>ֵ*/
|
|
|
|
|
|
BYTE byteType;
|
|
|
|
|
|
/*<2A>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD>õ<EFBFBD><C3B5>Ƿ<EFBFBD><C7B7>Ѿ<EFBFBD>ʹ<EFBFBD><CAB9>*/
|
|
|
|
|
|
BYTE byteFlag;
|
|
|
|
|
|
|
|
|
|
|
|
//Operations
|
|
|
|
|
|
public:
|
|
|
|
|
|
BOOL IsOriginPoint();
|
|
|
|
|
|
BOOL IsBorderPoint();
|
|
|
|
|
|
BOOL IsValidPoint();
|
|
|
|
|
|
BOOL IsAppendedPoint();
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D7B7><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
|
|
|
|
|
|
class CScatteredTrace
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CScatteredTrace(void);
|
|
|
|
|
|
~CScatteredTrace(void);
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
void SetWellArray(CObArray* pWellArray);
|
|
|
|
|
|
void SetFaciesTypeManager(CFaciesTypeMgr* pFaciesTypeManager);
|
|
|
|
|
|
|
|
|
|
|
|
CString GetStringData(int index,int iType);
|
|
|
|
|
|
double ConvertStringDataToData(int iType,LPCTSTR strValue);
|
|
|
|
|
|
CString ConvertDataToStringData(int iType,double dValue);
|
|
|
|
|
|
int GetStringDataEnumIndex(int iType,LPCTSTR pString);
|
|
|
|
|
|
void SetStringDataTypeArray(int iType,CStringArray& strarray);
|
|
|
|
|
|
|
|
|
|
|
|
CGDFMap* GetMap();
|
|
|
|
|
|
void SetMap(CGDFMap* pMap);
|
|
|
|
|
|
|
|
|
|
|
|
BOOL TraceFacies();
|
|
|
|
|
|
void Initialize(int iDataCount,int iTypeCount);
|
|
|
|
|
|
void SetData(int index,int iType,double dValue);
|
|
|
|
|
|
double GetData(int index,int iType);
|
|
|
|
|
|
void SetPoint(int index,double x,double y);
|
|
|
|
|
|
void SetStringData(int index,int iType,LPCTSTR str);
|
|
|
|
|
|
BOOL AddBorderToTracer(CFaciesRgnTracer* pTracer,BOOL &bUseBoundary,BOOL bUseFault);
|
|
|
|
|
|
|
|
|
|
|
|
CFaciesTracer* GetFaciesTracer();
|
|
|
|
|
|
CPointSearcher* GetPointSearcher();
|
|
|
|
|
|
CInterpolator* GetInterpolator();
|
|
|
|
|
|
|
|
|
|
|
|
BOOL IsStringData(int iType);
|
|
|
|
|
|
|
|
|
|
|
|
int AddCellNodePoint(double x,double y);
|
|
|
|
|
|
int AddBorderPoint(double x,double y);
|
|
|
|
|
|
int AddOriginPoint(double x,double y);
|
|
|
|
|
|
|
|
|
|
|
|
double* GetDataBuf();
|
|
|
|
|
|
int GetTypeCount();
|
|
|
|
|
|
int GetStringDataEnumCount(int iType);
|
|
|
|
|
|
|
|
|
|
|
|
void Clear();
|
|
|
|
|
|
void ClearPointFlag();
|
|
|
|
|
|
int GetDataCount();
|
|
|
|
|
|
CScatteredPoint* GetPointBuf();
|
|
|
|
|
|
void GetStringDataTypeArray(int iType,CStringArray& strarray);
|
|
|
|
|
|
|
|
|
|
|
|
CArray<CScatteredPoint,CScatteredPoint> m_PointArray;
|
|
|
|
|
|
CArray<double,double> m_DataArray;
|
|
|
|
|
|
CArray<int,int> m_FaciesArray;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
CArray<BOOL,BOOL> m_StringValueArray;//<2F>Ƿ<EFBFBD><C7B7>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
CTypedPtrArray<CPtrArray,CStringArray*> m_StringDataArrayArray;
|
|
|
|
|
|
CArray<double,double> m_MinValueArray;
|
|
|
|
|
|
CArray<double,double> m_MaxValueArray;
|
|
|
|
|
|
CPointSearcher m_PointSearcher;
|
|
|
|
|
|
CInterpolator m_Interpolator;
|
|
|
|
|
|
CFaciesTracer m_FaciesTracer;
|
|
|
|
|
|
|
|
|
|
|
|
CObArray* m_pWellArray;
|
|
|
|
|
|
CFaciesTypeMgr* m_pFaciesTypeManager;
|
|
|
|
|
|
//CYAMapFile* m_pMapFile;
|
|
|
|
|
|
CGDFMap* m_pMap;
|
|
|
|
|
|
CArray<FACIESPOINT,FACIESPOINT> BorderPointArray;
|
|
|
|
|
|
};
|