cmvr-es/scripts/isaac_sim/dual_arm_collision.toml
lgv 4e9bd398f1 feat(collision): add collision primitive generation tools
Add URDF and USD collision primitive generation, MeshCat collision visualization, configuration, documentation, and generated Isaac Sim assets for the dual-arm model.
2026-07-27 15:39:54 +08:00

85 lines
2.7 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 默认配置会应用到所有未单独覆盖的 link。
[defaults]
# auto 会分别拟合 box、sphere、cylinder并选择包围体积最小的一种。
primitive = "auto"
# auto 模式允许参与比较的碰撞体类型。
allowed_primitives = ["box", "sphere", "cylinder"]
# 碰撞体向外扩张的绝对尺寸单位为米。0 表示不扩张。
padding = 0.0
# 以拟合中心为基准缩放碰撞体。1.0 表示保持原始拟合尺寸。
scale = 1.0
# trimesh 搜索最小包围圆柱时的方向采样密度;越大越精确,但计算越慢。
cylinder_sample_count = 6
# 圆柱方向优化的角度容差。
cylinder_angle_tol = 0.001
# 仅用于 USD如果输入中仍有旧的 STL 网格碰撞体,在 overlay 中将其停用。
# URDF 默认替换生成 link 上的旧碰撞体;传入 --keep-existing 可改为追加。
disable_existing_mesh_collisions = true
# base_link 已在 dual_arm.urdf 中明确配置了固定圆柱碰撞体 base_column
# 不需要根据可视模型重复生成。
[links.base_link]
enabled = false
# 指尖和相机在 dual_arm.urdf 中已经有明确的 sphere 碰撞体,跳过自动拟合。
[links.R_FINGER_TIP]
enabled = false
[links.R_CAM]
enabled = false
# 躯干使用与 PELVIS_S 局部 XYZ 轴平行的长方体。
# alignment="link" 表示使用 link-local AABB不允许盒体自由倾斜。
[links.PELVIS_S]
primitive = "box"
alignment = "link"
# 左右长连杆在各自 link 局部坐标中主要沿 Y 轴延伸。
# 这些 link 使用轴对齐长方体,避免最小体积 OBB 出现肉眼可见的倾斜。
[links.L_SHOULDER_R_S]
primitive = "box"
alignment = "link"
[links.R_SHOULDER_R_S]
primitive = "box"
alignment = "link"
[links.L_SHOULDER_Y_S]
primitive = "box"
alignment = "link"
[links.R_SHOULDER_Y_S]
primitive = "box"
alignment = "link"
[links.L_ELBOW_R_S]
primitive = "box"
alignment = "link"
[links.R_ELBOW_R_S]
primitive = "box"
alignment = "link"
# 左右前臂使用圆柱体,圆柱轴固定为 link 局部 Y 轴。
# 如果更重视减少自碰撞误报,也可以改为 primitive="box"、alignment="link"。
[links.L_WRIST_P_S]
primitive = "cylinder"
axis = "y"
[links.R_WRIST_P_S]
primitive = "cylinder"
axis = "y"
# 最新导入的 USD 没有提供左右末端腕部的可视网格点,
# 因此回退到 URDF 使用的原始 STL。mesh_file 相对本 TOML 文件解析。
# 末端腕部外形不规则且截面不圆,使用 link 轴对齐长方体。
[links.L_WRIST_R_S]
mesh_file = "../../model/xiaoyan_description/meshes/L_WRIST_R_S.STL"
primitive = "box"
alignment = "link"
[links.R_WRIST_R_S]
mesh_file = "../../model/xiaoyan_description/meshes/R_WRIST_R_S.STL"
primitive = "box"
alignment = "link"