fix: display.txt 缺失 alpha 透明度参数,draw.py 读取不到

alpha(盒子透明度)未写入 display.txt header,
draw.py 回退到默认 0.2 而非 input.txt 配置值。
现在 alpha 通过 header 字段正确传递。

Python 引擎:alpha 支持单值或数组 → 逗号分隔字符串
外部引擎:从 trajectory.txt 读取 alpha 值
This commit is contained in:
2026-06-12 07:24:38 +08:00
parent c3e50d265d
commit 54aa20d7c5
4 changed files with 6 additions and 4 deletions
+2 -1
View File
@@ -1459,7 +1459,8 @@ def run_simulation(save_trajectory=0):
"damping_force": str(DAMPING_FORCE), "damping_force": str(DAMPING_FORCE),
"gravity_strength": str(GRAVITY_STRENGTH), "gravity_strength": str(GRAVITY_STRENGTH),
"driving_force": str(DRIVING_FORCE), "driving_force": str(DRIVING_FORCE),
"use_marker": str(use_marker)} "use_marker": str(use_marker),
"alpha": ",".join(str(a) for a in (alpha if isinstance(alpha, list) else [alpha]))}
) )
print(f"[compute] display.txt 已保存至: {disp_path} ({n_frames_actual} 帧)") print(f"[compute] display.txt 已保存至: {disp_path} ({n_frames_actual} 帧)")
+1 -1
View File
@@ -105,7 +105,7 @@ box_color_b = float(h.get("box_color_b", 0.85))
# 图形界面无关的几何参数(不参与物理计算,仅用于场景外观) # 图形界面无关的几何参数(不参与物理计算,仅用于场景外观)
# =========================================================================== # ===========================================================================
info_margin = 36 info_margin = 8
axis_length = 10.0 axis_length = 10.0
initial_camera = { initial_camera = {
+2 -1
View File
@@ -245,7 +245,8 @@ def run_case(config_path, runtime_base, input_dir="input", output_dir="output",
"damping_force": str(data.get("damping_force", 0)), "damping_force": str(data.get("damping_force", 0)),
"gravity_strength": str(data.get("gravity_strength", 1.0)), "gravity_strength": str(data.get("gravity_strength", 1.0)),
"driving_force": str(data.get("driving_force", 0)), "driving_force": str(data.get("driving_force", 0)),
"use_marker": str(config.get("use_marker", 0))} "use_marker": str(config.get("use_marker", 0)),
"alpha": str(data.get("alpha", 0.2))}
n_frames = len(indices) n_frames = len(indices)
compute.save_display_txt( compute.save_display_txt(
+1 -1
View File
@@ -88,7 +88,7 @@ use_marker: 1
# ── 显示参数 ────────────────────────────────── # ── 显示参数 ──────────────────────────────────
# 盒子透明度:单个数值(统一)或 6 个数的数组,按 [-x,+x,-y,+y,-z,+z] 顺序 # 盒子透明度:单个数值(统一)或 6 个数的数组,按 [-x,+x,-y,+y,-z,+z] 顺序
alpha: [0.0, 0.0, 0.0, 0.0, 0.0, 0.5] alpha: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
# 小球颜色 # 小球颜色
# 小球半径从 coord_file 的 radius 列读取 # 小球半径从 coord_file 的 radius 列读取