Revision: 37352
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37352
Author:   psy-fi
Date:     2011-06-10 00:41:53 +0000 (Fri, 10 Jun 2011)
Log Message:
-----------
subsurf-aware UV solver commit #4:
Added integer property to select subdivision level to calculate.

Modified Paths:
--------------
    branches/soc-2011-onion/source/blender/editors/uvedit/uvedit_unwrap_ops.c
    branches/soc-2011-onion/source/blender/makesdna/DNA_scene_types.h

Modified: 
branches/soc-2011-onion/source/blender/editors/uvedit/uvedit_unwrap_ops.c
===================================================================
--- branches/soc-2011-onion/source/blender/editors/uvedit/uvedit_unwrap_ops.c   
2011-06-10 00:19:12 UTC (rev 37351)
+++ branches/soc-2011-onion/source/blender/editors/uvedit/uvedit_unwrap_ops.c   
2011-06-10 00:41:53 UTC (rev 37352)
@@ -177,8 +177,8 @@
        {
                int numOfVerts;
                
-               /* ad hoc, will change later */
-               smd.levels = 2;
+               /* number of subdivisions to perform */
+               smd.levels = scene->toolsettings->uv_subsurf_level;
                /* no cache here */
                smd.emCache = NULL;
                smd.mCache = NULL;
@@ -932,6 +932,7 @@
        int fill_holes = RNA_boolean_get(op->ptr, "fill_holes");
        int correct_aspect = RNA_boolean_get(op->ptr, "correct_aspect");
        int use_subsurf = RNA_boolean_get(op->ptr, "use_subsurf_data");
+       int subdivisionLevel = RNA_int_get(op->ptr, "uv_subsurf_level");
        
        /* add uvs if they don't exist yet */
        if(!ED_uvedit_ensure_uvs(C, scene, obedit)) {
@@ -940,6 +941,8 @@
 
        /* remember last method for live unwrap */
        scene->toolsettings->unwrapper = method;
+       
+       scene->toolsettings->uv_subsurf_level = subdivisionLevel;
 
        if(fill_holes)          scene->toolsettings->uvcalc_flag |=  
UVCALC_FILLHOLES;
        else                            scene->toolsettings->uvcalc_flag &= 
~UVCALC_FILLHOLES;
@@ -980,7 +983,8 @@
        RNA_def_enum(ot->srna, "method", method_items, 0, "Method", "Unwrapping 
method. Angle Based usually gives better results than Conformal, while being 
somewhat slower.");
        RNA_def_boolean(ot->srna, "fill_holes", 1, "Fill Holes", "Virtual fill 
holes in mesh before unwrapping, to better avoid overlaps and preserve 
symmetry.");
        RNA_def_boolean(ot->srna, "correct_aspect", 1, "Correct Aspect", "Map 
UV's taking image aspect ratio into account.");
-       RNA_def_boolean(ot->srna, "use_subsurf_data", 0, "Use Subsurf Data", 
"Map UV's taking face area and angle after subsurf into account.");
+       RNA_def_boolean(ot->srna, "use_subsurf_data", 0, "Use Subsurf Data", 
"Map UV's taking vertex position after subsurf into account.");
+       RNA_def_int(ot->srna, "uv_subsurf_level", 1, 1, 6, "SubSurf Target", 
"Number of times to subdivide before calculating UV's", 1, 6);
 }
 
 /**************** Project From View operator **************/

Modified: branches/soc-2011-onion/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- branches/soc-2011-onion/source/blender/makesdna/DNA_scene_types.h   
2011-06-10 00:19:12 UTC (rev 37351)
+++ branches/soc-2011-onion/source/blender/makesdna/DNA_scene_types.h   
2011-06-10 00:41:53 UTC (rev 37352)
@@ -662,7 +662,7 @@
        short uvcalc_mapalign;
        short uvcalc_flag;
        short uv_flag, uv_selectmode;
-       short uv_pad;
+       short uv_subsurf_level;
        
        /* Grease Pencil */
        short gpencil_flags;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to