- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章下
程序实现代码如下:
vtkVolumeRayCastMapper *volumeMapper = vtkVolumeRayCastMapper::New();
//光线投影法映射器
volumeMapper-SetVolumeRayCastFunction(compositeFunction);
volumeMapper-SetInputConnection(readerImageCast-GetOutputPort());
//图像数据输入
volumeMapper-CroppingOn();
volumeMapper-SetCroppingRegionPlanes (50.0,150.0,50.0,150.0,40.0,120.0);
在上程序中,方法CroppingOn()表示可能进行切割, SetCroppingRegionPlanes()表示对体数据切取的范围,由六个参数表示,分别代表XYZ轴上切取的数据范围.
另:切割时还有其他设置切块的方法,如下图:
对其设置用到如下方法:
vtkVolumeMapper::SetCroppingRegionFlagsToCross();
vtkVolumeMapper::SetCroppingRegionFlagsToInvertedCross()
vtkVolumeMapper::SetCroppingRegionFlagsToFence();
vtkVolumeMapper::SetCroppingRegionFlagsToInvertedFence()
6.11.1 Clipping a Volume (体数据切片)
用一平面分割体绘数据,可以将体数据一分为二,如果用两个平行的平面对体数据进行切割,可以得到体数据的切片.如下图:
程序实现代码如下:
//定义切平面
vtkPlane *plane=vtkPlane::New();
plane-SetNormal(0,1,0);//设置切平面的法向量
plane-SetOrigin(0,100,0);
vtkPlane *plane1=vtkPlane::New();
plane1-SetNormal(0,-1,0);//设置切平面的法向量
plane1-SetOrigin(0,108,0);
//体绘制器
vtkVolumeRayCastMapper *volumeMapper = vtkVolumeRayCastMapper::New();
volumeMapper-SetVolumeRayCastFunction(compositeFunction);
//体绘光线投射函数
volumeMapper-SetInputConnection(readerImageCast-GetOutputPort());
//图像数据输入
volumeMapper-AddClippingPlane(plane);
volumeMapper-AddClippingPlane(plane1);
利用AddClippingPlane()方法可以实现对体数据的切片.
6.12 体绘之光线投影法详述
6.12.1
vtkVolumeRayCastFunction is a superclass for ray casting functions that can be used within a HYPERLINK mk:@MSITStore:E:\\VTK.chm::/classvtkVolumeRayCastMapper.html vtkVolumeRayCastMapper. This includes for example, HYPERLINK mk:@MSITStore:E:\\VTK.chm::/classvtkVolumeRayCastCompositeFunction.html vtkVolumeRayCastCompositeFunction, HYPERLINK mk:@MSITStore:E:\\VTK.chm::/classvtkVolumeRayCastMIPFunction.html vtkVolumeRayCastMIPFunction, and HYPERLINK mk:@MSITStore:E:\\VTK.chm::/classvtkVolumeRayCastIsosurfaceFunction.html vtkVolumeRayCastIsosurfaceFunction.
光线投影法体绘制有以下几种不同的类型:
合成法
文档评论(0)