通过提取Z坐标,最大、最小值,进而进行渐变色的处理。

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/common/common.h>
#include <pcl/visualization/cloud_viewer.h>
using namespace std;
int main()
{pcl::PointCloud<pcl::PointXYZ>::Ptr basic_cloud_ptr(new pcl::PointCloud<pcl::PointXYZ>);pcl::PointCloud<pcl::PointXYZRGB>::Ptr point_cloud_ptr(new pcl::PointCloud<pcl::PointXYZRGB>);if (pcl::io::loadPCDFile("00003.pcd", *basic_cloud_ptr) < 0){PCL_ERROR("Couldn't read file 00003.pcd\n");return(-1);}//加载点云数据。std::cout << "basic_point_ptr大小为:" << basic_cloud_ptr->size() << endl;for (int i = 0; i < basic_cloud_ptr->points.size(); i++){pcl::PointXYZRGB point;point.x = basic_cloud_ptr->points[i].x;point.y = basic_cloud_ptr->points[i].y;point.z = basic_cloud_ptr->points[i].z;point.r = 0;point.g = 0;point.b = 0;point_cloud_ptr->points.push_back(point);}std::cout << "point_cloud_ptr大小为:" << point_cloud_ptr->size() << endl;void render(pcl::PointCloud<pcl::PointXYZRGB>::Ptr point_cloud_ptr);{pcl::PointXYZRGB min, max;pcl::getMinMax3D(*point_cloud_ptr, min, max);std::cout << "Z轴最大值为:" << max.z << endl;std::cout << "Z轴最小值为:" << min.z << endl;//计算出Z轴的最大值,最小值。float L;float L_2;L = max.z - min.z;L_2 = L / 2.0;for (size_t i = 0; i < point_cloud_ptr->size(); ++i)//这里先用i的初始值+1,在循环。{if ((point_cloud_ptr->points[i].z - min.z) < L_2){point_cloud_ptr->points[i].r = 0;point_cloud_ptr->points[i].g = (255 * ((point_cloud_ptr->points[i].z - min.z) / L_2));point_cloud_ptr->points[i].b = (255 * (1 - ((point_cloud_ptr->points[i].z - min.z) / L_2)));//(0,0,225)开始}else{point_cloud_ptr->points[i].r = (255 * (point_cloud_ptr->points[i].z - min.z - L_2) / L_2);point_cloud_ptr->points[i].g = (255 * (1 - (point_cloud_ptr->points[i].z - min.z - L_2) / L_2));point_cloud_ptr->points[i].b = 0;}//(cloud->points[i].z - min.z) = L_2时,为(0,225,0);当(cloud->points[i].z - min.z) = L时,为(225,0,0)}}pcl::visualization::PCLVisualizer::Ptr viewer(new pcl::visualization::PCLVisualizer("3D Viewer"));viewer->setBackgroundColor(0, 0, 0);viewer->addPointCloud<pcl::PointXYZRGB>(point_cloud_ptr);while (!viewer->wasStopped()){viewer->spinOnce(100);std::this_thread::sleep_for(100ms);}//可视化return 0;
}

结果如下图显示,同理也可以根据X、Y轴进行渐变色的处理。

