53 lines
1.5 KiB
C++
53 lines
1.5 KiB
C++
//-------------------------------------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
|
|
// = FileName : TGMeshEdge3D Àà
|
|
// = Version : ver2.0
|
|
// = Author : wlw
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: TGMeshEdge3D ÉùÃ÷
|
|
// = Maintainers:
|
|
//
|
|
//-------------------------------------------------------------------------------------------------------+
|
|
#ifndef _TGMESHEDGE3D_H_
|
|
#define _TGMESHEDGE3D_H_
|
|
|
|
#ifndef _TWFLAG_H_
|
|
#include "TWFlag.h"
|
|
#endif
|
|
|
|
class TPGeCurve3D;
|
|
class TGMesh3D;
|
|
class TGMeshNode3D;
|
|
|
|
class GEOAPI TGMeshEdge3D : public TWFlag
|
|
{
|
|
friend class TPGeCurveMesh3D;
|
|
public:
|
|
|
|
TGMeshEdge3D(const TPGeCurve3D* pCurve,TGMeshNode3D* pNode1,TGMeshNode3D*pNode2);
|
|
virtual ~TGMeshEdge3D();
|
|
|
|
const TPGeCurve3D* GetCurve()const;
|
|
const TGMeshNode3D* GetNode(int i=1)const;
|
|
bool IsLine()const;
|
|
TGMeshNode3D* GetNextNode(TGMeshNode3D*pNode)const;
|
|
|
|
bool operator > (const TGMeshEdge3D&edge)const;
|
|
bool operator < (const TGMeshEdge3D&edge)const;
|
|
|
|
TGMeshEdge3D* FindNextEdge(TGMeshNode3D* &pNodeStart,TGMesh3D*pMesh);
|
|
TGMeshEdge3D* FindPreEdge(TGMeshNode3D* &pNodeStart,TGMesh3D*pMesh);
|
|
TGMesh3D* FindMesh(int i=1);
|
|
|
|
TGMesh3D* FindSDMesh();
|
|
TGMeshEdge3D* FindNextSDEdge(TGMesh3D*pMesh);
|
|
TGMeshEdge3D* FindPreSDEdge(TGMesh3D*pMesh);
|
|
|
|
public:
|
|
TGMesh3D *m_pMesh1,*m_pMesh2;
|
|
|
|
protected:
|
|
const TPGeCurve3D *m_pCurve;
|
|
TGMeshNode3D *m_pNode1,*m_pNode2;
|
|
};
|
|
#endif |