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下载FTP上的文件夹的实现代码
Feb 10 Python
python的常见命令注入威胁
Feb 18 Python
haskell实现多线程服务器实例代码
Nov 26 Python
python使用Plotly绘图工具绘制散点图、线形图
Apr 02 Python
Python自动抢红包教程详解
Jun 11 Python
mac系统下Redis安装和使用步骤详解
Jul 09 Python
python内存监控工具memory_profiler和guppy的用法详解
Jul 29 Python
python脚本之一键移动自定格式文件方法实例
Sep 02 Python
python导入不同目录下的自定义模块过程解析
Nov 18 Python
python实现百度OCR图片识别过程解析
Jan 17 Python
Python流程控制常用工具详解
Feb 24 Python
为什么说python更适合树莓派编程
Jul 20 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
安装APACHE
2007/01/15 PHP
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
PHP设计模式之工厂方法设计模式实例分析
2018/04/25 PHP
input+select(multiple) 实现下拉框输入值
2009/05/21 Javascript
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
Javascript高级技巧分享
2014/02/25 Javascript
微信小程序 http请求详细介绍
2016/10/09 Javascript
微信小程序 教程之事件
2016/10/18 Javascript
谈谈因Vue.js引发关于getter和setter的思考
2016/12/02 Javascript
js获取当前页的URL与window.location.href简单方法
2017/02/13 Javascript
Javascript面试经典套路reduce函数查重
2017/03/23 Javascript
NodeJs安装npm包一直失败的解决方法
2017/04/28 NodeJs
微信小程序组件之srcoll-view的详解
2017/10/19 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
vue项目中vue-i18n和element-ui国际化开发实现过程
2018/04/25 Javascript
详解vue中使用axios对同一个接口连续请求导致返回数据混乱的问题
2019/11/06 Javascript
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
[20:30]职业巡回赛回顾
2018/08/09 DOTA
python实现在字符串中查找子字符串的方法
2015/07/11 Python
python字符串对其居中显示的方法
2015/07/11 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
2016/06/16 Python
Django 视图层(view)的使用
2018/11/09 Python
Python中按键来获取指定的值
2019/03/02 Python
Python3实现二叉树的最大深度
2019/09/30 Python
Python利用多线程同步锁实现多窗口订票系统(推荐)
2019/12/22 Python
CSS3实现复选框动画特效示例代码
2016/09/27 HTML / CSS
英国著名的小众美容品牌网站:Alyaka
2017/08/08 全球购物
zooplus波兰:在线宠物店
2019/07/21 全球购物
解决方案设计综合面试题
2015/08/31 面试题
经销商订货会主持词
2014/03/27 职场文书
高三霸气励志标语
2014/06/24 职场文书
学校领导班子四风对照检查材料
2014/09/27 职场文书
生产车间管理制度
2015/08/04 职场文书
简历自我评价范文
2019/04/24 职场文书