import rospy from gazebo_msgs.srv import SpawnModel from geometry_msgs.msg import Pose from gazebo_utils import deleteModel import time rospy.init_node('insert_actor') initial_pose = Pose() initial_pose.position.x = 1 initial_pose.position.y = 1 initial_pose.position.z = 0 # loc='/home/qinjielin/RL_Ws/turtleBot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models/turtlebot3_square/model.sdf' loc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/actor/actor.sdf' f = open(loc, 'r') sdff = f.read() rospy.wait_for_service('gazebo/spawn_sdf_model') spawn_model_prox = rospy.ServiceProxy('gazebo/spawn_sdf_model', SpawnModel) spawn_model_prox("actor0", sdff, " ", initial_pose, "world") # MB_sdf = open('/home/qinjielin/RL_Ws/turtleBot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models/turtlebot3_burger/model-1_4.sdf','r') # sdff_MB = MB_sdf.read() # spawn_model_prox("my_MB", sdff_MB, " ", initial_pose, "world") time.sleep(10) deleteModel("actor0") print("spawn successfully")
spawn_model_prox(self.name, sdf, " ", initial_pose, "world") # f.close() return if __name__ == '__main__': rospy.init_node('insert_furniture') trashLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/trash.sdf' bookshelfLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/bookshelf/model.sdf' cafeTableLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/cafe_table/model.sdf' cudeLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/cube_20k/model.sdf' tableLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/table/model.sdf' tableMarbleLoc = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/table_marble/model.sdf' tableMarbleLoc2 = '/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/table_marble/model-1_4.sdf' nameBefore = "my_fur" pos = Point() pos.x = 0 pos.y = 0 pos.z = 0.5 angle = 0 fm = FurnitureModel(tableLoc) fm.spawnModel(pos, angle, nameBefore) time.sleep(5) deleteModel(nameBefore)
return lines rospy.init_node('insert_object') initial_pose = Pose() initial_pose.position.x = 0 initial_pose.position.y = 0 initial_pose.position.z = 0 # initial_pose.orientation.w = 0 #cos(theta/2) # initial_pose.orientation.z = 1 #sin(theta/2) f = open('/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/trash.sdf', 'rw+') sdff = f.read() # lines = customizeWall() rospy.wait_for_service('gazebo/spawn_sdf_model') spawn_model_prox = rospy.ServiceProxy('gazebo/spawn_sdf_model', SpawnModel) # spawn_model_prox("my_wall", StringIO(''.join(lines)).read(), " ", initial_pose, "world") spawn_model_prox("my_trash", sdff, " ", initial_pose, "world") f.close() print("spawn successfully") time.sleep(5) deleteModel("my_trash")
import rospy from gazebo_msgs.srv import SpawnModel from geometry_msgs.msg import Pose from gazebo_utils import deleteModel import time rospy.init_node('insert_object') initial_pose = Pose() initial_pose.position.x = 0 initial_pose.position.y = 0 initial_pose.position.z = 0 loc='/home/qinjielin/RL_Ws/turtleBot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models/turtlebot3_square/model.sdf' loc='/home/qinjielin/RL_Ws/turtleBot3_ws/src/basics/models/house_element/cylinder/model.sdf' f = open(loc,'r') sdff = f.read() rospy.wait_for_service('gazebo/spawn_sdf_model') spawn_model_prox = rospy.ServiceProxy('gazebo/spawn_sdf_model', SpawnModel) spawn_model_prox("some_robo_name", sdff, " ", initial_pose, "world") # MB_sdf = open('/home/qinjielin/RL_Ws/turtleBot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models/turtlebot3_burger/model-1_4.sdf','r') # sdff_MB = MB_sdf.read() # spawn_model_prox("my_MB", sdff_MB, " ", initial_pose, "world") time.sleep(10) deleteModel("some_robo_name") print("spawn successfully")
name = nameBefore + '4' pos.x = 5 pos.y = 2 angle = 0 fm4 = FurnitureModel(tableMarbleLoc) fm4.spawnModel(pos, angle, name) name = nameBefore + '5' pos.x = 5 pos.y = 6 angle = 0 fm5 = FurnitureModel(trashLoc) fm5.spawnModel(pos, angle, name) name = nameBefore + '6' pos.x = 5 pos.y = 8 angle = 0 fm6 = FurnitureModel(bookshelfLoc) fm6.spawnModel(pos, angle, name) time.sleep(1000) deleteModel(wall_model1.name) deleteModel(wall_model2.name) deleteModel(wall_model3.name) deleteModel(fm4.name) deleteModel(fm5.name) deleteModel(fm6.name)
# wall_model.spawnXML(pos,angle,size,name) name = nameBefore + '1' pos.x = 0 pos.y = 5 angle = 1.57 wall_model1 = WallModel(wallLoc) wall_model1.spawnModel(pos, angle, size, name) name = nameBefore + '2' pos.x = 5 pos.y = 10 angle = 0 wall_model2 = WallModel(wallLoc) wall_model2.spawnModel(pos, angle, size, name) name = nameBefore + '3' pos.x = 10 pos.y = 5 angle = 1.57 wall_model3 = WallModel(wallLoc) wall_model3.spawnModel(pos, angle, size, name) time.sleep(10) deleteModel(wall_model1.name) deleteModel(wall_model2.name) deleteModel(wall_model3.name)
def deleteModel(self): numModels = len(self.models) for i in range(0,numModels): deleteModel(self.models[i].name) return