- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于IDL和.NET可视化程序设计
基于IDL和.NET可视化程序设计
摘要:介绍了基于IDL和.NET集成的可视化程序设计方法。通过在VB.NET中集成IDLDrawWidget控件,方便、高效地建立了可视化系统原型。实践表明,在可视化应用领域中,IDL和.NET结合编程实现了优势互补,具有较高的实用性。
关键词:交互式数据语言; .NET; 可视化; 对象图形系统
中图分类号:TP311
文献标志码:A
文章编号:1001-3695(2007)09-0149-03
科学计算可视化(visualization in scientific computing)概念提出后,可视化技术作为一门学科得到了长足发展。作为可视化技术的核心,数据可视化技术的应用最为活跃。当前数据可视化的核心研究问题包括三维空间数据场及多元数据的建模、计算及表示技术,面绘制和体绘制的理论与算法,以及在一些专业领域的应用研究等。针对数据可视化的应用需求,可视化软件平台也不断推出,如IDL、AVS/Express开发版、PV??WAVE以及CTech等公司的产品[1]。其中,以交互式数据分析和数据可视化为特色的第四代计算机语言――IDL在国内外的应用最为普遍,已被广泛应用于海洋、气象、医学、生物、空间科学、地球科学、天文学和商业开发等各个领域。
IDL既是便捷的软件工具,也是高效的开发平台,它拥有强大的编译环境和与其他语言集成的能力。IDL可以调用其他语言编写的程序或算法,或从其他语言调用IDL程序,利用ActiveX技术可以将IDL的图形功能嵌入到其他Windows应用程序中;利用IDL??Java Bridge功能可以在IDL代码中访问Java对象;通过DLL方式可以在IDL中调用C和Fortran程序;通过链接外部程序或将IDL作为其他语言的图形引擎,可以使IDL成为现有开发工具的有力补充[2]。目前,基于IDL ActiveX控件的多语言混合编程已成为IDL可视化开发的一大趋势[3~5]。 然而,IDL(Research System Inc.)尚未正式宣称对微软公司新一代Windows开发平台Microsoft.NET的支持,但Microsoft设计了Assembly(程序集)兼容ActiveX的机制,通过封装ActiveX与控件的交互来实现基于COM的ActiveX控件应用方式,这使得在.NET环境中集成IDL成为可能[6]。
1IDL与.NET的集成
1.1ActiveX控件与.NET的集成机制
.NET提供了对COM和ActiveX组件的互操作机制。.NET应用程序可以调用COM组件,包括ActiveX DLL(本地和DCOM)或ActiveX控件;.NET也可以为.NET组件提供COM接口。因此.NET程序集能够通过基于COM的应用程序实现双向访问。当将COM DLL导入.NET中时,在.NET中创建了一个可以用来引用组件的runtime??callable wrapper(RCW,运行库可调用的包装器程序)。RCW提供了在COM组件周围的一个.NET接口,并委托对ActiveX控件所有方法的调用,而实际上是RCW保存了对COM对象的引用。包装器类是基于AxHost类的。AxHost类提供了ActiveX控件,使控件好像在ActiveX容器中运行一样。当控件被添加到开发环境中的工具箱中后,就可以像使用其他预定义控件一样使用它。默认情况下,为与Windows forms控件相区别,ActiveX控件被加载到窗体中时,其名字均以Ax开始,如AxIDLDrawWidget(IDL ActiveX控件)。由于RCW是一个.NET对象,当不再需要引用对象时,RCW由.NET销毁,而在.NET包装器对象终止前COM组件不会被释放。
1.2IDLDrawWidget控件在.NET中的初始化
IDL的Windows版本提供了称为IDLDrawWidget的IDL ActiveX控件,该控件提供了在Windows应用程序中以ActiveX组件形式集成IDL的机制,以此来为外部程序提供数据分析和可视化的功能。
当在.NET应用程序中添加IDLDrawWidget控件后,对其进行初始化设置。以VB.NET为例,首先在程序窗体中添加命名为IDLDrawWidget1的IDL ActiveX 控件,然后设置控件的各种属性。在VB.NET中可通过调用IDLDrawWidget1的ExecuteStr方法实现对IDL的操作。该操作包括两部分:执行IDL 内部命令、函数或过程;调用自定义的IDL函数或过程。具体程序如下:
1.3IDLDrawWidget控件在.NET中的事件响应机制
当
您可能关注的文档
最近下载
- 智慧农业大棚项目建设实施方案.pptx
- 安全经验分享(灭火器使用).ppt
- 国开公共部门人力资源管理形考任务1-4试题及参考答案(全) .pdf VIP
- 学习通《文艺复兴:欧洲由衰及盛的转折点》习题(含答案).docx
- 《中国图书进出口总公司进口书刊资料审批管理规定》.pdf VIP
- 2023年云南大学计算机科学与技术专业《计算机组成原理》科目期末试卷B(有答案).docx VIP
- 融合新闻:通往未来新闻之路 中国大学MOOC答案2023版.docx
- 学习行为表现作文.docx VIP
- 苏S01-2021《给水排水图集》.docx
- 2023年云南大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案).docx VIP
文档评论(0)