SkylineGlobe 从v6.1到v6.5 二次开发方面的变化参考
2.1关于 TerraExplorer v6.5 API
除了一些新的功能,API v6.5不同于API v6.1的最大改进是其对象ID系统。虽然在以前版本的API中,有两个ID系统,一个用于对象在工程树(ITreeItem61.ItemID)的和另一个在3D场景中的对象(ID),但在当前的API中,有且只有一个对象ID,它是识别对象的唯一方法。此ID是唯一的,并且它的值在TerraExplorer会话一直存在的,用于对象的持久性。所有对象被创建时就会返回这些ID,所有的项目树操作(如删除,选择,查询,移动的工程树节点)都是基于这个唯一的对象ID。
由于API v6.5的这一变化,影响到ITreeItem65接口去除了ITEMID参数(与长/int参数类型),进而在IProjectTree65和整个API中都要使用ID参数(一个BSTR/字符串参数类型)。
2.2更新C#程序
Step1:创建SGWorld65实例取代原来的创建SGWorld61实例。
Step2:使用新的类型来重命名所有的变量。
如:IPosition6pos=…修改为IPosition65pos=…
注:图形的相关接口,类似于IGeometry和ILinearRing原来没有
版本的号的不需要重命名。
Step3:重新编译代码。
2.3更新javascript程序
Step1:创建一个SGWorld65实例代替SGWorld61实例
在脚本中,这通常需要改变<OBJECT>标记from:
<objectid="globe"
classid="clsid:3a4f91b1-65a8-11d5-85c1-0001023952c1"/>
to:
<objectid="globe"classid="clsid:3a4f9197-65a8-11d5-85c1-0001023952c1"/>
Step2:修复任何修改/删除属性和方法的变化
由于在JavaScript中有没有类型,你只需要注意文件6.5版和6.1版之间切换。遗憾的是,不同于编译语言,你没有编译器帮助识别那些地方。请参阅:“属性和方法的变化在APIV6.5”本章中的更多细节。
2.4 属性、方法和事件函数的改变
属性:
ApplyTo
此属性标识地形修改对象应用于3DML
AddedtoITerrainModifier65.
Code
新值添加到Code属性
ModifiedinIAction65.
DataSourceFeatureID
此属性的功能分配由数据源返回的ID.
AddedtoIFeatures65.
ElevationOffset
这个属性决定高程偏移,使您能够调整参照不同的基线定义的高程来源.
AddedtoITerrainRasterLayer65.
ElevationScale
这个属性决定的比例因子海拔,让您调整参照不同的基线定义的高程来源
AddedtoITerrainRasterLayer65.
Features
此属性替换项目的属性和获得要素的方法,以及Count属性,作为一个功能组中访问各个功能的手段
AddedtoIFeatureGroup65.
ItemID(Deprecated)
此属性(它返回一个对象的项目树ID)被删除,因为不再使用v6.5以前版本的API项目的树ID。虽然在前面的API,有两个ID系统,一个用于资料在工程树(ITreeItem61.ItemID)的和其他在3D世界中的对象(ID),在当前的API,有一个单一的对象ID,它是识别对象的唯一手段。此ID是唯一的,并且它的值之间保持TerraExplorer会话,允许它被用于产品的持久性。对象被创建时,所有的项目树管理(如删除,选择,查询,移动的树元素)以及所有的返回值是基于这种独特的对象ID。
RemovedfromITreeItem65.
KeyStep
如果这个属性决定的一个步骤是关键的一步,用来标记“chapter”的标题,使用户可以快速跳转演示文稿中的一章,使用Previous和Next按钮在播放面板
AddedtoIPresentationStep65.
LocationSplineSpeed
这个属性决定位置提示步骤播放演示文稿时,用样条算法的速度。
AddedtoIPresentationStep65.
LocationSplineSpeedBehavior
这个属性决定如何实施的LocationSplineSpeed属性。
AddedtoIPresentationStep65.
NotInTreeID
这个属性返回的ID应该传递一个元素
ParentGroupID,如果你不想要的元素添加到树.
AddedtoIProjectTree65.
ObjectType
增加了两个额外的对象类型值:OT_CONTOUR_MAP=42和OT_SLOPE_MAP=43.
ModifiedinITerraExplorerObject65
ParentGroupID
此属性从ParentItemID重命名
ModifiedinIFeature65.
RootID
这个属性返回的项目树的根元素的ID.
AddedtoIProjectTree65.
Shadow(Deprecated)
此属性已被除去从各种ITerrainXXX对象。它被替换的阴影功能,适用于所有/选定的对象,并且可以使用Command.Execute激活。
ShowHideValue
这个属性决定是否显示或隐藏对象或组在演示过程中。
AddedtoIPresentationStep65.
方法:
Create3DViewshed
此方法创建的图形表示,所有地区的地形和3D模型和可见的对象,一个视野内,从一个给定的观赏点。
AddedtoIAnalysis65.
CreateAttribute
attrType参数更名为属性类型.
ModifiedinIAttributes65.
CreateContourMap
此方法创建一个描绘平等海拔等高线的连接点或着色地形地形高程差异,根据不同海拔的地形图。
AddedtoIAnalysis65.
CreateFloodContinuousWaterRise
该方法的返回值更名为“FloodGroupID”和改变一个BSTR/字符串类型的项目ID,因为不再使用6.5API项目的树ID.
ModifiedinIAnalysis65.
CreateFloodSingleWaterRise
该方法的返回值更名为“FloodGroupID”和改变一个BSTR/字符串类型的项目ID,因为不再使用6.5API项目的树ID。
ModifiedinIAnalysis65.
CreateKMLLayer
这种方法加载一个KML图层到项目。它取代LoadKMLLayer。
AddedtoICreator65.
CreateMeshLayerFromFile
此法加载一个的文件较统一,流优化的三维网状层(3DML)IMeshLayer65数据库。
AddedtoICreator65.
CreateMeshLayerFromSFS
此方法加载TerraGateSFSIMeshLayer65的较统一,流优化三维网状层(3DML)数据库。
AddedtoICreator65.
CreateSlopeMap
此方法创建一个地图上的地形,可以显示度(陡)和/或纵横坡(方向)
AddedtoIAnalysis65.
DisablePresentationControl
这个全局设置属性设置为true,指示,TerraExplorer隐藏屏幕上的演示控制播放介绍。
AddedtoIWindow65.
EndVisibilityQuery
这种方法释放一个新的StartXXXVisibilityQuery资源。
AddedtoIAnalysis65.
Execute
新的值被添加到的CommandID参数。
ModifiedinICommand65.
GetFeature(Deprecated)
此方法返回一组中的功能所取代GetObject
RemovedfromIFeatureGroup65.
GetTerraObjectID(Deprecated)
删除,因为这种方法检索对象的实际基于对象ID项目TreeID上,不再使用v6.5以前版本的API项目的树ID。
RemovedfromIProjectTree65.
GetXML2
替代弃用的GetXML方法,这种方法,它检索一个XML字符串,定义被添加到导航地图窗口中的地图列表。
AddedtoITENavigationMap5.
LoadKMLLayer(Deprecated)
这种方法加载一个KML层到项目中被删除,取而代之的CreateKMLLayer.
QueryPointVisibility
这种方法执行的最后StartXXVisibilityQuery呼叫。
AddedtoIAnalysis65.
SetOptionParam
新支持的参数字符串值增加了。
ModifiedinISGWorld65.
SetParent
该方法的返回值被删除。
ModifiedinIProjectTree65.
StartShadowVisibilityQuery
AddedtoIAnalysis65.
此方法初始化阴影可视性查询选定的位置和阴影效果。
StartViewshedVisibilityQuery
此方法初始化一个视域的能见度查询特定的视域。
AddedtoIAnalysis65.
事件:
OnProjectTreeAction
额外的值添加到Action参数。
ModifiedinISGWorld65.
2.5 新增加接口
I3DMLFeatureLayer65
这个接口提供点功能在3DML功能层交互的属性和方法。它使您可以访问数据源的信息的基础上,功能层和执行层的功能(如设置消息,工具提示,色调),以及执行空间查询。
I3DMLFeatureLayers65
此接口返回的功能层的数目在3DML数据集,并提供了每一层的索引,以允许访问的功能层。
I3DMLFeatureProperties65
此接口返回或设置特定的属性值中的所有功能本3DML的功能层。
I3DViewshed65
此接口提供了用于计算并创建地形和3D模型和对象是可见的从指定的位置上的区域的图形表示的属性和方法。
IClipboard65
此接口使您可以添加多个项目到剪贴板,然后访问这些项目。
IContourMap65
该接口提供了用于创建一个地形图,描绘平等海拔等高线的连接点,或根据不同高度着色地形地形高程差异的属性和方法。
IFeatureLayer65
由IFeatureLayer65替换ILayer61。现在IFeatureLayer65继承ITerraExplorerObject65。
IKMLLayer65
此接口可以访问到一个KML图层上可以执行的行动。KML图层加载到一个项目总是从本地或远程数据源直接读取,而不是进口飞文件存储在。
IMeshLayer65
该接口提供了统一,流优化3D的网状层(3DML)数据库的访问。可以创建3DML数据库TerraBuilderCityBuilder的通过三维网状城市模型合并图层(产生由TerraBuilderPhotoMesh),连同分类层,其他模型层,或者,在TerraExplorer建立一个统一的,流优化的三维网状层(3DML点图层个别引用的3D模型文件)数据库。
ISlopeMap65
这个接口提供的属性和方法创建一个斜坡地图上的地形,可以显示度(陡)和/或纵横(方向)
SkylineGlobe 从v6.1到v6.5 二次开发方面的变化参考的更多相关文章
- 基于V7的新版RL-USB V6.X + RL-FlashFS V6.X模板,操作CLASS10的SD卡速度12-15MB/S,含RTX5和FreeRTOS两版
说明: 1.如果需要RL-USB源码的话,将DAPLink(CMSIS-DAP)里面的USB代码导出来即可,DAPLink开源了RL-USB的Device代码. 也可以反过来,在工程模板的基 ...
- Inno Setup入门(二十二)——Inno Setup类参考(8)
: Install Setup 2013-02-02 11:31 477人阅读 评论(0) 收藏 举报 列表框 列表框(ListBox)是Windows应用程序中重要的输入手段,其中包括多个选项用户可 ...
- (转)Inno Setup入门(二十二)——Inno Setup类参考(8)
本文转载自:http://blog.csdn.net/yushanddddfenghailin/article/details/17268473 列表框 列表框(ListBox)是Windows应用程 ...
- Inno Setup入门(二十二)——Inno Setup类参考(8)
http://379910987.blog.163.com/blog/static/33523797201121331832201/ 列表框 列表框(ListBox)是Windows应用程序中重要的输 ...
- C++实现二叉搜索书(参考算法导论)
1 #include <iostream> 2 using namespace std; 3 4 struct node 5 { 6 // 数据域 7 int data; 8 9 // 左 ...
- 2012高校GIS论坛
江苏省会议中心 南京·钟山宾馆(2012年4月21-22日) 以"突破与提升"为主题的"2012高校GIS论坛"将于4月在南京举行,由南京大学和工程中心共同承办 ...
- 边看MHA源码边学Perl语言之一开篇
边看MHA源码边学Perl语言之一开篇 自我简介 先简单介绍一下自己,到目前为此我已经做了7年左右的JAVA和3年左右php开发与管理,做java时主要开发物流行业的相关软件,对台湾快递,国际快递,国 ...
- Angular v6 正式发布
Angular 6 正式发布 Angular 6 已经正式发布了!这个主要版本并不关注于底层的框架,更多地关注于工具链,以及使 Angular 在未来更容易快速推进. 作为发布的一部分,我们同步了主要 ...
- ThinkPHP v6.0.x 反序列化漏洞利用
前言: 上次做了成信大的安询杯第二届CTF比赛,遇到一个tp6的题,给了源码,目的是让通过pop链审计出反序列化漏洞. 这里总结一下tp6的反序列化漏洞的利用. 0x01环境搭建 现在tp新版本的官网 ...
随机推荐
- Linux 下的 PostgreSQL 数据库+文件通用自动备份脚本
由于 Odoo(原名 OpenERP)自 8.0 以来会生成 CSS,并把附件存储在文件系统中,因此以前单纯备份数据库的脚本已经不够用了.出于实际部署的考虑,我专门写了个较为通用的 Odoo 备份脚本 ...
- (后端)异常不仅仅是try/catch
前言 编程时我们往往拿到的是业务流程正确的业务说明文档或规范,但实际开发中却布满荆棘和例外情况,而这些例外中包含业务用例的例外,也包含技术上的例外.对于业务用例的例外我们别无它法,必须要求实施人员与 ...
- 第三章 Hyper-V 2012 R2配置选项
原书中的第二章 是介绍了下hyper-v的管理器和检查点的使用,导入导出虚拟机,所以我跳过了不高兴写,很简单.直接进入第三部分,介绍虚拟机的三个重要组成部分:CPU,内存,硬盘的配置选项. Hyper ...
- ES5数组的遍历方式
/* 遍历数组 */ var arr=[1,2,3,43,55,66,77,99]; /* 遍历数组 function(item,index) */ arr.forEach(function(item ...
- 【微信JSSDK】PHP版微信录音文件下载
微信的录音文件上传到微信服务器上,只能保存三天. 因此需要做一个转存到自己服务器,或者七牛云的操作. 转存到自己服务器 调用微信JSSDK API 录音, 录音结束,上传到微信服务器,获取录音文件的 ...
- markdownpad破解
下载在腾讯软件下载比较快. 破解我就不写步骤了,直接给个链接 https://blog.csdn.net/geekqian/article/details/74455409 授权邮箱:Soar360@ ...
- .whl文件打开方式 Python
wheel文件本质上就是zip或者rar,只不过他更加方便python的安装以及使用.在之前的图片中我们只要使用pip install wheel 就可以安装wheel. 在安装了wheel之后我们可 ...
- jQuery.form 的最新版本是 3.14
http://www.oschina.net/news/32628/jquery-form-3-14 有日子没跟进 jQuery.form 插件了,该插件已经从 2.xx 更新到 3.xx 了,目前最 ...
- 原生js删除元素
//删除id var idObject = document.getElementById('sidebar'); if (idObject != null) idObject.parentNode. ...
- Python高级网络编程系列之第二篇
在上一篇中,我们深入探讨了TCP/IP协议的11种状态,理解这些状态对我们编写服务器的时候有很大的帮助,但一般写服务器都是使用C/Java语言,因为这些语言对高并发的支持特别好.我们写的这些简单的服务 ...