EgtGeomKernel 2.2l1 :
- correzioni a Zmap per casi degeneri (dexel solo in una matrice anche se tridexel).
This commit is contained in:
+8
-8
@@ -2216,8 +2216,8 @@ VolZmap::ExtMarchingCubes( int nBlock, VoxelContainer& vVox) const
|
||||
double dYMax = ( nDexMaxJ + 0.5) * m_dStep ;
|
||||
double dZMax = ( nDexMaxK + 0.5) * m_dStep ;
|
||||
// Determino colore dei triangoli
|
||||
int nFaceInfGrade = m_Values[1][nDexMinK * m_nNx[1] + nDexMinJ][0].nToolMin ;
|
||||
int nFaceSupGrade = m_Values[1][nDexMinK * m_nNx[1] + nDexMinJ][0].nToolMax ;
|
||||
int nFaceInfGrade = ( ! m_Values[1].empty() ? m_Values[1][nDexMinK * m_nNx[1] + nDexMinJ][0].nToolMin : 0) ;
|
||||
int nFaceSupGrade = ( ! m_Values[1].empty() ? m_Values[1][nDexMinK * m_nNx[1] + nDexMinJ][0].nToolMax : 0) ;
|
||||
// Piano di coordinata x inferiore: versore normale rivolto come X-
|
||||
if ( nBlockIJK[0] == 0) {
|
||||
Triangle3dEx trTria1, trTria2 ;
|
||||
@@ -2255,8 +2255,8 @@ VolZmap::ExtMarchingCubes( int nBlock, VoxelContainer& vVox) const
|
||||
double dXMax = ( nDexMaxI + 0.5) * m_dStep ;
|
||||
double dZMax = ( nDexMaxK + 0.5) * m_dStep ;
|
||||
// Determino colore dei triangoli
|
||||
int nFaceInfGrade = m_Values[2][nDexMinI * m_nNx[2] + nDexMinK][0].nToolMin ;
|
||||
int nFaceSupGrade = m_Values[2][nDexMinI * m_nNx[2] + nDexMinK][0].nToolMax ;
|
||||
int nFaceInfGrade = ( ! m_Values[2].empty() ? m_Values[2][nDexMinI * m_nNx[2] + nDexMinK][0].nToolMin : 0) ;
|
||||
int nFaceSupGrade = ( ! m_Values[2].empty() ? m_Values[2][nDexMinI * m_nNx[2] + nDexMinK][0].nToolMax : 0) ;
|
||||
// Piano di coordinata y inferiore: versore normale rivolto come Y-
|
||||
if ( nBlockIJK[1] == 0) {
|
||||
Triangle3dEx trTria1, trTria2 ;
|
||||
@@ -4024,7 +4024,7 @@ VolZmap::GetFirstVoxIJK( int& i, int& j, int& k) const
|
||||
bool bNotEmpty = false ;
|
||||
for ( nj = 0 ; nj < 2 ; ++ nj) {
|
||||
int nDex = nj * int( m_nNx[0]) + ni ;
|
||||
if ( m_Values[0][nDex].size() > 0) {
|
||||
if ( ! m_Values[0].empty() && m_Values[0][nDex].size() > 0) {
|
||||
bNotEmpty = true ;
|
||||
break ;
|
||||
}
|
||||
@@ -4037,7 +4037,7 @@ VolZmap::GetFirstVoxIJK( int& i, int& j, int& k) const
|
||||
bool bNotEmpty = false ;
|
||||
for ( mj = 0 ; mj < 2 ; ++ mj) {
|
||||
int nDex = mj * int( m_nNx[1]) + mi ;
|
||||
if ( m_Values[1][nDex].size() > 0) {
|
||||
if ( ! m_Values[1].empty() && m_Values[1][nDex].size() > 0) {
|
||||
bNotEmpty = true ;
|
||||
break ;
|
||||
}
|
||||
@@ -4067,7 +4067,7 @@ VolZmap::GetLastVoxIJK( int& i, int& j, int& k) const
|
||||
bool bNotEmpty = false ;
|
||||
for ( nj = int( m_nNy[0]) - 1 ; nj > int( m_nNy[0]) - 3 ; -- nj) {
|
||||
int nDex = nj * int( m_nNx[0]) + ni ;
|
||||
if ( m_Values[0][nDex].size() > 0) {
|
||||
if ( ! m_Values[0].empty() && m_Values[0][nDex].size() > 0) {
|
||||
bNotEmpty = true ;
|
||||
break ;
|
||||
}
|
||||
@@ -4080,7 +4080,7 @@ VolZmap::GetLastVoxIJK( int& i, int& j, int& k) const
|
||||
bool bNotEmpty = false ;
|
||||
for ( mj = int( m_nNy[1]) - 1 ; mj > int( m_nNy[1]) - 3 ; -- mj) {
|
||||
int nDex = mj * int( m_nNx[1]) + mi ;
|
||||
if ( m_Values[1][nDex].size() > 0) {
|
||||
if ( ! m_Values[1].empty() && m_Values[1][nDex].size() > 0) {
|
||||
bNotEmpty = true ;
|
||||
break ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user