PCL添加指定高度和切片数的圆柱

来源:互联网 发布:制作日历的软件 编辑:程序博客网 时间:2024/04/29 09:15


最近在做项目中遇到用pcl画一个指定高度和切片数的圆柱的问题,用过pcl的人一般都知道pcl::visualization::PCLVisualizer中有个“bool addCylinder (const pcl::ModelCoefficients &coefficients, const std::string &id="cylinder", int viewport=0)”方法,然而该方法不能让开发者指定圆柱的高度和切片数,该方法添加的是一个固定长度的圆柱曲面。如下图所示:


为了能够实现用PCL添加指定高度和切片数的圆柱,我们不得不尝试更改pcl的源码。具体方法如下:


1.拷贝PCL_CODE_PATH/visualization/src/pcl_visualizer.cpp和PCL_CODE_PATH/visualization/include/pcl/visualization//pcl_visualizer.h到你的工程目录下


2.修改pcl_visualizer.cpp文件。


pcl_visualizer.cpp添加createCylinder1方法


pcl_visualizer.cpp中,用下面的代码替换bool addCylinder (const pcl::ModelCoefficients &coefficients, const std::string &id="cylinder", int viewport=0)方法


pcl_visualizer.h中,更改“bool addCylinder (const pcl::ModelCoefficients &coefficients, const std::string &id="cylinder", int viewport=0)”为“bool addCylinder (double p0x,double p0y,double p0z,double p1x,double p1y,double p1z, double rad, int numsides, const std::string &id, int viewport)”


3.在项目中使用自定义的addCylinder方法

将项目中出现#include <pcl/visualization/pcl_visualizer.h>的地方替换为#include "pcl_visualizer.h",

在需要画圆柱的地方调用自定义的addCylinder方法


4.编译项目

需要将pcl_visualizer.cpp文件一起进行编译。


OK,大功告成!现在你可以使用PCL添加一个指定高度和切片数的圆柱了。效果如下图:






0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 手机丢后支付宝怎么办 oppo手机被偷了怎么办 三星手机被偷了怎么办 手机被偷了号码怎么办 手机被偷 微信怎么办 手机被偷怎么办,还关机 我的手机被偷了怎么办 医保卡不能用了怎么办 招行u盾丢了怎么办 信用卡刷爆了要怎么办 办分期的卡丢了怎么办 房贷银行卡掉了怎么办 房贷银行卡丢了怎么办? 行驶证丢了怎么办补办 行驶证丢了怎么办异地 浦发信用卡盗刷怎么办 苹果id被盗变砖怎么办 信用卡丢了被刷怎么办 ins注册不了怎么办安卓 偷玩电脑被发现怎么办 做作业不认真的怎么办 老人脑供血不足怎么办 哺乳期吃了辣的怎么办 孕32周胎位臀位怎么办 怀孕32周胎位不正怎么办 7个月胎位不正怎么办 胎心监护老不过怎么办 8个月了胎位不正怎么办 怀孕八个月了胎位不正怎么办 怀孕八个月胎位不正怎么办 欠债的人跑了怎么办 赌博输了100万怎么办 我赌博输了4万怎么办 办80张信用卡怎么办的 19岁负债十几万怎么办 欠了十几万该怎么办 网贷负债十几万怎么办 赌博欠了十几万怎么办 欠了网贷跑了会怎么办 欠银行钱还不起怎么办 欠小额贷款公司的钱还不上怎么办