1.rosbag play --pause out.bag 开始运行bag时不发布数据,直到你按下空格键它才开始发布,同样你再按空格键rosbag又会暂停发布。
2.rosbag filter input.bag output.bag “t.to_sec() <= 1284703931.86” 把Bag Time<=1284703931.86的部分提取出来,重新放到一个新的ouput.bag里
3.# 查找当前目录下的所有源文件
#并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)
#指定生成目标
add_executable(Demo ${DIR_SRCS})
4.add_subdirectory(math) 在当前cmakelist所在文件夹路径下存在名为math的文件夹因此此步将其文件夹中的cmakelist和源代码添加进来作为子目录,
#添加链接库
target_link_libraries(Demo MathFunctions)
5.在子目录math下的cmakelist
#查找当前目录下的所有源文件
#并将名称保存到 DIR_LIB_SRCS 变量
aux_source_directory(. DIR_LIB_SRCS)
#源文件编译为静态链接库。用来被4target_link_libraries链接给Demo
add_library (MathFunctions ${DIR_LIB_SRCS}
6.catkin_make --pkg 包名 #编译指定的包
7.在大多数使用情况下,没有必要使用link_directories(),因为该信息通过find_package()已经自动提取到了。
8.include_directories(include ${catkin_INCLUDE_DIRS}) 引用同一工作空间下的其他包的头文件
9.带dir的是路径,不带dir的是文件名。
10.add_definitions是找其预定义的内容
11.CMAKE -D D也是预定义的意思,相当于宏或者关键字。
12.PROJECT_SOURCE_DIR是cmakelists的绝对路径
13.set(关键字 值)
14.pkg-config --cflags 名字 #查看软件包头文件路径
pkg-config --libs 名字 #查看软件包库文件路径
apt-cache search 软件包名字 #查找相关的软件包
sudo apt-get install 软件包名字
15.sudo apt-get install libgnome2-bin安装工具,xdg-open . 路径 来打开路径所在的文件夹
16.PROJECT_BINARY_DIR=全路径/build
PROJECT_SOURCE_DIR=全路径/src
CMAKE_CURRENT_SOURCE_DIR指的是当前处理的 CMakeLists.txt 所在的路径
17.${catkin_INCLUDE_DIRS}将引用每一个功能包中的include目录的头文件