private void DoSetHeading(int newHeadingDegrees) { var headingChange = newHeadingDegrees - _currentHeading; while (headingChange >= 360) { headingChange -= 360; } while (headingChange < 0) { headingChange += 360; } if (headingChange < 15.0 || headingChange > 345.0) { return; } _currentHeading = newHeadingDegrees; SpheroTrace.Trace("Heading to {0})", headingChange); var command = new SetHeadingCommand(headingChange); SendCommand(command); }
private void DoSetHeading(int newHeadingDegrees) { var headingChange = newHeadingDegrees - _currentHeading; while (headingChange >= 360) headingChange -= 360; while (headingChange < 0) headingChange += 360; if (headingChange < 15.0 || headingChange > 345.0) return; _currentHeading = newHeadingDegrees; SpheroTrace.Trace("Heading to {0})", headingChange); var command = new SetHeadingCommand(headingChange); SendCommand(command); }