Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Python_超人
宇宙模拟器
提交
e7d1a17f
宇宙模拟器
项目概览
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看板
提交
e7d1a17f
编写于
8月 19, 2023
作者:
三月三net
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Python超人-宇宙模拟器
上级
6b7d2d3c
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
16 addition
and
10 deletion
+16
-10
common/image_utils.py
common/image_utils.py
+3
-2
sim_scenes/solar_system/solar_system_reality.py
sim_scenes/solar_system/solar_system_reality.py
+13
-8
未找到文件。
common/image_utils.py
浏览文件 @
e7d1a17f
...
...
@@ -191,10 +191,11 @@ def find_texture_root_path():
return
None
def
find_texture
(
texture
):
def
find_texture
(
texture
,
default_val
=
""
):
"""
尝试在多个路径下寻找纹理图片
@param texture: 纹理图片
@param default_val: 如果没有找到,返回的默认值
@return: 纹理图片的路径
"""
if
os
.
path
.
exists
(
texture
):
...
...
@@ -214,7 +215,7 @@ def find_texture(texture):
p
=
p
[:
-
4
]
return
p
return
""
return
default_val
def
gen_color_body_texture
(
color
,
save_file
,
color_body_img
=
"color_body.jpg"
,
bright
=
None
,
contrast
=
None
):
...
...
sim_scenes/solar_system/solar_system_reality.py
浏览文件 @
e7d1a17f
...
...
@@ -85,13 +85,11 @@ class SolarSystemRealitySim:
@return:
"""
# 让地球显示自转轴线
self
.
earth
.
rotate_axis_color
=
(
255
,
255
,
50
)
#
self.earth.rotate_axis_color = (255, 255, 50)
# 如果为调试模式,则太阳光对地球无效,方便查看
if
self
.
debug_mode
:
self
.
earth
.
set_light_disable
(
True
)
def
set_earth_rotation
(
self
,
dt
):
"""
根据指定的时间控制地球的旋转角度(保证地球的自转和北京时间同步)
...
...
@@ -196,9 +194,9 @@ class SolarSystemRealitySim:
"""
# 运行前触发
# from simulators.ursina.entities.sphere_sky import SphereSky
# from common.image_utils import find_texture
# SphereSky(texture=find_texture("bg_pan.jpg")
).scale = 10000
if
self
.
sky_texture
is
not
None
:
from
simulators.ursina.entities.sphere_sky
import
SphereSky
SphereSky
(
texture
=
self
.
sky_texture
).
scale
=
10000
camera
.
rotation_z
=
-
20
if
self
.
debug_mode
:
...
...
@@ -269,6 +267,13 @@ class SolarSystemRealitySim:
self
.
start_time
=
Time
(
datetime
.
strptime
(
start_time
+
'+0800'
,
'%Y-%m-%d %H:%M:%S%z'
),
format
=
'datetime'
)
from
common.image_utils
import
find_texture
self
.
sky_texture
=
find_texture
(
"bg_pan.jpg"
,
None
)
if
self
.
sky_texture
is
None
:
cosmic_bg
=
None
else
:
cosmic_bg
=
''
dt
=
SECONDS_PER_DAY
# 1秒=1天
dt
=
1
# 1秒=1秒
# 使用 ursina 查看的运行效果
...
...
@@ -278,7 +283,7 @@ class SolarSystemRealitySim:
position
=
(
0
,
0.2
*
AU
,
-
3
*
AU
),
gravity_works
=
False
,
# 关闭万有引力的计算
show_grid
=
False
,
# cosmic_bg=''
,
cosmic_bg
=
cosmic_bg
,
show_camera_info
=
False
,
timer_enabled
=
True
)
...
...
@@ -288,7 +293,7 @@ if __name__ == '__main__':
sim
=
SolarSystemRealitySim
()
sim
.
run
(
# debug_mode=True, # 是否调试模式
# start_time='2023-01-01 02:2
0:00', # 指定运行的开始时间,不指定为当前时间
start_time
=
'2050-01-01 00:0
0:00'
,
# 指定运行的开始时间,不指定为当前时间
# show_asteroids=True, # 是否显示小行星带(图片模拟)
# show_earth_clouds=True, # 地球是否显示云层(图片效果,不是真实的云层)
# recalc_moon_pos=False, # 为了更好的展示效果,需要对月球的位置重新计算(使得地月距离放大,月球相对地球方向不变)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录