怎么让一张图片像球一样滚进屏幕

子弹兔儿 发布于 2015/05/12 13:58
阅读 209
收藏 0

点击app,打开一个界面,然后圆形图片(比如仪表盘)像球一样滚进来,如何实现呢?

用动画TranslateAnimation+RotateAnimation 能实现吗?试了好像不行。

加载中
0
8
870177103
f(x)=x0+rcosa1 x=x0+rcosa0 r=√[(x-x0)^2+(y-y0)^2] a1-a0=a 其中已知量 x0y0为中心坐标,a为旋转角度,xy为原坐标 f(x)=x0+rcos[a+acos(x-x0)/r] f(x)=x0+rcosa*((x-x0)/r)-rsina*√[1-((x-x0)/r)^2] f(x)=x0+(x-x0)cosa-(y-y0)sina f(y)=y0+(x-x0)cosa+(y-y0)sina 这就是点阵图片的旋转公式 没有代码的话可以自己写一个嘛 将x0y0a用关于时间的表达式替换 就得到最终结果了
子弹兔儿
看来来好复杂啊。。。没看懂。。而且点阵图形是说一个数组里保存图片的颜色信息,这公式能用于此?
0
8
870177103
嘛,这就是(x,y)绕(x0,y0)旋转a度后的坐标为(f(x),f(y))的意思,前面是推导过程,后面两条是公式,如果还是写不出来,给个接口我写写看
0
8
870177103
比如说这样的 void drawFrame (Canvas canvas ,int time ,int begintime ,int endtime ,Point begin ,Point end ,Bitmap bitmap) ; 好久没写安卓了,具体信息要看你给哪些了
子弹兔儿
不好意思,这么晚才回复你。你看我这想法行不行:用matrix,然后重写onDraw,开一个线程,matrix旋转和平移,然后在onDraw里绘制bmp。。 如果按你那个写的话,只能麻烦你写一个例程出来看下咯。。。
0
子弹兔儿

有答案了,用动画RotateAnimation+TranslateAnimation能实现,当然matrix也能行。@870177103的方法看来很不错,下次看能不能用上哈。谢谢~~~

返回顶部
顶部