The ModifyWaypoint method allows the client to change specific waypoints.
HRESULT ModifyWaypoint(
[in] int Index,
[in] double X,
[in] double Height,
[in] double Y,
[in] double Yaw,
[in] double Pitch,
[in] double Roll,
[in] double CameraDeltaYaw,
[in] double CameraDeltaPitch,
[in] double Speed,
[in] BSTR MessageID)
Parameters:
Index – The zero based index of the waypoint that the client wants to retrieve.
X – The West-East coordinate of the waypoint in MPT units. You can use the ITerrain interface to retrieve information about the MPT units. If you are working in Lat-Long format, the Lat-Long values are in decimal Lat-Long.
Height – The height of the waypoint, in meters. The way this parameter is interpreted depends on the HeightRelativeToGround property.
Y – The North-South coordinate of the waypoint in MPT units. You can use the ITerrain interface to retrieve information about the MPT units. If you are working in Lat-Long format, the Lat-Long values are in decimal Lat-Long.
Yaw – The yaw orientation of the plane at that waypoint. See: “Yaw, Pitch and Roll Angles”.
Pitch – The pitch orientation of the plane at that waypoint. See: “Yaw, Pitch and Roll Angles”.
Roll – The roll orientation of the plane at that waypoint. See: “Yaw, Pitch and Roll Angles”.
CameraDeltaYaw – The offset between the camera yaw and the plane yaw.
CameraDeltaPitch – The offset between the camera pitch and the plane pitch.
Speed – The speed of the plane in meters per second at that waypoint. The plane’s speed adjusts in between waypoints to reach the speed of its next waypoint.
MessageID – The ID of the message object that appears at the new waypoint.
Return Values:
The return value obtained from the returned HRESULT can be one of the following:
Return value |
Meaning |
S_OK |
Success. |
E_FAIL |
Catastrophic failure. |
TE_E_TEOBJECT_NOLONGEREXIST |
The object you are trying to access no longer exists. This may have occurred because, while keeping an interface to the object, the user deleted it from TerraExplorer (via the TE user interface). Without the object, the interface cannot be used. Therefore, you should release the interface. |
TE_E_INTERNAL |
TerraExplorer was unable to create the object. To get more information about this error use the IErrorInfo Interface. |