public void Init(AircraftPositionStruct position) { logger.LogDebug("Set initial position"); simconnect.SetDataOnSimObject(DEFINITIONS.AircraftPositionInitial, SimConnect.SIMCONNECT_OBJECT_ID_USER, SIMCONNECT_DATA_SET_FLAG.DEFAULT, new SIMCONNECT_DATA_INITPOSITION { Latitude = position.Latitude, Longitude = position.Longitude, Altitude = position.Altitude, Pitch = position.Pitch, Bank = position.Bank, Heading = position.TrueHeading, OnGround = position.IsOnGround, Airspeed = 0 }); }
public uint Spawn(string aircraftTitle, AircraftPositionStruct position) { var requestID = DATA_REQUESTS.AI_SPAWN + requestCount; requestCount = (requestCount + 1) % 10000; lock (lockObj) { logger.LogDebug("Spawing new aircraft. Request ID {requestId}.", (uint)requestID); simconnect?.AICreateNonATCAircraft(aircraftTitle, "REPLAY", new SIMCONNECT_DATA_INITPOSITION { Latitude = position.Latitude, Longitude = position.Longitude, Altitude = position.Altitude, Pitch = position.Pitch, Bank = position.Bank, Heading = position.TrueHeading, OnGround = position.IsOnGround, Airspeed = 0 }, requestID); } return((uint)requestID); }
private void ProcessAircraftPosition(AircraftPositionStruct position) { logger.LogTrace("Get Aircraft status"); AircraftPositionUpdated?.Invoke(this, new AircraftPositionUpdatedEventArgs(position)); }
public static partial AircraftPositionSetStruct ToSet(AircraftPositionStruct variables);
public AircraftPositionUpdatedEventArgs(AircraftPositionStruct position) { Position = position; }