diff --git a/SurfTriMesh.cpp b/SurfTriMesh.cpp index 725eb83..1ca8a0d 100644 --- a/SurfTriMesh.cpp +++ b/SurfTriMesh.cpp @@ -3637,6 +3637,18 @@ SurfTriMesh::Invert( void) for ( int i = 0 ; i < GetTriangleSize() ; ++ i) InvertTriangle( i) ; + // se bordi della sfaccettatura validi + if ( m_bFacEdged) { + for ( int nE = 0 ; nE < GetEdgeCount() ; ++ nE) { + // inversione dei vertici nel vettore delle sfaccettature + swap( m_vFacEdge[nE].nIdVert[0], m_vFacEdge[nE].nIdVert[1]) ; + // inversione delle adiacenze nel vettore delle sfaccettature + swap( m_vFacEdge[nE].nIdFacAdj[0], m_vFacEdge[nE].nIdFacAdj[1]) ; + // inversione dell'angolo interno + m_vFacEdge[nE].dIntAng *= -1. ; + } + } + return true ; }