zoukankan      html  css  js  c++  java
  • PX4 gazebo地标二维码模型

    最简单的办法
    通过现有模型改一版
    cd /Firmware/Tools/sitl_gazebo/models
    可以基于asphalt_plane模型改

    vi marker/model.config

    <?xml version="2.0"?>
    
    <model>
      <name>land marker</name>
      <version>1.0</version>
      <sdf version="1.5">model.sdf</sdf>
    
      <author>
        <name>Thomas Zxc</name>
        <email>thomas.zxc@gmail.com</email>
      </author>
    
      <description>
        An marker.
      </description>
    
    </model>
    

    vi marker/model.sdf

    <?xml version="2.0" ?>
    <sdf version="1.5">
      <model name="marker">
        <static>true</static>
        <link name="link">
          <collision name="collision">
            <geometry>
              <box>
                <size>0.4 0.4 0.01</size>
              </box>
            </geometry>
          </collision>
          <visual name="visual">
            <cast_shadows>false</cast_shadows>
            <geometry>
              <box>
                <size>0.4 0.4 0.01</size>
              </box>
            </geometry>
            <material>
              <script>
                <uri>model://marker/materials/scripts</uri>
                <uri>model://marker/materials/textures</uri>
                <name>vrc/asphalt</name>
              </script>
            </material>
          </visual>
        </link>
      </model>
    </sdf>
    

    vi marker/materials/scripts/asphalt.material

    material vrc/asphalt
    {
            technique
            {
                    pass
                    {
                            ambient 0.5 0.5 0.5 1.0
                            diffuse 0.5 0.5 0.5 1.0
                            specular 0.2 0.2 0.2 1.0 12.5
    
                            texture_unit
                            {
                                    texture marker.png
                                    filtering anistropic
                                    max_anisotropy 16
                                    scale 1.0 1.0
                            }
                    }
            }
    }
    

    ls marker/materials/textures/

    marker.png
    

    启动自动添加
    mavros_posix_sitl.launch默认使用的是empty.world
    vi worlds/empty.world

    <!-- 添加 -->
    <!-- marker是文件夹名 -->
    <include>
      <pose frame=''>0.0 0.0 0.05 0.0 0.0 0.0</pose>
      <uri>model://marker</uri>
    </include>
    

    效果

    自动生成地标

    sudo apt-get install ros-kinetic-ar-track-alvar
    rosrun ar_track_alvar createMarker [number]
    
  • 相关阅读:
    构建之法阅读笔记05
    四元数(Quaternion)
    httpclient
    两种unity双击事件
    WWW网络请求
    Unity混合天空盒
    unity message
    unity射线检测
    unity 初始化数据存储问题
    Awake,start,update,OnEnable,OnDisable
  • 原文地址:https://www.cnblogs.com/zhangxuechao/p/14953388.html
Copyright © 2011-2022 走看看