Merge pull request #9096 from jordan-woyak/calibration-cleanup

ControllerEmu: Improve and simplify UpdateCalibrationData.
This commit is contained in:
Léo Lam
2020-10-20 02:01:16 +02:00
committed by GitHub
4 changed files with 33 additions and 48 deletions

View File

@ -856,6 +856,7 @@ void CalibrationWidget::SetupActions()
void CalibrationWidget::StartCalibration()
{
m_prev_point = {};
m_calibration_data.assign(m_input.CALIBRATION_SAMPLE_COUNT, 0.0);
// Cancel calibration.
@ -888,7 +889,9 @@ void CalibrationWidget::Update(Common::DVec2 point)
if (IsCalibrating())
{
m_input.UpdateCalibrationData(m_calibration_data, point - *m_new_center);
const auto new_point = point - *m_new_center;
m_input.UpdateCalibrationData(m_calibration_data, m_prev_point, new_point);
m_prev_point = new_point;
if (IsCalibrationDataSensible(m_calibration_data))
{

View File

@ -204,4 +204,5 @@ private:
ControllerEmu::ReshapableInput::CalibrationData m_calibration_data;
QTimer* m_informative_timer;
std::optional<Common::DVec2> m_new_center;
Common::DVec2 m_prev_point;
};