gazebo9中在墙上添加二维码

1、aruco-1到aruco-34这些二维码图片(png格式)及下述配置文件上传至https://download.csdn.net/download/zhaohaowu/83982724
将这34张二维码图片保存到/usr/share/gazebo-9/media/materials/textures中

在这里插入图片描述

sudo cp * /usr/share/gazebo-9/media/materials/textures

2、在/usr/share/gazebo-9/media/materials/scripts中新建aruco.material

sudo gedit aruco.material
import * from "grid.material"
material Gazebo/aruco-1
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-1.png
      }
    }
  }
}
material Gazebo/aruco-2
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-2.png
      }
    }
  }
}
material Gazebo/aruco-3
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-3.png
      }
    }
  }
}
material Gazebo/aruco-4
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-4.png
      }
    }
  }
}
material Gazebo/aruco-5
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-5.png
      }
    }
  }
}
material Gazebo/aruco-6
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-6.png
      }
    }
  }
}
material Gazebo/aruco-7
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-7.png
      }
    }
  }
}
material Gazebo/aruco-8
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-8.png
      }
    }
  }
}
material Gazebo/aruco-9
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-9.png
      }
    }
  }
}
material Gazebo/aruco-10
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-10.png
      }
    }
  }
}
material Gazebo/aruco-11
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-11.png
      }
    }
  }
}
material Gazebo/aruco-12
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-12.png
      }
    }
  }
}
material Gazebo/aruco-13
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-13.png
      }
    }
  }
}
material Gazebo/aruco-14
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-14.png
      }
    }
  }
}
material Gazebo/aruco-15
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-15.png
      }
    }
  }
}
material Gazebo/aruco-16
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-16.png
      }
    }
  }
}
material Gazebo/aruco-17
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-17.png
      }
    }
  }
}
material Gazebo/aruco-18
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-18.png
      }
    }
  }
}
material Gazebo/aruco-19
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-19.png
      }
    }
  }
}
material Gazebo/aruco-20
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-20.png
      }
    }
  }
}
material Gazebo/aruco-21
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-21.png
      }
    }
  }
}
material Gazebo/aruco-22
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-22.png
      }
    }
  }
}
material Gazebo/aruco-23
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-23.png
      }
    }
  }
}
material Gazebo/aruco-24
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-24.png
      }
    }
  }
}
material Gazebo/aruco-25
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-25.png
      }
    }
  }
}
material Gazebo/aruco-26
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-26.png
      }
    }
  }
}
material Gazebo/aruco-27
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-27.png
      }
    }
  }
}
material Gazebo/aruco-28
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-28.png
      }
    }
  }
}
material Gazebo/aruco-29
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-29.png
      }
    }
  }
}
material Gazebo/aruco-30
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-30.png
      }
    }
  }
}
material Gazebo/aruco-31
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-31.png
      }
    }
  }
}
material Gazebo/aruco-32
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-32.png
      }
    }
  }
}
material Gazebo/aruco-33
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-33.png
      }
    }
  }
}
material Gazebo/aruco-34
{
  receive_shadows on

  technique
  {
    pass
    {
      ambient 0.5 0.5 0.5 1.000000

      texture_unit
      {
        texture aruco-34.png
      }
    }
  }
}

3、在gazebo中添加一个Edit->Building Editor,生成sdf文件,放在~/.gazebo/models文件夹下

4、添加34个二维码link,在墙link之间和二维码link之间添加34个joint,最后从gazebo中insert即可,成品图如下
在这里插入图片描述

