Fix T31598: smart UV failed for small faces
authorCampbell Barton <ideasman42@gmail.com>
Mon, 17 Mar 2014 14:34:14 +0000 (01:34 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Mon, 17 Mar 2014 14:34:14 +0000 (01:34 +1100)
previous fixes only tweaked epsilon, but logic for skipping zero area
boxes was still wrong.

release/scripts/startup/bl_operators/uvcalc_smart_project.py

index 74fb9e98c829571d3837ed58011f7138209be256..70df5a9df21858c2759b30528d2abed47b96bc4e 100644 (file)
@@ -23,7 +23,7 @@ import bpy
 from bpy.types import Operator
 
 DEG_TO_RAD = 0.017453292519943295 # pi/180.0
-SMALL_NUM = 0.000001  # see bug [#31598] why we dont have smaller values
+SMALL_NUM = 0.00000001  # see bug [#31598] why we dont have smaller values
 
 global USER_FILL_HOLES
 global USER_FILL_HOLES_QUALITY
@@ -594,10 +594,10 @@ def packIslands(islandList):
             # recalc width and height
             w, h = maxx-minx, maxy-miny
 
-        if w < 0.00001 or h < 0.00001:
-            del islandList[islandIdx]
-            islandIdx -=1
-            continue
+        if w < SMALL_NUM:
+            w = SMALL_NUM
+        if h < SMALL_NUM:
+            h = SMALL_NUM
 
         """Save the offset to be applied later,
         we could apply to the UVs now and allign them to the bottom left hand area