noetic版本下xacro巨集定義的基本使用

2021-10-18 12:55:02 字數 2044 閱讀 3956

<?xml version="1.0"?>

name

="mbot"

xmlns:xacro

="">

上邊第二行表示是xacro檔案的乙個宣告,是用來告訴系統這個檔案是xacro檔案格式

定義格式:

<

xacro:property

name

="常量名稱"

value

="常量值"

>

呼叫格式

$
<

xacro:macro

name

="函式名稱"

param

=「引數1名稱

引數2名稱

...」

>

函式內容

xacro:macro

>

noetic版本呼叫格式

<

xacro:函式1名稱

引數1值

引數2值

.../>

<

xacro:include

filename

="$(find package_name)/xacoro檔案路徑/xacro檔名.xacro"

/>

上邊的package要換成xacro檔案所在的功能包名稱,檔案路徑要換成自己放置xacro檔案的路徑(從功能包的下一級路徑開始算),再後邊是檔名

例如,xacro檔案boat_xacro.xacro在功能包boat_xacro下的urdf資料夾裡邊:

<

xacro:include

filename

="$(find boat_xacro)/urdf/boat_base.xacro"

/>

>

name

="model"

default

="$(find xacro)/xacro --inorder '$(find package_name)/xacro檔案路徑/xacro檔名.xacro'

" />

name

="gui"

default

="true"

/>

name

="robot_description"

command

="$(arg model)"

/>

name

="use_gui"

value

="$(arg gui)"

/>

name

="joint_state_publisher"

pkg="joint_state_publisher"

type

="joint_state_publisher"

/>

name

="robot_state_publisher"

pkg="robot_state_publisher"

type

="robot_state_publisher"

/>

name

="rviz"

pkg="rviz"

type

="rviz"

args

="-d $(find packgae_name)/config/需要儲存rviz檔案的名字.rviz"

required

="true"

/>

launch

>

需要改動的就是開始的功能包名稱,xacro檔案路徑,xacro檔名稱,還有後邊的需要儲存的rviz檔案的路徑。

上述這個方法是比較常用的利用xacro檔案編譯器來編譯,還有一種方法是把它轉換成urdf檔案再進行編譯,因為不常用,所以就沒有再寫出來了。

SVN 版本 巨集

新建乙個標頭檔案,定義版本和時間 ifndef version header define version header define def svn version text 1.0.0.wcrev define def svn datetime text wcdate endif 預生成事件 s...

iphone sdk版本巨集

當前系統支援的最小版本 iphone os version min required 當前系統支援的最大版本 iphone os version max allowed 比如用 iphone os sdk 3.1.2 編譯的程式 iphone os version min required ipho...

iphone sdk版本巨集

123 4 當前系統支援的最小版本 iphone os version min required 當前系統支援的最大版本 iphone os version max allowed 比如用 iphone os sdk 3.1.2 編譯的程式 1 2 iphone os version min req...