private void Init_Mission_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e) { WaypointMissionFinishedAction finishedAction = (WaypointMissionFinishedAction)Enum.Parse(typeof(WaypointMissionFinishedAction), finishedCombo.SelectedIndex.ToString()); WaypointMissionHeadingMode headingMode = (WaypointMissionHeadingMode)Enum.Parse(typeof(WaypointMissionHeadingMode), ((ComboBoxItem)headingCombo.SelectedItem).Tag.ToString()); init_mission(Int32.Parse(speedTextBox.Text), finishedAction, headingMode); int heading; bool success = Int32.TryParse(headingTextBox.Text, out heading); if (success && heading > 180) { heading = heading - 360; } WaypointTurnMode turnMode = (WaypointTurnMode)Enum.Parse(typeof(WaypointTurnMode), turnCombo.SelectedIndex.ToString()); Waypoint waypoint = InitDumpWaypoint(telemetry.gps_location.latitude + 0.00003, telemetry.gps_location.longitude, Double.Parse(altitudeTextBox.Text), turnMode, heading, Int32.Parse(speedTextBox.Text)); mission.waypoints.Add(waypoint); RedrawWaypoint(); int a = 0; }
private void init_mission(double autoFlightSpeed, WaypointMissionFinishedAction action, WaypointMissionHeadingMode heading_mode) { missionCreated = true; mission = new WaypointMission() { waypointCount = 0, maxFlightSpeed = 15, autoFlightSpeed = autoFlightSpeed, finishedAction = action, headingMode = heading_mode, flightPathMode = WaypointMissionFlightPathMode.NORMAL, gotoFirstWaypointMode = WaypointMissionGotoFirstWaypointMode.SAFELY, exitMissionOnRCSignalLostEnabled = false, pointOfInterest = new LocationCoordinate2D() { latitude = 0, longitude = 0 }, gimbalPitchRotationEnabled = false, repeatTimes = 0, missionID = 0, waypoints = new List <Waypoint>() }; }