TEPro6.6API更新
概述
API6.6 较6.5只做了微小的更新,您可以很容易的将6.5的应用程序移植为6.6版本的应用程序。
C#环境中,修改步骤如下:
- 创建SGWorld66实例代替SGWorld65
- 重命名所有的类型为v6.6
例如:IPosition65 pos =…修改为IPosition66 pos =…
注:Geometry相关的对象没有版本号,所以不必修改
- 重新编译代码
注:少数的错误是因为v6.5修改了某些方法或者属性,详情参考下节。
Javascript中,修改步骤如下:
- 创建SGWorld66实例代替SGWorld65
将<object id="globe" classid="clsid: 3A4F9197-65A8-11D5-85C1-0001023952C1" />修改为<object id="globe" classid="clsid: 3A4F9199-65A8-11D5-85C1-0001023952C1" />
- 修改变化了的方法和属性
属性
属性 | 接口 | 更新内容 | 说明 |
AltitudeType | IPosition66 | AltitudeTypeCode新增(ATC_3DML_RELATIVE = 4) | 将对象以一定的高度创建于3DML图层之上。 |
CurrentTimeBuffer | IDateTime66 | 新增 | 获取和设置时间轴的时间范围。 |
DataSourceBBox | ITerrainRasterLayer66 | 新增 | 获取栅格图层的范围框,范围框为IBBox2D66类型。 |
DataSourceWKT | ITerrainRasterLayer66 | 新增 | 获取栅格图层的WKT。 |
DeltaAltitude | IAttachment66 | 新增 | 获取和设置关联对象高度的偏移距离。 |
DeltaPitch | IAttachment66 | 新增 | 获取和设置关联对象俯仰角偏移。 |
DeltaRoll | IAttachment66 | 新增 | 获取和设置关联对象翻滚角偏移。 |
DeltaX | IAttachment66 | 新增 | 获取和设置关联对象X坐标的偏移距离。 |
DeltaY | IAttachment66 | 新增 | 获取和设置关联对象Y坐标的偏移距离。 |
DeltaYaw | IAttachment66 | 新增 | 获取和设置关联对象偏航角偏移。 |
Features | IFeatureGroup66 | 废弃 | 使用GetCurrentFeatures代替 |
LayerID | IFeature66 | 新增 | 获取要素所在图层的ID。 |
MoveByTime | ITerrainDynamicObject66 | 新增 | 布尔值定义动态对象移动是否基于开始和结束时间。 |
ProjectOnHiddenSurfaces | ITerrainVideo66 | 新增 | 布尔值定义视频是否只投影到可见区域。 |
ScaleFactor | IMeshLayer66 | 新增 | 3DML数据集的缩放比率 |
ScaleX | IMeshLayer66 | 新增 | 3DML数据集X轴的缩放比率 |
ScaleY | IMeshLayer66 | 新增 | 3DML数据集Y轴的缩放比率 |
ScaleZ | IMeshLayer66 | 新增 | 3DML数据集Z轴的缩放比率 |
Type | IWorldPointInfo66 | 枚举值由WPT_ALL 变更为 WPT_DEFAULT |
方法
方法 | 接口 | 更新内容 | 说明 |
AttachTo() | IAttachment66 | 增加了三个参数:DeltaYaw, DeltaPitch, DeltaRoll | 设置关联对象间的偏移角度 |
CanExecute() | ICommand66 | 增加了新的命令 | |
CenterPixelToWorld() | IWindow66 | 枚举值由WPT_ALL 变更为 WPT_DEFAULT | |
ChangeAltitudeType() | IPosition66 | AltitudeTypeCode新增(ATC_3DML_RELATIVE = 4) | 将对象以一定的高度创建于3DML图层之上。 |
CreateEffect() | ICreator66 | 新增 | 创建特效ITerrainEffect66对象 |
CreateFromStream() | ICreator66 | 废弃 | 使用IFeatureLayer66.Streaming代替 |
CreatePosition() | ICreator66 | AltitudeTypeCode新增(ATC_3DML_RELATIVE = 4) | 将对象以一定的高度创建于3DML图层之上。 |
DetectCollisionToTarget() | INavigate66 | 新增 | 返回摄像机与目标方向检测到的第一个对象的距离 |
Execute() | ICommand66 | 增加了新的命令 | |
GetControls () | IWindow66 | 增加了枚举值HUD_LAYER_ZOOM_CONTROL = 256 | |
GetCurrentFeatures() | IFeatureGroup66 | 新增 | 获取当前图层加载的所有要素 |
GetFeatureByDataSourceFeatureID() | IFeatureGroup66 | 新增 | 通过数据源中定义的要素ID获取要素 |
GetFeatureByObjectID() | IFeatureGroup66 | 新增 | 通过TEPro中定义的对象ID获取要素 |
GetPosition() | INavigate66 | AltitudeTypeCode新增(ATC_3DML_RELATIVE = 4) | 将对象以一定的高度创建于3DML图层之上。 |
CreateMovie() | IAviWriter66 | 新增HideScreenOverlays参数 | HUD控件是否显示 |
Init() | IPosition66 | AltitudeTypeCode新增(ATC_3DML_RELATIVE = 4) | 将对象以一定的高度创建于3DML图层之上。 |
MeasureTerrainGroundDistance() | IAnalysis66 | 新增 | 测量地面线的距离(考虑到地形变化) |
MeasureTerrainProfile() | IAnalysis66 | 新增 | 测量地形剖面 |
PixelToWorld() | IWindow66 | 枚举值由WPT_ALL 变更为 WPT_DEFAULT | |
QueryElevationBuffer() | IAnalysis66 | 新增 | 查询地形高度 |
QueryVisibilityDistance() | IAnalysis66 | 新增 | |
SetGPSMode() | INavigate66 | 新增 | 开启GPS模式 |
SetGPSPosition() | INavigate66 | 新增 | 设置GPS位置 |
SetOptionParam() | ISGWorld66 | 增加了可设置的参数 | |
ShowControls() | IWindow66 | 增加了HUD_LAYER_ZOOM_CONTROL = 256枚举值 |
事件
事件 | 接口 | 更新内容 | 说明 |
OnAnalysisDistancePointAdded | SGWorld66 | 新增 | 测量距离的点增加的时候触发 |
OnLButtonClicked | ISGWorld66 | 新增 | 用户点击鼠标左键的时候触发 |
OnLoadFinished | ISGWorld66 | 增加了参数bSuccess | 决定fly是否加载成功 |
新增接口
接口 | 说明 |
_3DMLCreator66 | 生成3DML |
ITerrainEffect66 | 动画特效接口 |