55 lines
1.3 KiB
C++
55 lines
1.3 KiB
C++
//-------------------------------------------------------------------------------------------------------+
|
|
// 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<TGMeshEdge> m_lstEdge;//通过这个节点的边
|
|
};
|
|
#endif |