Skip to content

Commit

Permalink
Add falling rocks to cave practice 3 (#448)
Browse files Browse the repository at this point in the history
* Add falling rocks to cave practice 3

Signed-off-by: Nate Koenig <nate@openrobotics.org>

* Comments

Signed-off-by: Nate Koenig <nate@openrobotics.org>

* Move rocks out of collision

Signed-off-by: Nate Koenig <nate@openrobotics.org>

Co-authored-by: Nate Koenig <nate@openrobotics.org>
  • Loading branch information
nkoenig and Nate Koenig authored Jun 9, 2020
1 parent b060148 commit 43f78de
Showing 1 changed file with 248 additions and 0 deletions.
248 changes: 248 additions & 0 deletions subt_ign/worlds/cave_circuit_practice_03.sdf
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,254 @@
<origin_visual>false</origin_visual>
</scene>

<!-- START ROCK FALL 1 -->
<!--Performer detector at Rock Fall #1-->
<model name="performer_detector_1">
<static>true</static>
<pose>348.293000 224.719000 5.290740 0.0 0.0 0.0</pose>
<!-- Uncomment to visualize performer detector -->
<!--<link name='body'>
<visual name="v1">
<transparency>1.0</transparency>
<geometry>
<box>
<size>16 25 15</size>
</box>
</geometry>
</visual>
<material>
<ambient>0.0 1.0 0.0 1</ambient>
<diffuse>0.0 1.0 0.0 1</diffuse>
<specular>0.5 0.5 0.5 1</specular>
</material>
<cast_shadows>false</cast_shadows>
</link> -->
<plugin filename="libignition-gazebo-performer-detector-system.so"
name="ignition::gazebo::systems::PerformerDetector">
<topic>/subt_performer_detector</topic>
<geometry>
<box>
<size>16 25 15</size>
</box>
</geometry>
</plugin>

<!--TriggeredPublisher that publishes on the "deploy" topic of dynamic_rocks_1 when a performer enters the region defined in performer_detector_1-->
<plugin name="ignition::gazebo::systems::TriggeredPublisher" filename="libignition-gazebo-triggered-publisher-system.so">
<input type="ignition.msgs.Pose" topic="/subt_performer_detector">
<match field="header.data">
{
key: "frame_id"
value: "performer_detector_1"
}
</match>
<match field="header.data">
{
key: "state"
value: "1"
}
</match>
</input>
<output type="ignition.msgs.Empty" topic="/model/dynamic_rocks_1/breadcrumbs/Rock/deploy"/>
</plugin>
</model>

<!-- Dynamic Rocks 1, this is associated with performer_detector_1 -->
<include>
<name>dynamic_rocks_1</name>
<pose>348.293000 222.773000 10.127600 0.0 0.0 0.0</pose>
<uri>
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Medium Rock Fall
</uri>
</include>
<!-- END ROCK FALL 1 -->

<!-- START ROCK FALL 2 -->
<!--Performer detector at Rock Fall #2-->
<model name="performer_detector_2">
<static>true</static>
<pose>847.566000 125.260000 24.790600 0.0 0.0 0.0</pose>
<!-- Uncomment to visualize performer detector -->
<!--<link name='body'>
<visual name="v1">
<transparency>1.0</transparency>
<geometry>
<box>
<size>16 25 15</size>
</box>
</geometry>
</visual>
<material>
<ambient>0.0 1.0 0.0 1</ambient>
<diffuse>0.0 1.0 0.0 1</diffuse>
<specular>0.5 0.5 0.5 1</specular>
</material>
<cast_shadows>false</cast_shadows>
</link>-->
<plugin filename="libignition-gazebo-performer-detector-system.so"
name="ignition::gazebo::systems::PerformerDetector">
<topic>/subt_performer_detector</topic>
<geometry>
<box>
<size>16 25 15</size>
</box>
</geometry>
</plugin>

<!--TriggeredPublisher that publishes on the "deploy" topic of dynamic_rocks_2 when a performer enters the region defined in performer_detector_2-->
<plugin name="ignition::gazebo::systems::TriggeredPublisher" filename="libignition-gazebo-triggered-publisher-system.so">
<input type="ignition.msgs.Pose" topic="/subt_performer_detector">
<match field="header.data">
{
key: "frame_id"
value: "performer_detector_2"
}
</match>
<match field="header.data">
{
key: "state"
value: "1"
}
</match>
</input>
<output type="ignition.msgs.Empty" topic="/model/dynamic_rocks_2/breadcrumbs/Rock/deploy"/>
</plugin>
</model>

<!-- Dynamic Rocks 2, this is associated with performer_detector_2 -->
<include>
<name>dynamic_rocks_2</name>
<pose>847.566000 126.873000 29.7217 0.0 0.0 0.0</pose>
<uri>
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Medium Rock Fall
</uri>
</include>
<!-- END ROCK FALL 2 -->

<!-- START ROCK FALL 3 -->
<!--Performer detector at Rock Fall #3-->
<model name="performer_detector_3">
<static>true</static>
<pose>153.975000 4.009890 -3.875 0.0 0.0 0.0</pose>
<!-- Uncomment to visualize performer detector -->
<!-- <link name='body'>
<visual name="v1">
<transparency>1.0</transparency>
<geometry>
<box>
<size>25 16 15</size>
</box>
</geometry>
</visual>
<material>
<ambient>0.0 1.0 0.0 1</ambient>
<diffuse>0.0 1.0 0.0 1</diffuse>
<specular>0.5 0.5 0.5 1</specular>
</material>
<cast_shadows>false</cast_shadows>
</link> -->
<plugin filename="libignition-gazebo-performer-detector-system.so"
name="ignition::gazebo::systems::PerformerDetector">
<topic>/subt_performer_detector</topic>
<geometry>
<box>
<size>25 16 15</size>
</box>
</geometry>
</plugin>

<!--TriggeredPublisher that publishes on the "deploy" topic of dynamic_rocks_3 when a performer enters the region defined in performer_detector_3-->
<plugin name="ignition::gazebo::systems::TriggeredPublisher" filename="libignition-gazebo-triggered-publisher-system.so">
<input type="ignition.msgs.Pose" topic="/subt_performer_detector">
<match field="header.data">
{
key: "frame_id"
value: "performer_detector_3"
}
</match>
<match field="header.data">
{
key: "state"
value: "0"
}
</match>
</input>
<output type="ignition.msgs.Empty" topic="/model/dynamic_rocks_3/breadcrumbs/Rock/deploy"/>
</plugin>
</model>

<!-- Dynamic Rocks 3, this is associated with performer_detector_3 -->
<include>
<name>dynamic_rocks_3</name>
<pose>153.94 4.009890 -6.251890 0.0 0.0 0.0</pose>
<uri>
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Large Rock Fall
</uri>
</include>
<!-- END ROCK FALL 3 -->

<!-- START ROCK FALL 4 -->
<!--Performer detector at Rock Fall #4-->
<model name="performer_detector_4">
<static>true</static>
<pose>626.056000 300.805000 12.145300 0.0 0.0 0.0</pose>
<!-- Uncomment to visualize performer detector -->
<!-- <link name='body'>
<visual name="v1">
<transparency>1.0</transparency>
<geometry>
<box>
<size>25 16 15</size>
</box>
</geometry>
</visual>
<material>
<ambient>0.0 1.0 0.0 1</ambient>
<diffuse>0.0 1.0 0.0 1</diffuse>
<specular>0.5 0.5 0.5 1</specular>
</material>
<cast_shadows>false</cast_shadows>
</link> -->
<plugin filename="libignition-gazebo-performer-detector-system.so"
name="ignition::gazebo::systems::PerformerDetector">
<topic>/subt_performer_detector</topic>
<geometry>
<box>
<size>25 16 15</size>
</box>
</geometry>
</plugin>

<!--TriggeredPublisher that publishes on the "deploy" topic of dynamic_rocks_4 when a performer enters the region defined in performer_detector_4-->
<plugin name="ignition::gazebo::systems::TriggeredPublisher" filename="libignition-gazebo-triggered-publisher-system.so">
<input type="ignition.msgs.Pose" topic="/subt_performer_detector">
<match field="header.data">
{
key: "frame_id"
value: "performer_detector_4"
}
</match>
<match field="header.data">
{
key: "state"
value: "0"
}
</match>
</input>
<output type="ignition.msgs.Empty" topic="/model/dynamic_rocks_4/breadcrumbs/Rock/deploy"/>
</plugin>
</model>

<!-- Dynamic Rocks 4, this is associated with performer_detector_4 -->
<include>
<name>dynamic_rocks_4</name>
<pose>626.056000 300.805000 11.451700 0.0 0.0 0.0</pose>
<uri>
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Large Rock Fall
</uri>
</include>
<!-- END ROCK FALL 4 -->

<!-- The staging area -->
<include>
<static>true</static>
Expand Down

0 comments on commit 43f78de

Please sign in to comment.