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实现一个Git日志统计分析的小工具
Dec 14 Python
pytorch cnn 识别手写的字实现自建图片数据
May 20 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
Python实现的爬取小说爬虫功能示例
Mar 30 Python
详解pandas.DataFrame.plot() 画图函数
Jun 14 Python
Python爬虫基于lxml解决数据编码乱码问题
Jul 31 Python
Python 执行矩阵与线性代数运算
Aug 01 Python
python实现简单贪吃蛇游戏
Sep 29 Python
python中Matplotlib绘制直线的实例代码
Jul 04 Python
python_tkinter弹出对话框创建
Mar 20 Python
Python接口自动化之文件上传/下载接口详解
Apr 05 Python
Python利用capstone实现反汇编
Apr 06 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
Banner程序
2006/10/09 PHP
php array_search() 函数使用
2010/04/13 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
php获取QQ头像并显示的方法
2014/12/23 PHP
最准确的php截取字符串长度函数
2015/10/29 PHP
Yii快速入门经典教程
2015/12/28 PHP
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
Yii框架实现对数据库的CURD操作示例
2019/09/03 PHP
分享8个Laravel模型时间戳使用技巧小结
2020/02/12 PHP
表单提交验证类
2006/07/14 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
浅析Node.js实现HTTP文件下载
2016/08/05 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
JS实现搜索关键词的智能提示功能
2017/07/07 Javascript
微信小程序 获取javascript 里的数据
2017/08/17 Javascript
原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面
2017/11/01 Javascript
vue axios请求超时的正确处理方法
2018/04/02 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
微信小程序实现发送验证码按钮效果
2018/12/20 Javascript
配置eslint规范项目代码风格
2019/03/11 Javascript
微信小程序订阅消息(java后端实现)开发
2020/06/01 Javascript
vue项目打包为APP,静态资源正常显示,但API请求不到数据的操作
2020/09/12 Javascript
Vue中的nextTick作用和几个简单的使用场景
2021/01/25 Vue.js
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
Python中 map()函数的用法详解
2018/07/10 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
俄罗斯的精英皮具:Wittchen
2018/01/29 全球购物
澳大利亚现代波西米亚风格女装网站:Bohemian Traders
2018/04/16 全球购物
英国建筑用品在线:Building Supplies Online(BSO)
2018/04/30 全球购物
情人节活动总结范文
2015/02/05 职场文书
同意离婚答辩状
2015/05/22 职场文书
2016年圣诞节义工活动总结
2016/04/01 职场文书
opencv 分类白天与夜景视频的方法
2021/06/05 Python
使用 Docker Compose 构建复杂的多容器App
2022/04/30 Servers
Java实现字符串转为驼峰格式的方法详解
2022/07/07 Java/Android
MySQL表字段数量限制及行大小限制详情
2022/07/23 MySQL