gazebo 先读取本地模型_【gazebo仿真】如何在gazebo中添加一个无人机降落地标

2023-05-16

先在home目录下按ctrl+h打开隐藏文件gazebo模型的存放位置~/.gazebo/models/

新建一个模型文件夹mark_label

我们将在该文件夹中构建如下目录结构文件:

model.sdf

model.config

materials 文件夹
   --scripts  文件夹
       mark_label.material     纹理信息
   --textures  文件夹
       h.png  地标图像
       x.png  地标图像

进入mark_label

创建model.sdf

<?xml version='1.0'?>
<sdf version='1.4'>
  <model name="mark_label">
    <link name='link'>
      <pose>0 0 0.115 0 0 0</pose>
      <inertial>
        <mass>0.390</mass>
        <inertia>
          <ixx>0.00058</ixx>
          <ixy>0</ixy>
          <ixz>0</ixz>
          <iyy>0.00058</iyy>
          <iyz>0</iyz>
          <izz>0.00019</izz>
        </inertia>
      </inertial>
      <collision name='collision'>
        <geometry>
                <box>
                  <size>.496 .496 .01</size>
                </box>
        </geometry>
      </collision>

      <visual name='visual'>
        <geometry>
                <box>
                  <size>.496 .496 .01</size>
                </box>
        </geometry>

        <material>
          <script>
            <uri>model://mark_label/materials/scripts</uri>
            <uri>model://mark_label/materials/textures</uri>
            <name>Mark/Diffuse</name>
          </script>
        </material>
      </visual>
    </link>     
  </model>
</sdf>

说明:

<material>
          <script>
            <uri>model://mark_label/materials/scripts</uri> 纹理信息配置文件路径
            <uri>model://mark_label/materials/textures</uri> 纹理文件路径
            <name>Mark/Diffuse</name>
          </script>
        </material>

注意: <name>Mark/Diffuse</name> 需要与后面的mark_label.materialmaterial Mark/Diffuse一致

<model name="mark_label"> 中的名字是gazebo加载模型后的名字

创建model.config

<?xml version="1.0"?>

<model>
  <name>Mark_label</name>
  <version>1.0</version>
  <sdf version="1.4">model.sdf</sdf>

  <author>
    <name>chow</name>
  </author>

  <description>
    Landing Mark
  </description>
</model>

注意: 其中这里<name>Mark_label</name>中的Mark_label将会是你gazeboinsert下该模型的名字

创建mark_label.material

material Mark/Diffuse
{
	receive_shadows off
	technique
	{
		pass
		{
			texture_unit
			{
				
				filtering anistropic
				max_anisotropy 16
			}
		}
	}
}

注意该文件是区分tab空格
这里的material Mark/Diffuse需要与model.sdf<name>Mark/Diffuse</name>一致  
修改texture h.png的图片名字可以修改贴图

使用

打开gazebo

insert中可以找到刚刚建立的模型Mark_label

注意:第一次加载可能会很慢

参考:

参考​blog.csdn.net
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gazebo 先读取本地模型_【gazebo仿真】如何在gazebo中添加一个无人机降落地标 的相关文章

随机推荐