Skip to content

Commit 49e029e

Browse files
authored
Add path validation for visualize commands (#604)
1 parent 52c3f55 commit 49e029e

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

skrobot/apps/visualize_mesh.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ def main():
3636
viewer = skrobot.viewers.TrimeshSceneViewer()
3737
elif args.viewer == 'pyrender':
3838
viewer = skrobot.viewers.PyrenderViewer()
39+
loaded_count = 0
3940
for mesh_path in args.input_mesh_paths:
4041
if not osp.exists(mesh_path):
4142
print(f"Warning: Mesh file not found at {mesh_path}. Skipping.")
@@ -46,9 +47,14 @@ def main():
4647
print(mesh)
4748
link = skrobot.model.Link(collision_mesh=mesh, visual_mesh=mesh)
4849
viewer.add(link)
50+
loaded_count += 1
4951
except Exception as e:
5052
print(f"Error loading mesh {mesh_path}: {e}. Skipping.")
5153

54+
if loaded_count == 0:
55+
print("Error: No mesh files could be loaded. Exiting.")
56+
return
57+
5258
axis = Axis(pos=np.array([0, 0, 0]),
5359
rot=np.eye(3),
5460
axis_length=args.axis_length,

skrobot/apps/visualize_urdf.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ def main():
4141
if args.ros is not None:
4242
robot_model = RobotModel.from_robot_description(args.ros)
4343
else:
44+
if not osp.exists(args.input_urdfpath):
45+
parser.error(f"URDF file not found: {args.input_urdfpath}")
4446
robot_model = RobotModel.from_urdf(osp.abspath(args.input_urdfpath))
4547

4648
viewer.add(robot_model)

0 commit comments

Comments
 (0)