X-Git-Url: http://git.maemo.org/git/?p=speedfreak;a=blobdiff_plain;f=Client%2Fcarmainwindow.cpp;h=5da33b71d655daf542776022249ecf33762cf3a3;hp=d03cc73ff8bd2c687f6ae3007b93d4232fad2395;hb=b8104711348ebb86e8c93b23067af8f699870626;hpb=938bd5ce223c6677c120b8646b34bb4e7251b0ab diff --git a/Client/carmainwindow.cpp b/Client/carmainwindow.cpp index d03cc73..5da33b7 100644 --- a/Client/carmainwindow.cpp +++ b/Client/carmainwindow.cpp @@ -7,6 +7,7 @@ * @author Olavi Pulkkinen * @author Rikhard Kuutti * @author Kai Rasilainen + * @author Jukka Kurttila * @copyright (c) 2010 Speed Freak team * @license http://opensource.org/licenses/gpl-license.php GNU Public License */ @@ -69,6 +70,7 @@ CarMainWindow::CarMainWindow(QWidget *parent):QMainWindow(parent), ui(new Ui::Ca // Accelerometer accelerometer = new Accelerometer(); + movingAverageZ = new MovingAverage(10); reverseAccelerationFlag = false; vehicleStartedMoving = false; @@ -88,7 +90,7 @@ CarMainWindow::CarMainWindow(QWidget *parent):QMainWindow(parent), ui(new Ui::Ca resetAccelerometerMeasurements(); measures = new Measures(); - this->initializeMeasures(); + measures->initializeMembers(); this->timer->setInterval(100); @@ -154,11 +156,12 @@ void CarMainWindow::on_listViewStartTabAccelerationCategories_clicked(QModelInde { QString str = index.data().toString(); QStringList list = str.split("-"); - QStringList list2 = list[1].split(" "); + QStringList list3 = list[1].split(" "); + QStringList list2 = list[0].split(" "); - ui->lineEditStartTabMin->setText(list[0]); - ui->lineEditStartTabMax->setText(list2[0]); - updateComboBoxStartTabUnits(list2[1]); + ui->lineEditStartTabMin->setText(list2[1]); + ui->lineEditStartTabMax->setText(list3[0]); + updateComboBoxStartTabUnits(list3[1]); } /** @@ -167,7 +170,7 @@ void CarMainWindow::on_listViewStartTabAccelerationCategories_clicked(QModelInde */ void CarMainWindow::on_autoStartButton_clicked() { - initializeMeasures(); + measures->initializeMembers(); resetAccelerometerMeasurements(); ui->pushButtonSendResult->setEnabled(false); ui->pushButtonShowResultDialog->setEnabled(false); @@ -243,7 +246,7 @@ void CarMainWindow::initListViewStartTabAccelerationCategories() catList.insert(1,"acceleration-0-100"); catList.insert(2,"acceleration-0-10"); - accelerationCategoriesStartTab << "0-40 km/h" << "0-100 km/h" << "0-10 km/h"; + accelerationCategoriesStartTab << "Acceleration 0-40 km/h" << "Acceleration 0-100 km/h" << "Acceleration 0-10 km/h"; //<< "0-1/4 Mile" << "0-1/8 Mile" << "50-100 Mile" << "0-60 Mph" << "0-100 m" << "0-50 ft" << "0-50 yrd" << "0-500 in"; QAbstractItemModel *model = new StringListModel(accelerationCategoriesStartTab); ui->listViewStartTabAccelerationCategories->setModel(model); @@ -359,27 +362,20 @@ void CarMainWindow::on_manualStartButton_clicked() */ void CarMainWindow::after_timeout() { - if ( gpsSpeed > 1.0 ) + //IF GPS checkbox is ON + if (ui->gpsOnCheckBox->isChecked()) { - timeFromGps += 0.1; + if ( gpsSpeed > 1.0 ) + { + timeFromGps += 0.1; + } } -} -/** - * Initializes measures class's member variables. - */ -void CarMainWindow::initializeMeasures() -{ - measures->setTime10kmh(0); - measures->setTime20kmh(0); - measures->setTime30kmh(0); - measures->setTime40kmh(0); - measures->setTime50kmh(0); - measures->setTime60kmh(0); - measures->setTime70kmh(0); - measures->setTime80kmh(0); - measures->setTime90kmh(0); - measures->setTime100kmh(0); + else + { + ui->labelMeasureTabSpeed->setText(QString::number(this->speed)); //Set speed. //Measure-tab view. + ui->labelMeasureTabTime->setText(QString::number(this->time)); //Set time. //Measure-tab view. + } } /** @@ -392,16 +388,7 @@ void CarMainWindow::on_pushButtonMeasureTabAbort_clicked() ui->labelMeasureTabResult->hide(); ui->labelMeasureTabTime->setText(""); ui->labelMeasureTabSpeed->setText(""); - measures->setTime10kmh(0); - measures->setTime20kmh(0); - measures->setTime30kmh(0); - measures->setTime40kmh(0); - measures->setTime50kmh(0); - measures->setTime60kmh(0); - measures->setTime70kmh(0); - measures->setTime80kmh(0); - measures->setTime90kmh(0); - measures->setTime100kmh(0); + measures->initializeMembers(); this->accelerometerTimer->stop(); this->timer->stop(); this->time = 0; @@ -459,6 +446,11 @@ void CarMainWindow::on_drawRoutePushButton_clicked() } } +void CarMainWindow::on_sendRoutePushButton_clicked() +{ + myHttpClient->sendRouteXml(); +} + /** * Opens result dialog when show result button is clicked. * Sends measures as parameter to the resultdialogs saveMeasuresToArray-function. @@ -609,6 +601,10 @@ void CarMainWindow::readAccelerometerData() //accelerometer->smoothData(x, y, z); + //Calculate average + movingAverageZ->Enqueue(z); + z = movingAverageZ->Average(); + // Apply calibration x -= accelerometer->getCalibrationX(); y -= accelerometer->getCalibrationY(); @@ -771,7 +767,7 @@ void CarMainWindow::gpsStatus() */ void CarMainWindow::gpsTimerTimeout() { - int time1000ms; + int time1000ms = 0; time1000ms += 10; //IF time is 1 second @@ -848,3 +844,4 @@ void CarMainWindow::on_calibrateButton_clicked() this->accelerometer->calibrate(); } +