- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
DoubleAnimation S4A = new DoubleAnimation();
S4A.To = koef4;
S4A.Duration = TimeSpan.FromSeconds(T);
Trans1.BeginAnimation(TranslateTransform3D.OffsetXProperty, S4A);
DoubleAnimation S4ACX = new DoubleAnimation();
S4ACX.Duration = TimeSpan.FromSeconds(T);
S4ACX.To = 0.4;
Kleshni1Trans.BeginAnimation(RotateTransform3D.CenterXProperty, S4ACX);//Корректировка центра вращения клешни
DoubleAnimation S5A = new DoubleAnimation();
S5A.To = koef5;
S5A.Duration = TimeSpan.FromSeconds(T);
Slider5.BeginAnimation(Slider.ValueProperty, S5A);//конец анимации робота
BoxRotate2Center.CenterX = -BoxMove.OffsetX;
BoxRotate2Center.CenterZ = -BoxMove.OffsetZ;
BoxRotate1Center.CenterZ = -1.2;
DoubleAnimation B1A = new DoubleAnimation();
B1A.BeginTime = TimeSpan.FromSeconds(T*(2/1.5));
B1A.To = 180+((180*Math.Asin(0.2/Math.Sqrt((1.2 - BoxMove.OffsetZ)*(1.2 - BoxMove.OffsetZ) + BoxMove.OffsetX*BoxMove.OffsetX)))/Math.PI)-(180*Math.Atan((BoxMove.OffsetX)/(-1.2+BoxMove.OffsetZ))/Math.PI);//Формула корректировки угла поворота коробки
B1A.Duration = TimeSpan.FromSeconds(T);
BoxRotate2.BeginAnimation(AxisAngleRotation3D.AngleProperty, B1A);//анимация вращения коробки
DoubleAnimation B2A = new DoubleAnimation();
B2A.BeginTime = TimeSpan.FromSeconds(T+T/4 +T * (2 / 1.5));
B2A.To = 90 + 180 * Math.Atan((BoxMove.OffsetX) / (-1.2 + BoxMove.OffsetZ)) / Math.PI;
B2A.Duration = TimeSpan.FromSeconds(T/4);
BoxRotate1.BeginAnimation(AxisAngleRotation3D.AngleProperty, B2A);
DoubleAnimation B3A = new DoubleAnimation();
B3A.BeginTime = TimeSpan.FromSeconds(T * (2 / 1.5));
B3A.To = 1;
B3A.AutoReverse = true;
B3A.Duration = TimeSpan.FromSeconds(T/1.5);
BoxLiftAndMove.BeginAnimation(TranslateTransform3D.OffsetYProperty, B3A);
DoubleAnimation B4A = new DoubleAnimation();
B4A.BeginTime = TimeSpan.FromSeconds(T+T * (2 / 1.5));
B4A.To = 3.75 - Math.Sqrt((1.2 - BoxMove.OffsetZ)*(1.2 - BoxMove.OffsetZ) + BoxMove.OffsetX*BoxMove.OffsetX);//формула для перемещения коробки вдоль оси Z
B4A.Duration = TimeSpan.FromSeconds(T/4);
BoxLiftAndMove.BeginAnimation(TranslateTransform3D.OffsetZProperty, B4A);//Анимация подъема и перемещения коробки
DoubleAnimation B1A2 = new DoubleAnimation();
B1A2.BeginTime = TimeSpan.FromSeconds(T * (2 / 1.5));
B1A2.To = 180;
B1A2.Duration = TimeSpan.FromSeconds(T);
DoubleAnimation B2A2 = new DoubleAnimation();
B2A2.BeginTime = TimeSpan.FromSeconds(T + T/4 + T * (2 / 1.5));
B2A2.To = 0;
B2A2.Duration = TimeSpan.FromSeconds(T/4);
DoubleAnimation B3A2 = new DoubleAnimation();
B3A2.BeginTime = TimeSpan.FromSeconds(T * (2 / 1.5));
B3A2.To = 0;
B3A2.AutoReverse = true;
B3A2.Duration = TimeSpan.FromSeconds(T / 1.5);
DoubleAnimation B4A2 = new DoubleAnimation();
B4A2.BeginTime = TimeSpan.FromSeconds(T+T * (2 / 1.5));
B4A2.To = -0.5;
B4A2.Duration = TimeSpan.FromSeconds(T/4);
Тут больше: http://www.cyberforum.ru/wpf-silverlight/thread789214.html
Парниша делает робота на С#.
o2n3e 22.02.2013 00:37 # −1
Lure Of Chaos 22.02.2013 02:09 # +1
o2n3e 23.02.2013 04:03 # −1
Кладя кучу говна на улицу, ты рано или подзно влезешь в говно, путсь не твоё. Ибо таких как ты всё больше - говна больше, шанс попасть на приличную поляну ~=0.
akaDElpher 25.02.2013 10:20 # 0
govnomonad 22.02.2013 05:40 # 0
akaDElpher 22.02.2013 12:04 # 0
А так, очень процедурно
scriptin 22.02.2013 18:56 # 0
taburetka 22.02.2013 18:12 # 0
eth0 22.02.2013 20:19 # +3
guest 05.03.2013 21:20 # −2