(一)本節教程介紹如何使用roscreate-pkg或catin建立乙個新程式包,並使用rospack檢視程式包的依賴關係
1)乙個catkin程式包由什麼組成
乙個程式包想要稱為caktin程式包必須符合以下要求:
1–該程式包必需包含caktin compliant package.xml檔案—-這個package.xml檔案提供有關程式包的
元資訊
2–程式包必須包含乙個caktin版本的cmakelists.txt檔案,而caktin metapackages中必須包含乙個對
cmakelist.txt的引用
3–每個目錄下只能有乙個程式包—這意味者同乙個目錄下不能有巢狀的或者多個程式包存在
2)在catkin工作空間中的程式包
1–開發caktin程式包的乙個推薦方法是使用caktin工作空間,但是你也可以單獨開發caktin軟體包。
3)建立乙個caktin程式包
1–本部分教程將演示如何使用—caktin_create_pkg命令來建立乙個新的catkin程式包以及建立之後都
都能做些什麼
2–首先,切換到之前通過建立catkin工作空間教程建立的catkin工作空間中的src目錄下:
cd ~/catkin_ws/src
3–現在使用–catkin_create_pkg命令建立乙個名為maweifei的新程式包,這個包依賴於std_msgs,roscpp
和rospy
示例如下所示:catkin_create_pkg maweifei std_msgs rospy roscpp
輸出結果如下所示:
created file maweifei/cmakelists.txt
created file maweifei/package.xml
created folder maweifei/include/maweifei
created folder maweifei/src
successfully created files in /home/wei/catkin_ws/src/maweifei.
please adjust the values in package.xml.
4–這將會建立乙個名為maweifei的資料夾,這個資料夾裡面包含乙個package.xml檔案和乙個cmakelists.txt
檔案,這兩個檔案都已經自動包含了部分你在執行catkin_create_pkg命令是提供的資訊
5)程式包依賴關係
1)一級依賴:
1–之前在使用catkin_create_pkg命令時,提供了幾個程式包作為依賴包,現在,我們可以使用rospack命令
工具來檢視一級依賴包
示例如下所示:
rospack depends1 maweifei ——但是這個命令有bug,現在還不知道為什麼
2)間接依賴
1–在很多情況中,乙個依賴包還有有它自己的依賴包,比如,rospy還有其他依賴包
示例如下所示—-rospack depends1 rospy
輸出的結果為: genpy
roscpp
rosgraph
rosgraph_msgs
roslib
std_msgs
2–乙個程式包還有還幾個簡介依賴包,幸運的是使用rospack可以遞迴檢測出所有的依賴包
示例如下所示–rospack depends rospy
輸出結果為:
genmsg
genpy
cpp_common
rostime
roscpp_traits
roscpp_serialization
message_runtime
catkin
gencpp
genlisp
message_generation
rosbuild
rosconsole
std_msgs
rosgraph_msgs
xmlrpcpp
roscpp
rosgraph
rospack
roslib
6)自定義你的程式包
第五節 檔案操作
read讀取檔案全部內容,預設就是讀模式,所以不需要指定模式 f open test2.py encoding utf8 data f.read print data f.close redline讀取檔案的一行內容,列印的時候加上end 否則會有空格 f open test2.py encodin...
函式第五節
coding utf 8 1.定義乙個func name 該函式效果如下。assert func lilei lilei assert func hanmeimei hanmeimei assert func hanmeimei hanmeimei def title name if isinsta...
第五節 字典
字典的表現形式為大括號 dict key必須可hash,必須唯一且必須為不可改變的資料型別 value可存放任意多個值,可修改,可不唯一 無序且查詢速度快 鍵 值 鍵值對 1 dic.keys 返回乙個包含字典所有key的列表 2 dic.values 返回乙個包含字典所有value的列表 3 di...