提交 4052b98a 编写于 作者: 三月三net's avatar 三月三net

Python超人-宇宙模拟器

上级 f5929e9d
...@@ -29,6 +29,10 @@ AU: float = 149597870.700 ...@@ -29,6 +29,10 @@ AU: float = 149597870.700
""" """
G: float = 6.67e-11 G: float = 6.67e-11
"""
一分钟多少秒
"""
SECONDS_PER_MINUTE = 60
""" """
一小时多少秒 一小时多少秒
""" """
......
# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
# title :地月场景模拟 # title :自由落地模拟
# description :地月场景模拟 # description :自由落地模拟
# author :Python超人 # author :Python超人
# date :2023-02-11 # date :2023-02-11
# link :https://gitcode.net/pythoncr/ # link :https://gitcode.net/pythoncr/
# python_version :3.8 # python_version :3.8
# ============================================================================== # ==============================================================================
from bodies import Moon, Earth, Body from bodies import Moon, Earth, Body
from common.consts import SECONDS_PER_HOUR, SECONDS_PER_HALF_DAY, SECONDS_PER_DAY, SECONDS_PER_WEEK, SECONDS_PER_MONTH from common.consts import SECONDS_PER_HOUR, SECONDS_PER_MINUTE
from sim_scenes.func import mayavi_run, ursina_run from sim_scenes.func import mayavi_run, ursina_run
if __name__ == '__main__': if __name__ == '__main__':
""" """
地球、6个月球 自由落地模拟
""" """
# 地球在中心位置 # 地球在中心位置
e = Earth(init_position=[0, 0, 0], size_scale=1, texture="earth_hd.jpg", init_velocity=[0, 0, 0]) e = Earth(init_position=[0, 0, 0], size_scale=1, texture="earth_hd.jpg", init_velocity=[0, 0, 0])
bodies = [ bodies = [
e, e,
Moon(name='小球', mass=4.4e18, init_position=[0, e.raduis + 500, 0], init_velocity=[0, 0, 0]), # 球在地球上面500km Moon(name='小月球', mass=4.4e18,
init_position=[0, e.raduis + 500, 0], # 球在地面上 500km
init_velocity=[0, 0, 0]),
] ]
# 使用 ursina 查看的运行效果 # 使用 ursina 查看的运行效果
# 常用快捷键: P:运行和暂停 O:重新开始 I:显示天体轨迹 # 常用快捷键: P:运行和暂停 O:重新开始 I:显示天体轨迹
# position = 左-右+、上+下-、前+后- # position = 左-右+、上+下-、前+后-
ursina_run(bodies, 60, position=(0, e.raduis + 500, -4500), ursina_run(bodies, SECONDS_PER_MINUTE, # 一秒相当于一分钟
position=(0, e.raduis + 500, -4500),
show_trail=True, show_trail=True,
show_timer=True, show_timer=True,
view_closely=0.001) view_closely=0.001)
...@@ -58,5 +58,5 @@ if __name__ == '__main__': ...@@ -58,5 +58,5 @@ if __name__ == '__main__':
# M:摄像机移动加速 N:摄像机移动减速 # M:摄像机移动加速 N:摄像机移动减速
# position = (左-右+、上+下-、前+后-) # position = (左-右+、上+下-、前+后-)
ursina_run(bodies, SECONDS_PER_WEEK, ursina_run(bodies, SECONDS_PER_WEEK,
position=(0, 100000, -AU / 500), position=(0, 30000, -AU / 500),
show_name=True, bg_music="sounds/universe_03.mp3") show_name=True, bg_music="sounds/universe_03.mp3")
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册