ensonpan3927 发表于 2006-12-4 15:56
[求助]c图形的动画问题
我的问题就是:怎样实现直线上两端的点同时相向运动啊?(假如那个点一个小圆)<BR>我们老师让我做一课程设计,里面就涉及到这个东西,想了很久都想不出来啊,各位帮一下忙啊,谢谢啦!
一笔苍穹 发表于 2006-12-4 17:31
水平运动就是Y轴不变X轴不断变动的过程,变成程序就可以是一个简单的for循环:<BR>for (x = 0; x < 320; x++)/*X递增循环*/<BR>{<BR>circle(x, y, r, color);<BR>}<BR><BR>另一只球则可以是:<BR>for (x = 639; x > 320; x--)/*X递减循环*/<BR>{<BR>circle(x, y, r, color);<BR>}<BR><BR>结合起来就是两只球相向运动了。<BR>另外由于不断的在下一个位置上画球,之前画的那些球全留在屏幕上了,导致看上去更像一根粗线,所以还要用背景色擦除原来画的球:<BR>circle(x, y, r, BG_color);<BR>关于circle函数的参数:x,y是圆的坐标;r是半径;最后一个是颜色。<BR>思路已经给你了,很简单的题。
ensonpan3927 发表于 2006-12-4 18:37
<P>非常感谢斑竹,好人啊!斑竹说的“结合起来就是两只球相向运动了。”是怎样结合啊?是循环的嵌套吗?</P>
mayudong1 发表于 2006-12-4 20:30
for (x = 0; x < 320; x++)<BR>{<BR>circle(x, y, r, color);<BR>circle(639-x,y,r,color);<BR>}<BR><BR>这样就行了吧<BR><BR>至于出现线的问题在每次画之前用背景色重画一遍就可以了
ensonpan3927 发表于 2006-12-4 23:00
<P>问题解决了,太感谢两位了!感激啊!</P>
页:
[1]