根据高程值进行渐变色相关推荐

  1. ArcMap 通过DEM获取高程值

    第一种方法:Extract values to Points工具,这个网上的资料比较多,就不介绍了. 第二种方法:Interpolate Shape工具 直接用Arc Toolbox->3D A ...

  2. hsv白色h值是多少_使用Global Mapper给建筑轮廓SHP数据赋予高程值

    如果想看到三维城市的效果,就需要把建筑轮廓SHP数据转换成三维白模.三维白模有多种格式和方法,但是均需要先给建筑轮廓矢量赋予高程值. 1.首先把SHP格式的建筑轮廓加载到GM中: 由于建筑轮廓数据存储 ...

  3. 得到Raster的一些基本信息(高程值,列数,列数)

    得到Raster的一些基本信息(高程值,列数,列数) IRasterLayer pRasterLayer = (IRasterLayer)pSC1.Scene.get_Layer(0); IRaste ...

  4. cass绘制围墙lisp_CASS中用LISP完成高程值的可视化处理

    CASS 中用 LISP 完成高程值的可视化处理 摘要: lisp 能大大提高工作效率,减少操作错误率并提高作业精度.通过自身工 作实践,简单介绍下如何利用三角形原理用 lisp 将高程值转为可视化线 ...

  5. 基于FME实现dwg等高线、高程点、计曲线注记的高程值批量修改研究,等高线批量修改高程,高程点批量修改高程,计曲线注记批量修改高程

    目录 一.实现效果 1.修改后的数据截图 2.原始数据截图 二.实现过程 1.高程调整值参数输入 2.高程点的高程调整 3.等高线的高程调整 4.计曲线注记的高程调整 5.输出设置 6.FME模板的整 ...

  6. 根据高程值批量修改等高线为计曲线工具,FME实现等高线批量修改成计曲线,根据高程值自动识别计曲线,解决地形图计曲线丢失问题,等高线批量提取计曲线,首曲线根据高程批量转换成计曲线

    计曲线在地形图等高线中是必不可少的,当拿到的等高线数据因为各种原因导致没有计曲线时,怎么办呢?人工修改将非常耗时耗力,且容易遗漏,下面带来一个根据高程值从等高线中自动识别出计曲线,并批量修改的工具.关 ...

  7. 基于C#的ArcEngine二次开发28: 等高线高程值与国标码一致性检查思路及代码分析

    1 高程值 类型 说明 首曲线 基本等高线.是按基本等高距测绘的等高线,一般用细实线(0.15mm)描绘,是表示地貌状态的主要等高线 计曲线 加粗等高线.为了便于判读等高线的高程,自高程起算面开始,每 ...

  8. 根据实测高程值校正DSM高程

    思路: 1.根据实测点的坐标提取DSM中相应坐标点的高程值: 2.对比两套高程值,求取关系式 3.DSM改正 1.把实测点展到arcgis,展点的时候选上z坐标为高程值 2.arcgis由点提取值 勾 ...

  9. 给定桩号获取纵断面中的高程值(c# for civil3d)

    通过civil3d提供的api,也就是纵断面Profile类提供的方法---public double ElevationAt(double station),就可以很轻松的获取纵断面对象某桩号处的高 ...

最新文章

  1. asp.net的JSON数据进行序列化和反序列化
  2. 关于ActionBar的向下兼容
  3. Docker 练习(一)——搭建web服务
  4. 菜鸟学java要多久_菜鸟学java,根本停不下来!
  5. UC浏览器电脑版播放视频时出现崩溃怎么解决
  6. Shiro——RememberMe
  7. 编辑器图片上传 linux,summernote 富文本编辑器上传本地图片
  8. 根据excel批量归类文件
  9. POJ NOI0101-08 字符三角形
  10. java证书不见了_java – 找不到证书链
  11. 用shell把所有文件名修改为小写
  12. 2020-21《全球软件质量报告》解读
  13. Eclipse的MAT的支配树
  14. 阿里云OSS删除文件详细步骤
  15. iPhone/iPad各机型如何进入恢复模式 苹果进入恢复模式的方法
  16. SublimeText3和EverEdit 的一些使用感受
  17. 2010年一句话破解QQ密码!
  18. 软件工程 -- 系统流程图
  19. 大数据 搜索 ES 一
  20. 【云周刊】第171期:重磅推荐,神龙架构首次开箱直播评测

热门文章

  1. 运放电路中各种电阻的计算-运算放大器
  2. 系统分析选择题_来源于中国大学MOOC
  3. 基于微信小程序的在线考试系统springboot框架
  4. java/php/net/pythont海鲜购物淘电商平台设计
  5. 二进制数据转换成十进制数
  6. 华为OceanStor S5600T服务器数据恢复方案(带过程图)
  7. GRE--VPN配置实验(ensp)
  8. 漏洞案例之z-blog后台文件上传
  9. linux免安装版,Linux下配置免安装版Tomcat
  10. 【调剂】兰州大学信息科学与工程学院2022年硕士研究生调剂需求公告