Revision: 49676
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49676
Author:   psy-fi
Date:     2012-08-08 00:52:14 +0000 (Wed, 08 Aug 2012)
Log Message:
-----------
Cleanup, remove isomap old O(n^4) distance calculation method

Modified Paths:
--------------
    
branches/soc-2012-bratwurst/source/blender/editors/uvedit/uvedit_parametrizer.c
    branches/soc-2012-bratwurst/source/blender/makesrna/intern/rna_space.c

Modified: 
branches/soc-2012-bratwurst/source/blender/editors/uvedit/uvedit_parametrizer.c
===================================================================
--- 
branches/soc-2012-bratwurst/source/blender/editors/uvedit/uvedit_parametrizer.c 
    2012-08-07 23:10:18 UTC (rev 49675)
+++ 
branches/soc-2012-bratwurst/source/blender/editors/uvedit/uvedit_parametrizer.c 
    2012-08-08 00:52:14 UTC (rev 49676)
@@ -3078,66 +3078,20 @@
 
 static PBool p_chart_lscm_solve(PHandle *handle, PChart *chart)
 {
-
-       //#define OLD_DIST_CONSTRUCTION
        enum UnwrapMethods method = handle->method;
 
        if (method == UNWRAP_ISOMAP) {
-               PEdge *e;
                PVert *v;
                int nverts = chart->nverts;
-               int i, j, k, l;
+               int i, j;
 
                /* create matrix with squared edge distances */
                float *dist_map = MEM_mallocN(sizeof(*dist_map)*nverts*nverts, 
"isomap_distance_map");
-               #ifndef OLD_DIST_CONSTRUCTION
                GraphVertInfo *visited = MEM_mallocN(nverts*sizeof(*visited), 
"isomap_visited_flags");
                Heap *graph_heap = BLI_heap_new();
-               #endif
 
                param_isomap_new_solver(nverts);
 
-               #ifdef OLD_DIST_CONSTRUCTION
-               /* initialize every point to "infinity" according to the paper.
-                * since this will make every inner product give infinity as 
well, initialize to some
-                * large number instead */
-               for (i = 0; i < nverts; i++)
-                       for (j = 0; j < nverts; j++) {
-                               dist_map[i*nverts + j] = (i == j)? 0 : MAXFLOAT;
-                       }
-
-               /* for each edge, put the squared distance to the appropriate 
matrix positions */
-               for (e = chart->edges; e; e = e->nextlink) {
-                       /* fill the upper right part of the matrix */
-                       dist_map[e->vert->u.id*nverts + e->next->vert->u.id] =
-                       dist_map[e->next->vert->u.id*nverts + e->vert->u.id] =
-                               p_edge_length(e);
-               }
-
-               /* now edge length has been computed. Construct shortest paths
-                * and run the algorithm nverts times to eventually calculate 
shortest
-                * paths between all verts. This is a silly way to do this and 
will probably be optimized
-                * if i go on working on this. */
-               for (l = 0; l < nverts; l++) {
-                       for (i = 0; i < nverts; i++) {
-                               for (j = 0; j < nverts; j++) {
-                                       for (k = 0; k < nverts; k++) {
-                                               float sum_dist = 
dist_map[i*nverts + k] + dist_map[k*nverts + j];
-
-                                               dist_map[i*nverts + j] = 
dist_map[j*nverts + i] = minf(dist_map[i*nverts + j], sum_dist);
-                                       }
-                               }
-                       }
-               }
-
-               /* square distances */
-               for (i = 0; i < nverts; i++) {
-                       for (j = 0; j < nverts; j++) {
-                               dist_map[i*nverts + j] *=  dist_map[i*nverts + 
j];
-                       }
-               }
-               #else
-
                /* initialize graph distances */
                for (i = 0; i < nverts; i++) {
                        for (j = 0; j < i + 1; j++) {
@@ -3246,8 +3200,6 @@
                BLI_heap_free(graph_heap, NULL);
                MEM_freeN(visited);
 
-               #endif
-
                if(!param_isomap_solve(dist_map)) {
                        param_isomap_delete_solver();
                        MEM_freeN(dist_map);

Modified: branches/soc-2012-bratwurst/source/blender/makesrna/intern/rna_space.c
===================================================================
--- branches/soc-2012-bratwurst/source/blender/makesrna/intern/rna_space.c      
2012-08-07 23:10:18 UTC (rev 49675)
+++ branches/soc-2012-bratwurst/source/blender/makesrna/intern/rna_space.c      
2012-08-08 00:52:14 UTC (rev 49676)
@@ -2086,7 +2086,7 @@
        RNA_def_property_ui_text(prop, "Show UV Editor", "Show UV editing 
related properties");
 
        prop = RNA_def_property(srna, "show_maskedit", PROP_BOOLEAN, PROP_NONE);
-       RNA_def_property_boolean_funcs(prop, 
"rna_SpaceImageEditor_show_maskedit_get", NULL);
+       RNA_def_property_boolean_funcs(prop, 
"rna_SpaceImageEditor_show_maskedit_get", NULL, NULL);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Show Mask Editor", "Show Mask editing 
related properties");
 

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

Reply via email to