//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGGeRegionSide 类 // = Version : ver2.0 // = Author : wlw // = CreateDate : 2002-09-09 // = Description: TGGeRegionSide 声明 // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _TGGEREGIONSIDE_H_ #define _TGGEREGIONSIDE_H_ #ifndef _TGGECURVESEGMENT_H_ #include "TGGeCurveSegment.h" #endif class TGGeRegion; class TSortSideOnVertex; class GEOAPI TGGeRegionSide : public TGGeCurveSegment { public: TGGeRegionSide(); TGGeRegionSide(const TGGeCurveSegment &seg); virtual ~TGGeRegionSide(); // nSide==0: Left; nSide==1: Right int Trival(TSortSideOnVertex *pSpt, int nSide); TGGeRegion* GetLeftRegion() const; void SetLeftRegion(TGGeRegion * pRegion); TGGeRegion* GetRighttRegion() const; void SetRightRegion(TGGeRegion * pRegion); TCHAR GetCurSide() const; void SetCurSide(const TCHAR nCurSide); TCHAR GetBadSide() const; void SetBadSide(const TCHAR nBadSide); TSortSideOnVertex* GetStartNode()const; void SetStartNode(TSortSideOnVertex* pNode); TSortSideOnVertex* GetEndNode()const; void SetEndNode(TSortSideOnVertex* pNode); TGGeRegion * GetCurRegion(); public: //全局当前房间 static TGGeRegion *g_pCurRegion; // 全局所有边列表 static TDPtrList *g_pAllWalls; // 左右为相对于曲线发现 TGGeRegion *m_pLeftRegion, *m_pRightRegion; // Left(0) or Rigth(1) TCHAR m_nCurSide; // 不好的边,应当忽略 TCHAR m_bBadSide; TSortSideOnVertex *m_pStartNode, *m_pEndNode; }; #endif