[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [46047] branches/smoke2: Merge with trunk r46044-r46045

Daniel Genrich daniel.genrich at gmx.net
Sat Apr 28 21:52:32 CEST 2012


Revision: 46047
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46047
Author:   genscher
Date:     2012-04-28 19:52:31 +0000 (Sat, 28 Apr 2012)
Log Message:
-----------
Merge with trunk r46044-r46045

(pre trunk merge)

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46044
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46045

Modified Paths:
--------------
    branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.c
    branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.h

Property Changed:
----------------
    branches/smoke2/


Property changes on: branches/smoke2
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037
/trunk/blender:45664-45710,45712-45744,45747-46043
   + /branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037
/trunk/blender:45664-45710,45712-45744,45747-46045

Modified: branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.c
===================================================================
--- branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.c	2012-04-28 19:00:00 UTC (rev 46046)
+++ branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.c	2012-04-28 19:52:31 UTC (rev 46047)
@@ -104,8 +104,52 @@
 	return i;
 }
 
+/**
+ * \brief Elem Iter Flag Count
+ *
+ * Counts how many flagged / unflagged items are found in this element.
+ */
+int BM_iter_elem_count_flag(const char itype, void *data, const char hflag, const short value)
+{
+	BMIter iter;
+	BMElem *ele;
+	int count = 0;
 
+	BLI_assert(ELEM(value, TRUE, FALSE));
+
+	for (ele = BM_iter_new(&iter, NULL, itype, data); ele; ele = BM_iter_step(&iter)) {
+		if (BM_elem_flag_test_bool(ele, hflag) == value) {
+			count++;
+		}
+	}
+
+	return count;
+}
+
 /**
+ * \brief Mesh Iter Flag Count
+ *
+ * Counts how many flagged / unflagged items are found in this mesh.
+ */
+int BM_iter_mesh_count_flag(const char itype, BMesh *bm, const char hflag, const short value)
+{
+	BMIter iter;
+	BMElem *ele;
+	int count = 0;
+
+	BLI_assert(ELEM(value, TRUE, FALSE));
+
+	for (ele = BM_iter_new(&iter, bm, itype, NULL); ele; ele = BM_iter_step(&iter)) {
+		if (BM_elem_flag_test_bool(ele, hflag) == value) {
+			count++;
+		}
+	}
+
+	return count;
+}
+
+
+/**
  * \brief Init Iterator
  *
  * Clears the internal state of an iterator for begin() callbacks.

Modified: branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.h
===================================================================
--- branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.h	2012-04-28 19:00:00 UTC (rev 46046)
+++ branches/smoke2/source/blender/bmesh/intern/bmesh_iterators.h	2012-04-28 19:52:31 UTC (rev 46047)
@@ -117,6 +117,8 @@
 
 void *BM_iter_at_index(BMesh *bm, const char itype, void *data, int index);
 int   BM_iter_as_array(BMesh *bm, const char itype, void *data, void **array, const int len);
+int   BM_iter_elem_count_flag(const char itype, void *data, const char hflag, const short value);
+int   BM_iter_mesh_count_flag(const char itype, BMesh *bm, const char hflag, const short value);
 
 /* private for bmesh_iterators_inline.c */
 void  bmiter__vert_of_mesh_begin(struct BMIter *iter);




More information about the Bf-blender-cvs mailing list