[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47919] branches/soc-2012-bratwurst/source /blender/collada: export of constraint targets to COLLADA
Sukhitha Jayathilake
pr.jayathilake at gmail.com
Thu Jun 14 22:16:07 CEST 2012
Revision: 47919
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47919
Author: phabtar
Date: 2012-06-14 20:15:55 +0000 (Thu, 14 Jun 2012)
Log Message:
-----------
export of constraint targets to COLLADA
Modified Paths:
--------------
branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.cpp
branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.h
Modified: branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.cpp
===================================================================
--- branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.cpp 2012-06-14 19:22:55 UTC (rev 47918)
+++ branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.cpp 2012-06-14 20:15:55 UTC (rev 47919)
@@ -186,12 +186,32 @@
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"flag",con->flag);
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"headtail",con->headtail);
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"lin_error",con->lin_error);
- /*node.addExtraTechniqueParameter("blender","lin_error",con->next);*/
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"own_space",con->ownspace);
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"rot_error",con->rot_error);
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"tar_space",con->tarspace);
colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"lin_error",con->lin_error);
-
+
+ //not ideal: add the target object name as another parameter.
+ //No real mapping in the .dae
+ //Need support for multiple target objects also.
+ bConstraintTypeInfo *cti = constraint_get_typeinfo(con);
+ ListBase targets = {NULL, NULL};
+ if (cti && cti->get_constraint_targets) {
+
+ bConstraintTarget *ct;
+ Object *obtar;
+
+ cti->get_constraint_targets(con, &targets);
+ if(cti){
+ int i = 1;
+ for (ct = (bConstraintTarget*)targets.first; ct; ct = ct->next){
+ obtar = ct->tar;
+ std::string tar_id(id_name(obtar));
+ node.addExtraTechniqueChildParameter("blender",con_tag,"target_id",tar_id);
+ }
+ }
+ }
+
con = con->next;
}
}
Modified: branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.h
===================================================================
--- branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.h 2012-06-14 19:22:55 UTC (rev 47918)
+++ branches/soc-2012-bratwurst/source/blender/collada/SceneExporter.h 2012-06-14 20:15:55 UTC (rev 47919)
@@ -52,6 +52,7 @@
#include "BKE_fcurve.h"
#include "BKE_animsys.h"
#include "BLI_path_util.h"
+#include "BKE_constraint.h"
#include "BLI_fileops.h"
#include "ED_keyframing.h"
}
More information about the Bf-blender-cvs
mailing list