Skyline开发日志之二.doc_第1页
Skyline开发日志之二.doc_第2页
Skyline开发日志之二.doc_第3页
Skyline开发日志之二.doc_第4页
Skyline开发日志之二.doc_第5页
免费预览已结束,剩余4页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Skyline开发日志之二本日志以学习html.html实例为基础,总结开发时用到的技巧和方法。1、 创建线界面 生成一个button方法:function Createpolyline() Polylineflag = true;IRender.SetMouseInputMode(1);初始化:(写在方法Init()里,下同)IRender = TE.interface(IRender5);function Init() ITerraExplorer = TE.interface(ITerraExplorer5);IInformationTree = TE.interface(IInformationTree5);IRender = TE.interface(IRender5);IObjectManager = TE.interface(IObjectManager5);IStartPosition = TE.interface(IStartPosition);IContainer = TE.interface(IContainer2);IPlane = TE.interface(IPlane5);ITerrain = TE.interface(ITerrain4);IStartPosition = TE.interface(IStartPosition);IRender = TE.interface(IRender5);Menu = TE.interface(IMenu);ISnapShot = TE.interface(ISnapShot2);ITerraExplorer.load(E:mptsuzhousuzhou.fly);window.setTimeout(test(),800);2、 typeInfo类,包括:ProInfo、MethedInfo、ITerrainProInfo、IIStartPositionInfo、IRenderProInfo界面 生成一个button只以ITerrain属性测试为例,其他的自己设计。方法如下:function ProInfo() alert(ITerraExplorer.TYPE);alert(ITerraExplorer.FlyName);alert(ITerraExplorer.DisplayErrorMessages = 1);function MethedInfo()alert(ITerraExplorer.GetUserUnits(0,3,5,7);alert(ITerraExplorer.GetTEVersion(5,00,38);function ITerrainProInfo() alert(mpt的文件名:+ITerrain.MPTName);alert(SystemKey的文件名:+ITerrain.SystemKey);alert(GroupKey的文件名:+ITerrain.GroupKey);alert(DatumKey的文件名:+ITerrain.DatumKey);alert(UnitKey的文件名:+ ITerrain.UnitKey);alert(EPSG的文件名:+ ITerrain.EPSG);alert(Description的文件名:+ ITerrain.Description);function IIStartPositionInfo()alert(开始坐标X+IStartPosition.StartX);alert(开始坐标Z+IStartPosition.StartZ);function IRenderProInfo() alert(IRender.HudMode = 6);初始化代码:ITerraExplorer = TE.interface(ITerraExplorer5);3、 创建和录制飞行路径界面设计创建路径操作: 方法:function CreateDynamic() Dynamicflag = true;IRender.SetMouseInputMode(1);function CreateDynamicVB(x,y) IRender.ScreenToWorld X,Y,63,outX,outH,outY,ObjectIDif curItemID then if IInformationTree.IsGroup(curItemID) then if isRoute = false then set Route = IObjectManager.CreateRoute (empty,0,curItemID,动态路径) isRoute = true else Route.AddWaypoint outX,outH,outY,0,-45,0,-45,0,100, end if IInformationTree.SaveFlyLayer 本人上次创建的动态路径.fly,curItemID else msgbox 你选择的是对象不能容纳对象,请选择组! end ifelse msgbox 请选择容纳对象的组!end ifend functionfunction DynamicPlay() Route.Playmsgbox 播放动态路径end functionfunction DynamicP() Route.Pausemsgbox 暂停播放动态路径end function初始化对象:IRender = TE.interface(IRender5);4、 创建用户组 方法:function CreateGroup1() var groupID = null;var GroupName = document.getElementById(CG).value;if(GroupName!=) groupID = IInformationTree.CreateGroup(GroupName,0);else alert(请输入要创建组的名字!);5、 快照Menu.Invoke(32783)是菜单命令模式调用功能,利用这种方法可快速搭建系统,实现系统主要功能,以下列出对应表:o File Menu: New = 34401 Open = 57601 Close = 57602 Save = 57603 Save As = 57604 Build TerraExplorer Viewer Kit = 32790 Print = 34400o Edit Menu: Select Object = 33432 Select Area = 33433 Copy = 32817 Cut = 32818 Paste = 32819 Properties = 34005o View Menu: Flight Panel = 1020 Upper Left Container = 1013 Lower Left Container = 1014 Hide Terrain Imagery = 34416 Full Screen = 32820o Navigation Menu: Drag Mode = 1022 Slide Mode = 1021 Turn and Tilt Mode = 1023 Zoom Menu: House = 32771 Street = 32772 City = 32773 State = 32774 Globe = 32775 Play = 1011 Pause = 34002 Stop = 1010 Beginning of Route = 34013 End of Route = 34012 Face North = 7008 Fly Around = 34026 View Object Menu: Circle pattern = 34208 Oval pattern = 34209 Line pattern = 34210 Arc pattern = 34211 Behind object = 34200 Above object = 34201 From below = 34202 From right = 34203 From left = 34204 From behind and above = 34205 Cockpit view = 34206 From ground point = 34207 Navigation Map Settings = 646 Underground = 33372o Layers Menu: Load Feature Layer = 45200 Load Imagery Layer = 33361 Load elevation Layer = 33362 Load Kml/Kmz Layer = 45140 Data Library Layers = 34429 Upload New Features Layer To Oracle Spatial = 34501 Create Resolution Pyramid = 34500 Attributes Table = 45138 Refresh Layer = 45132 Save As Layer(s) = 45300 o Create Menu: 2D Objects Menu: Text Label = 33318 Image Label = 33319 Polyline = 33300 Polygon = 33301 Rectangle = 33302 Regular Polygon = 33303 Arrow = 33304 Circle = 33305 Ellipse = 33306 Arc = 33307 3D Objects Menu: Load 3D Model = 33321 Point Cloud Model = 33360 Load Linear Point Cloud set = 34417 Building = 33317 Polygon = 33316 Box = 33310 Cylinder = 33312 Sphere = 33313 Cone = 33314 Pyramid = 33311 Arrow = 33315 Dynamic Objects Menu: Ground Vehicle = 33322 Aerial Vehicle = 33437 Load Dynamic Object Route = 33438 Terrain Objects Menu: Modify Terrain = 33370 Hole On Terrain = 33371 Video On Terrain = 33309 Location = 45121 Route = 45120 Tree Message = 45122 New Information Tree Group = 45000o Measurements Menu: Information Query = 33325 Horizontal Distance = 33326 Aerial Distance = 33327 Vertical Distance = 33330 Measure Area = 33350 Contour Map = 33331 Terrain Profile = 33329 Best Path = 33333 Line Of Sight = 33328 Viewshed Analysis = 33334 Threat Dome = 33332o Tools Menu: Collaboration = 34419 Extract Terrain Menu: To MPT = 34420 To VRML = 34436 Shadow Analysis = 32779 Draw = 34413 GPS Tracking = 34422 Find Objects = 34411 Duplicate Objects = 34412 Build Power Line = 34414 Navigation Aid = 34438 Multiple Coordinate Systems = 34437 Mil-Std-2525b = 34431 Make Point Cloud Model = 34435 Sextant = 32782 Data Library Menu: 3D Models = 34425 Icons = 34426 Building Textures = 34427 Label Frames = 34428 Snapshot = 32783 Save Snapshot To File = 32781 Snapshot Size = 32785 Project Settings = 34405 Options = 32787注:红色字体部分需要调用其他窗体或HTML才能运行正常6、 鼠标模式方法:function GetMouseMode() msgbox IRender.GetMouseInputModeend functionmsgbox是Windows窗体。而Skyline是通过容器接口(IContainer2)来实现Message窗口的调用,当方法IContainer.HTMLPopup()的第一个参数为1的时候,可以通过URL地址来引用HTML页面,而当第一个参数为0时则代表调用的是文本信息。7、 显示和隐藏图层 显示和隐藏层方法:function LayerVis()if (document.getElementById(chk1).checked) IInformationTree.SetGroupVisibility(IInformationTree.FindItem(0),true);else IInformationTree.SetGroupVisibility(IInformationTree.FindItem(0),false);8、 飞往某地名称:经度:纬度:方法:function FlyToSomeWhere() var tName,tX0,tZ0tName = document.getElementById(flyName).value;tX0 = document.getElementById(flyJD).value;tZ0 = document.getElementById(flyWD).value;CreateLabelFlyTo(tName,tX0,tZ0);function CreateLabelFlyTo(txt,x1,z1) var LabelInfo = new Object();LabelInfo.Text = txt;LabelInfo.Scale = 1;LabelInfo.b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论