您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 综合/其它 > SkylineGlobe二次开发6.5-skyline
Page:1©SkylineSoftwareSystems,Inc.Skyline二次开发培训技术支持部赵贺Page:2©SkylineSoftwareSystems,Inc.1:SkylineGlobe产品结构2:Skyline开发环境与流程3:Skyline部署与软件选型4:ActiveX控件5:Skyline类库与接口6:开发综合实例Page:3©SkylineSoftwareSystems,Inc.Page:4©SkylineSoftwareSystems,Inc.Page:5©SkylineSoftwareSystems,Inc.TerraBuilderFamilyTerraBuilderMulti-ProcessorEdition***TerraBuilderFuser***CityBuilderPage:6©SkylineSoftwareSystems,Inc.TerraBuilder-工作界面Page:7©SkylineSoftwareSystems,Inc.TerraGateFamilyTerraGateManagerTerrainServerCollaborationServerInternetLicenseDirectConnectSpatialFrameworkServicesPage:8©SkylineSoftwareSystems,Inc.TerraGate界面Page:9©SkylineSoftwareSystems,Inc.TerraExplorerFamilyTerraExplorerTerraExplorerPlusTerraExplorerProPage:10©SkylineSoftwareSystems,Inc.全部API接口都以COM协议为基础,可以通过:脚本语言操作(例如:Javascript、vbscript)非脚本语言来控制操作(例如:C++、VB、Delphi、.NET)Skyline开发环境与流程Page:11©SkylineSoftwareSystems,Inc.数据准备确定应用程序类型选择API和开发环境开发应用程序部署应用程序Skyline开发环境与流程Page:12©SkylineSoftwareSystems,Inc.单机方案:TerraExplorerProC/S网络方案:TerraExplorerPro+TerraGate+10个TEPlusB/S网络方案:TerraExplorerPro+TerraGate+InternetLicense+DirectConnect+SFS高级网络方案:TerraExplorerPro+TerraGate+InternetLicense+DirectConnect+TerraBuilderMulti-ProcessoreditionSkyline部署与软件选型Page:13©SkylineSoftwareSystems,Inc.ActiveX控件介绍TE3DWindow三维场景TEInformationWindow信息树TENavigationMap导航图TE3DWindowEx三维场景扩展Page:14©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VB版)Page:15©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VB版)Page:16©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VB版)Page:17©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VisualC++版)Page:18©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VisualC++版)Page:19©SkylineSoftwareSystems,Inc.ActiveX控件介绍(VisualC++版)Page:20©SkylineSoftwareSystems,Inc.ActiveX控件介绍(C#版)Page:21©SkylineSoftwareSystems,Inc.ActiveX控件介绍(C#版)Page:22©SkylineSoftwareSystems,Inc.TerraExplorerProAPI•TerraExplorerAPI提供了一套强大的接口用来集成TerraExplorer、TerraExplorerPro和用户自定义应用。它提供了一些访问外部信息扩展的方法,比如:访问数据库或基础地理空间数据。Page:23©SkylineSoftwareSystems,Inc.•3D模式导航•工程管理•特征和栅格图层•对象管理•地形分析•事件通知•在Web页面和桌面应用程序嵌入TerraExplorerActiveX控件。此外,TerraExplorerAPI还包括一系列其它操作,如控制容器显示内容,查询地形高程信息,快照、三维路线漫游和控制鼠标等。TerraExplorerAPI相关功能模块Page:24©SkylineSoftwareSystems,Inc.•创建扩展,添加额外的文件和数据库格式的支持。•建立实时运动对象的命令和控制应用程序。•编辑特征图层(例如:道路编辑)。•添加自定义对象(例如:危险域)。•高级地形查询功能(例如:地形剖面分析)。•将高级功能的HTML页面嵌入到TerraExplorer窗口。•使用SkylineGlobe服务器架构建立高级网络应用程序。•创建自定义运行时应用程序,将3D窗口和信息树作为ActiveX组件嵌入其中。TerraExplorerAPIPage:25©SkylineSoftwareSystems,Inc.TerraExplorerProAPI•功能接口•其他接口Page:26©SkylineSoftwareSystems,Inc.•Skyline的二次开发采用API(ApplicationProgrammingInterface)和ActiveX相结合的方式。•默认安装目录“C:\ProgramFiles\Skyline\TerraExplorerPro”中的“TerraExplorerX.dll”文件。TerraExplorerProAPIPage:27©SkylineSoftwareSystems,Inc.ISGWorld------属性•Project打开工程、管理工程属性、保存工程等•Command激活TE的标准菜单项•ProjectTree信息树中创建组和树中对象查询等•Creator创建和删除图层、对象、点位、几个形状、颜色和演示•Analysis地形分析操作•Navigate通过设置摄像机的位置来实现在3D窗口中导航生成复杂的运动模式•Window创建弹出窗口、快照•TerrainMPT的名称、坐标新等相关信息•Version版本信息•CoordServices转换和定义坐标系•Application不同级别的应用设置•DateTime日期和时间的设置•IgnoreAccelerators决定快捷键的执行方式Page:28©SkylineSoftwareSystems,Inc.ISGWorld------方法•AttachEvent连接函数和事件•DetachEvent断开函数和事件的连接•GetOptionParam获得TerraExplorer选项的值•Open打开工程•SetOptionParam设置TerraExplorer选项的值Page:29©SkylineSoftwareSystems,Inc.ISGWorld------事件鼠标事件•OnLButtonDblClk•OnLButtonDown•OnLButtonUp•OnMButtonDblClk•OnMButtonDown•OnMButtonUp•OnMouseWheel•OnRButtonDblClk•OnRButtonDown•OnRButtonUpPage:30©SkylineSoftwareSystems,Inc.ISGWorld------事件操作文件•OnFileClosed在fly文件关闭后触发•OnFileClosing在fly文件关闭时触发•OnFileSavefly文件被保存前触发•OnCreateBasicKit将fly文件打包时触发演示事件•OnPresentationFlyToReachedDestination•OnPresentationPlayTimeAnimationEnded•OnPresentationStatusChanged•OnBeforePresentationItemActivationPage:31©SkylineSoftwareSystems,Inc.ISGWorld------事件•OnCommandValueChanged标准菜单命令的值变化时触发•OnContainerChanged•OnDateTimeChanged时间和日期改变时触发•OnInputModeChanged控件的输入模式改变时触发,比如当三维窗口由自由飞行模式转为测量模式时。•OnRenderQualityChanged改变当前地形精度时触发•OnObjectAction特定的动作被执行时触发,比如flyto•OnProjectTreeAction信息树中特定的动作被触发•OnLoadFinished在TE结束加载fly文件时触发•OnFrame在三维窗口渲染刷新的每一帧中调用。在每一帧渲染前,加入你相关代码实现一些基于时间帧的动态功能,比如在地表移动一个对象等。Page:32©SkylineSoftwareSystems,Inc.IProject65接口–FileVersion软件信息获取,返回ITEVersionInfo65类型ITEVersionInfo65–Name返回Fly文件的名称–Open数据加载MPT或者FLY文件–Save数据保存–SaveAs–Close关闭工程–getSetting工程参数设置–setSetting功能开发:工程设置及工程文件操作BuildFreezeMajorMinorTypePage:33©SkylineSoftwareSystems,Inc.功能开发:菜单功能实现ICommand65接口–CanExecute判断命令是否可用–GetValue获取属性值–IsChecked判断某个命令是否被激活–Execute时间轴1065,4指北1056,0太阳1026,0地下模式1027,0缩放GlobeLevel1055,5CountryLevel1055,4StateLevel1055,3CityLevel1055,2StreetLevel1055,1HouseLevel1055,0Page:34©SkylineSoftwareSystems,Inc.功能开发:菜单功能实现C#程序举例演示Page:35©SkylineSoftwareSystems,Inc.IProjectTree65接口–FindItem查找项目–GetNextItem–GetItemName–DeleteItem删除项目–SetParent移动项目–EditItem编辑项目–EditItems–EndEdit–EnableRedraw–SelectItem获取图层、对象等信息–GetLayerIFeatureLayer65(ILayer6)–GetObjectITerraExplorerObject6功能开发:索引组织结构管理Page:36©SkylineSoftwareSystems,Inc.IProjectTree65接口–CreateGroup创建组–CreateLockedGroup–IsGroup–LockGroup操作组对象–RenameGroup–SetGroupLocation–SetGroupEndTime获取组的相关信息–SetGroupStartT
本文标题:SkylineGlobe二次开发6.5-skyline
链接地址:https://www.777doc.com/doc-1658139 .html