You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.0 KiB
C

1 month ago
#pragma once
#include "BaseElements.h"
//<2F><>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dfg<66><67><EFBFBD><EFBFBD>
class GPline;
class AFX_EXT_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); //<2F><><EFBFBD><EFBFBD>
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);
void SetZRange(double zmin, double zmax);
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);
//ֻȡ<D6BB>ϲ<EFBFBD><CFB2>ⲿ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>ֵ
double Value(double x0, double y0, GPline* png);
int Value(double x0, double y0, double segX0, double segY0, double segX1, double segY1, bool clockwize, vector<GPoint3D>& ptsResult);
bool IsInRange(double z0);
void CalcRange(void);
double DeltX();
double DeltY();
protected:
int m_num[2];
double m_P0[2];
double m_delt[2];
double m_range[2];
double* m_u;
};