|
|
|
|
|
#pragma once
|
|
|
|
|
|
#ifndef AFX_EXT_CLASS
|
|
|
|
|
|
#define AFX_EXT_CLASS Q_DECL_IMPORT
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#include <vector>
|
|
|
|
|
|
#include <list>
|
|
|
|
|
|
#include "TBase/TObjectList.h"
|
|
|
|
|
|
#include "InterfaceElements.h"
|
|
|
|
|
|
#include "GObjects/Con2Pgn.h"
|
|
|
|
|
|
#include "GObjects/dfdfilereader.h"
|
|
|
|
|
|
|
|
|
|
|
|
/*@class: CContourFillMap
|
|
|
|
|
|
* @desc: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>ߣ<EFBFBD><EFBFBD>ϲ㣬<EFBFBD>߽<EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
|
|
|
|
|
|
|
|
|
|
|
|
ʹ<EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
-----<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
-----<EFBFBD><EFBFBD><EFBFBD>ڴ淽ʽ:
|
|
|
|
|
|
<EFBFBD><EFBFBD><EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
1<EFBFBD><EFBFBD>SetContours(vector<CPolyline*>& vec);
|
|
|
|
|
|
2<EFBFBD><EFBFBD>SetFlts(vector<CPolyline*>& scrFlts);
|
|
|
|
|
|
3<EFBFBD><EFBFBD>SetBorder( CPolyline& border);
|
|
|
|
|
|
|
|
|
|
|
|
4<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ//<2F><><EFBFBD>õ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>쳤<EFBFBD><ECB3A4>
|
|
|
|
|
|
void SetExtensivePara(double dext);
|
|
|
|
|
|
4<EFBFBD><EFBFBD>//<2F><><EFBFBD>ɵ<EFBFBD>ֵ<EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD>m_resultLines
|
|
|
|
|
|
int CreatePolygons(void); //
|
|
|
|
|
|
|
|
|
|
|
|
* @date: 2023.5.11
|
|
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
class AFX_EXT_CLASS CContourFillMap
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CContourFillMap();
|
|
|
|
|
|
~CContourFillMap();
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
void Clear(void);
|
|
|
|
|
|
//<2F>ļ<EFBFBD><C4BC><EFBFBD>ȡ<EFBFBD><C8A1>ʽ
|
|
|
|
|
|
void ReadFiles(const CString& strContour, const CString StrFlt, const CString strBorder);
|
|
|
|
|
|
|
|
|
|
|
|
void SetContours(vector<CPolyline*>& vec);
|
|
|
|
|
|
void SetFlts(vector<CPolyline*>& scrFlts);
|
|
|
|
|
|
void SetBorder( CPolyline& border);
|
|
|
|
|
|
|
|
|
|
|
|
void SetContours(vector<CMyCurve*>& vec);
|
|
|
|
|
|
void SetFlts(vector<CMyCurve*>& scrFlts);
|
|
|
|
|
|
void SetBorder(CMyCurve& border);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>õ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>쳤<EFBFBD><ECB3A4>
|
|
|
|
|
|
void SetExtensivePara(double dext);
|
|
|
|
|
|
//<2F><><EFBFBD>ɵ<EFBFBD>ֵ<EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD>m_resultLines
|
|
|
|
|
|
int CreatePolygons(void); //
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ε<EFBFBD><CEB5>ļ<EFBFBD><C4BC><EFBFBD> ,decimalPlaces Ϊ<><CEAA><EFBFBD>ౣ<EFBFBD><E0B1A3><EFBFBD><EFBFBD>λС<CEBB><D0A1>
|
|
|
|
|
|
void WritePolygons(char* strOutput, int decimalPlaces = 2);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ε<EFBFBD><CEB5>ļ<EFBFBD><C4BC>У<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Χ<EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD>ּ<EFBFBD><D6BC><EFBFBD>,<2C><>','<27>ָ<EFBFBD>
|
|
|
|
|
|
void WritePurePolygons(char* strOutput);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺϼ<D6BA><CFBC><EFBFBD><EFBFBD><EFBFBD>"1000,1100<30><30>"
|
|
|
|
|
|
std::vector<CMyCurve*>& GetResultPolygons(void);
|
|
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
std::vector<CPolyline*> m_resultLines;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|