vtk 笔记 --- 图片的X与Y轴变换,旋转

有时候需要进行图片左右或者上下旋转,或者X,Y,Z之间的变换,用到下边两个函数即可。

vtkImagePermute:X,Y,Z轴变换

vtkImageFlip:绕某轴旋转

代码如下:

#include "vtkImageGridSource.h"
#include "vtkPNGReader.h"
#include "vtkImageViewer.h"
#include "vtkImageBlend.h"
#include "vtkRenderWindowInteractor.h"
#include "vtkImagePermute.h"
#include "vtkImageFlip.h"
#include "vtkDICOMImageReader.h"

void main()
{
 vtkDICOMImageReader *pRead = vtkDICOMImageReader::New();
 pRead->SetFileName("E:\\ExportedImages\\2\\8600033_000002_02_01.dcm");

 pRead->Update();

 vtkImagePermute *Permute = vtkImagePermute::New(); 
 Permute->SetInputConnection(pRead->GetOutputPort());
 Permute->SetFilteredAxes(1, 0, 2); // 实现 X轴与Y轴的变换


 vtkImageFlip *pFlip = vtkImageFlip::New(); 
 pFlip->SetInputConnection(Permute->GetOutputPort());
 pFlip->SetFilteredAxes(0); //实现 绕X轴旋转
 
 vtkImageViewer *pV = vtkImageViewer::New();
 pV->SetColorLevel(1000);
 pV->SetColorWindow(2000);
 pV->SetInputConnection(pFlip->GetOutputPort());

 pV->Render();

 vtkRenderWindowInteractor *pInt = vtkRenderWindowInteractor::New();
 pV->SetupInteractor(pInt);
 pInt->Initialize();
 pInt->Start();

 pInt->Delete();
 pV->Delete();
 pFlip->Delete();
 Permute->Delete();
 pRead->Delete();

}

 

 

效果图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值