python ROS 2-露台:在立方体的侧面显示图像

mf98qq94  于 2023-04-10  发布在  Python
关注(0)|答案(1)|浏览(112)

我试图在Gazebo中的立方体的一面(只有一面)显示aruco标记。我使用以下模型,粘贴在世界文件中:

<model name='charger'>
    <static>true</static>
    <link name='charger_link'>
        <collision name='charger_collision'>
            <geometry>
                <box>
                    <size>1 1 1</size>
                </box>
            </geometry>
        </collision>
        <visual name='charger_visual'>
            <geometry>
                <box>
                    <size>1 1 1</size>
                </box>
            </geometry>
            <material>
                <script>
                    <uri>file://../models/aruco_markers/aruco_marker_42.png</uri>
                    <name>charger_material</name>
                </script>
                <ambient>1 1 1 1</ambient>
                <diffuse>1 1 1 1</diffuse>
                <specular>0 0 0 1</specular>
                <emissive>1 1 1 0</emissive>
                <shader type='vertex'>
                  <normal_map>__default__</normal_map>
                </shader>                    
            </material>
        </visual>
    </link>
    <pose>0 7.7 0.5 0 0 0</pose>
</model>

目录结构为:
SRC
src/worlds(这是world文件所在的位置)
src/models
src/models/aruco_marks(这是图像所在的位置)
尽管如此,我所看到的只是一个立方体,它的侧面没有任何图像。有什么建议吗?

h6my8fg2

h6my8fg21#

您正在<material>中使用<script>标记,请使用<texture>标记,确保文件aruco_marker_42.png位于正确的目录src/models/aruco_markers中,并且下面的模型定义应该可以工作。

<model name='charger'>
  <static>true</static>
  <link name='charger_link'>
    <collision name='charger_collision'>
      <geometry>
        <box>
          <size>1 1 1</size>
        </box>
      </geometry>
    </collision>
    <visual name='charger_visual'>
      <geometry>
        <box>
          <size>1 1 1</size>
        </box>
      </geometry>
      <material>
        <ambient>1 1 1 1</ambient>
        <diffuse>1 1 1 1</diffuse>
        <specular>0 0 0 1</specular>
        <emissive>1 1 1 0</emissive>
        <shader type='vertex'>
          <normal_map>__default__</normal_map>
        </shader>
        <texture>
          <diffuse>
            <uri>file://../models/aruco_markers/aruco_marker_42.png</uri>
          </diffuse>
        </texture>
      </material>
    </visual>
  </link>
  <pose>0 7.7 0.5 0 0 0</pose>
</model>

相关问题