在上篇简单的cone模型显示的基础上,本篇blog继续讲解与模型显示属性、窗口显示以及交互方式相关的例子。
1. 模型显示属性设置
通过给actor设置颜色来改变模型的颜色显示,通过property类,可以进一步设置模型显示的反射光、高光、环境光等属性的设置。
#include "vtkConeSource.h"
#include "vtkPolyDataMapper.h"
#include "vtkRenderWindow.h"
#include "vtkCamera.h"
#include "vtkActor.h"
#include "vtkRenderer.h"
#include "vtkProperty.h"
int main()
{
vtkConeSource *cone = vtkConeSource::New();
cone->SetHeight( 3.0 );
cone->SetRadius( 1.0 );
cone->SetResolution( 10 );
vtkPolyDataMapper *coneMapper = vtkPolyDataMapper::New();
coneMapper->SetInputConnection( cone->GetOutputPort() );
vtkActor *coneActor = vtkActor::New();
coneActor->SetMapper( coneMapper );
/* s设置模型显示的属性 */
coneActor->GetProperty()->SetColor(0.2, 0.63, 0.79); //设置模型显示的颜色
coneActor->GetProperty()->SetDiffuse(0.7); //设置散射系数
coneActor->GetProperty()->SetSpecular(0.4); //设置高光系数
coneActor->GetProperty()->SetSpecularPower(20); //设置高光的比例参数,具体参数设置可以参加vtk源码的介绍或者phong模型
//通过新建property对象,实现模型显示颜色的改变
vtkProperty *property =