当前位置: 首页 > wzjs >正文

制作公司网站教程上海住房和城乡建设部网站首页

制作公司网站教程,上海住房和城乡建设部网站首页,每太营销咨询,wordpress cc在做ldiar slam的时候&#xff0c;最常用的当属topic&#xff0c;偶尔也会用一下service&#xff0c;action则很少使用。现在一块来看一下topic的使用。一、topic的使用topic的消息订阅和发布#include<ros/ros.h> #include<rosbag/bag.h> #include<rosbag/view.…

在做ldiar slam的时候,最常用的当属topic,偶尔也会用一下service,action则很少使用。现在一块来看一下topic的使用。

一、topic的使用

topic的消息订阅和发布

#include<ros/ros.h>
#include<rosbag/bag.h>
#include<rosbag/view.h>
#include<std_msgs/String.h>
#include<pcl/point_types.h>
#include<pcl/point_cloud.h>
#include<pcl/conversions.h>
#include<pcl_conversions/pcl_conversions.h>
#include<opencv2/opencv.hpp>#include<image_transport/image_transport.h>
#include<cv_bridge/cv_bridge.h>
#include<sensor_msgs/PointCloud2.h>
#include<sensor_msgs/Imu.h>
#include<nav_msgs/Odometry.h>
#include<sensor_msgs/LaserScan.h>
#include<sensor_msgs/Range.h>
#include<turtlesim/Spawn.h>
#include<std_srvs/Trigger.h>class DataProcess
{public:DataProcess(){}public:void processPointCloud2(const sensor_msgs::PointCloud2::ConstPtr& pc){}void imuCallback(const sensor_msgs::Imu::ConstPtr& imuMsg){std::cout<< imuMsg->linear_acceleration.x<< "   "<<  imuMsg->linear_acceleration.y<< "   "<<  imuMsg->linear_acceleration.z<< " \n";}pcl::PointCloud<pcl::PointXYZI> pointxyz;pointxyz.width = 100;pointxyz.height = 1;pointxyz.resize(pointxyz.height * pointxyz.width);srand(time(nullptr));for(int i = 0;i < 100; i ++){pointxyz.points[i].x = (rand()% 1000) / 10.0;pointxyz.points[i].y = (rand()% 1000) / 10.0;pointxyz.points[i].z = (rand()% 1000) / 10.0;}//-------------------------------------------点云的生成和转化----------------------------顺利完成---------------------// 这个函数在pcl_conversion./pcl_conversion.h文件中sensor_msgs::PointCloud2 pointCloudMsg;pointCloudMsg.header.stamp = ros::Time().now();pointCloudMsg.header.frame_id = "/camera_init";pcl::toROSMsg(pointxyz,pointCloudMsg);pcl::PointCloud<pcl::PointXYZI> pointxyzi2;pcl::fromROSMsg(pointCloudMsg, pointxyzi2);for( int i = 0; i < pointxyzi2.points.size();i ++ ){std::cout<< pointxyzi2.points[i].x<<"   "<< pointxyzi2.points[i].y<<"   "<< pointxyzi2.points[i].z<<"\n";}pcl::PointCloud<pcl::PointXYZI> point3;pcl::moveFromROSMsg(pointCloudMsg,point3);for( int i = 0; i < point3.points.size();i ++ ){std::cout<< point3.points[i].x<<"   "<< point3.points[i].y<<"   "<< point3.points[i].z<<"****\n";}}

二、service的使用

以spawn为例子,学习service的使用。这个例子比较简洁,这样很容易学会。

1)客户端

#include<ros/ros.h>
#include<turtlesim/spawn.h>int main(int argc, char** argv)
{turtlesim::Spawn  spawn;spawn.request.x = 0.0;spawn.request.y = 1.0;spawn.request.theta = 1.0;spawn.request.name = "turtle2";ros::service::waitForService("/showspawn");ros::ServiceClient client = nh_.serviceClient<turtlesim::Spawn>("/showspawn");client.call(spawn);
}

2)服务端

#include<ros/ros.h>
#include<turtlesim/Spawn.h>bool srvCallback1(turtlesim::Spawn::Request &req, turtlesim::Spawn::Response& respond){respond.name = req.name;std::cout<<  respond.name <<std::endl;return true;}
int main(int argc, char** argv)
{ros::init(argc, argv, "rosbaglearn1");ros::NodeHandle nh_;ros::ServiceServer srv = nh_.advertiseService("/showspawn",  srvCallback1 );ros::spin();return 0;
}

http://www.dtcms.com/wzjs/557046.html

相关文章:

  • 商城网站大全搭建专业网站服务器
  • 宝安营销型网站费用怎么入驻京东商家平台
  • 郑州老牌做企业网站唐山百度推广
  • 昆山住房和城乡建设局网站网站主导航设置问题
  • 做外贸网站需要注意些什么问题ueditor wordpress4.3
  • 加盟网站系统php做简单网站教程视频教程
  • 动态域名可以建网站做网站用php还是python
  • 做百度竞价用什么网站wordpress 新闻面板
  • 网站在百度上搜不到了seo网站推广免费
  • 北海 做网站 英文东莞做网页公司
  • 网站是广西住房和城乡建设厅中国建筑设计研究院官网
  • 建设部精神文明建设网站北滘网站建设公司
  • 吉林有做网站的吗诸暨北京有哪些网站制作公司
  • 网站管理是什么如何搜索asp网站
  • 网站工信部备案号wordpress 插件 文本
  • 北京天通苑网站建设潮流设计网站
  • 网站制作哈尔滨seo什么意思中文意思
  • 玉林网站推广我要自学网怎么样
  • 爱站网关键词查询工具一般网站设计多少钱
  • 中企动力科技股份有限公司常州分公司新人学会seo
  • 网站策划要遵循的原则wordpress 批量产品尺码
  • 安卓和网站开发找工作做网站v1认证是什么意思
  • 西安网站建设新闻网页编辑代码模板
  • 济宁市兖州区城市建设局网站wordpress mediawiki
  • 成都网站建设公司汇总哈尔滨创意网站建设
  • jquery网站开发实例图片素材网站有哪些
  • 山东网站建设是什么泛微oa办公系统官网
  • 无锡网站建设哪里好汉服网站的建设
  • 中国做网站最好的公司小程序模板购买
  • 在线制作表白网站的源码正能量软件不良网站直播