79 lines
1.5 KiB
C++
79 lines
1.5 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
|
|
// = FileName : TPGeGridLine.h
|
|
// = Version : ver2.0
|
|
// = Author : xlc
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: 类的声明 网格线
|
|
|
|
// = Maintainers:
|
|
//
|
|
//-----------------------------------------------------------------------------+
|
|
#ifndef _TPGEGRIDLINE_H_
|
|
#define _TPGEGRIDLINE_H_
|
|
|
|
#ifndef _TPGEGLINESEG2D_H_
|
|
#include "TPGeGLineSeg2D.h"
|
|
#endif
|
|
|
|
#ifndef _TSQTABLE_H_
|
|
#include "TSqTable.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEEXTEND_H_
|
|
#include "TPGeExtend.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEGRIDNODE_H_
|
|
#include "TPGeGridNode.h"
|
|
#endif
|
|
|
|
#ifndef _TDUALPTRLIST_H_
|
|
#include "TDualPtrList.h"
|
|
#endif
|
|
|
|
#ifndef _TPGEGRIDSEG_H_
|
|
#include "TPGeGridSeg.h"
|
|
#endif
|
|
|
|
#ifndef _TSPTABLE_H_
|
|
#include "TSPTable.h"
|
|
#endif
|
|
|
|
class TPGeCurve2D;
|
|
class TPGeLandform;
|
|
|
|
class GEOAPI TPGeGridLine : public TPGeGLineSeg2D
|
|
{
|
|
public:
|
|
|
|
TPGeGridLine();
|
|
|
|
virtual ~TPGeGridLine();
|
|
|
|
double GetElev(double x) const;
|
|
|
|
bool IsVisible(double value) const;
|
|
|
|
bool operator <(const TPGeGridLine&) const;
|
|
|
|
bool operator >(const TPGeGridLine&) const;
|
|
|
|
void CreateFrom(const TPGeLandform* land,bool bXLine,double startValue);
|
|
|
|
public:
|
|
|
|
//不可见区间
|
|
TSqTable<TPGeExtend> m_allInvisibleExt;
|
|
|
|
//与等高线的交点(有序)
|
|
TDualPtrList<TPGeGridNode> m_allPointElev;
|
|
|
|
//立面曲线
|
|
TPGeCurve2D* m_pCurveElev;
|
|
|
|
//组成单元格边,NULL代表完整边
|
|
TSPTable<TPGeGridSeg> m_allSeg;
|
|
};
|
|
|
|
#endif |