vtk加载rgb点云ply文件和灰白ply文件

2023-10-31

vkt官方的例子是加载灰白的ply文件,但是当项目中用到rgb的ply文件就是显示不出来图像,具体的加载方法如下:

vtk加载RGB点云文件

#include “vtkAutoInit.h”
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkRenderingFreeType);
VTK_MODULE_INIT(vtkInteractionStyle)

#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkSmartPointer.h>
#include <vtkPLYReader.h>
#include
#include <vtkPolyData.h>
#include <vtkCellData.h>
#include <vtkVertexGlyphFilter.h>

int main()
{
std::string filename = “C:\Users\admin\Desktop\work\RGBPoints.ply”;
vtkSmartPointer reader =
vtkSmartPointer::New();
reader->SetFileName(filename.c_str());
reader->Update();

vtkSmartPointer<vtkPolyData> pPolyData = vtkSmartPointer<vtkPolyData>::New();
pPolyData->DeepCopy(reader->GetOutput());
vtkSmartPointer<vtkVertexGlyphFilter> pFilter = vtkSmartPointer<vtkVertexGlyphFilter>::New();
pFilter->AddInputData(pPolyData);
pFilter->Update();


vtkSmartPointer<vtkPolyDataMapper> mapper =
	vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputConnection(pFilter->GetOutputPort());

vtkSmartPointer<vtkActor> actor =
	vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);

vtkSmartPointer<vtkRenderer> renderer =
	vtkSmartPointer<vtkRenderer>::New();
renderer->AddActor(actor);
renderer->SetBackground(.3, .6, .3);

vtkSmartPointer<vtkRenderWindow> renderWindow =
	vtkSmartPointer<vtkRenderWindow>::New();
renderWindow->AddRenderer(renderer);

vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
	vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);
renderWindow->Render();
renderWindowInteractor->Start();

return 0;

}

vtk加载灰度点云文件ply

#include “vtkAutoInit.h”
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkRenderingFreeType);
VTK_MODULE_INIT(vtkInteractionStyle)

#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkSmartPointer.h>
#include <vtkPLYReader.h>
#include
#include <vtkPolyData.h>
#include <vtkCellData.h>
#include <vtkVertexGlyphFilter.h>

int main()
{
std::string filename = “C:\Users\admin\Desktop\work\RGBPoints.ply”;
vtkSmartPointer reader =
vtkSmartPointer::New();
reader->SetFileName(filename.c_str());
reader->Update();

vtkSmartPointer<vtkPolyDataMapper> mapper =
	vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputConnection(reader->GetOutputPort());

vtkSmartPointer<vtkActor> actor =
	vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);

vtkSmartPointer<vtkRenderer> renderer =
	vtkSmartPointer<vtkRenderer>::New();
renderer->AddActor(actor);
renderer->SetBackground(.3, .6, .3);

vtkSmartPointer<vtkRenderWindow> renderWindow =
	vtkSmartPointer<vtkRenderWindow>::New();
renderWindow->AddRenderer(renderer);

vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
	vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);
renderWindow->Render();
renderWindowInteractor->Start();

return 0;

}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vtk加载rgb点云ply文件和灰白ply文件 的相关文章

  • static详解

    一 修饰普通变量 1 局部变量 用法 static 变量类型 变量名 内存中的位置 静态存储区 初始化 未经初始化的局部静态变量会被自动初始化为 0 自动对象的值是任意的 除非他被显示初始化 作用域 作用域仍为局部作用域 当定义它的函数或者

