[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39340] trunk/blender/source/blender/ editors/object/object_transform.c: Code cleanup: replace some manual setting of ob->recalc with DAG_id_tag_update,

Brecht Van Lommel brechtvanlommel at pandora.be
Fri Aug 12 20:06:05 CEST 2011


Revision: 39340
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39340
Author:   blendix
Date:     2011-08-12 18:06:05 +0000 (Fri, 12 Aug 2011)
Log Message:
-----------
Code cleanup: replace some manual setting of ob->recalc with DAG_id_tag_update,
is now just as fast anyway with delayed flush.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/object/object_transform.c

Modified: trunk/blender/source/blender/editors/object/object_transform.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_transform.c	2011-08-12 15:48:08 UTC (rev 39339)
+++ trunk/blender/source/blender/editors/object/object_transform.c	2011-08-12 18:06:05 UTC (rev 39340)
@@ -246,7 +246,7 @@
 			}
 			
 			/* tag for updates */
-			ob->recalc |= OB_RECALC_OB;
+			DAG_id_tag_update(&ob->id, OB_RECALC_OB);
 		}
 	}
 	CTX_DATA_END;
@@ -341,7 +341,8 @@
 			negate_v3_v3(v3, v1);
 			mul_m3_v3(mat, v3);
 		}
-		ob->recalc |= OB_RECALC_OB;
+
+		DAG_id_tag_update(&ob->id, OB_RECALC_OB);
 	}
 	CTX_DATA_END;
 
@@ -871,7 +872,7 @@
 								(ob->dup_group==ob_other->dup_group && (ob->transflag|ob_other->transflag) & OB_DUPLIGROUP) )
 					) {
 						ob_other->flag |= OB_DONE;
-						ob_other->recalc= OB_RECALC_OB|OB_RECALC_DATA;
+						DAG_id_tag_update(&ob_other->id, OB_RECALC_OB|OB_RECALC_DATA);
 
 						copy_v3_v3(centn, cent);
 						mul_mat3_m4_v3(ob_other->obmat, centn); /* ommit translation part */
@@ -890,11 +891,9 @@
 	}
 	CTX_DATA_END;
 
-	for (tob= bmain->object.first; tob; tob= tob->id.next) {
-		if(tob->data && (((ID *)tob->data)->flag & LIB_DOIT)) {
-			tob->recalc= OB_RECALC_OB|OB_RECALC_DATA;
-		}
-	}
+	for (tob= bmain->object.first; tob; tob= tob->id.next)
+		if(tob->data && (((ID *)tob->data)->flag & LIB_DOIT))
+			DAG_id_tag_update(&tob->id, OB_RECALC_OB|OB_RECALC_DATA);
 
 	if (tot_change) {
 		DAG_ids_flush_update(bmain, 0);




More information about the Bf-blender-cvs mailing list