【转】Itween 贝塞尔曲线(一)
原地址:点击打开链接
1.回调函数
回调函数,即当动画完成时那瞬间需要执行一次的一个函数,it中默认有一个onComplete函数,当动画完成时会自动执行,且你可以提供需要传递的一些参数。见如下代码:
- private var tweenTarget : GameObject;
- var counter : GUIText;
- var count : int =0;
- function Start(){
- tweenTarget=gameObject;
- roll("right");//开始执行
- counter.guiText.material.color = Color.black;
- }
- private function roll(direction: String): void{
- switch(direction){
- //如果向右移
- case "right":
- iTween.rotateBy(tweenTarget,{"z":-.5});//旋转
- iTween.moveTo(tweenTarget,{"x":1.7, "onComplete":"roll","onCompleteParams":"left"});//移动到 当完成动画时执行onComplete 并且传递一个参数left
- //也即相当于又这样调用了一次roll("left"); 可以推测到 当动画完成向右之后 又开始向左了
- count+=1;
- break;
- //如果向左移 同上 当完成向左动画 则又开始向右 如此实现"乒乓"效果
- case "left":
- iTween.rotateBy(tweenTarget,{"z":1});
- iTween.moveTo(tweenTarget,{"x":-1.7, "onComplete":"roll","onCompleteParams":"right"});
- count+=1;
- break;
- }
- counter.text=count.ToString() + " Loops";
- }
复制代码
2.Bezier贝塞尔曲线运动
除了普通的线性运动 如MoveTo这些函数 it也支持曲线运动 其中一种常用的曲线就是bezier
在it中如何使用曲线:
- function Start()
- {
- iTween.moveToBezier(gameObject,{"time":3, "transition":"easeInOutQuint","bezier":[Vector3(0,1.5,0), Vector3(0,0,1.5), Vector3(0,-1.5,3), Vector3(1.5,0,3),Vector3(1.5,0,0), Vector3(-1.5,0,0)]});
- }
复制代码
可以看到,让物体跟随曲线运动。第一个参数指定当前物体运动,接下来是过渡方式:easeInOut 是一种起点和终点平滑过渡的方式。
共指定了6个向量点,需要记住参数是成双的即每个定点需要匹配一个控制点,才能定义好这条曲线。上面共有3个顶点,加3个这些定点的控制点。
【转】Itween 贝塞尔曲线(一)的更多相关文章
- canvas贝塞尔曲线
贝塞尔曲线 Bézier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线. 曲线定义:起始点.终止点.控制点.通过调整控制点,贝塞尔曲线的形状会发生变化. 1962年,法国数学家Pierr ...
- 贝塞尔曲线(UIBezierPath)属性、方法汇总
UIBezierPath主要用来绘制矢量图形,它是基于Core Graphics对CGPathRef数据类型和path绘图属性的一个封装,所以是需要图形上下文的(CGContextRef),所以一般U ...
- 深度掌握SVG路径path的贝塞尔曲线指令
一.数字.公式.函数.变量,哦,NO! 又又一次说起贝塞尔曲线(英语:Bézier curve,维基百科详尽中文释义戳这里),我最近在尝试实现复杂的矢量图形动画,发现对贝塞尔曲线的理解馒头那么厚,是完 ...
- 贝塞尔曲线(cubic bezier)
对于css3的Transitions,网上很多介绍,相信大家都比较了解,这里用最简单的方式介绍下: transition语法:transition:<transition-property> ...
- iOS开发之画图板(贝塞尔曲线)
贝塞尔曲线,听着挺牛气一词,不过下面我们在做画图板的时候就用到贝塞尔绘直线,没用到绘制曲线的功能.如果会点PS的小伙伴会对贝塞尔曲线有更直观的理解.这篇博文的重点不在于如何用使用贝塞尔曲线,而是利用贝 ...
- 用html5的canvas画布绘制贝塞尔曲线
查看效果:http://keleyi.com/keleyi/phtml/html5/7.htm 完整代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHT ...
- 二次、三次贝塞尔曲线demo(演示+获取坐标点)
二次贝塞尔曲线demo: See the Pen quadraticCurveDemo by hanyanjun (@hanyanjun) on CodePen. 我的demo地址(二次) 推荐点击以 ...
- 【转~】初识贝塞尔曲线(Bézier curve)
本文图文大多转自http://www.html-js.com/article/1628 QAQ我居然去扒维基,,,看不懂啊,,,我要去补数学,,, 在做变形小鸡的时候用到CSS3 transition ...
- canvas绘制二次贝塞尔曲线----演示二次贝塞尔四个参数的作用
canvas中绘制二次贝塞尔曲线的方法为ctx.quadraticCurveTo(x1,y1,x2,y2); 四个参数分别为两个控制点的坐标.开始点即当前canvas中目前的点,如果想从指定的点开始, ...
随机推荐
- 曲率(Curvature)
原文链接 几何体的曲率对于不同的对象有不同的定义.首先来看最简单的平面曲线. 首先把曲线分成无穷小的小段,每一段看作某个圆的一小段圆弧.这个圆叫做“密切圆”(Osculating Circle).由于 ...
- (转载)git常用命令
创建和使用git ssh key 首先设置git的user name和email: git config --global user.name "xxx" git config - ...
- js 动态创建标记
innerHTML:一旦使用了这个属性,它的全部内容都要被替换掉.且不会返回任何对刚插入的内容的引用 与document.write()方法一样,innerHTML属性也是HTML专有属性,不能用于任 ...
- Python爬虫,看看我最近博客都写了啥,带你制作高逼格的数据聚合云图
转载请标明出处: http://blog.csdn.net/forezp/article/details/70198541 本文出自方志朋的博客 今天一时兴起,想用python爬爬自己的博客,通过数据 ...
- CBCGPImage的GetSize的问题及解决方法
BCGControlBar Pro for MFC 25.10是目前(2018-07-16)网上能够找到的最新能够使用的版本,我配合Visual Studio 2010使用.在单文档MFC程序的视图中 ...
- Mybatis基础进阶学习2
Mybatis基础进阶学习2 1.测试基本结构 2.三个POJO package com.pojo; import java.io.Serializable; import java.util.Dat ...
- $.each() 循环遍历完后阻止再执行的办法
jquery each循环遍历完再执行的方法 因为each是异步的 所以要加计数器. query each循环遍历完再执行的方法 因为each是异步的 所以要加计数器.var eachcount=0; ...
- rsync+lsyncd实现实时同步
1.接收端安装rsync,修改/etc/rsyncd.conf配置文件,然后启动服务. uid = rootgid = rootuse chroot = nomax connection = 4sec ...
- 2.1 <script>元素【JavaScript高级程序设计第三版】
向 HTML 页面中插入 JavaScript 的主要方法,就是使用<script>元素.这个元素由 Netscape 创造并在 Netscape Navigator 2 中首先实现.后来 ...
- anaconda+jupyter notebook 安装配置
安装Anaconda 从清华大学开源软件镜像站选择合适自己的版本 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda ...