EgtGeomKernel 2.1b3 :
- razionalizzazione interfaccia Zmap e SurfTm.
This commit is contained in:
@@ -489,6 +489,52 @@ SurfTriMesh::GetNextTriangle( int nId, Triangle3d& Tria) const
|
||||
return nId ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
SurfTriMesh::GetTriangle( int nId, Triangle3dEx& Tria) const
|
||||
{
|
||||
// verifico esistenza del triangolo
|
||||
if ( nId < 0 || nId >= GetTriangleSize() || m_vTria[nId].nIdVert[0] == SVT_DEL)
|
||||
return false ;
|
||||
// recupero i dati
|
||||
Tria.Set( m_vVert[m_vTria[nId].nIdVert[0]].ptP,
|
||||
m_vVert[m_vTria[nId].nIdVert[1]].ptP,
|
||||
m_vVert[m_vTria[nId].nIdVert[2]].ptP,
|
||||
m_vTria[nId].vtN) ;
|
||||
GetTriangleBoundaryEdges( nId, const_cast<TriFlags3d&>( Tria.GetTriFlags())) ;
|
||||
GetTriangleSmoothNormals( nId, const_cast<TriNormals3d&>( Tria.GetTriNormals())) ;
|
||||
return true ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
int
|
||||
SurfTriMesh::GetFirstTriangle( Triangle3dEx& Tria) const
|
||||
{
|
||||
return GetNextTriangle( SVT_NULL, Tria) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
int
|
||||
SurfTriMesh::GetNextTriangle( int nId, Triangle3dEx& Tria) const
|
||||
{
|
||||
// cerco il primo successivo valido
|
||||
do {
|
||||
nId ++ ;
|
||||
} while ( nId < GetTriangleSize() && m_vTria[nId].nIdVert[0] == SVT_DEL) ;
|
||||
// se oltrepassata fine
|
||||
if ( nId >= GetTriangleSize())
|
||||
return SVT_NULL ;
|
||||
// recupero i dati
|
||||
Tria.Set( m_vVert[m_vTria[nId].nIdVert[0]].ptP,
|
||||
m_vVert[m_vTria[nId].nIdVert[1]].ptP,
|
||||
m_vVert[m_vTria[nId].nIdVert[2]].ptP,
|
||||
m_vTria[nId].vtN) ;
|
||||
GetTriangleBoundaryEdges( nId, const_cast<TriFlags3d&>( Tria.GetTriFlags())) ;
|
||||
GetTriangleSmoothNormals( nId, const_cast<TriNormals3d&>( Tria.GetTriNormals())) ;
|
||||
// ritorno indice triangolo corrente
|
||||
return nId ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
int
|
||||
SurfTriMesh::GetAllTriaAroundVertex( int nV, INTVECTOR& vT, bool& bCirc) const
|
||||
|
||||
Reference in New Issue
Block a user