基于EML的ERDASIMINGE二次开发.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于EML的ERDASIMINGE二次开发

基于EML和C toolkit的ERDAS IMAGINE二次开发 ESRI 中国(北京)有限公司 遥感事业部 工程师:邓书斌 EML的设计目的 在开始设计ERDAS IMAGINE时,有一点非常清楚,即传统的、静态的GUI不能够满足不同用户和对ERDAS产品的不同应用需求。用户希望能够定制界面,并创建脚本来执行经常使用的功能。而通过EML就能达到这个目的 第一个EML例子 文本文件simple.eml component simple{ frame first_frame{ title“first EML”; geometry 0,0,260,70; button firstbutton{ title“quit”; geometry0,0,80,20; on mousedown unload; } /*end button firstbutton*/ on startup display first_frame; }/*end of frame*/ } /*end of component*/ 例子剖析 每个EML的开始应包含component关键字,component定义的变量名必须与.eml文件名一致 每个EML至少应当有一个框架(frame)或对话框(dialog)。 每个frame必须有个title,当显示对话框时,可以很容易的说出它用于干什么的。 其他,如{} ; /* */等符号。 EML文件加载 利用Command窗口运行 在Command窗口中输入命令,如:load“…/simple.eml” 从菜单中访问 在菜单定义文件“$home/imagine_menus.inc”,新添加一个菜单项,例如:menu utilmenu”[U]tility”中定义 Utilify “first menubutton” {load “simple.eml”;} EML语法 EML脚本由过程定义和GUI定义混合组成。 过程定义可以在一个单独脚本中,或与定义了用户界面的脚本混在一起;GUI定义全部包含在一个Component中,由变量、菜单、文本字符和框架组成。 表达式是常量.、变量、操作符和函数的组合。 EML中的名称最长可达256个字符,第一个必须是字母,后续可以是字母 数字和下划线。 字符串可以是一个name或者双引号括起来的文本,当包含字符“.”、“/”时,必须用双引号包括。 EML典型的操作符有加、减、乘、除等。 EML函数 除操作数,EML表达式中还可包含函数。函数的语法为 functionname([expression[,expression]]) EML函数包括内建函数(Build-In)、ApplicationFunction DLL Class实例函数(简称Application函数)、独立Application函数。前两种函数保存在Demand Loaded Libraries(DLLS)中,适用于所有的Application;第三种函数存在于单个Application中,仅适用于自定义函数的Application。 内建函数 内建函数是EML提供一组使用所有Applincation函数的函数。例如: sin(expression) log(number) 实例函数 在IMAGINE 8.6中 发布的ApplicationFunctions DLL class 只有一个(builtin),在9.x中增到到了12个。(可以在..\HOME\usr\lib\ntx86\applicationfunctions中查看)。 用户可以按照Applicati

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档