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

Python超人-宇宙模拟器

上级 22c9b106
......@@ -402,9 +402,11 @@ def get_init_pos_vels_2():
return init_pos_vels
def init_bodies_pos_vels(bodies):
def init_bodies_pos_vels(bodies, init_pos_vels_fun=None):
if init_pos_vels_fun is None:
init_pos_vels_fun = get_init_pos_vels
# 获取模拟的初始位置和速度
init_pos_vels = get_init_pos_vels()
init_pos_vels = init_pos_vels_fun()
for body in bodies:
pos_vels = init_pos_vels.get(type(body).__name__.lower(), None)
......
......@@ -10,7 +10,7 @@
from ursina import camera, application, lerp, Vec3
from bodies import Sun, Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto
from common.celestial_data_service import init_bodies_reality_pos_vels, conv_to_astropy_time, \
set_solar_system_celestial_position, init_bodies_pos_vels
set_solar_system_celestial_position, init_bodies_pos_vels, get_init_pos_vels_2
from common.consts import SECONDS_PER_YEAR, AU
from common.func import calculate_distance
from bodies import Earth
......@@ -74,7 +74,7 @@ class TwoWayFoilSim(UniverseSimScenes):
self.saturn.two_way_foil_dt = 0.005 * self.two_way_foil_dt_factor
self.uranus.two_way_foil_dt = 0.002 * self.two_way_foil_dt_factor
init_bodies_pos_vels(self.bodies)
init_bodies_pos_vels(self.bodies, init_pos_vels_fun=get_init_pos_vels_2)
def build(self):
"""
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册