hallo,
I've got :
2 animations: Rotation3DAnimation, OffsetAnimation(Vector3DAnimation).
2 Transforms: RotateTransform3D, OffsetTransform3D
1 TransformGroup: Transform3DGroup
1 Model3DGroup: my3DGroup
From the animations I create their respective clocks and add the appropriate
clock to each of the transform like this :
RotateTransform3D.GetAnimationClocks(RotateTransform3D.RotationProperty).Add(RotationAnimationClock)
OffsetTransform3D.GetAnimationClocks(TranslateTransform3D.OffsetProperty).Add(OffsetAnimationClock)
What my ultimate goal is is to animate the 3D plane from one position to the
next and having both animations, described above, run concurrently without
any wierd results. What I mean by wierd is this:
Let's say the rotation animation has a center property equal to the plane's
center. So when animating the plane by rotation it should rotate around it's
center. Now, if I were to offset animate and rotate animate at the same time
by initializing their clocks straight after each other, then the plane
offsets to a different location because it's trying to rotate around the
specified center (which seemingly changes due to the plane's position as it
offsets) The Original center value doesn't change. So when the plane
animates, Instead of moving straight to the destination offset value and at
the same time rotating around it's own axis, it rotates around the original
center value and offsets to a different location - it follows an arc-like
path instead of straight to the destination. So in effect, it misses the
destination but rotates to the correct angle.
The only way to fix this would be to use paralleltimelines (which I cannot
manage to implement in code - tried everything).
any hints on this would really be well appreciated.
Thanks
regards
Nathanael
|