ParviewWeb学习记录4——模型颜色问题1
来源:互联网 发布:2016宏观经济数据分析 编辑:程序博客网 时间:2024/05/21 06:53
问题一:pvw颜色与模型本身定义颜色无关?
pvw,模型的颜色显示与模型本身定义无关,是由pvw自己设置的颜色,why?不理解为什么这么设计。
测试过程:helper.py文件定义了颜色模式,在registerArray中,对RGBPoints的修改,影响模型的颜色,发现他会根据第1个参数与第5个参数的大小,来决定采用第一组或者第二组RGB值,但又不是简单的大小比较;
vtk颜色映射是一种标量算法,目的是突出显示数据集中重要的属性数据,使用灰度颜色,能提供更好的表现细节,使用彩色颜色能增强对比度。在pvw中,默认的颜色是采用数据的映射,标量计算方法。保存数据的点,再保存数据的面片;创建数据对象;设置每一个顶点的标量值(SetScalars(scalars));设定颜色映射表(在pvw中这个映射表是blue-red,使用HSV的颜色模式);然后进行渲染,会根据标量值从颜色映射表中去选取合适的颜色;
问题二:标量值怎么得到的?
是根据属性值来计算的,vtkMapper 的控制哪一种属性数据 (例如点属性数据、 单元属性数据、属性数据数组)被用于颜色映射。
问题三:
猜测:vtk可以根据模型读入的颜色去渲染,怎么去找这种模式?
问题四:vtk的Actor
用来在一场景中表现一个可视化实体,如一些简单的球形、锥体等,Actor 提供了一组相关的绘制属性,如物体的表面属性(反射光、漫反射光、颜色等) 、物体的显示方式(实体显示、线框显示) 、物体的纹理映射、物体的几何体定义等。
首先创建模型;然后vtkPolyDataMapper创建映射器;然后通过映射器将数据转入到图形系统;通过vtkProperty设置模型属性,例如Actor->GetProperty()->SetColor(1,1,1);然而当被绘制的图形带有属性数据的时候,前面所述的方法不能设置模型的颜色,vtk会使用默认的数据为模型添加颜色,因此需要使用ScalarVisibilityOff()方法来忽略属性值,就可以使用物体的材质、物体的环境光、漫反射光、镜面反射光为物体绘制颜色,这也就是为什么模型显示的颜色不是模型本身定义的颜色的原因!
vtkPolyDataMapper *pPolyMap= vtkPolyDataMapper::New();pPoly->SetInput(pPlane->GetOutput());//忽略属性数据pPoly-> ScalarVisibilityOff();vtkActor *myActor=vtkActor::New();//创建演员对象myActor->SetMapper(pPoly);//将可视化流水线数据转入图形系统myActor->GetProperty()->SetColor(1,1,1); //设置绘制物体的颜色
- ParviewWeb学习记录4——模型颜色问题1
- ParaviewWeb学习记录8——模型颜色问题4
- ParaviewWeb学习记录6——模型颜色问题2
- ParaviewWeb学习记录7——模型颜色问题3
- ParaviewWeb学习记录9——模型颜色问题5
- Paraview模型颜色问题
- 《CSS权威指南》学习记录——颜色和背景
- 颜色常识学习记录
- 《CSS权威指南》学习记录——颜色和长度单位
- Echarts学习记录——如何修改x轴和y轴的颜色
- Echarts学习记录——如何去掉网格线及网格区域颜色
- Echarts学习记录——如何去掉网格线及网格区域颜色
- Android学习记录(10)—Android之图片颜色处理
- Flume1.4学习问题记录
- 自动化学习记录问题1
- django学习记录-模型继承
- 图像检索服务器编写问题记录——服务器端模型选择+epoll和非阻塞IO
- 图像检索服务器编写问题记录——服务器端模型再思考
- 解题报告 之 UVA820 Internet Bandwidth
- 操作系统复习---框架图
- 黑马程序眼-----------IO流(下)
- 第六周项目一 深复制体验 (1.2)
- 第七周 项目一--图形用户界面面(GUI)应用程序开发初体验
- ParviewWeb学习记录4——模型颜色问题1
- MVC3+EF4.1学习系列(十一)----EF4.1常见的问题解决
- 多态不能发生在父类的构造方法中
- MySQL命令行实现数据库的基本操作
- 友元类
- 码率控制中的“鸡生蛋蛋生鸡”的悖论
- 垃圾回收器种类
- iOS汇编教程:ARM(1)和ARM(2)
- 操作系统复习---知识点