diff --git a/sim_scenes/earth/earth.py b/sim_scenes/earth/earth.py index 85613b34a95ab63c9922b30f630eb93cb6ea083c..aedf7df89c38998297a5a646b537bbdfd6a1a040 100644 --- a/sim_scenes/earth/earth.py +++ b/sim_scenes/earth/earth.py @@ -25,4 +25,4 @@ if __name__ == '__main__': ursina_run(bodies, SECONDS_PER_HOUR, position=(0, 0, -20000), show_grid=False, - view_closely=0.001) + view_closely=0.001) # 近距离观看 view_closely=True或0.001 diff --git a/sim_scenes/earth/earth_clouds.py b/sim_scenes/earth/earth_clouds.py index fb081d86d16db8df4987f6c7347bf86518e21de6..f5943a9c5ff36c1902daf48488309ba385e6a773 100644 --- a/sim_scenes/earth/earth_clouds.py +++ b/sim_scenes/earth/earth_clouds.py @@ -35,4 +35,4 @@ if __name__ == '__main__': ursina_run(bodies, SECONDS_PER_HOUR / 2, position=(1.5 * earth.raduis, 0, -30000), show_grid=False, - view_closely=0.001) + view_closely=0.001) # 近距离观看 view_closely=True或0.001 diff --git a/sim_scenes/earth/earth_moon.py b/sim_scenes/earth/earth_moon.py index 24ef4e93d40330b085b9f77e3351c68dd4066b02..2c8c8dc8c483ce75cd10fda668c85f6a2c258748 100644 --- a/sim_scenes/earth/earth_moon.py +++ b/sim_scenes/earth/earth_moon.py @@ -6,11 +6,9 @@ # link :https://gitcode.net/pythoncr/ # python_version :3.8 # ============================================================================== -from bodies import Sun, Earth, Moon +from bodies import Earth, Moon from common.consts import SECONDS_PER_DAY, SECONDS_PER_WEEK, SECONDS_PER_MONTH from sim_scenes.func import ursina_run, camera_look_at -from bodies.body import AU -from simulators.ursina.entities.entity_utils import create_directional_light from simulators.ursina.ursina_event import UrsinaEvent if __name__ == '__main__': @@ -20,19 +18,18 @@ if __name__ == '__main__': OFFSETTING = 0 # TODO: 可以抵消月球带动地球的力,保持地球在原地 # OFFSETTING = 0.01265 - bodies = [ - Earth(init_position=[0, 0, 0], - init_velocity=[OFFSETTING, 0, 0], size_scale=0.5e1), # 地球放大 5 倍,距离保持不变 - Moon(init_position=[0, 0, 363104], # 距地距离约: 363104 至 405696 km - init_velocity=[-1.03, 0, 0], size_scale=1e1) # 月球放大 10 倍,距离保持不变 - ] + + earth = Earth(init_position=[0, 0, 0], + init_velocity=[OFFSETTING, 0, 0], size_scale=0.5e1) # 地球放大 5 倍,距离保持不变 + moon = Moon(init_position=[0, 0, 363104], # 距地距离约: 363104 至 405696 km + init_velocity=[-1.03, 0, 0], size_scale=1e1) # 月球放大 10 倍,距离保持不变 + bodies = [earth, moon] def on_ready(): # 运行前触发 # 运行开始前,将摄像机指向地球 - earth = bodies[0] - moon = bodies[1] + # 摄像机看向地球 camera_look_at(earth) diff --git a/sim_scenes/earth/earth_moon6.py b/sim_scenes/earth/earth_moon6.py index e6ac79d21bf7fc0844662632531eb5b37eb041bc..ec76526801dbe33180e701c1994f98699949a189 100644 --- a/sim_scenes/earth/earth_moon6.py +++ b/sim_scenes/earth/earth_moon6.py @@ -7,7 +7,7 @@ # python_version :3.8 # ============================================================================== from bodies import Sun, Earth, Moon -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_HALF_DAY, SECONDS_PER_DAY from sim_scenes.func import mayavi_run, ursina_run from bodies.body import AU @@ -17,17 +17,21 @@ if __name__ == '__main__': """ # 地球在中心位置 e = Earth(init_position=[0, 0, 0], texture="earth_hd.jpg", init_velocity=[0, 0, 0]) + # 在地球周围创建 6 个月球(初速度为0) bodies = [ e, - Moon(init_position=[e.diameter, 0, 0], init_velocity=[0, 0, 0]), # 月球在地球右面 + Moon(init_position=[e.diameter, 0, 0], init_velocity=[0, 0, 0]), # 月球在地球右面 Moon(init_position=[-e.diameter, 0, 0], init_velocity=[0, 0, 0]), # 月球在地球左面 - Moon(init_position=[0, e.diameter, 0], init_velocity=[0, 0, 0]), # 月球在地球上面 + Moon(init_position=[0, e.diameter, 0], init_velocity=[0, 0, 0]), # 月球在地球上面 Moon(init_position=[0, -e.diameter, 0], init_velocity=[0, 0, 0]), # 月球在地球下面 - Moon(init_position=[0, 0, e.diameter], init_velocity=[0, 0, 0]), # 月球在地球前面 + Moon(init_position=[0, 0, e.diameter], init_velocity=[0, 0, 0]), # 月球在地球前面 Moon(init_position=[0, 0, -e.diameter], init_velocity=[0, 0, 0]), # 月球在地球后面 ] # 使用 ursina 查看的运行效果 # 常用快捷键: P:运行和暂停 O:重新开始 I:显示天体轨迹 # position = 左-右+、上+下-、前+后- - ursina_run(bodies, 60, position=(0, 0, -4 * e.diameter), show_trail=True, view_closely=0.001) + ursina_run(bodies, SECONDS_PER_HOUR / 10, + position=(0, 0, -4 * e.diameter), + show_trail=True, + view_closely=0.001) # 近距离观看 view_closely=True或0.001 diff --git a/sim_scenes/earth/earth_satellites.py b/sim_scenes/earth/earth_satellites.py index 895987c39f5f0f92944557ab292f892c5dc9b44c..19613ab42c366056cc92821bff074a6e73f375d7 100644 --- a/sim_scenes/earth/earth_satellites.py +++ b/sim_scenes/earth/earth_satellites.py @@ -64,4 +64,4 @@ if __name__ == '__main__': position=(30000, 10000, -20000), show_trail=True, show_timer=True, - view_closely=0.001) + view_closely=0.001) # 近距离观看 view_closely=True或0.001