|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD>: DFDraw<61><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼԪ<CDBC>ؽӿ<D8BD><D3BF><EFBFBD>
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2005-12-07
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include ".\sectionany.h"
|
|
|
|
|
|
#include "DrawLocal\FileSegy.h"
|
|
|
|
|
|
|
|
|
|
|
|
class AFX_EXT_CLASS CFMN
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CFMN(void);
|
|
|
|
|
|
virtual ~CFMN(void);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void Write(CFile& fw);
|
|
|
|
|
|
virtual int Read(CFile& fr);
|
|
|
|
|
|
virtual void Clear(void);
|
|
|
|
|
|
virtual int Create(CString m_fx, CString m_fy);
|
|
|
|
|
|
virtual void GetRange(CPoint3D& minPoint, CPoint3D& maxPoint);
|
|
|
|
|
|
|
|
|
|
|
|
int Open(void);
|
|
|
|
|
|
int Close(void);
|
|
|
|
|
|
|
|
|
|
|
|
CDimension3D* pX;
|
|
|
|
|
|
CDimension3D* pY;
|
|
|
|
|
|
CDimension3D* pResult;
|
|
|
|
|
|
double xmin,xmax,ymin,ymax;
|
|
|
|
|
|
CString m_result,m_fx,m_fy;
|
|
|
|
|
|
CFileSegy *m_pfr;
|
|
|
|
|
|
CString m_3dini;
|
|
|
|
|
|
|
|
|
|
|
|
int CreateResult(void);
|
|
|
|
|
|
|
|
|
|
|
|
double XX(double m, double n);
|
|
|
|
|
|
double YY(double m, double n);
|
|
|
|
|
|
double ZZ(double m, double n);
|
|
|
|
|
|
int GetMN(double& x, double& y);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
|
|
|
|
|
|
CDimension2D* pCut;
|
|
|
|
|
|
double cut_point;
|
|
|
|
|
|
int GetCut(int m1,int n1,int m2,int n2, BOOL bCoorXY=FALSE); //<2F><><EFBFBD><EFBFBD>cut_pointָ<74><D6B8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
|
|
|
|
|
|
int GetCut(double cutPoint, int m1,int n1,int m2,int n2, BOOL bCoorXY=FALSE);//<2F><><EFBFBD><EFBFBD>cutPointָ<74><D6B8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
|
|
|
|
|
|
int GetCut(LPCTSTR lpLayerFileName, double top, double bottom, int mode); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD>ͽ<EFBFBD><CDBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>Ƭ
|
|
|
|
|
|
int GetCut(LPCTSTR lpLayerFileName1, LPCTSTR lpLayerFileName2, int mode); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD>ͽ<EFBFBD><CDBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>Ƭ
|
|
|
|
|
|
int GetCut(double beginRange, double endRange, int mode); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7>ʾ<EFBFBD><CABE>Ƭ
|
|
|
|
|
|
void SaveCut(CFile& fw, int mode); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
|
|
|
|
|
|
void GetPly(CFile& fw, LPCTSTR lpLayerFileName1, LPCTSTR lpLayerFileName2); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD>ͺ<EFBFBD><CDBA>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD>=<3D><>λ2-<2D><>λ1<CEBB><31>
|
|
|
|
|
|
int GetSwing(int num, double* data, double m, double n); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>ߵ<EFBFBD><DFB5>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
|
|
|
|
|
|
|
class MN_RANGE
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
MN_RANGE(void){m1=n1=m2=n2=0;t1=t2=0;}
|
|
|
|
|
|
int m1,n1,m2,n2;
|
|
|
|
|
|
double t1; //top
|
|
|
|
|
|
double t2; //bottom
|
|
|
|
|
|
};
|
|
|
|
|
|
int GetCut(CSectionCut& cut, double cutPoint, MN_RANGE mr, BOOL bCoorXY=FALSE);//cutPointΪʱ<CEAA><CAB1>ֵ
|
|
|
|
|
|
int GetCut(CSectionCut& cut, LPCTSTR lpLayerFileName, MN_RANGE mr, int mode, BOOL bCoorXY=FALSE); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD>ͽ<EFBFBD><CDBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>Ƭ
|
|
|
|
|
|
int GetSectionInline(CSectionAny& sec, int n, MN_RANGE mr); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int GetSectionCrossline(CSectionAny& sec, int m, MN_RANGE mr); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int GetSectionAny(CSectionAny& sec, CCurve* pCurve, MN_RANGE mr); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
int Delete(CCurve* pCurve); //ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD><CDBD><EFBFBD>
|
|
|
|
|
|
void GetPlane(CPlane& m_plane,int *m,int *n);
|
|
|
|
|
|
void GetRange();
|
|
|
|
|
|
BOOL IsOpen(void);
|
|
|
|
|
|
};
|