examples/sensors/panoramaWithSense/rotationcontroller.cpp
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 04 Oct 2010 01:37:06 +0300
changeset 5 603d3f8b6302
permissions -rw-r--r--
Revision: 201037 Kit: 201039

#include "rotationcontroller.h"


RotationController::RotationController(): InputController(), m_factor(0.5){
    setDataRate(&m_rotationSensor);
    doStart();
}

RotationController::~RotationController(){
    doStop();
}


void RotationController::update()
{
    qreal pitch = m_rotationSensor.reading()->x();
    qreal roll= m_rotationSensor.reading()->y();

    m_dx = - m_factor* roll;
    m_dy =  - m_factor * pitch;

    updateCoordinates();
}


void RotationController::updateCoordinates(){
    m_x +=m_dx;
    m_y +=m_dy;
}




void RotationController::doStart(){
    m_rotationSensor.start();
    connect(&m_rotationSensor, SIGNAL(readingChanged()), this, SLOT(update()));

}


void RotationController::doStop(){
    m_rotationSensor.disconnect();
    m_rotationSensor.stop();

}