Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2008-04-28 08:46:28 +0400
committerJoshua Leung <aligorith@gmail.com>2008-04-28 08:46:28 +0400
commit5b691071cf95041d869610081d32f9761bd02c94 (patch)
tree63e0436d741d7aa359645b09dc66fab8f03c28bb /source/blender/src/transform_conversions.c
parent961d8c5cd41292b45501f583bf343308476f338c (diff)
Assorted tidy-ups for keyframing (including auto-keying), while trying to track down a bug.
Diffstat (limited to 'source/blender/src/transform_conversions.c')
-rw-r--r--source/blender/src/transform_conversions.c84
1 files changed, 44 insertions, 40 deletions
diff --git a/source/blender/src/transform_conversions.c b/source/blender/src/transform_conversions.c
index 46a7c13b752..f3fec3cfec7 100644
--- a/source/blender/src/transform_conversions.c
+++ b/source/blender/src/transform_conversions.c
@@ -3188,7 +3188,7 @@ void autokeyframe_ob_cb_func(Object *ob, int tmode)
actname= "Object";
if (IS_AUTOKEY_FLAG(INSERTAVAIL)) {
- if (ob->ipo || ob->action) {
+ if ((ob->ipo) || (ob->action)) {
ID *id= (ID *)(ob);
if (ob->ipo) {
@@ -3215,6 +3215,7 @@ void autokeyframe_ob_cb_func(Object *ob, int tmode)
}
}
else if (IS_AUTOKEY_FLAG(INSERTNEEDED)) {
+ ID *id= (ID *)(ob);
short doLoc=0, doRot=0, doScale=0;
/* filter the conditions when this happens (assume that curarea->spacetype==SPACE_VIE3D) */
@@ -3245,33 +3246,35 @@ void autokeyframe_ob_cb_func(Object *ob, int tmode)
}
if (doLoc) {
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_LOC_X);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_LOC_Y);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_LOC_Z);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_LOC_X);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_LOC_Y);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_LOC_Z);
}
if (doRot) {
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_ROT_X);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_ROT_Y);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_ROT_Z);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_ROT_X);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_ROT_Y);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_ROT_Z);
}
if (doScale) {
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_SIZE_X);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_SIZE_Y);
- insertkey_smarter(&ob->id, ID_OB, actname, NULL, OB_SIZE_Z);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_SIZE_X);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_SIZE_Y);
+ insertkey_smarter(id, ID_OB, actname, NULL, OB_SIZE_Z);
}
}
else {
- insertkey(&ob->id, ID_OB, actname, NULL, OB_LOC_X, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_LOC_Y, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_LOC_Z, 0);
+ ID *id= (ID *)(ob);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_ROT_X, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_ROT_Y, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_ROT_Z, 0);
-
- insertkey(&ob->id, ID_OB, actname, NULL, OB_SIZE_X, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_SIZE_Y, 0);
- insertkey(&ob->id, ID_OB, actname, NULL, OB_SIZE_Z, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_LOC_X, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_LOC_Y, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_LOC_Z, 0);
+
+ insertkey(id, ID_OB, actname, NULL, OB_ROT_X, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_ROT_Y, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_ROT_Z, 0);
+
+ insertkey(id, ID_OB, actname, NULL, OB_SIZE_X, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_SIZE_Y, 0);
+ insertkey(id, ID_OB, actname, NULL, OB_SIZE_Z, 0);
}
remake_object_ipos(ob);
@@ -3286,6 +3289,7 @@ void autokeyframe_ob_cb_func(Object *ob, int tmode)
*/
void autokeyframe_pose_cb_func(Object *ob, int tmode, short targetless_ik)
{
+ ID *id= (ID *)(ob);
bArmature *arm= ob->data;
bAction *act;
bPose *pose;
@@ -3348,36 +3352,36 @@ void autokeyframe_pose_cb_func(Object *ob, int tmode, short targetless_ik)
}
if (doLoc) {
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_X);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_Y);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_Z);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_LOC_X);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_LOC_Y);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_LOC_Z);
}
if (doRot) {
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_W);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_X);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_Y);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_Z);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_QUAT_W);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_QUAT_X);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_QUAT_Y);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_QUAT_Z);
}
if (doScale) {
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_X);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_Y);
- insertkey_smarter(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_Z);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_SIZE_X);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_SIZE_Y);
+ insertkey_smarter(id, ID_PO, pchan->name, NULL, AC_SIZE_Z);
}
}
/* insert keyframe in any channel that's appropriate */
else {
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_X, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_Y, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_SIZE_Z, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_SIZE_X, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_SIZE_Y, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_SIZE_Z, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_W, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_X, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_Y, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_QUAT_Z, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_QUAT_W, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_QUAT_X, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_QUAT_Y, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_QUAT_Z, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_X, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_Y, 0);
- insertkey(&ob->id, ID_PO, pchan->name, NULL, AC_LOC_Z, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_LOC_X, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_LOC_Y, 0);
+ insertkey(id, ID_PO, pchan->name, NULL, AC_LOC_Z, 0);
}
}
}