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.
kev/Drawer/SSBase/FGrid-/FNetGenerator.h

58 lines
1.9 KiB
C

1 month ago
#pragma once
#include "FPoints.h"
#include "FNet.h"
class AFX_EXT_CLASS CFNetGenerator
{
public:
CFNetGenerator(void);
~CFNetGenerator(void);
/** @brief <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD>ȡɢ<C8A1><C9A2><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>ͨ<EFBFBD><CDA8>CDividedDfd<66><64><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̺ţ<CCBA><C5A3><EFBFBD><EFBFBD><EFBFBD>m_points*/
int ReadPoints(CPtrList& scrline_list, CPtrList& scrflt_list);
/** @brief <20><>ȡ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD> m_points */
int ReadPoints(CString strxyz);
/** @brief <20><>ȡ<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>m_points<74><73>doubleָ<65><D6B8>Ϊ5<CEAA><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD> x,y,z<><7A><EFBFBD>ƽ<EAA3AC><C6BD><EFBFBD>ȣ<EFBFBD><C8A3>̺<EFBFBD> */
int ReadPoints(vector<double* >& data5_vec);
/** @brief <20><>CFunction2D<32><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B6A8>SGridParamEx<45><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>*/
int Create(CFunction2D& scrFun, SGridParamEx& gp, CPtrList& flt_list, CPtrList* pOutline_list = NULL);
// ֱ<>Ӹ<EFBFBD><D3B8><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int Create(SGridParamEx& gp, CPtrList& outline_list, CPtrList& flt_list);
// <20><><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int Create(CPtrList& outline_list, CPtrList& flt_list);
// <20><><EFBFBD>ݵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ؼ<EFBFBD><D8BC>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CFNet* Double(CPtrList& outline_list, CPtrList* pFltList, int IsReadPoint);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void Continue(CPtrList& outline_list, CPtrList* pFltList, int IsReadPoint);
CFPoints& GetPoints() { return m_points; }
void SetDC(CDC* pDC) { m_pDC = pDC; }
CFNet* GetNet() { return m_pNet; }
void SetNet(CFNet* pNet);
SGridParamEx& GridParam() { return m_gridParam; }
private:
/** @brief <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m_pNet*/
int CombineNet(CFunction2D& fun1, CFunction2D& fun2, SGridParamEx& gp,CPtrList& outline_list, CPtrList& flt_list, FUN_INTER_MODE* pMd = NULL);
/** @brief <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD>¼<EFBFBD><C2BC>vector<6F><72>*/
int ReadNetPoints(CFunction2D& fun, vector<double* >& dvec);
public:
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
CFPoints m_points; ///< ɢ<><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SGridParamEx m_gridParam; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CDC* m_pDC;
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
int m_loopmax; ///< <20><><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int m_loopmin; ///< <20><>Сѭ<D0A1><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int IsCreateOther;
protected:
CFNet* m_pNet; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
};