#pragma once #include //读写及操作dfg曲面 class GSurface { public: GSurface(); ~GSurface(); bool ReadDfg(FILE* fr); bool ReadDfg(const char* filename); bool WriteDfg(FILE* fw); bool WriteDfg(const char* filename); void Clear(void); //清空 int Create(int numx, int numy, double x0, double y0, double dx, double dy); int Create(int numx, int numy, double x0, double y0, double dx, double dy, double* values, double zMin=-1E300, double zMax=1E300); int XNum(void); int YNum(void); double X(int i); double Y(int j); double Z(int i, int j); double Z(double x0, double y0); void setZ(int i, int j, double z); // //只取断层外部的结点插值 // double Value(double x0, double y0, GPline* png); bool IsInRange(double z0); void CalcRange(double zMin = -1E300, double zMax = 1E300); double DeltX(); double DeltY(); double* GetRange(); protected: int m_num[2]; double m_P0[2]; double m_delt[2]; double m_range[2]; double* m_u; };