modify_planning_scene.py
Go to the documentation of this file.
1 #! /usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 from moveit.task_constructor import core, stages
5 from moveit_msgs.msg import CollisionObject
6 from shape_msgs.msg import SolidPrimitive
7 from geometry_msgs.msg import PoseStamped
8 from py_binding_tools import roscpp_init
9 import time
10 
11 roscpp_init("mtc_tutorial")
12 
13 # Create a task
14 task = core.Task()
15 task.name = "modify planning scene"
16 
17 # Add the current state to the task hierarchy
18 task.add(stages.CurrentState("current state"))
19 
20 # [initAndConfigModifyPlanningScene]
21 # Specify object parameters
22 object_name = "grasp_object"
23 object_radius = 0.02
24 
25 objectPose = PoseStamped()
26 objectPose.header.frame_id = "world"
27 objectPose.pose.orientation.x = 1.0
28 objectPose.pose.position.x = 0.30702
29 objectPose.pose.position.y = 0.0
30 objectPose.pose.position.z = 0.285
31 
32 object = CollisionObject()
33 object.header.frame_id = "world"
34 object.id = object_name
35 sphere = SolidPrimitive()
36 sphere.type = sphere.SPHERE
37 sphere.dimensions.insert(sphere.SPHERE_RADIUS, object_radius)
38 
39 object.primitives.append(sphere)
40 object.primitive_poses.append(objectPose.pose)
41 object.operation = object.ADD
42 
43 modifyPlanningScene = stages.ModifyPlanningScene("modify planning scene")
44 modifyPlanningScene.addObject(object)
45 task.add(modifyPlanningScene)
46 # [initAndConfigModifyPlanningScene]
47 
48 if task.plan():
49  task.publish(task.solutions[0])
50 time.sleep(1)
moveit::task_constructor


demo
Author(s): Robert Haschke , Simon Goldstein , Henning Kayser
autogenerated on Sat May 3 2025 02:40:30