LeadTools 创建并加载数据集

要想从现有的DICOM文件中创建并加载数据集,您首先需要创建一个有关Leadtools.Dicom.DicomDataSet类的实例。然后,您可以使用DicomDataSet.Load来加载该数据集。做到这一点以后,您就已经做好来获取有关数据集的信息、遍历数据集、搜索特定的模块或元素、获取或设置数据值、添加模块或元素、或者删除模块或元素的准备了。

发布于 2015/11/13 00:00

要想从现有的DICOM文件中创建并加载数据集,您首先需要创建一个有关Leadtools.Dicom.DicomDataSet类的实例。然后,您可以使用DicomDataSet.Load来加载该数据集。

做到这一点以后,您就已经做好来获取有关数据集的信息、遍历数据集、搜索特定的模块或元素、获取或设置数据值、添加模块或元素、或者删除模块或元素的准备了。

作为一个简单的示例,下面显示的代码可以执行以下操作:

· 创建一个数据集对象。

· 从DICOM文件中加载数据集。

· 找到数据集树型结构0级上的第一个模块。

· 找到该模块的第一个元素。

· 显示当前模块的数量,有关第一模块的信息,以及有关所述第一模块的第一个元素的信息。

通过将模块编号、数据元素标签,以及值表征所显示出的值与它们各自的默认表格来进行比较这种方法,您可以确定现有的模块、元件和值表征都是哪些。
//请确保您将引用添加于:
                     //  Leadtools.Dicom.dll
                     //  Leadtools.Dicom.Tables.dll
            
                     DicomDataSet dataSet;
                     int Count = 0;
                     DicomModule Module = null;
                     DicomElement Element = null;
                     string cs = string.Empty;
            
                     DicomEngine.Startup();
            
                     //创建新的Dicom数据集 
                     dataSet = new DicomDataSet();
                     // 加载Dicom 数据集
                     dataSet.Load(ImagesPath.Path + "IMAGE1.dcm", 0);
                     //确定该数据集中的模块数目
                     Count = dataSet.ModuleCount;
              
                     //找到数据集树型结构0级上的第一个模块
                     Module = dataSet.FindModuleByIndex(0);
                     if (Module != null)
                     {
                        Element = Module.Elements[0];
                        //打印这些信息
                        string csFormat = "" +
                            "This data set has {0:D} modules. \n" +
                            "  First Module Type: {1}\n" + 
                            "  First Module Element Count: {2:D} \n " +
                            "  The first element of the first module: \n" +
                            "     Length: {3:D}\n" + 
                            "     Tag: {4:X} \n" +
                            "     VR: {5:X}";
                        cs = string.Format(csFormat, Count, Module.Type.ToString(), Module.Elements.Length, Element.Length, Element.Tag, Element.VR.ToString());
                        MessageBox.Show(cs, "Notice");
                     }
                     else
                        MessageBox.Show( "Module is NULL", "Notice");
            
                     //共享DICOM数据集中所使用的所有资源
                     dataSet.Dispose();

 

关于其他产品的更多信息,请访问我们的官方网站

欢迎下载免费的全功能评估版SDK,全功能试用版中有这个例子的全部源代码。

同时欢迎您使用评估版期间的免费技术支持

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态