没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|使用教程|编辑:龚雪|2015-11-24 16:18:08.000|阅读 385 次
概述:LEADTOOLS旗下产品具有超强的位图图像处理功能,其中医疗图像、文档图像处理功能极其强大,本文是关于LEATOOLS产品相关教程,3D网格的创建与保存。附有代码,可供参考。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
1. 让我们以您在“创建一个3D对象”这一章中所创建的项目为开始吧。
2. 现在,请运行该程序。您将会看到一个 2x2 的布局,其中的每一个间隙都是以3D对象为填充的。该3D对象是使用VRT技术(容积重组技术)来呈现的。
3. 将该3D对象转换为网格。这是通过将容积类型转换为SSD(遮蔽表面显示法)来完成的。请在InitClass() 方法的末尾添加以下这些行的代码:
[Visual Basic]
' 将渲染对象的容积类型更改为SSD。
control3D.ObjectsContainer.VolumeType = Medical3DVolumeType.SSD
[C#]
// 将渲染对象的容积类型更改为SSD。
control3D.ObjectsContainer.VolumeType = Medical3DVolumeType.SSD;
4. 由于将对象转换为网格是一个相当耗费时间的过程,您可能需要将以下代码添加于以上的步骤(3)之前。
[Visual Basic]
this.Show()
this.Update()
[C#]
this.Show();
this.Update();
5.现在您已经创建了一个3D网格。要想改变其表面,您需要使用的是Medical3DObject.Slab.IsoThreshold属性。
6.保存该网格。为了保存该网格,您只需要在InitClass()的末尾添加以下这一行代码:
[Visual Basic]
// 将该网格以这个名称TestMesh进行保存。
control3D.ObjectsContainer.Objects[0].SSD.SaveMesh("C:\TestMesh.x")
[C#]
// 将该网格保存为一个文件。
control3D.ObjectsContainer.Objects[0].SSD.SaveMesh(@"C:\TestMesh.x");
7.该initClass() 方法应该如下所示:
[Visual Basic]
Private Sub InitClass()
Dim MY_LICENSE_FILE As String = "d:\temp\TestLic.lic"
' 开启DICOM支持。
Dim MY_DicomDEVELOPER_KEY As String = "xyz123abc"
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_DicomDEVELOPER_KEY);
' 开启Medical支持。
Dim MY_MedicalDEVELOPER_KEY As String = "abc123xyz"
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_MedicalDEVELOPER_KEY);
' 开启Medical 3D支持。
Dim MY_3DDEVELOPER_KEY As String = "123xyzabc"
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_3DDEVELOPER_KEY);
' 创建一个将被用于加载图像的编解码器类的新实例。
Dim _codecs As RasterCodecs = New RasterCodecs()
' 创建一个MedicalViewer的新实例。该查看器布局将被划分为2X2。
Dim viewer As MedicalViewer = New MedicalViewer(2, 2)
' 使该视图与整个窗体相匹配。
viewer.Dock = DockStyle.Fill
' 创建一个包含3D对象的3D控件。
Dim control3D As Medical3DControl = New Medical3DControl()
control3D.AddAction(MedicalViewerActionType.WindowLevel)
control3D.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
Dim object3D As Medical3DObject = New Medical3DObject()
' 将新创建的3D对象添加到控件。
control3D.ObjectsContainer.Objects.Add(object3D)
object3D.Image = _codecs.Load("C:\Users\Public\Documents\LEADTOOLS Images\image1.dcm")
' 将以上单元格添加到MedicalViewer。
viewer.Cells.Add(control3D)
Controls.Add(viewer)
Me.Show()
Me.Update()
' 将渲染对象的容积类型更改为SSD。
control3D.ObjectsContainer.VolumeType = Medical3DVolumeType.SSD
' 将该网格保存为一个文件。
control3D.ObjectsContainer.Objects(0).SSD.SaveMesh("C:\TestMesh.x")
End Sub
[C#]
void InitClass()
{
string MY_LICENSE_FILE = "d:\\temp\\TestLic.lic";
// 开启DICOM支持。
string MY_DicomDEVELOPER_KEY = "xyz123abc";
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_DicomDEVELOPER_KEY);
// 开启Medical支持。
string MY_MedicalDEVELOPER_KEY = "abc123xyz";
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_MedicalDEVELOPER_KEY);
// 开启Medical 3D支持。
string MY_3DDEVELOPER_KEY = "123xyzabc";
RasterSupport.SetLicense(MY_LICENSE_FILE, MY_3DDEVELOPER_KEY);
// 创建一个将被用于加载图像的编解码器类的新实例。
RasterCodecs _codecs = new RasterCodecs();
// 创建一个MedicalViewer的新实例。该查看器布局将被划分为2X2。
MedicalViewer viewer = new MedicalViewer(2, 2);
// 使该视图与整个窗体相匹配。
viewer.Dock = DockStyle.Fill;
// 创建一个包含3D对象的3D控件。
Medical3DControl control3D = new Medical3DControl();
control3D.AddAction(MedicalViewerActionType.WindowLevel);
control3D.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
Medical3DObject object3D = new Medical3DObject();
// 将新创建的3D对象添加到控件。
control3D.ObjectsContainer.Objects.Add(object3D);
object3D.Image = _codecs.Load(@"C:\Users\Public\Documents\LEADTOOLS Images\image1.dcm");
// 将以上单元格添加到MedicalViewer。
viewer.Cells.Add(control3D);
Controls.Add(viewer);
this.Show();
this.Update();
// 将渲染对象的容积类型更改为SSD。
control3D.ObjectsContainer.VolumeType = Medical3DVolumeType.SSD;
// 将该网格保存为一个文件。
control3D.ObjectsContainer.Objects[0].SSD.SaveMesh(@"C:\TestMesh.x");
}
运行该程序,您将会看到一个2×2的布局,其中包含一个以3D对象为填充的插槽。该3D对象是使用SSD技术(遮蔽表面显示法)来呈现的。
购买最新正版授权!""
慧都年终盛典火爆开启,一年仅一次的最强促销,破冰钜惠不容错过!!优惠详情点击查看>>
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn




BarTender 标签管理系统,正是帮助企业轻松实现 GS1 标准化标签设计、编码生成与信息联动的强大工具。
Parasoft C/C++test 是一款功能强大的 C/C++ 软件测试工具,集成了静态代码分析、单元测试、集成测试和覆盖率分析等功能,单元测试作为其关键功能之一,为了适配多样化的目标部署环境,C/C++test 设计了灵活的测试结果收集机制。通过Socket通讯方式来收集单元测试结果,从而扩展其测试覆盖范围与应用场景。
Parasoft C/C++test作为一款功能全面的自动化代码质量保障工具,为C/C++开发者提供了静态分析、单元测试和运行时错误检测等核心功能。通过将其与轻量级且广受欢迎的VScode编辑器集成,开发团队可以在熟悉的编码环境中实时获得代码质量反馈,有效提升开发效率与代码可靠性。
本文主要介绍如何在MVVM应用程序中使用虚拟源,欢迎下载最新版组件体验!
相关产品
20多年的老牌图像处理控件,支持TWAIN扫描、200多种图像效果、150多种图像格式…
LEADTOOLS Document Imaging Developer Toolkit多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。
LEADTOOLS Medical Developer ToolkitLEADTOOLS Medical Imaging是一款医疗成像控件,包含了一些精心挑选的、经过优化的特性,可以满足医疗成像应用程序开发的特殊需要。
最新文章 MORE
半岛外围网上直营相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营