python绘制铅球的运行轨迹代码分享


Posted in Python onNovember 14, 2017

我们按照面向过程程序设计的思想,使用python编写了程序,追踪铅球在运行过程中的位置信息。下面,修改程序代码,导入turtle模块,将铅球的运行轨迹绘制出来。

python3代码如下:

from math
import pi, sin, cos, radians
from turtle
import Turtle
def main():
  angle = eval(input('Enter the launch angle(in degrees):'))
vel = eval(input('Enter the initial velocity(in meters/sec):'))
h0 = eval(input('Enter the initial height(in meters):'))
time = eval(input('Enter the time interval:'))# 设置铅球的起始位置
xpos = 0
ypos = h0
theta = radians(angle)# 将输入的角度值转换为弧度值
xvel = vel * cos(theta)# 铅球的初始速度在x轴上的分量
yvel = vel * sin(theta)# 铅球的初始速度在y轴上的分量# 创建Turtle对象, 刚创建的小乌龟对象, 位于坐标原点( 0, 0), 朝向x轴正方向
t = Turtle()
t.color('red')# 设置画笔的颜色
t.pensize(2)# 线条粗细
t.speed(2)# 调整速度
t.hideturtle()# 隐藏小乌龟# 绘制x轴和y轴
t.forward(350)# 绘制x轴
t.goto(0, 0)# 回到坐标原点, 准备绘制y轴
t.goto(0, 200)# 绘制y轴
print('the position:({0:.3f},{1:0.3f})'.format(xpos, ypos))
xScale = 25# x坐标放大倍数
yScale = 30# y坐标放大倍数# 画笔移到铅球的起始位置, 准备绘制铅球的运行轨迹
t.goto(xpos * xScale, ypos * yScale)# 通过while循环绘制铅球的运行轨迹, 每隔time秒, 取一个点, 将所有取到的点连起来
while ypos >= 0:
  xpos = xpos + time * xvel
yvel1 = yvel - time * 9.8
ypos = ypos + time * (yvel + yvel1) / 2.0
yvel = yvel1
print('the position:({0:.3f},{1:0.3f})'.format(xpos, ypos))
t.goto(xpos * xScale, ypos * yScale)
print('\nDistance traveled:{0:0.1f} meters.'.format(xpos))
if __name__ == '__main__':
  main()

运行程序,输入输出如下:

python绘制铅球的运行轨迹代码分享

python绘制铅球的运行轨迹代码分享

python绘制铅球的运行轨迹代码分享

绘制的铅球运行轨迹,如下:

python绘制铅球的运行轨迹代码分享

总结

有关turtle模块的使用,后面还会向大家专门介绍,这里暂不赘述。

以上就是本文关于python绘制铅球的运行轨迹代码分享的全部内容,希望对大家有所帮助。感兴趣的朋友可以参阅本站:

如有不足之处,欢迎留言指出。

Python 相关文章推荐
python自动格式化json文件的方法
Mar 11 Python
Python实现图像几何变换
Jul 06 Python
在Django框架中运行Python应用全攻略
Jul 17 Python
在Django中进行用户注册和邮箱验证的方法
May 09 Python
使用11行Python代码盗取了室友的U盘内容
Oct 23 Python
python实现生成字符串大小写字母和数字的各种组合
Jan 01 Python
python的列表List求均值和中位数实例
Mar 03 Python
Window系统下Python如何安装OpenCV库
Mar 05 Python
详解python 内存优化
Aug 17 Python
python自动从arxiv下载paper的示例代码
Dec 05 Python
Python pygame实现中国象棋单机版源码
Jun 20 Python
使用python创建股票的时间序列可视化分析
Mar 03 Python
Python实现句子翻译功能
Nov 14 #Python
简述:我为什么选择Python而不是Matlab和R语言
Nov 14 #Python
Python与R语言的简要对比
Nov 14 #Python
Python基础语言学习笔记总结(精华)
Nov 14 #Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
Nov 14 #Python
python中os和sys模块的区别与常用方法总结
Nov 14 #Python
Python 将RGB图像转换为Pytho灰度图像的实例
Nov 14 #Python
You might like
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
2011/05/04 PHP
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
2009/05/25 Javascript
用Javascript数组处理多个字符串的连接问题
2009/08/20 Javascript
JavaScript 基于原型的对象(创建、调用)
2009/10/16 Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
jQuery前端开发35个小技巧
2016/05/24 Javascript
jquery实现ajax提交表单信息的简单方法(推荐)
2016/08/24 Javascript
详解AngularJs HTTP响应拦截器实现登陆、权限校验
2017/04/11 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
IScroll那些事_当内容不足时下拉刷新的解决方法
2017/07/18 Javascript
将RGB值转换为灰度值的简单算法
2019/10/09 Javascript
vue实现多级菜单效果
2019/10/19 Javascript
Python 3.x 新特性及10大变化
2015/06/12 Python
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
利用python实现在微信群刷屏的方法
2019/02/21 Python
python的sorted用法详解
2019/06/25 Python
Python何时应该使用Lambda函数
2019/07/02 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
关于python中的xpath解析定位
2020/03/06 Python
在 Pycharm 安装使用black的方法详解
2020/04/02 Python
HTML5 Plus 实现手机APP拍照或相册选择图片上传功能
2016/07/13 HTML / CSS
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
幼儿园庆六一游园活动方案
2014/01/29 职场文书
行政专员岗位职责范本
2014/08/26 职场文书
辞旧迎新演讲稿
2014/09/15 职场文书
2014年幼儿园德育工作总结
2014/12/17 职场文书
JavaScript如何利用Promise控制并发请求个数
2021/05/14 Javascript
为什么MySQL选择Repeatable Read作为默认隔离级别
2021/07/26 MySQL
Element实现动态表格的示例代码
2021/08/02 Javascript