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.

80 lines
2.1 KiB
C

2 years ago
#ifndef LINE_MANAGE_H
#define LINE_MANAGE_H
//#include "FlyLineDataStruct.h"
#include "../Include/8BMapDLL_type.h"
#include "DrawLineStruct.h"
using namespace B8MapDLL;
class CLineManage
{
public:
CLineManage(void);
virtual ~CLineManage(void);
PTLIST line;
void MakeListNull();
//<2F><>ȡ<EFBFBD>ļ<EFBFBD><C4BC>еĺ<D0B5><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EBA3BA><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>strFileName
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>pLineData
//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>true<75><65><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ȡ<EFBFBD>ɹ<EFBFBD>
// false<73><65><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ȡʧ<C8A1><CAA7>
bool ReadLineDataFromFile(DrawLineDataStruct &pLineData, const CString strFileName);
bool WrongLineDataProcess(FILE *fp);
//<2F><><EFBFBD><EFBFBD>;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void LinePoint2DrawLinePoints(DrawLineDataStruct &lineDataArr, const PtStruct *pLinePoints, const int linePointNum);
bool OpenFlyLineFile(const CString &str, const int &lineID, const bool &bFromLocalDir);
void AddPt(PTLIST *other);
void AddPt(PtStruct aOE);
void AddPt(const double &L, const double &B,const float& H, const int &ptId);
void ListData2ArrayData(PtStruct *pts, int &ptNum, const int &coordType);
bool CheckOrgPtIsExisted(const PtStruct *pts, const int &ptNum);
bool CheckFlyLineIDCorrect(const PtStruct *pts, const int &ptNum, const int &lineID);
private:
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD>
int ReadAirLinePoint(FILE *fp, PtStruct &pt);
//<2F><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD>ȡ<EFBFBD><C8A1>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD>м<EFBFBD><D0BC><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EBA3BA>·<EFBFBD>ļ<EFBFBD>ָ<EFBFBD><D6B8>fp
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pt
//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>true<75><65><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>
// false<73><65><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
bool ReadLinePtAndCheckData(PtStruct &pt, FILE *fp);
//<2F><><EFBFBD>ܣ<EFBFBD><DCA3>Ժ<EFBFBD>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EBA3BA>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pts<74><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ptNum
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pts
//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>true<75><65><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ
// false<73><65><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD>·<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ȷ
//<2F><><EFBFBD><EFBFBD><EFBFBD>
// 1<><31><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA>߱<EFBFBD><DFB1><EFBFBD><EFBFBD>Ƿ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
// 2<><32><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
bool CheckFlyLine(PtStruct *pts, const int ptNum);
//<2F><><EFBFBD>ܣ<EFBFBD><DCA3>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD>Ч<EFBFBD><D0A7>Χ<EFBFBD><CEA7><EFBFBD>м<EFBFBD><D0BC><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EBA3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pt
//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>true<75><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ<EFBFBD><CEA7>
// false<73><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
bool CheckOnePointValue(const PtStruct pt);
};
#endif