fix: alpha numpy 数组格式化问题导致逗号丢失
trajectory.txt 中的 alpha 以 numpy 数组形式加载, str() 后变成 "[0. 0. 0. 0. 0. 0.]"(无逗号), draw.py parse 不成功回退为默认 0.2。 新增 _fmt_alpha() 统一格式化为逗号分隔字符串。
This commit is contained in:
+8
-1
@@ -25,6 +25,13 @@ sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|||||||
import compute
|
import compute
|
||||||
|
|
||||||
|
|
||||||
|
def _fmt_alpha(v):
|
||||||
|
"""将 alpha 值格式化为逗号分隔字符串,兼容 numpy 数组/list/标量。"""
|
||||||
|
if isinstance(v, (list, tuple, np.ndarray)):
|
||||||
|
return ",".join(str(float(x)) for x in v)
|
||||||
|
return str(float(v))
|
||||||
|
|
||||||
|
|
||||||
def read_optional_index(data, key, default_value):
|
def read_optional_index(data, key, default_value):
|
||||||
"""Read an optional integer index from structured txt metadata."""
|
"""Read an optional integer index from structured txt metadata."""
|
||||||
if key not in data:
|
if key not in data:
|
||||||
@@ -246,7 +253,7 @@ def run_case(config_path, runtime_base, input_dir="input", output_dir="output",
|
|||||||
"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))}
|
"alpha": _fmt_alpha(data.get("alpha", 0.2))}
|
||||||
|
|
||||||
n_frames = len(indices)
|
n_frames = len(indices)
|
||||||
compute.save_display_txt(
|
compute.save_display_txt(
|
||||||
|
|||||||
Reference in New Issue
Block a user