Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Python_超人
宇宙模拟器
提交
40bedd1d
宇宙模拟器
项目概览
Python_超人
/
宇宙模拟器
通知
19
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
宇宙模拟器
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
40bedd1d
编写于
7月 01, 2023
作者:
三月三net
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Python超人-宇宙模拟器
上级
176f92ff
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
27 addition
and
17 deletion
+27
-17
bodies/asteroids.py
bodies/asteroids.py
+4
-1
bodies/habitable_zone.py
bodies/habitable_zone.py
+1
-0
sim_scenes/solar_system/solar_system_1.py
sim_scenes/solar_system/solar_system_1.py
+1
-1
sim_scenes/solar_system/solar_system_2.py
sim_scenes/solar_system/solar_system_2.py
+3
-3
sim_scenes/solar_system/solar_system_4.py
sim_scenes/solar_system/solar_system_4.py
+16
-11
sim_scenes/solar_system/solar_system_habitable_zone.py
sim_scenes/solar_system/solar_system_habitable_zone.py
+2
-1
未找到文件。
bodies/asteroids.py
浏览文件 @
40bedd1d
...
...
@@ -48,7 +48,10 @@ class Asteroids(Body):
}
super
().
__init__
(
**
params
)
# 环状星群
self
.
torus_stars
=
True
# self.torus_stars = True
# 环状星群带(inner_radius, outer_radius, subdivisions)
# inner_radius:内圆半径 outer_radius:外圆半径,subdivisions:细分数,控制圆环的细节和精度
self
.
torus_zone
=
2.17
,
3.64
,
64
def
ignore_gravity_with
(
self
,
body
):
"""
...
...
bodies/habitable_zone.py
浏览文件 @
40bedd1d
...
...
@@ -38,6 +38,7 @@ class HabitableZone(Body):
}
super
().
__init__
(
**
params
)
# 环状宜居带(inner_radius, outer_radius, subdivisions)
# inner_radius:内圆半径 outer_radius:外圆半径,subdivisions:细分数,控制圆环的细节和精度
self
.
torus_zone
=
0.95
,
1.67
,
64
# 使用 texture="red_green_blue.png",
# self.torus_zone = 0.20, 6.00, 64
...
...
sim_scenes/solar_system/solar_system_1.py
浏览文件 @
40bedd1d
...
...
@@ -26,7 +26,7 @@ if __name__ == '__main__':
Venus
(
name
=
"金星"
,
size_scale
=
4e3
),
# 金星放大 4000 倍,距离保持不变
Earth
(
name
=
"地球"
,
size_scale
=
4e3
),
# 地球放大 4000 倍,距离保持不变
Mars
(
name
=
"火星"
,
size_scale
=
4e3
),
# 火星放大 4000 倍,距离保持不变
Asteroids
(
name
=
"小行星群"
,
size_scale
=
3.2
e2
,
Asteroids
(
name
=
"小行星群"
,
size_scale
=
1
e2
,
parent
=
sun
),
# 小行星群模拟(仅 ursina 模拟器支持)
Jupiter
(
name
=
"木星"
,
size_scale
=
0.8e3
),
# 木星放大 800 倍,距离保持不变
Saturn
(
name
=
"土星"
,
size_scale
=
0.8e3
),
# 土星放大 800 倍,距离保持不变
...
...
sim_scenes/solar_system/solar_system_2.py
浏览文件 @
40bedd1d
...
...
@@ -28,9 +28,9 @@ if __name__ == '__main__':
Mercury
(
size_scale
=
4e3
,
distance_scale
=
1.3
),
# 水星放大 4000 倍,距离放大 1.3 倍
Venus
(
size_scale
=
4e3
,
distance_scale
=
1.3
),
# 金星放大 4000 倍,距离放大 1.3 倍
Earth
(
size_scale
=
4e3
,
distance_scale
=
1.3
),
# 地球放大 4000 倍,距离放大 1.3 倍
Asteroids
(
size_scale
=
3e2
,
parent
=
sun
),
# 小行星模拟(仅 ursina 模拟器支持)
Mars
(
size_scale
=
4e3
,
distance_scale
=
1.3
),
# 火星放大 4000 倍,距离放大 1.3 倍
Jupiter
(
size_scale
=
0.68e3
,
distance_scale
=
0.
65
),
# 木星放大 680 倍,距离缩小到真实距离的 0.65
Mars
(
size_scale
=
4e3
,
distance_scale
=
1.2
),
# 火星放大 4000 倍,距离放大 1.2 倍
Asteroids
(
size_scale
=
1e2
,
parent
=
sun
),
# 小行星模拟(仅 ursina 模拟器支持)
Jupiter
(
size_scale
=
0.68e3
,
distance_scale
=
0.
72
),
# 木星放大 680 倍,距离缩小到真实距离的 0.72
Saturn
(
size_scale
=
0.68e3
,
distance_scale
=
0.52
),
# 土星放大 680 倍,距离缩小到真实距离的 0.52
Uranus
(
size_scale
=
0.8e3
,
distance_scale
=
0.36
),
# 天王星放大 800 倍,距离缩小到真实距离的 0.36
Neptune
(
size_scale
=
1e3
,
distance_scale
=
0.27
),
# 海王星放大 1000 倍,距离缩小到真实距离的 0.27
...
...
sim_scenes/solar_system/solar_system_4.py
浏览文件 @
40bedd1d
...
...
@@ -45,19 +45,24 @@ if __name__ == '__main__':
# 由于宇宙空间尺度非常大,如果按照实际的天体大小,则无法看到天体,因此需要对天体的尺寸进行放大
sun
=
Sun
(
name
=
"太阳"
,
size_scale
=
1.4e2
)
# 太阳放大 80 倍,距离保持不变
sun
.
init_velocity
=
[
0
,
2
,
0
]
# 太阳以2km/s的速度带着其他行星一起跑
asteroids
=
Asteroids
(
name
=
"小行星群"
,
size_scale
=
1e2
,
parent
=
sun
)
# 小行星群模拟(仅 ursina 模拟器支持)
# 环状星群带(inner_radius, outer_radius, subdivisions)
# inner_radius:内圆半径 outer_radius:外圆半径,subdivisions:细分数,控制圆环的细节和精度
asteroids
.
torus_zone
=
2.7
,
3.5
,
64
bodies
=
[
sun
,
Mercury
(
name
=
"水星"
,
size_scale
=
4e3
),
# 水星放大 4000 倍,距离保持不变
Venus
(
name
=
"金星"
,
size_scale
=
4e3
),
# 金星放大 4000 倍,距离保持不变
Earth
(
name
=
"地球"
,
size_scale
=
4e3
),
# 地球放大 4000 倍,距离保持不变
Mars
(
name
=
"火星"
,
size_scale
=
4e3
),
# 火星放大 4000 倍,距离保持不变
Asteroids
(
name
=
"小行星群"
,
size_scale
=
3.2e2
,
parent
=
sun
),
# 小行星群模拟(仅 ursina 模拟器支持)
Jupiter
(
name
=
"木星"
,
size_scale
=
0.6e3
),
# 木星放大 800 倍,距离保持不变
Saturn
(
name
=
"土星"
,
size_scale
=
0.6e3
),
# 土星放大 800 倍,距离保持不变
Mercury
(
name
=
"水星"
,
size_scale
=
4e3
),
# 水星放大 4000 倍,距离保持不变
Venus
(
name
=
"金星"
,
size_scale
=
4e3
),
# 金星放大 4000 倍,距离保持不变
Earth
(
name
=
"地球"
,
size_scale
=
4e3
),
# 地球放大 4000 倍,距离保持不变
Mars
(
name
=
"火星"
,
size_scale
=
4e3
),
# 火星放大 4000 倍,距离保持不变
asteroids
,
Jupiter
(
name
=
"木星"
,
size_scale
=
0.6e3
),
# 木星放大 800 倍,距离保持不变
Saturn
(
name
=
"土星"
,
size_scale
=
0.6e3
),
# 土星放大 800 倍,距离保持不变
Uranus
(
name
=
"天王星"
,
size_scale
=
0.8e3
),
# 天王星放大 800 倍,距离保持不变
Neptune
(
name
=
"海王星"
,
size_scale
=
1e3
),
# 海王星放大 1000 倍,距离保持不变
Pluto
(
name
=
"冥王星"
,
size_scale
=
10e3
),
# 冥王星放大 10000 倍,距离保持不变(从太阳系的行星中排除)
Neptune
(
name
=
"海王星"
,
size_scale
=
1e3
),
# 海王星放大 1000 倍,距离保持不变
Pluto
(
name
=
"冥王星"
,
size_scale
=
10e3
),
# 冥王星放大 10000 倍,距离保持不变(从太阳系的行星中排除)
]
# 真实距离
...
...
@@ -71,7 +76,7 @@ if __name__ == '__main__':
# 设置为行星距离
for
idx
,
body
in
enumerate
(
bodies
):
# 对于太阳和小行星群保持原来的距离
if
body
.
is_fixed_star
or
hasattr
(
body
,
"torus_
stars
"
):
if
body
.
is_fixed_star
or
hasattr
(
body
,
"torus_
zone
"
):
continue
body_real_distance
=
body
.
init_position
[
2
]
# 格式:body.init_position=[0, 0, 1.12 * AU]
body_real_velocity
=
body
.
init_velocity
[
0
]
# 格式:body.init_velocity=body.[-29.79, 0, 0]
...
...
sim_scenes/solar_system/solar_system_habitable_zone.py
浏览文件 @
40bedd1d
...
...
@@ -26,6 +26,7 @@ if __name__ == '__main__':
moon
=
Moon
(
name
=
"月球"
,
size_scale
=
1.3e3
,
init_position
=
[
earth_moon_d
,
0
,
AU
],
init_velocity
=
[
0
,
0
,
0
],
rotation_speed
=
0.4065
,
ignore_mass
=
True
,
# gravity_only_for_earth=True
)
...
...
@@ -34,7 +35,7 @@ if __name__ == '__main__':
Venus
(
name
=
"金星"
,
size_scale
=
1.2e3
),
# 金星放大 1200 倍,距离保持不变
earth
,
moon
,
Mars
(
name
=
"火星"
,
size_scale
=
1.2e3
),
# 火星放大 1200 倍,距离保持不变
Asteroids
(
name
=
"小行星群"
,
size_scale
=
3.2
e2
,
Asteroids
(
name
=
"小行星群"
,
size_scale
=
1
e2
,
parent
=
sun
),
# 小行星群模拟(仅 ursina 模拟器支持)
HabitableZone
(
name
=
"宜居带"
,
size_scale
=
1e2
,
# texture="red_green_blue.png",
parent
=
sun
),
# 宜居带模拟(仅 ursina 模拟器支持)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录