From a40da510d0c8278958f08f3855c1dccb00ecb447 Mon Sep 17 00:00:00 2001 From: march3 Date: Thu, 20 Apr 2023 21:44:24 +0800 Subject: [PATCH] =?UTF-8?q?Python=E8=B6=85=E4=BA=BA-=E5=AE=87=E5=AE=99?= =?UTF-8?q?=E6=A8=A1=E6=8B=9F=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sim_scenes/science/parabolic_curve.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/sim_scenes/science/parabolic_curve.py b/sim_scenes/science/parabolic_curve.py index 09a9f21..4096dc6 100644 --- a/sim_scenes/science/parabolic_curve.py +++ b/sim_scenes/science/parabolic_curve.py @@ -6,8 +6,8 @@ # link :https://gitcode.net/pythoncr/ # python_version :3.8 # ============================================================================== -from bodies import Moon, Earth, Body -from objs import Football +from bodies import Earth +from objs import create_rock from common.consts import SECONDS_PER_HOUR, SECONDS_PER_MINUTE from sim_scenes.func import ursina_run, get_vector2d_velocity, camera_look_at, two_bodies_colliding from simulators.ursina.entities.body_timer import TimeData @@ -25,10 +25,11 @@ def create_ejected_object(velocity, raduis, trail_color, gravity_only_for, angle """ # 根据速度、角度获取矢量速度(vx、vy) -> vx² + vy² = velocity² vx, vy = get_vector2d_velocity(velocity, angle=angle) - football = Football(name=f'物体速度:{velocity}', mass=500, size_scale=1e3, trail_color=trail_color, - init_position=[0, raduis, 0], - init_velocity=[vx, vy, 0], gravity_only_for=[gravity_only_for]) # 仅适用于地球的重力,物体之间重力不要受到影响 - return football + rock = create_rock(name=f'物体速度:{velocity}', mass=500, size_scale=1e3, trail_color=trail_color, + init_position=[0, raduis, 0], + init_velocity=[vx, vy, 0], + gravity_only_for=[gravity_only_for]) # 仅适用于地球的重力,物体之间重力不要受到影响 + return rock if __name__ == '__main__': @@ -36,7 +37,9 @@ if __name__ == '__main__': 抛物线模拟 """ # 地球在中心位置 - earth = Earth(init_position=[0, 0, 0], size_scale=1, texture="earth_hd.jpg", init_velocity=[0, 0, 0]) + earth = Earth(init_position=[0, 0, 0], init_velocity=[0, 0, 0], + rotate_angle=0, rotation_speed=0, + size_scale=1, texture="earth_hd.jpg") raduis = earth.raduis + 300 # TODO: 4个不同的抛出速度 7.5km/s、8.5km/s、10km/s、11.2km/s(第二宇宙速度) # 粉色:velocity = 7.5,飞不出地球太远,就落地 -- GitLab