gedit model.sdf
<?xml version='1.0'?>
<sdf version='1.6'>
  <model name='Untitled'>
    <pose frame=''>83.675 -5.225 0 0 -0 0</pose>
    <link name='Wall_0'>
      <collision name='Wall_0_Collision'>
        <geometry>
          <box>
            <size>174 0.15 2.5</size>
          </box>
        </geometry>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
      </collision>
      <visual name='Wall_0_Visual'>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
        <geometry>
          <box>
            <size>174 0.15 2.5</size>
          </box>
        </geometry>
        <material>
          <script>
            <uri>file://media/materials/scripts/gazebo.material</uri>
            <name>Gazebo/Grey</name>
          </script>
          <ambient>1 1 1 1</ambient>
        </material>
        <meta>
          <layer>0</layer>
        </meta>
      </visual>
      <pose frame=''>2e-06 2.675 0 0 -0 0</pose>
    </link>
    <link name='Wall_1'>
      <collision name='Wall_1_Collision'>
        <geometry>
          <box>
            <size>5.5 0.15 2.5</size>
          </box>
        </geometry>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
      </collision>
      <visual name='Wall_1_Visual'>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
        <geometry>
          <box>
            <size>5.5 0.15 2.5</size>
          </box>
        </geometry>
        <material>
          <script>
            <uri>file://media/materials/scripts/gazebo.material</uri>
            <name>Gazebo/Grey</name>
          </script>
          <ambient>1 1 1 1</ambient>
        </material>
        <meta>
          <layer>0</layer>
        </meta>
      </visual>
      <pose frame=''>86.925 0 0 0 -0 -1.5708</pose>
    </link>
  <joint type="fixed" name="aruco-1_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-1</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-1">
        <pose>-85 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-1">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-1</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-2_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-2</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-2">
        <pose>-80 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-2">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-2</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-3_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-3</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-3">
        <pose>-75 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-3">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-3</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-4_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-4</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-4">
        <pose>-70 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-4">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-4</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-5_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-5</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-5">
        <pose>-65 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-5">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-5</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-6_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-6</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-6">
        <pose>-60 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-6">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-6</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-7_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-7</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-7">
        <pose>-55 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-7">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-7</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-8_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-8</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-8">
        <pose>-50 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-8">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-8</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-9_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-9</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-9">
        <pose>-45 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-9">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-9</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-10_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-10</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-10">
        <pose>-40 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-10">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-10</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-11_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-11</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-11">
        <pose>-35 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-11">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-11</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-12_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-12</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-12">
        <pose>-30 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-12">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-12</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-13_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-13</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-13">
        <pose>-25 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-13">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-13</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-14_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-14</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-14">
        <pose>-20 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-14">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-14</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-15_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-15</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-15">
        <pose>-15 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-15">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-15</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-16_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-16</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-16">
        <pose>-10 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-16">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-16</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-17_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-17</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-17">
        <pose>-5 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-17">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-17</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-18_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-18</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-18">
        <pose>0 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-18">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-18</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-19_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-19</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-19">
        <pose>5 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-19">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-19</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-20_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-20</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-20">
        <pose>10 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-20">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-20</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-21_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-21</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-21">
        <pose>15 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-21">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-21</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-22_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-22</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-22">
        <pose>20 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-22">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-22</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-23_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-23</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-23">
        <pose>25 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-23">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-23</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-24_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-24</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-24">
        <pose>30 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-24">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-24</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-25_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-25</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-25">
        <pose>35 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-25">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-25</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-26_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-26</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-26">
        <pose>40 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-26">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-26</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-27_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-27</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-27">
        <pose>45 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-27">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-27</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-28_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-28</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-28">
        <pose>50 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-28">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-28</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-29_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-29</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-29">
        <pose>55 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-29">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-29</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-30_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-30</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-30">
        <pose>60 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-30">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-30</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

  <joint type="fixed" name="aruco-31_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-31</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-31">
        <pose>65 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-31">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-31</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>
  <joint type="fixed" name="aruco-32_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-32</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-32">
        <pose>70 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-32">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-32</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>
  <joint type="fixed" name="aruco-33_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-33</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-33">
        <pose>75 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-33">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-33</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>
  <joint type="fixed" name="aruco-34_joint">//一定要定义该joint,否则图片的位置无法准确定义,这是sdf编写的规则决定的
      <pose>0 0 0 0 0 0</pose>
      <child>aruco-34</child>
      <parent>Wall_0</parent>
    </joint>
    <link name="aruco-34">
        <pose>80 -2.6 0.5 0 0 0</pose>//定义该link的位置,就是决定贴图位置,红线,绿线,蓝线

            <visual name="aruco-34">
               <pose>0 0 0 0 0 0</pose>
              <geometry>
               2 <box>
                  <size>0.5 0.01 0.5</size>//link的大小决定这图片显示大小,长,厚,宽
                </box>
              </geometry>
              <material>
               <script>
                  <uri>file://media/materials/scripts/aruco.material</uri>
                  <name>Gazebo/aruco-34</name>
                </script>
		<ambient>1 1 1 1</ambient>
               </material>
           </visual>
     </link>

    <link name='Wall_2'>
      <collision name='Wall_2_Collision'>
        <geometry>
          <box>
            <size>174 0.15 2.5</size>
          </box>
        </geometry>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
      </collision>
      <visual name='Wall_2_Visual'>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
        <geometry>
          <box>
            <size>174 0.15 2.5</size>
          </box>
        </geometry>
        <material>
          <script>
            <uri>file://media/materials/scripts/gazebo.material</uri>
            <name>Gazebo/Grey</name>
          </script>
          <ambient>1 1 1 1</ambient>
        </material>
        <meta>
          <layer>0</layer>
        </meta>
      </visual>
      <pose frame=''>2e-06 -2.675 0 0 -0 3.14159</pose>
    </link>
    <link name='Wall_3'>
      <collision name='Wall_3_Collision'>
        <geometry>
          <box>
            <size>5.5 0.15 2.5</size>
          </box>
        </geometry>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
      </collision>
      <visual name='Wall_3_Visual'>
        <pose frame=''>0 0 1.25 0 -0 0</pose>
        <geometry>
          <box>
            <size>5.5 0.15 2.5</size>
          </box>
        </geometry>
        <material>
          <script>
            <uri>file://media/materials/scripts/gazebo.material</uri>
            <name>Gazebo/Grey</name>
          </script>
          <ambient>1 1 1 1</ambient>
        </material>
        <meta>
          <layer>0</layer>
        </meta>
      </visual>
      <pose frame=''>-86.925 0 0 0 -0 1.5708</pose>
    </link>
    <static>1</static>
  </model>
</sdf>
  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dear小王子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值