加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

coco2dx 学习笔记 -- 进度动画 ccProgressTimer ccProgressTo cc

发布时间:2020-12-14 21:13:40 所属栏目:百科 来源:网络整理
导读:ccProgressTimer 是进度条类,代表了一个进度条,进度条,分两种,一种是条形的进度条,一种是圆形的进度条。 ccProgressTo 是进度动画类,从零播放到指定的进度 ccProgressFromTo 是进度动画类,可以设定进度播放的起点和终点。 播放一个进度动画的标准代码

ccProgressTimer 是进度条类,代表了一个进度条,进度条,分两种,一种是条形的进度条,一种是圆形的进度条。

ccProgressTo 是进度动画类,从零播放到指定的进度

ccProgressFromTo 是进度动画类,可以设定进度播放的起点和终点。


播放一个进度动画的标准代码:

	CCSprite *pSpr = CCSprite::create( "bar.png" );
	CCProgressTimer *pProgress = CCProgressTimer::create( pSpr );
	pProgress->setType( kCCProgressTimerTypeBar );
	pProgress->setPosition( m_VisibleRect.size.width/2,m_VisibleRect.size.height/2 );
	pProgress->setMidpoint( ccp( 0.0f,0.0f ) );
	pProgress->setBarChangeRate( ccp( 1.0f,0.0f ) );
	CCProgressTo *to = CCProgressTo::create( 2.0f,100.0f );
	addChild( pProgress,999,111 );
	pProgress->runAction( CCRepeatForever::create( to ) );


setMidPoint,设置中点位置。

说明:进度条内部的实现方式,是每次更新时,分别计算中点左边和终点右边部分的坐标(各占进度的一半)。

所以,当中点设置在(0,0)的时候,进度条是自左向右的。

当中点设置在(1,0)的时候,进度条是自右向左的。

当中点设置在0和1之间的时候,进度条会呈现出想左右扩展的效果。

以上是,x坐标改变时的情况。 y坐标改变时,也是同理。


setBarChangeRate, 设置进度条改变参数,取值【0-1】。

这个参数,这个参数控制进度条改变的速率,还控制进度条从百分之多少的位置开始变化(其实是1.0 - 参数)。(这样的设置是为了平衡进度条的改变速率)


具体进度条更新的公式为,

1.0 - BarChangeRate + percentage*BaseChangeRate

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读