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>2007-07-25 15:38:50 +0400
committerJoshua Leung <aligorith@gmail.com>2007-07-25 15:38:50 +0400
commit87402dbcbd4b26544f8f664413f7ae57c78db5d0 (patch)
tree78ee86e67eda96c5dbf69d0da536e9041aef7afe
parent17533e534fab0de8250348c25c5d84bab4b40c48 (diff)
Transform - Objects with Old-Tracking:
Tracking is now tempolarily disabled while an object matrix used for space conversions stuff is calculated. This used to be done before the constraints recode.
-rwxr-xr-xsource/blender/src/transform_conversions.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/source/blender/src/transform_conversions.c b/source/blender/src/transform_conversions.c
index 6972cda739b..d15f9d7494f 100755
--- a/source/blender/src/transform_conversions.c
+++ b/source/blender/src/transform_conversions.c
@@ -2092,13 +2092,26 @@ static short constraints_list_needinv(ListBase *list)
/* transcribe given object into TransData for Transforming */
static void ObjectToTransData(TransData *td, Object *ob)
{
+ Object *track;
float obmtx[3][3];
/* axismtx has the real orientation */
Mat3CpyMat4(td->axismtx, ob->obmat);
Mat3Ortho(td->axismtx);
- where_is_object(ob);
+ /* hack: tempolarily disable tracking when getting object matrix,
+ * to stop it from screwing up space conversion matrix later
+ */
+ if (ob->track) {
+ track= ob->track;
+ ob->track= NULL;
+
+ where_is_object(ob);
+
+ ob->track= track;
+ }
+ else
+ where_is_object(ob);
td->ob = ob;