matlab slice 斜切,【请教】如何根据横断面上的一条直线进行斜切面显示?

本文介绍了一种使用VTK库根据横断面上的一条直线进行图像的斜切面显示的方法。通过获取线性Widget的两个点坐标,计算旋转角度,构建旋转矩阵并应用到reslice操作中,最终实现过体中心的旋转效果,更新渲染器并重新渲染图像。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

过体中心进行旋转的代码(vtkxxxCommand):

virtual void Execute( vtkObject *caller, unsigned long, void* )

{

vtkLineWidget *lineWidget = reinterpret_cast( caller );

double dPoint1[3], dPoint2[3];

lineWidget->GetPoint1( dPoint1 );

lineWidget->GetPoint2( dPoint2 );

//Image Info

int extent[6];

double spacing[3];

double origin[3];

m_pImgData->GetExtent( extent );

m_pImgData->GetSpacing( spacing );

m_pImgData->GetOrigin( origin );

double center[3];

center[0] = origin[0] + spacing[0] * 0.5 * ( extent[0] + extent[1] );

center[1] = origin[1] + spacing[1] * 0.5 * ( extent[2] + extent[3] );

center[2] = origin[2] + spacing[2] * 0.5 * ( extent[4] + extent[5] );

//Angle

double dAngle = 0;

double dM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值