[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58198] trunk/blender/source/blender: Moved code for calculating local_matrix to BKE funtion for reuse
Gaia Clary
gaia.clary at machinimatrix.org
Fri Jul 12 14:58:02 CEST 2013
Revision: 58198
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58198
Author: gaiaclary
Date: 2013-07-12 12:58:01 +0000 (Fri, 12 Jul 2013)
Log Message:
-----------
Moved code for calculating local_matrix to BKE funtion for reuse
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/BKE_object.h
trunk/blender/source/blender/blenkernel/intern/object.c
trunk/blender/source/blender/makesrna/intern/rna_object.c
Modified: trunk/blender/source/blender/blenkernel/BKE_object.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_object.h 2013-07-12 12:11:21 UTC (rev 58197)
+++ trunk/blender/source/blender/blenkernel/BKE_object.h 2013-07-12 12:58:01 UTC (rev 58198)
@@ -95,6 +95,7 @@
void BKE_object_to_mat3(struct Object *ob, float mat[3][3]);
void BKE_object_to_mat4(struct Object *ob, float mat[4][4]);
void BKE_object_apply_mat4(struct Object *ob, float mat[4][4], const bool use_compat, const bool use_parent);
+void BKE_object_matrix_local_get(struct Object *ob, float mat[4][4]);
bool BKE_object_pose_context_check(struct Object *ob);
struct Object *BKE_object_pose_armature_get(struct Object *ob);
Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c 2013-07-12 12:11:21 UTC (rev 58197)
+++ trunk/blender/source/blender/blenkernel/intern/object.c 2013-07-12 12:58:01 UTC (rev 58198)
@@ -1736,6 +1736,18 @@
add_v3_v3v3(mat[3], ob->loc, ob->dloc);
}
+void BKE_object_matrix_local_get(struct Object *ob, float mat[4][4])
+{
+ if (ob->parent) {
+ float invmat[4][4]; /* for inverse of parent's matrix */
+ invert_m4_m4(invmat, ob->parent->obmat);
+ mul_m4_m4m4(mat, invmat, ob->obmat);
+ }
+ else {
+ copy_m4_m4(mat, ob->obmat);
+ }
+}
+
/* extern */
int enable_cu_speed = 1;
Modified: trunk/blender/source/blender/makesrna/intern/rna_object.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_object.c 2013-07-12 12:11:21 UTC (rev 58197)
+++ trunk/blender/source/blender/makesrna/intern/rna_object.c 2013-07-12 12:58:01 UTC (rev 58198)
@@ -44,7 +44,7 @@
#include "BKE_paint.h"
#include "BKE_editmesh.h"
#include "BKE_group.h" /* needed for BKE_group_object_exists() */
-
+#include "BKE_object.h" /* Needed for BKE_object_matrix_local_get() */
#include "RNA_access.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
@@ -216,15 +216,7 @@
static void rna_Object_matrix_local_get(PointerRNA *ptr, float values[16])
{
Object *ob = ptr->id.data;
-
- if (ob->parent) {
- float invmat[4][4]; /* for inverse of parent's matrix */
- invert_m4_m4(invmat, ob->parent->obmat);
- mul_m4_m4m4((float(*)[4])values, invmat, ob->obmat);
- }
- else {
- copy_m4_m4((float(*)[4])values, ob->obmat);
- }
+ BKE_object_matrix_local_get(ob, (float(*)[4])values);
}
static void rna_Object_matrix_local_set(PointerRNA *ptr, const float values[16])
More information about the Bf-blender-cvs
mailing list