//-------------------------------------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGMeshNode 类 // = Version : ver2.0 // = Author : wlw // = CreateDate : 2002-09-09 // = Description: TGMeshNode 声明 // = Maintainers: // //-------------------------------------------------------------------------------------------------------+ #ifndef _TGMESHNODE_H_ #define _TGMESHNODE_H_ #ifndef _TGPOINT_H_ #include "TGPoint.h" #endif #ifndef _TPGECURVEMESH_H_ #include "TPGeCurveMesh.h" #endif #ifndef _TPDLIST_H_ #include "TPDList.h" #endif #ifndef _TDUALPTRLIST_H_ #include "TDualPtrList.h" #endif class TGMeshEdge; class GEOAPI TGMeshNode : public TGPoint { friend class TPGeCurveMesh; public: TGMeshNode(const TGPoint&pt); virtual ~TGMeshNode(); void AppendEdge(TGMeshEdge* pEdge); void Arrange(); void Clear(); TGMeshEdge* FindNextEdge(TGMeshEdge*pEdgeFrom); TGMeshEdge* FindPreEdge(TGMeshEdge*pEdgeFrom); TGMeshEdge* FindNextSDEdge(TGMeshEdge*pEdgeFrom); TGMeshEdge* FindPreSDEdge(TGMeshEdge*pEdgeFrom); TGMeshEdge* GetOnlyEdge(); void RemoveEdge(TGMeshEdge*pEdge); bool IsEndNode()const; protected: TPDList m_lstEdge;//通过这个节点的边 }; #endif