// // AdvancedViewController.m // orbit // // Created by Jonathon Horsman on 11/07/2013. // Copyright (c) 2013 Puzzlebox Productions, LLC. All rights reserved. // #import "AdvancedViewController.h" #import "SignalConverter.h" #import "AppDelegate.h" @interface AdvancedViewController () @end @implementation AdvancedViewController { SignalConverter *signalConverter; } @synthesize pitch, pitchPercent, yaw, yawPercent, throttle, throttlePercent; - (void)viewDidLoad { [super viewDidLoad]; AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; signalConverter = appDelegate.signalConverter; } - (IBAction) pitchChanged:(id) sender { pitchPercent.text = [self percentStringFromSlider:pitch]; [self adjustValues]; } - (IBAction) yawChanged:(id) sender { yawPercent.text = [self percentStringFromSlider:yaw]; [self adjustValues]; } - (IBAction) throttleChanged:(id) sender { throttlePercent.text = [self percentStringFromSlider:throttle]; [self adjustValues]; } - (NSString *) percentStringFromSlider:(UISlider *) slider { return [NSString stringWithFormat:@"%i%%", (int)((slider.value - 0.5) * 200)]; // between -100% and 100% } - (void) adjustValues { [signalConverter setYaw:[self yawValue]throttle:[self throttleValue] pitch:[self pitchValue]]; } - (int) yawValue { return round(yaw.value * 100); } - (int) pitchValue { return round(pitch.value * 100); } - (int) throttleValue { return round(throttle.value * 100); } - (IBAction) resetButtonPressed:(id)button { pitch.value = 0.5; yaw.value = 0.5; throttle.value = 0.5; NSString *zero = @"0%"; throttlePercent.text = zero; yawPercent.text = zero; pitchPercent.text = zero; [self adjustValues]; } @end