2012-07-15 3 views
0

이것은 C# Microsoft Visual Studio Windows Phone의 코드입니다. 내 응용 프로그램은 "병을 SP다"에 관한 모든 것입니다. 불행히도 빠르게 회전하지만 속도가 느려지지 않습니다. 멈추는 동안 거의 멈추고 멈 춥니 다. 누구든지 pls 수 있습니다. 도와주세요? 이 응용 프로그램에 빠른 속도에서 느린 속도로 멈출 때까지 병이 실제로 움직이는 방법은 무엇입니까?C# windows phone에서 슬로우 모션 중지 방법?

Random random = new Random(); //Declare random 
int randomNumber = random.Next(7201, 7560); 
Duration Time_duration = new Duration(TimeSpan.FromSeconds(2)); 
Storyboard MyStory = new Storyboard(); 
MyStory.Duration = Time_duration; 
DoubleAnimation My_Double = new DoubleAnimation(); 
My_Double.Duration = Time_duration; 
MyStory.Children.Add(My_Double); 
RotateTransform MyTransform = new RotateTransform(); 
Storyboard.SetTarget(My_Double, MyTransform); 
Storyboard.SetTargetProperty(My_Double, new PropertyPath("Angle")); 
My_Double.To = randomNumber; 
image1.RenderTransform = MyTransform; 
image1.RenderTransformOrigin = new Point(0.5, 0.5); 
MyStory.Begin(); 
+0

Expression Blend를 사용하면 XAML에서 쉽게 액세스 할 수 있습니다. 몇 달 동안 무료 평가판을 사용해 볼 수 있습니다. 아래에 코드 솔루션을 게시하겠습니다. – cunningdave

답변

0

애니메이션의 이징 기능을 변경하려고합니다. 다음 예는 다음과 같습니다

<Storyboard x:Name="SpinBoxStory"> 
     <DoubleAnimation Duration="0:0:2" To="1375.909" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.Rotation)" Storyboard.TargetName="rectangle" d:IsOptimized="True"> 
      <DoubleAnimation.EasingFunction> 
       <QuarticEase EasingMode="EaseOut"/> 
      </DoubleAnimation.EasingFunction> 
     </DoubleAnimation> 
    </Storyboard> 

Easing Functions are described here.

내가 병 회전에 유사한 특성을 가지고 인해 지상 마찰 둔화 것 하나를 골랐다.

예를 들어, 새로운 QuarticEase를 만들고 My_Double 애니메이션에 할당하기 만하면됩니다.

관련 문제