0

I am having assignment from which i want to rotate a ball exist in ellipse recursively when application load and remain rotating till it close... but i have no idea to do so.. anyone please help me .. thanks in advance .. My code in Xaml is ...

  <Window Loaded="StartGame" x:Class="PaddingBall.Window1"
          xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
          xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
          Height="500" Width="700" Background="White" Name="playground" ResizeMode="NoResize"       
           WindowStartupLocation="CenterScreen" SizeToContent="WidthAndHeight">
      <Canvas Width="700" Height="500">

       <Grid Height="462" Width="700" Canvas.Top="-18">
          <Grid.ColumnDefinitions>
              <ColumnDefinition Width="700*" />
              <ColumnDefinition Width="0*" />
              <ColumnDefinition Width="0*" />
          </Grid.ColumnDefinitions>
              <Ellipse Margin="108,88,0,0" Name="ball" Stroke="Black" Height="29"                                                             
                  VerticalAlignment="Top" Stretch="UniformToFill" HorizontalAlignment="Left"            
                   Width="28" RenderTransformOrigin="0.5,0.5">
                     <Ellipse.RenderTransform>
                         <TransformGroup>
                           <ScaleTransform/>
                     <SkewTransform/>
                  <RotateTransform Angle="2735.771"/>
                <TranslateTransform/>
              </TransformGroup>
             </Ellipse.RenderTransform>
                 <Ellipse.Fill>
                   <ImageBrush ImageSource="C:\Users\A TECH\Desktop\project\2.jpg"/>
                 </Ellipse.Fill>
            <Ellipse.BitmapEffect>
                 <BevelBitmapEffect BevelWidth="1" />
            </Ellipse.BitmapEffect>
               <Ellipse.BitmapEffectInput>
                   <BitmapEffectInput />
               </Ellipse.BitmapEffectInput>
         </Ellipse>
        <Rectangle Height="13" Margin="200,390,0,0" Name="pad" Stroke="Black"  
             VerticalAlignment="Bottom" Fill="Black" HorizontalAlignment="Left" Width="100" />
    </Grid>
</Canvas>

1
  • You should check out Storyboards Commented Nov 28, 2013 at 18:06

1 Answer 1

1

This will for sure turn your ellipse for ever:

<Window x:Class="WpfApplication3.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <Storyboard x:Key="Storyboard1">
            <DoubleAnimationUsingKeyFrames RepeatBehavior="Forever" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" Storyboard.TargetName="ball">
                <EasingDoubleKeyFrame KeyTime="0" Value="0"/>
                <EasingDoubleKeyFrame KeyTime="0:0:1" Value="360"/>
            </DoubleAnimationUsingKeyFrames>
        </Storyboard>
    </Window.Resources>
    <Window.Triggers>
        <EventTrigger RoutedEvent="FrameworkElement.Loaded">
            <BeginStoryboard Storyboard="{StaticResource Storyboard1}"/>
        </EventTrigger>
    </Window.Triggers>
    <Grid>
         <Canvas Width="700" Height="500">

        <Grid Height="462" Width="700" Canvas.Top="-18">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="700*" />
                <ColumnDefinition Width="0*" />
                <ColumnDefinition Width="0*" />
            </Grid.ColumnDefinitions>
            <Ellipse Margin="108,88,0,0" Name="ball" Stroke="Black" Height="129"                                                             
                  VerticalAlignment="Top" Stretch="UniformToFill" HorizontalAlignment="Left"            
                   Width="128" RenderTransformOrigin="0.5,0.5">
                <Ellipse.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform/>
                        <SkewTransform/>
                        <RotateTransform />
                        <TranslateTransform/>
                    </TransformGroup>
                </Ellipse.RenderTransform>
                <Ellipse.Fill>
                    <ImageBrush ImageSource="C:\Users\A TECH\Desktop\project\2.jpg"/>
                </Ellipse.Fill>
                <Ellipse.BitmapEffect>
                    <BevelBitmapEffect BevelWidth="1" />
                </Ellipse.BitmapEffect>
                <Ellipse.BitmapEffectInput>
                    <BitmapEffectInput />
                </Ellipse.BitmapEffectInput>
            </Ellipse>
            <Rectangle Height="13" Margin="200,390,0,0" Name="pad" Stroke="Black"  
             VerticalAlignment="Bottom" Fill="Black" HorizontalAlignment="Left" Width="100" />

        </Grid>
    </Canvas>
    </Grid>
</Window>
Sign up to request clarification or add additional context in comments.

1 Comment

@emedo Yup its really help me alot ..:)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.