Silverlight2 边学边练 之三 小球自由落体
终于看到动画章节了,本篇主要针对物体移动、变形和渐变移动进行练习。
完成小球自由落体慢镜实例,请大家多多拍砖,废话少说快快操练。
XAML Code:
<UserControl x:Class="FallingBall.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="400" Height="300"> <!--小球动画轨迹--> <UserControl.Resources> <!--创建Storyborad--> <Storyboard x:Name="fallDown" Storyboard.TargetName="ellipseFall"> <!--水平移动轨迹--> <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Canvas.Left)"> <!--下落水平移动--> <SplineDoubleKeyFrame KeyTime="0:0:5" Value="50"/> <!--弹起水平移动--> <SplineDoubleKeyFrame KeyTime="0:0:9" Value="100"/> </DoubleAnimationUsingKeyFrames> <!--垂直移动轨迹--> <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Canvas.Top)"> <!--下落垂直移动--> <SplineDoubleKeyFrame KeyTime="0:0:5" Value="250"/> <!--落地变形移动--> <SplineDoubleKeyFrame KeyTime="0:0:6" Value="255"/> <!--反弹变形移动--> <SplineDoubleKeyFrame KeyTime="0:0:7" Value="250"/> <!--反弹垂直移动--> <SplineDoubleKeyFrame KeyTime="0:0:9" Value="150"/> </DoubleAnimationUsingKeyFrames> <!--小球垂直变形--> <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Height"> <!--下落无变形--> <SplineDoubleKeyFrame KeyTime="0:0:5" Value="50"/> <!--压缩垂直变形--> <SplineDoubleKeyFrame KeyTime="0:0:6" Value="45"/> <!--反弹垂直变形--> <SplineDoubleKeyFrame KeyTime="0:0:7" Value="50"/> </DoubleAnimationUsingKeyFrames> <!--小球水平变形--> <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Width"> <!--下落无变形--> <SplineDoubleKeyFrame KeyTime="0:0:5" Value="50"/> <!--压缩水平变形--> <SplineDoubleKeyFrame KeyTime="0:0:6" Value="55"/> <!--反弹水平变形--> <SplineDoubleKeyFrame KeyTime="0:0:7" Value="50"/> </DoubleAnimationUsingKeyFrames> <!--光点移动轨迹--> <PointAnimationUsingKeyFrames Storyboard.TargetName="ellipseBrush" Storyboard.TargetProperty="GradientOrigin"> <!--落地光点移动--> <LinearPointKeyFrame KeyTime="0:0:5" Value="0.6,0.1"></LinearPointKeyFrame> <!--反弹光点移动--> <LinearPointKeyFrame KeyTime="0:0:9" Value="0.3,0.1"></LinearPointKeyFrame> </PointAnimationUsingKeyFrames> </Storyboard> </UserControl.Resources> <Grid x:Name="LayoutRoot" Background="White"> <Canvas> <!--创建小球--> <Ellipse x:Name="ellipseFall" Width="50" Height="50"> <Ellipse.Fill> <!--创建渐变产生光点效果--> <RadialGradientBrush x:Name="ellipseBrush" RadiusX="1" RadiusY="1" GradientOrigin="1,0.5"> <GradientStop Color="White" Offset="0"></GradientStop> <GradientStop Color="Blue" Offset="1"></GradientStop> </RadialGradientBrush> </Ellipse.Fill> </Ellipse> <!--创建地平线--> <Path Stroke="Black" Data="M0,300 L400,300 Z"/> </Canvas> </Grid> </UserControl>
C# Code:
namespace FallingBall { public partial class Page : UserControl { public Page() { InitializeComponent(); //开始动画 fallDown.Begin(); } } }
效果图:
参考自《Pro Silverlight2 in C# 2008》CHAPTER 9 ■ ANIMATION
下次要搞一个汽车人变形动画~~
转载于:https://blog.51cto.com/186067/1280744
Silverlight2 边学边练 之三 小球自由落体相关推荐
- html和css如何制作小球,[网页设计]使用CSS3动画模拟实现小球自由落体效果
[网页设计]使用CSS3动画模拟实现小球自由落体效果 0 2015-07-20 14:00:03 使用纯CSS代码模拟实现小球自由落体效果: html代码如下:1 2 CSS样式代码:/*ball样式 ...
- matlab 地形模拟程序,MATLAB模拟小球自由落体运动
大部分朋友学习MATLAB,需要一个学习示例用来参考,有一个比较经典的题目就是如何利用Matlab模拟小球自由落体运动,这可能会是你的某次课后作业,这个程序的编写过程可以分为三个步骤: 第一部分,设置 ...
- 第1关:小球自由落体运动-------C语言程序设计技术(循环结构程序设计1)
第1关:小球自由落体运动-------C语言程序设计技术(循环结构程序设计1) #include<stdio.h> #include<math.h>int main(void) ...
- 小球自由落体_自由落体瀑布
小球自由落体 2010 update: Lo, the Web Performance Advent Calendar hath moved 2010年更新: Lo, Web Performance ...
- 小球自由落体及碰撞反弹
目录 简述 构成 小球 按钮 运动轨迹 总结 简述 通过setInterval()定时刷新小球位置来完成小球运动状态,模拟自由落体加速度及碰撞反弹效果 构成 整体的物体很少,只有一个小球及一个开始按钮 ...
- matlab小球水平抛出,如何用Matlab制作小球自由落体运动的动画
第一堂课布置了一个Mission Impossible作业,要求学生们用Matlab制作一个动画,模拟小球的自由落体运动. 以下将整个任务的问题解决的过程分享如下: 步骤一,这是一个动画的制作过程,以 ...
- C++入门——仿真小球自由落体运动和抛物线运动
参考 <C和C++游戏趣味编程> 童真 仿真自由落体的小球 实现小球受重力影响加速下落后,碰到地面反弹的效果 代码如下: #include <graphics.h> #incl ...
- 自定义View之小球自由落体弹跳加载控件
本篇文章已授权微信公众号 guolin_blog(郭霖)独家发布 效果预览 因GIF图压缩的原因动画看起来有些不流畅. 应用为加载框的效果: 使用方法 XML: <com.example.ccy ...
- Silverlight2 边学边练 之五 视频
与前一篇类似,Silverlight2对于视频的操作也是通过MediaElement. 本篇通过VideoBrush对文字进行渲染处理,同时在倒影中使用视频翻转. 看到有的博友将Silverlight ...
最新文章
- python3精要(28)-filter
- java hive 查询语句,使用java连接hive,并执行hive语句详解
- 十大技巧优化Android App性能
- hex文件matlab处理,基于MATLAB生成Intel HEX文件
- 花2.9元买一包头绳,收到一张3元好评返现卡,我凌乱了……
- nb模块不能接收公网消息_物联网连接技术之NB-IOT无线技术介绍
- 阅读替换净化规则_强力推荐一个开源阅读软件
- Windows VS2017 编译 libssh2 1.7.0(执行命令、文件上传、下载)
- 周志华-深度森林(Deep Forest)
- 增强火山图,试一下?
- smartdrv.exe是什么(收藏)
- 移动互联网产品数据分析
- 研发流程中的产品测试
- 如何往linux虚拟机传文件,Windows中虚拟机Linux传输文件的两个简单的方法
- iphone 程购买实现
- centos 自动运行python脚本,centos配置 Python 定时任务
- 转载一篇关于颜色的英文名,算比较全的了!说不定以后用得上!
- redis数据库的主从、哨兵和cluster模式的实现原理与搭建详解(win10系统)
- c语言成绩管理系统教程,C语言学生成绩管理系统教程.doc
- SpringBoot之:SpringBoot中使用HATEOAS
热门文章
- 116-数学运算符更多的使用
- Linux:目录操作
- JavaScript案例三:动态显示时间
- JAVA Web day02--- Android小白的第二天学习笔记
- matlab中的方波信号图片_电气信息类专业课程之matlab系统仿真 第十章 DBPSK调制解调器(9)...
- pageinfo对合并list进行分页_Pagehelper不是特别好用。对list直接分页
- oss导出数据为空时怎么处理_数据库导出时有空表导不出的解决方法
- 【控制】《多无人机协同控制技术》周伟老师-第10章-多无人机协同目标跟踪飞行控制策略
- 1.4 Padding-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- UE if缩进问题(转)