编程语言-课件-22-24课.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二十二课,时钟 1,本节课任务是写完时钟程序的代码和讲明白findPointOnCircle函数,写不完可以下节课多给20分钟。 2,讲解findPointOnCircle()函数 这个函数的作用就是找点,里面共四个参数:圆心的x方向坐标,圆心的y方向坐标,半径,角度。 坐标系圆心就是圆的圆心,所求点咋求呢,圆心坐标你是知道了,半径你是知道的,角度你知道了,用圆心x方向坐标+半径*sin角度(图上标的两个角相等),所求点x方向的坐标你就知道了,y方向坐标用圆心坐标+半径*cos角度即可,所求点的x方向和y方向的坐标值我们就都知道了,用round函数算出最接近的整数,round(x,0)嘛,后面那个0就是保存位数比如: 咱们用到的是四舍五入保存成整数位就可以了,int()取整即可。咱们利用的这个三角形是直角三角形,传参数的时候math.sin()等是需要弧度作为传递参数的,我们用math.radians()函数来转化角度为弧度。return(x,y)就是这个函数最终求得的坐标,是个返回值。比如咱们后面程序用到的minHandX和minHandY的值就是靠咱们得到的返回值x和y。 半径有长有短,所以咱们看到的时针,分针,秒针长短不一。 第二十三课,时钟(讲解) 1, 程序思路 定义一个findPointOnCircle()函数,作用是找点。 从whileTrue循环开始讲解这个时钟是咋写出来的。咱们做时钟需要利用到datetime.datetime.now()这个函数,这就是我们为什么开头要导入那么多库的原因。注意:这俩datetime不一样,前面的是导入这个库,后面是用的datetime.now()这个函数,利用这个就可以知道了现在的时间。时针的时候要注意下,比如咱们现在晚上7点了,但是咱们一天是24小时,也就是19点,表盘里没有19点,只会显示7点,也就解释了为什么我们要算出时间里的小时数。分针和秒针就没有变化了。 接下来我们要画时针,分针,秒针在表盘里运动。举例时针:先算出时针转了多少角度:360/12=30度,表盘里12个数字,相邻之间的角度是30度,比如3-4之间就是30度,2-9之间就是210度,0-11之间就是330度等等。比如现在是7小时,算出就是210度。我们画时针需要两个点,一个是圆心,另一个点我们要根据之前写的函数能找到时针的另一个点。最后mcdrawing.drawLine函数需要知道两个点和方块种类,使用这个函数就能画出时钟的时针了。分针秒针以此类推。分针一格6度,秒针一格也是6度。 接下来1秒延时,如果我们程序到此为止了,我们的表盘会被写满,因为从开始到现在的所有直线都会被充满在表盘上,所以我们需要清除之前时刻的针。 程序是循环的,我们只要清除前时刻的时针分针秒针即可,把前时刻的时针分针秒针设置为空气块即可。 第二十四课, 金字塔 1, 这节课任务是写代码24-25_1MinecraftPyramids,复习findPointOnCircle()函数。 这个讲解要分两节课讲,金字塔思路: range(0,4)就是【0,1,2,3】嘛,side=0的时候第一个点的坐标就是360/4*=0°,下面的pointX,pointZ根据之前算出的角度0°,半径,圆心坐标算出第一个点的坐标。第二个点坐标计算:360/4*(0+1)=90°,算出第二个点的坐标。 新建一个空列表,把点1和点2,点3的坐标放到这个列表里,这个金字塔就画出了。 这个图是第一个循环的时候,各个点。 这个图是第二次循环的时候各个点,此时side=1. 这个图是第三次循环时候各个点。 这个图是第四次循环的时候的各个点。

文档评论(0)

女帝 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档