EgtGraphics 1.6b3 :

- aggiunta gestione flag di edge per non disegnare in wireframe/hiddenline (per poligoni).
This commit is contained in:
Dario Sassi
2015-02-14 09:29:36 +00:00
parent 7ffdfed121
commit 045f3e480c
9 changed files with 57 additions and 19 deletions
+6 -1
View File
@@ -147,13 +147,14 @@ ObjOldGraphics::StartTriangles( int nNum, bool bAux)
//----------------------------------------------------------------------------
bool
ObjOldGraphics::AddTriangle( const Triangle3d& Tria, const TriNormals3d& TNrms)
ObjOldGraphics::AddTriangle( const Triangle3d& Tria, const TriFlags3d& TFlags, const TriNormals3d& TNrms)
{
// modo corrente deve essere triangoli
if ( m_nCurrMode != GL_TRIANGLES)
return false ;
// emetto le normali e i vertici del triangolo
for ( int i = 0 ; i < 3 ; ++ i) {
AddBndFlag( TFlags.bFlag[i]) ;
AddNormal3f( TNrms.vtN[i]) ;
AddVert3f( Tria.GetP( i)) ;
}
@@ -236,6 +237,10 @@ ObjOldGraphics::Draw( int nStat, int nMark, bool bSurfSha, bool bShowAux)
if ( ! bStartA || bShowAux)
glVertex3fv( iIter->m_fVal) ;
break ;
case OgAtom::BND_FLAG :
if ( ! bStartA || bShowAux)
glEdgeFlag( iIter->m_nFlag) ;
break ;
case OgAtom::NORMAL :
if ( ! bStartA || bShowAux)
glNormal3fv( iIter->m_fVal) ;