Skip to content

Commit f144441

Browse files
committed
fix #382: pre-noetic support for ik and planning features using MoveIt with an attached tool
1 parent 8725e91 commit f144441

File tree

3 files changed

+9
-3
lines changed

3 files changed

+9
-3
lines changed

src/compas_fab/backends/ros/backend_features/move_it_inverse_kinematics.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,13 +109,15 @@ def inverse_kinematics_async(
109109
name=start_configuration.joint_names, position=start_configuration.joint_values, header=header
110110
)
111111
start_state = RobotState(joint_state, MultiDOFJointState(header=header))
112-
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
113112

114113
if options.get("attached_collision_meshes"):
115114
for acm in options["attached_collision_meshes"]:
116115
aco = AttachedCollisionObject.from_attached_collision_mesh(acm)
117116
start_state.attached_collision_objects.append(aco)
118117

118+
# Filter needs to happend after all objects have been added
119+
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
120+
119121
constraints = convert_constraints_to_rosmsg(options.get("constraints"), header)
120122

121123
timeout_in_secs = options.get("timeout", 2)

src/compas_fab/backends/ros/backend_features/move_it_plan_cartesian_motion.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,15 @@ def plan_cartesian_motion_async(
113113
header=header, name=start_configuration.joint_names, position=start_configuration.joint_values
114114
)
115115
start_state = RobotState(joint_state, MultiDOFJointState(header=header), is_diff=True)
116-
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
117116

118117
if options.get("attached_collision_meshes"):
119118
for acm in options["attached_collision_meshes"]:
120119
aco = AttachedCollisionObject.from_attached_collision_mesh(acm)
121120
start_state.attached_collision_objects.append(aco)
122121

122+
# Filter needs to happend after all objects have been added
123+
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
124+
123125
path_constraints = convert_constraints_to_rosmsg(options.get("path_constraints"), header)
124126

125127
request = dict(

src/compas_fab/backends/ros/backend_features/move_it_plan_motion.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,15 @@ def plan_motion_async(
110110
header=header, name=start_configuration.joint_names, position=start_configuration.joint_values
111111
)
112112
start_state = RobotState(joint_state, MultiDOFJointState(header=header), is_diff=True)
113-
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
114113

115114
if options.get("attached_collision_meshes"):
116115
for acm in options["attached_collision_meshes"]:
117116
aco = AttachedCollisionObject.from_attached_collision_mesh(acm)
118117
start_state.attached_collision_objects.append(aco)
119118

119+
# Filter needs to happend after all objects have been added
120+
start_state.filter_fields_for_distro(self.ros_client.ros_distro)
121+
120122
# convert constraints
121123
goal_constraints = [convert_constraints_to_rosmsg(goal_constraints, header)]
122124
path_constraints = convert_constraints_to_rosmsg(options.get("path_constraints"), header)

0 commit comments

Comments
 (0)