7 3 編寫外掛程式 世界外掛程式

2021-08-11 22:59:00 字數 3139 閱讀 2262

控制執行**中的模型,以及何時應該插入這些模型是很有用的。本教程演示如何在gazebo中插入預定義的和自定義的模型。

使用以前的外掛程式教程中的gazebo_plugin_tutorial

$ mkdir~/gazebo_plugin_tutorial

$ cd~/gazebo_plugin_tutorial

建立乙個新的原始檔:

$ gedit factory.cc

將下面的**複製到factory.cc檔案:

#include#include"gazebo/physics/physics.hh"

#include"gazebo/common/common.hh"

#include"gazebo/gazebo.hh"

namespacegazebo

}};// registerthis plugin with the simulator

gz_register_world_plugin(factory)

}

**的第一部分建立了乙個世界外掛程式。

#include#include"gazebo/physics/physics.hh"

#include"gazebo/common/common.hh"

#include"gazebo/gazebo.hh"

namespacegazebo

)

編譯這段**將導致乙個共享庫,~/gazebo_plugin_tutorial/build/libfactory.so。因此,這可以插入到gazebo**中。

$ mkdir~/gazebo_plugin_tutorial/build

$ cd~/gazebo_plugin_tutorial/build

$ cmake ../

$ make

用乙個方框和乙個圓柱體來製作乙個模型目錄

$ mkdir~/gazebo_plugin_tutorial/models

$ cd~/gazebo_plugin_tutorial/models

$ mkdir boxcylinder

建立乙個盒子模型

$ cd box

$ geditmodel.sdf

將以下內容複製貼上到box/model.sdf中

<?xmlversion='1.0'?>

1 2 0 0 0 0

0 0 .5 0 0 0

1 11

1 11

建立乙個model.config檔案

$ gedit model.config

將以下內容複製到model.config

<?xmlversion='1.0'?>

box1.0model.sdf

[email protected]

a ****** box.

轉到圓柱體目錄,並建立乙個新的model.sdf檔案

$ cd~/gazebo_plugin_tutorial/models/cylinder

$ geditmodel.sdf

將以下內容複製到model.sdf中

<?xmlversion='1.0'?>

1 2 0 0 0 0

0 0 .5 0 0 0

0.51

0.51

建立乙個model.config檔案

$ geditmodel.config

將以下內容複製到model.config

<?xmlversion='1.0'?>

cylinder

1.0model.sdf

[email protected]

a ****** cylinder.

確保您的$gazebo_model_path引用您的新模型目錄

$ export gazebo_model_path=$home/gazebo_plugin_tutorial/models:$gazebo_model_path

將您的庫路徑新增到gazebo_plugin_path:

$ exportgazebo_plugin_path=$home/gazebo_plugin_tutorial/build:$gazebo_plugin_path

建立乙個名為~/gazebo_plugin_tutorial/factory.world的世界sdf檔案。

$ cd ~/gazebo_plugin_tutorial

$ geditfactory.world

把下面的內容複製到世界

<?xmlversion="1.0"?>

model://ground_plane

model://sun

執行gazebo

$ gazebo~/gazebo_plugin_tutorial/factory.world

gazebo視窗應該顯示乙個環境,其中包含乙個球體、乙個立方體和乙個圓柱體。

7 2 編寫外掛程式 模型外掛程式

概述 helloworld外掛程式教程 外掛程式允許完全訪問模型及其基本元素 鏈結 節點 碰撞物件 的物理屬性。下面的外掛程式將對其父模型應用乙個線性速度。cd gazebo plugin tutorial geditmodel push.cc 外掛程式 include include includ...

CKEditor外掛程式編寫

4.外掛程式編寫流程和例項 1 在plugins目錄新建資料夾apage,在apage下新建檔案 plugin.js 內容如下 ckeditor.plugins.add apage 2 在 中加一項page,並在配置中宣告新增擴充套件外掛程式 config.extraplugins apage 有兩...

jquery外掛程式編寫

最近大家都玩什麼react node angular這些玩意去了 隨著瀏覽器的相容性 以及前端開發思想的進化 jquery逐漸被拋棄 現在自己也很少用了 純粹為了懷戀曾經的jquery.現在寫寫jquery外掛程式的寫法。沒事的時候避免老年痴呆,可以用來玩玩。寫法一 function window ...