82 lines
1.6 KiB
C++
82 lines
1.6 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
|
|
// = FileName : TPGeLandform.h
|
|
// = Version : ver2.0
|
|
// = Author : xlc
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: 类的声明 等高线实体
|
|
// = Maintainers:
|
|
//
|
|
//-----------------------------------------------------------------------------+
|
|
#ifndef _TPGELANDFORM_H_
|
|
#define _TPGELANDFORM_H_
|
|
|
|
#ifndef _TPDLIST_H_
|
|
#include "TPDList.h"
|
|
#endif
|
|
|
|
#ifndef _TPGECURVE2D_H_
|
|
#include "TPGeCurve2D.h"
|
|
#endif
|
|
|
|
#ifndef _TSQTABLE_H_
|
|
#include "TSqTable.h"
|
|
#endif
|
|
|
|
#ifndef _TSQTABLE2_H_
|
|
#include "TSqTable2.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEGRIDNODE_H_
|
|
#include "TPGeGridNode.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEGRIDCELL_H_
|
|
#include "TPGeGridCell.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEGRIDLINE_H_
|
|
#include "TPGeGridLine.h"
|
|
#endif
|
|
|
|
class GEOAPI TPGeLandform : public TPDList<TPGeCurve2D>
|
|
{
|
|
public:
|
|
|
|
TPGeLandform();
|
|
virtual ~TPGeLandform();
|
|
|
|
bool IsValid()const;
|
|
|
|
//返回false时外部delete pCurve;
|
|
bool Append(TPGeCurve2D* pCurve);
|
|
|
|
const TPGeCurve2D& Outline()const;
|
|
|
|
double GetDistX()const;
|
|
|
|
double GetDistY()const;
|
|
|
|
double GetElev()const;
|
|
|
|
//建立网格数据结构,mlines返回凸多边形
|
|
bool CreateGridData(double distX, double distY, TGObjectList& mlines, int fitType = false);
|
|
|
|
protected:
|
|
|
|
double m_fDistX,m_fDistY;
|
|
|
|
//横向网格线,M
|
|
TSqTable<TPGeGridLine> m_allGridLineX;
|
|
|
|
//纵向网格线,N
|
|
TSqTable<TPGeGridLine> m_allGridLineY;
|
|
|
|
//网格交点阵列,M*N
|
|
TSqTable2<TPGeGridNode> m_allGridNode;
|
|
|
|
//网格阵列(M-1)*(N-1)
|
|
TSqTable2<TPGeGridCell> m_allGridCell;
|
|
};
|
|
|
|
#endif |