diff --git a/src/iri_gazebo_set_material_plugin.cc b/src/iri_gazebo_set_material_plugin.cc index 554a8ec5a7eb9bb79628360e93bb761f09c727ff..5672f98df9f8b8d6f7f07a37461a45e46a84f94f 100644 --- a/src/iri_gazebo_set_material_plugin.cc +++ b/src/iri_gazebo_set_material_plugin.cc @@ -45,8 +45,6 @@ void IriGazeboSetMaterialPlugin::Load(gazebo::rendering::VisualPtr _parent, sdf: this->plugin_name = this->GetHandle().c_str(); - ROS_INFO("handle=%s", this->GetHandle().c_str()); - if(_sdf->HasElement("material")) { this->material1_name = _sdf->GetElement("material")->Get<std::string>(); @@ -57,7 +55,16 @@ void IriGazeboSetMaterialPlugin::Load(gazebo::rendering::VisualPtr _parent, sdf: if(_sdf->HasElement("material2")) { this->material2_name = _sdf->GetElement("material2")->Get<std::string>(); - this->new_material=true; + //this->new_material=true; + } + + if(_sdf->HasElement("initial_state")) + { + bool initial_state = _sdf->GetElement("initial_state")->Get<bool>(); + if(initial_state) + { + this->material_name=this->material2_name; + } } this->pluginThread = boost::thread(boost::bind(&IriGazeboSetMaterialPlugin::threadFunction, this)); @@ -88,7 +95,7 @@ void IriGazeboSetMaterialPlugin::materialCallback(const std_msgs::String::ConstP { std_msgs::String name_msg = *_msg; - if(name_msg.data.size()==0) + if(name_msg.data.size()==0 || name_msg.data == "trigger") { if(this->material_name==this->material1_name) this->material_name=this->material2_name;