浏览代码

check for area test if the face is a triangle.

Kim Kulling 7 年之前
父节点
当前提交
ad2ff9fd71
共有 1 个文件被更改,包括 9 次插入7 次删除
  1. 9 7
      code/FindDegenerates.cpp

+ 9 - 7
code/FindDegenerates.cpp

@@ -172,14 +172,16 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) {
                     }
                 }
             }
-            ai_real area = calculateAreaOfTriangle( face, mesh );
-            if ( area < 1e-6 ) {
-                if ( configRemoveDegenerates ) {
-                    remove_me[ a ] = true;
-                    goto evil_jump_outside;
-                }
+            if ( face.mNumIndices == 3 ) {
+                ai_real area = calculateAreaOfTriangle( face, mesh );
+                if ( area < 1e-6 ) {
+                    if ( configRemoveDegenerates ) {
+                        remove_me[ a ] = true;
+                        goto evil_jump_outside;
+                    }
 
-                // todo: check for index which is corrupt.
+                    // todo: check for index which is corrupt.
+                }
             }
         }