[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54101] trunk/blender/source/blender: Fix [#33997] Units Scale in Metric mode displays wrong face area.

Bastien Montagne montagne29 at wanadoo.fr
Fri Jan 25 22:21:40 CET 2013


Revision: 54101
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54101
Author:   mont29
Date:     2013-01-25 21:21:38 +0000 (Fri, 25 Jan 2013)
Log Message:
-----------
Fix [#33997] Units Scale in Metric mode displays wrong face area.

Also now display nice "area" units (maybe using "length" units was a perf matter, but anyway, you can't have more than a few tens of values displayed at a time, after that they become unreadable). Easy to undo anyway if we really want to keep ugly "10m" as area display!

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/drawobject.c
    trunk/blender/source/blender/python/intern/bpy_app_translations.c

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-01-25 15:44:22 UTC (rev 54100)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-01-25 21:21:38 UTC (rev 54101)
@@ -2653,16 +2653,21 @@
 		BMFace *f;
 		int n;
 
-#define DRAW_EM_MEASURE_STATS_FACEAREA()                                      \
-	if (BM_elem_flag_test(f, BM_ELEM_SELECT)) {                               \
-		mul_v3_fl(vmid, 1.0f / (float)n);                                     \
-		if (unit->system)                                                     \
-			bUnit_AsString(numstr, sizeof(numstr),                            \
-			               (double)(area * unit->scale_length),               \
-			               3, unit->system, B_UNIT_LENGTH, do_split, FALSE);  \
-		else                                                                  \
-			BLI_snprintf(numstr, sizeof(numstr), conv_float, area);           \
-		view3d_cached_text_draw_add(vmid, numstr, 0, txt_flag, col);          \
+#define DRAW_EM_MEASURE_STATS_FACEAREA()                                                 \
+	if (BM_elem_flag_test(f, BM_ELEM_SELECT)) {                                          \
+		mul_v3_fl(vmid, 1.0f / (float)n);                                                \
+		if (unit->system) {                                                              \
+			bUnit_AsString(numstr, sizeof(numstr),                                       \
+			               (double)(area * unit->scale_length * unit->scale_length),     \
+			               3, unit->system, B_UNIT_AREA, do_split, FALSE);               \
+			view3d_cached_text_draw_add(vmid, numstr, 0,                                 \
+			                            /* Metric system uses unicode "squared" sign! */ \
+			                            txt_flag ^ V3D_CACHE_TEXT_ASCII, col);           \
+		}                                                                                \
+		else {                                                                           \
+			BLI_snprintf(numstr, sizeof(numstr), conv_float, area);                      \
+			view3d_cached_text_draw_add(vmid, numstr, 0, txt_flag, col);                 \
+		}                                                                                \
 	} (void)0
 
 		UI_GetThemeColor3ubv(TH_DRAWEXTRA_FACEAREA, col);

Modified: trunk/blender/source/blender/python/intern/bpy_app_translations.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_app_translations.c	2013-01-25 15:44:22 UTC (rev 54100)
+++ trunk/blender/source/blender/python/intern/bpy_app_translations.c	2013-01-25 21:21:38 UTC (rev 54101)
@@ -708,7 +708,7 @@
 	                            /* newfunc tp_new; */
 	(newfunc)app_translations_new,
 	/*  Low-level free-memory routine */
-	app_translations_free,                       /* freefunc tp_free;  */
+	app_translations_free,      /* freefunc tp_free;  */
 	/* For PyObject_IS_GC */
 	NULL,                       /* inquiry tp_is_gc;  */
 	NULL,                       /* PyObject *tp_bases; */




More information about the Bf-blender-cvs mailing list