diff --git a/SurfTriMesh.cpp b/SurfTriMesh.cpp index 4402b1e..2fdf8e2 100644 --- a/SurfTriMesh.cpp +++ b/SurfTriMesh.cpp @@ -852,9 +852,6 @@ SurfTriMesh::GetTempInt( int nTriaId, int& nTempInt) const bool SurfTriMesh::GetTriangleSmoothNormal( int nT, int nV, Vector3d& vtN) const { - // flag di pesatura con angolo al vertice - bool bAngWeighted = true ; - // recupero tutti i triangoli attorno al vertice bool bCirc ; INTVECTOR vT ; @@ -875,8 +872,7 @@ SurfTriMesh::GetTriangleSmoothNormal( int nT, int nV, Vector3d& vtN) const // medio le normali, finchè non incontro degli spigoli double dAngW = 1 ; - if ( bAngWeighted) - GetTriangleVertexAngle( nT, nV, dAngW) ; + GetTriangleVertexAngle( nT, nV, dAngW) ; vtN = dAngW * m_vTria[nT].vtN ; // parto dal triangolo e vado in direzione positiva int nLim = nPos ; @@ -885,9 +881,9 @@ SurfTriMesh::GetTriangleSmoothNormal( int nT, int nV, Vector3d& vtN) const i = NextIndAroundVertex( i, nTria, bCirc)) { if ( m_vTria[nT].vtN * m_vTria[vT[i]].vtN >= m_dCosSmAng) { int nK ; double dAngW = 1 ; - if ( bAngWeighted && FindVertexInTria( m_vTria[nT].nIdVert[nV], vT[i], nK)) - GetTriangleVertexAngle( vT[i], nK, dAngW) ; - vtN += dAngW * m_vTria[vT[i]].vtN ; + if ( FindVertexInTria( m_vTria[nT].nIdVert[nV], vT[i], nK) && + GetTriangleVertexAngle( vT[i], nK, dAngW)) + vtN += dAngW * m_vTria[vT[i]].vtN ; } else break ; @@ -899,9 +895,9 @@ SurfTriMesh::GetTriangleSmoothNormal( int nT, int nV, Vector3d& vtN) const i = PrevIndAroundVertex( i, nTria, bCirc)) { if ( m_vTria[nT].vtN * m_vTria[vT[i]].vtN >= m_dCosSmAng) { int nK ; double dAngW = 1 ; - if ( bAngWeighted && FindVertexInTria( m_vTria[nT].nIdVert[nV], vT[i], nK)) - GetTriangleVertexAngle( vT[i], nK, dAngW) ; - vtN += dAngW * m_vTria[vT[i]].vtN ; + if ( FindVertexInTria( m_vTria[nT].nIdVert[nV], vT[i], nK) && + GetTriangleVertexAngle( vT[i], nK, dAngW)) + vtN += dAngW * m_vTria[vT[i]].vtN ; } else break ;