随机推荐

  • APK安装过程及原理详解

    应用程序包的安装是android的特点 APK为AndroidPackage的缩写 Android应用安装有如下四种方式 1 系统应用安装 开机时完成 没有安装界面 2 网络下载应用安装 通过market应用完成 没有安装界面 3 ADB工
  • 一篇笔记带你了解STM32串口

    目录 1 数据通信的基础概念 1 1 串行 并行通信 1 2 单工 半双工 全双工通信 1 3 同步 异步通信 1 4 波特率 1 5 常见的串行通信接口 2 串口 RS 232 2 1 什么是串口 2 2 RS 232电平与CMOS TT
  • 通过Comparator接口理解策略模式

    在Java中 如果我们想要比较两个对象 一般会让这个对象实现Comparable接口 比如 在下面的代码中 Person类有两个属性 分别是height和weight 为了比较大小 我们这里重写了compareTo方法 通过height属性
  • Hive中的DML操作

    文章目录 Hive中的DML操作 一 Load 1 语法 2 实操案例 0 创建一张表 1 加载本地文件到hive 2 加载HDFS文件到hive中 二 Insert 1 将查询结果插入表中 1 语法 2 案例 2 将给定Values插入表
  • mapper中 标签 标签

    引言 include标签用法是引用sql片段 sql标签 是书写sql片段 被include 引用的 直接上代码
  • qRadioButton

    ifndef TESTRADIOBUTTON H define TESTRADIOBUTTON H include
  • SpringBootSecurity默认用户名和密码

    创建SpringBoot项目时勾选了SpringSecurity pom xml的配置
  • 如何爬取只支持手机端的微信小程序

    收到一个小任务 要爬取一个手机上的小程序的内容 因为最新的微信pc端是支持小程序的 以为很简单 但这个程序在pc微信端打不开 显示 请在手机上打开小程序 于是想到了用android模拟器 下了雷电 雷神 又装了Xposed JustTrus
  • [938]深度学习之CNN简介

    文章目录 深度学习概述 CNN 卷积神经网络 层级结构 数据输入层 卷积计算层 Relu激活层 池化层 全连接层 正则化 典型结构 深度学习概述 传统的机器学习和深度学习一个很重要的差别就是特征的自动提取 深度学习现在更适合处理一些原始信息
  • Spring Boot动态注册/删除http资源路径的方法

    需求 通过访问特定接口 生成动态URL 保证该URL一次有效 背景 一般情况下写Controller都是先在类上声明一个 RestController或是 Controller 然后在方法上加上url路径即可 其实也可以动态注册的 不用写
  • RepLKNet论文详解:31×31的超大卷积核模型

    一切都是为了顺利毕业而努力 这个读作Rep L P Net 论文名称 Scaling Up Your Kernels to 31x31 Revisiting Large Kernel Design in CNNs 原论文地址 https a
  • 小程序:登录的过程研究

    1 点击按钮实现 小程序的授权弹窗 授权登录 login wx getUserProfile desc 必须授权才能使用 success res gt 获取信息成功 执行以下语句 let userinfo res userInfo 根据 w
  • 从 Java 到 Go:实现二维码的生成与解析

    在本教程中 我们将向您展示如何使用 Go 语言实现二维码的生成和解析 为了帮助 Java 开发者更顺利地过渡到 Go 我们将结合 Java 代码进行讲解 并逐步向您展示如何使用 Go 重构相应的功能 本文总共包括 7000 字以上的内容 旨
  • python如何计算个数_python计算两个数的百分比方法

    工作中遇到了要计算两个数百分比的问题 python 2 7 环境 代码 usr bin env python function 计算百分比 USAGE python calculator py num1 num2 import sys a
  • openwrt PPTP Client 配置

    1 编译要求 修改menuconfig编译选项 kernel modules gt Netfilter Extensions gt lt gt kmod nf nathelper extra Network Support gt kmod
  • 【华为OD统一考试B卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • JPUSH服务端集成(JAVA版本)

    JPUSH用做APP的消息推送效果很不错 博主的APP项目是使用的IONIC框架的应用 官网链接 https www jiguang cn 1 首先需要jpush client 3 2 9 jar 下载地址 http download cs
  • 跳楼撞墙挖地道坐热气球:东德人穿越柏林墙的古怪方法

    没有墙的时候 可以直接从街上走过去 转自铁血社区 http bbs tiexue net 有了墙以后 可以FQ 或者挖地道 河没加盖 转自铁血社区 http bbs tiexue net 其实天上也可以 后来可以一起翻 东德人穿越柏林墙的古
  • [1-1 main ]Python主函数及其示例:理解__main_

    Python主函数及其示例 理解 main 在深入研究Python编码之前 我们熟悉了Python的主要功能及其重要性 考虑以下代码 def main print hello world print Guru99 在这里我们得到两张打印 一
  • vtk加载rgb点云ply文件和灰白ply文件

    vkt官方的例子是加载灰白的ply文件 但是当项目中用到rgb的ply文件就是显示不出来图像 具体的加载方法如下 vtk加载RGB点云文件 include vtkAutoInit h VTK MODULE INIT vtkRendering