[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44776] branches/meshdata_transfer/source/ blender/editors/object/object_vgroup.c: Adjusted line number of funtions and implemented vertex group copy into them .

Ove Murberg Henriksen sorayasilvermoon at hotmail.com
Sat Mar 10 01:10:13 CET 2012


Revision: 44776
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44776
Author:   cyborgmuppet
Date:     2012-03-10 00:09:57 +0000 (Sat, 10 Mar 2012)
Log Message:
-----------
Adjusted line number of funtions and implemented vertex group copy into them.

Modified Paths:
--------------
    branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c

Modified: branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c
===================================================================
--- branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c	2012-03-09 23:10:07 UTC (rev 44775)
+++ branches/meshdata_transfer/source/blender/editors/object/object_vgroup.c	2012-03-10 00:09:57 UTC (rev 44776)
@@ -1177,20 +1177,6 @@
 	}
 }
 
-static void vgroup_transfer_weight_all(bContext *C)
-{
-	/* for each vertex group {vgroup_transfer_weight()} */
-	printf("Not implemented yet!");
-}
-
-static void vgroup_transfer_weight(bContext *C)
-{
-    printf("Not implemented yet!");
-
-
-
-}
-
 static void vgroup_lock_all(Object *ob, int action)
 {
 	bDeformGroup *dg;
@@ -2264,6 +2250,7 @@
 	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
+/*Adds a copy of selected vertex group on source object to source object*/
 static int vertex_group_copy_exec(bContext *C, wmOperator *UNUSED(op))
 {
 	Object *ob= ED_object_context(C);
@@ -2381,60 +2368,6 @@
 	                "Keep the values of the active group while normalizing others");
 }
 
-static int vertex_group_transfer_weight_all_exec(const bContext *C, wmOperator *op)
-{
-    Object *ob= CTX_data_active_object(C);
-	vgroup_transfer_weight_all(C);
-
-	DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
-	WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
-	WM_event_add_notifier(C, NC_GEOM|ND_DATA, ob->data);
-
-	return OPERATOR_FINISHED;
-}
-
-/* Transfers all vertex groups and weight from active object to targets*/
-void OBJECT_OT_vertex_group_transfer_weight_all(wmOperatorType *ot)
-{
-	/* identifiers */
-	ot->name= "Transfer Weight All";
-	ot->idname= "OBJECT_OT_vertex_group_transfer_weight_all";
-
-	/* api callbacks */
-	ot->poll= vertex_group_poll;
-	ot->exec= vertex_group_transfer_weight_all_exec;
-
-	/* flags */
-	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
-}
-
-static int vertex_group_transfer_weight_exec(const bContext *C, wmOperator *op)
-{
-    Object *ob= CTX_data_active_object(C);
-	vgroup_transfer_weight(C);
-
-	DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
-	WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
-	WM_event_add_notifier(C, NC_GEOM|ND_DATA, ob->data);
-
-	return OPERATOR_FINISHED;
-}
-
-/* Transfers one vertex group with weight from active object to target*/
-void OBJECT_OT_vertex_group_transfer_weight(wmOperatorType *ot)
-{
-	/* identifiers */
-	ot->name= "Transfer Weight";
-	ot->idname= "OBJECT_OT_vertex_group_transfer_weight";
-
-	/* api callbacks */
-	ot->poll= vertex_group_poll;
-	ot->exec= vertex_group_transfer_weight_exec;
-
-	/* flags */
-	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
-}
-
 static int vertex_group_fix_exec(bContext *C, wmOperator *op)
 {
 	Object *ob= CTX_data_active_object(C);
@@ -2719,7 +2652,6 @@
 	return OPERATOR_FINISHED;
 }
 
-
 void OBJECT_OT_vertex_group_copy_to_selected(wmOperatorType *ot)
 {
 	/* identifiers */
@@ -2735,6 +2667,73 @@
 	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
+/* Transfers all vertex groups and weight from active object to targets*/
+static void vgroup_copy_weight_all(const bContext *C, wmOperator *op)
+{
+	/* for each vertex group {vgroup_copy_weight(sourceGroup, targetGroup)} */
+	printf("Not implemented yet! \n");
+}
+
+static int vertex_group_transfer_weight_all_exec(const bContext *C, wmOperator *op)
+{
+	Object *ob= CTX_data_active_object(C);
+	vertex_group_copy_to_selected_exec(C, op);
+	vgroup_copy_weight_all(C, op);
+
+	DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
+	WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
+	WM_event_add_notifier(C, NC_GEOM|ND_DATA, ob->data);
+
+	return OPERATOR_FINISHED;
+}
+
+void OBJECT_OT_vertex_group_transfer_weight_all(wmOperatorType *ot)
+{
+	/* identifiers */
+	ot->name= "Transfer Weight All";
+	ot->idname= "OBJECT_OT_vertex_group_transfer_weight_all";
+
+	/* api callbacks */
+	ot->poll= vertex_group_poll;
+	ot->exec= vertex_group_transfer_weight_all_exec;
+
+	/* flags */
+	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
+}
+
+/* Transfers one vertex group with weight from active object to target*/
+static void vgroup_copy_weight(/*source vertex group*/ /*target vertex group*/)
+{
+	printf("Not implemented yet! \n");
+}
+
+static int vertex_group_transfer_weight_exec(const bContext *C, wmOperator *op)
+{
+	Object *ob= CTX_data_active_object(C);
+	/*vertex_group_copy_to_selected_exec(C,op); ----- must be implemented!*/
+	vgroup_copy_weight();
+
+	DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
+	WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
+	WM_event_add_notifier(C, NC_GEOM|ND_DATA, ob->data);
+
+	return OPERATOR_FINISHED;
+}
+
+void OBJECT_OT_vertex_group_transfer_weight(wmOperatorType *ot)
+{
+	/* identifiers */
+	ot->name= "Transfer Weight";
+	ot->idname= "OBJECT_OT_vertex_group_transfer_weight";
+
+	/* api callbacks */
+	ot->poll= vertex_group_poll;
+	ot->exec= vertex_group_transfer_weight_exec;
+
+	/* flags */
+	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
+}
+
 static EnumPropertyItem vgroup_items[]= {
 	{0, NULL, 0, NULL, NULL}};
 




More information about the Bf-blender-cvs mailing list