У меня есть ModelVisual3D куба, и я хочу анимировать его, чтобы он вращался вокруг своей оси на 360 градусов. Я делаю RoationTransform3D, который я говорю, чтобы повернуть на 360, но он не вращается вообще, даже если вы скажете 270 градусов, он поворачивается только на 90 градусов, но в противоположном направлении. Я думаю, он вычисляет «кратчайший путь» вращения. Лучшее решение, которое я придумала, - сделать один анимационный поворот на 180, а после его завершения вызвать еще 180, чтобы завершить полный оборот. Есть ли способ сделать это в одной анимации?
RotateTransform3D rotateTransform = new RotateTransform3D();
myCube.Model.Transform = rotateTransform;
AxisAngleRotation3D rotateAxis =
new AxisAngleRotation3D(new Vector3D(0, 1, 0), 180/*or 360*/);
Rotation3DAnimation rotateAnimation =
new Rotation3DAnimation(rotateAxis, TimeSpan.FromSeconds(2));
rotateTransform.BeginAnimation(RotateTransform3D.RotationProperty,
rotateAnimation);