怎么做各个地图网站的认证,网站开发的验收标准,织梦建设手机网站,wordpress主题购物官网代码
后退地平线下一个最佳景观规划师 这个代码有些久远#xff0c;issue里面有人已经在ubuntu20里面使用了3dmr#xff0c;但是他那个代码我也运行不成功#xff0c;docker网络一直也不佳#xff0c;所以还是自己重新修改源码靠谱。
最终实现的代码等有时间上传到gi…官网代码
后退地平线下一个最佳景观规划师 这个代码有些久远issue里面有人已经在ubuntu20里面使用了3dmr但是他那个代码我也运行不成功docker网络一直也不佳所以还是自己重新修改源码靠谱。
最终实现的代码等有时间上传到github上。
最终实现的代码下载后直接编译我前面配置过环境所以都不缺如果有什么缺的可以回复,我完善下。
GitHub - anning808/nbvplanner: A real-time capable exploration and inspection path planner (next best view planning) catkin build roslaunch interface_nbvp_rotors flat_exploration.launch 规划器的安装和执行
要运行当前版本请编译包 nbvplanner。要获取它请导航到 ros 工作区的源文件夹 git clone https://github.com/ethz-asl/nbvplanner.git cd nbvplanner git submodule init -- git submodule sync --recursive git submodule update --recursive cd .. 此外请确保您拥有所有必要的库 sudo apt-get install ros-noetic-octomap-* sudo apt-get install python-catkin-tools 编译问题 rotors_gazebo_plugins/common.h 添加 #include gazebo/sensors/Sensor.hh gazebo_odometry_plugin.cpp 更改
octomath::Vector3 p to_check.top();
if ((p.x() bounding_box_origin.x - bounding_box_lengths.x / 2) (p.x() bounding_box_origin.x bounding_box_lengths.x / 2) (p.y() bounding_box_origin.y - bounding_box_lengths.y / 2) (p.y() bounding_box_origin.y bounding_box_lengths.y / 2) (p.z() bounding_box_origin.z - bounding_box_lengths.z / 2) (p.z() bounding_box_origin.z bounding_box_lengths.z / 2) (!octomap_-search(p))) {octomap_-setNodeValue(p, 0);
改为
ignition::math::Vector3double p to_check.top();octomap::point3d point(p.X(), p.Y(), p.Z());if ((p.X() bounding_box_origin.X() - bounding_box_lengths.X() / 2) (p.X() bounding_box_origin.X() bounding_box_lengths.X() / 2) (p.Y() bounding_box_origin.Y() - bounding_box_lengths.Y() / 2) (p.Y() bounding_box_origin.Y() bounding_box_lengths.Y() / 2) (p.Z() bounding_box_origin.Z() - bounding_box_lengths.Z() / 2) (p.Z() bounding_box_origin.Z() bounding_box_lengths.Z() / 2) (!octomap_-search(point))) {octomap_-setNodeValue(point, 0);
3.版本不同需要更换的内容使用vscode全局搜索全局替换有部分不是全局修改
最好选择一个个编译一个一个改。 全局替换add_definitions(-stdc11) →add_definitions(-stdc14) 全局替换GetPhysicsEngine() →Physics() 全局替换#include gazebo/math/Vector3.hh → #include ignition/math.hh 全局替换math::Vector3 → ignition::math::Vector3double 全局替换event::Events::DisconnectWorldUpdateBegin(updateConnection); → this-updateConnection.reset(); 全局替换GetSimTime →SimTime 全局替换include_directories(${Eigen_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS}) → include_directories(${Eigen_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS} ../../../devel/include) 全局替换GetAngle(0).Radian(); → Position(0); 全局替换event::Events::DisconnectWorldUpdateBegin(update_connection_); → this-updateConnection.reset(); GetGlobalAxis →GlobalAxis math::Quaternion → ignition::math::Quaterniondouble GetWorldCoGPose →WorldCoGPose pose_difference.rot.RotateVector →pose_difference.Rot().RotateVector GetRelativeLinearVel → RelativeLinearVel GetWorldPose → WorldPose GetEntity → EntityByName GetRelativeAngularVel → RelativeAngularVel .rot. → .Rot(). .rot → .Rot() GetInverse → Inverse sdf::Vector3 → ignition::math::Vector3double CV_LOAD_IMAGE_GRAYSCALE cv::IMREAD_GRAYSCALE GetRelativeLinearAccel RelativeLinearAccel GetWorldAngularVel WorldAngularVel GetLength Length 参考
官方》的迁移记录可以换找其他版本
https://github.com/gazebosim/gazebo-classic/blob/gazebo8_8.0.0_beta1/Migration.md gazebo7----gazebo9代码迁移_event::events::disconnectworldupdatebegin(this-up-CSDN博客
编译nbv_planner遇到的问题_nbvplanner-CSDN博客
4.usr/bin/ld: 找不到 -lUUID::UUID sudo apt-get install uuid-dev 还是找不到就自己软链接locate libuuid搜索位置 然后创建软链接 cd /usr/lib/ sudo ln -s x86_64-linux-gnu/libuuid.so libUUID::UUID.so
5.error: ‘class ignition::math::v6::Vector3double’ has no member named ‘x’ 类似很多vel.z的的格式改为 vel→X()格式但是不能全局替换只能根据报错部分一点点替换改为大写的X()Y()Z()
6.将 interface_nbvp_rotors 的 CMakeLists.txt 从 include_directories(${Eigen_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS}) 更改为 include_directories(${Eigen_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS} ../../../devel/include) 7.修改添加头文件 gazebo_imu_plugin.cpp里面的 gravity_W_ world-Physics()-GetGravity(); imu_parameters.gravity_magnitude gravity_W_.GetLength(); 更换为 #include gazebo/physics/World.hh添加到最前面 替换上面位置 gravity_W_ world_-Physics()-World()-Gravity();imu_parameters_.gravity_magnitude gravity_W_.Length(); 编译 catkin build 成功 几个运行问题
对于模拟演示启动
运行失败启动方式改变
$(find rotors_description)/scripts/xacro.py
改为
$(find rotors_description)/scripts/xacro 还有部分问题根据别人的回答解决
Error running demo launch file · Issue #30 · ethz-asl/nbvplanner · GitHub
https://orfaustria1.com/?_/ethz-asl/rotors_simulator/issues/710#KJWqMdlUlBnsIvkdRRuhIT4
运行
roslaunch interface_nbvp_rotors flat_exploration.launch
成功