17python

“编学编玩”用Pygame编写游戏(5)pygame绘制一个钟表

游戏中绘制圆及圆形的轨迹需求还是不少的,而且很多地方都需要用到圆及弧度的理论,如果想做些游戏的话,必须熟练掌握这些基本知识。

一些知识点

  • radius 圆的半径
  • diameter 圆的直径
  • angle 角度
  • 一个圆的完整的弧度 PI*2=6.28
  • 1弧度的角度值为 360/6.28=57.3248
  • 1度的弧度值为 6.28/360=0.0174
  • math.degrees(x)将角度x从弧度转换为度。
  • math.radians(x)将角度x从度转换为弧度。
  • math.sin(x)返回x弧度的正弦值。
  • math.cos(x)返回x弧度的余弦值。

圆周上点的坐标

x = math.cos(math.radians(angle)) * (radius)
y = math.sin(math.radians(angle)) * (radius)

如果不想深入了解的话,只需要记住,我们需要角度,即可求得圆周上的坐标值,对就上边的函数解释应该可以理解上边的python语句的含意。

实例

没有比绘制一个表盘更贴近实际需求的例子了,通过pythondatetime函数,我们可以很方便的获得时间,然后转换成相关数据。

以下为游戏效果图,建议下载相关代码跑一下,有问题可以留言给我。

本文源码下载

请git clone 下所有代码,以免造成游戏跑不起来的情况。本例源文件pygame05.py

相关标签
About Me
py_sky
你那么喜欢看“干货”,是因为你根本不想下什么功夫;你自以为的极限,其实只是别人的起点。
Category
标签云
站点统计

本站现有博文82篇,共被浏览37196

据官网介绍,2020年4月Python2.7将不会被维护!距离Python2.7停止维护还有665天!

热门文章
文章归档
回到顶部