This is an automated email from the git hooks/post-receive script. sebastic-guest pushed a commit to branch upstream-master in repository pktools.
commit ba8a6e17d293207ee3b15bdc7c4e260bf203a347 Author: Pieter Kempeneers <kempe...@gmail.com> Date: Tue Apr 15 19:04:26 2014 +0200 balance in pksvm_gui --- qt/pkextract_gui/mainwindow.cpp | 22 +++++---- qt/pkextract_gui/mainwindow.ui | 3 +- qt/pksvm_gui/mainwindow.cpp | 31 +++++++++++- qt/pksvm_gui/mainwindow.h | 4 ++ qt/pksvm_gui/mainwindow.ui | 102 +++++++++++++++++++++++++++------------- src/apps/pkextract.cc | 2 +- 6 files changed, 118 insertions(+), 46 deletions(-) diff --git a/qt/pkextract_gui/mainwindow.cpp b/qt/pkextract_gui/mainwindow.cpp index 95e22e9..e2e15ac 100644 --- a/qt/pkextract_gui/mainwindow.cpp +++ b/qt/pkextract_gui/mainwindow.cpp @@ -126,16 +126,18 @@ void MainWindow::on_pushButton_run_clicked() throw(qsError); } - QList<QComboBox*> qcomboBoxList = this->findChildren<QComboBox *>(); - - for(QList<QComboBox*>::ConstIterator qcbit=qcomboBoxList.begin();qcbit!=qcomboBoxList.end();++qcbit){ - QString qsOption; - qsOption+=" --"; - qsOption+=(*qcbit)->objectName(); - program+=qsOption; - program+=" "; - program+=QString::number((*qcbit)->currentIndex()); - } + program+=" --f "+ui->f->currentText(); + program+=" --rule "+ui->rule->currentText(); +// QList<QComboBox*> qcomboBoxList = this->findChildren<QComboBox *>(); + +// for(QList<QComboBox*>::ConstIterator qcbit=qcomboBoxList.begin();qcbit!=qcomboBoxList.end();++qcbit){ +// QString qsOption; +// qsOption+=" --"; +// qsOption+=(*qcbit)->objectName(); +// program+=qsOption; +// program+=" "; +// program+=QString::number((*qcbit)->currentIndex()); +// } QList<QLineEdit*> qlineEditList = this->findChildren<QLineEdit *>(); diff --git a/qt/pkextract_gui/mainwindow.ui b/qt/pkextract_gui/mainwindow.ui index f63c9ef..90bffaa 100644 --- a/qt/pkextract_gui/mainwindow.ui +++ b/qt/pkextract_gui/mainwindow.ui @@ -11,7 +11,7 @@ </rect> </property> <property name="windowTitle"> - <string>pksvm</string> + <string>pkextract</string> </property> <widget class="QWidget" name="centralWidget"> <property name="minimumSize"> @@ -265,7 +265,6 @@ </layout> </item> </layout> - <zorder></zorder> </widget> <widget class="QWidget" name="tab_4"> <attribute name="title"> diff --git a/qt/pksvm_gui/mainwindow.cpp b/qt/pksvm_gui/mainwindow.cpp index 79e050f..e73668a 100644 --- a/qt/pksvm_gui/mainwindow.cpp +++ b/qt/pksvm_gui/mainwindow.cpp @@ -53,6 +53,7 @@ void MainWindow::setDefaults() //tab input/output ui->msknodata->setText("0"); ui->nodata->setText("0"); + ui->ct->clear(); //tab classifier ui->coef0->setText("0"); ui->nu->setText("0.5"); @@ -88,6 +89,13 @@ void MainWindow::on_actionInput_triggered() ui->input->setText(qsinput); } + +void MainWindow::on_actionColor_table_triggered() +{ + QString qsct = QFileDialog::getOpenFileName(this, "Color table"); + ui->ct->setText(qsct); +} + void MainWindow::on_toolButton_input_clicked() { on_actionInput_triggered(); @@ -108,6 +116,11 @@ void MainWindow::on_toolButton_training_clicked() on_actionTraining_triggered(); } +void MainWindow::on_toolButton_ct_clicked() +{ + on_actionColor_table_triggered(); +} + void MainWindow::on_training_returnPressed() { //eventually read classes from vector file to fill in table... @@ -115,10 +128,11 @@ void MainWindow::on_training_returnPressed() void MainWindow::setClassTable(const QStringList &labels) { - QStandardItemModel *model = new QStandardItemModel(labels.size(),3,this); //nlabel rows and 3 columns + QStandardItemModel *model = new QStandardItemModel(labels.size(),4,this); //nlabel rows and 4 columns model->setHorizontalHeaderItem(0, new QStandardItem(QString("label name"))); model->setHorizontalHeaderItem(1, new QStandardItem(QString("class nr"))); model->setHorizontalHeaderItem(2, new QStandardItem(QString("prior prob"))); + model->setHorizontalHeaderItem(3, new QStandardItem(QString("balance (optional)"))); for(int ilabel=0;ilabel<labels.size();++ilabel){ QStandardItem *firstCol = new QStandardItem(QString(labels[ilabel])); model->setItem(ilabel,0,firstCol); @@ -154,6 +168,7 @@ void MainWindow::on_pushButton_run_clicked() // } // } + QStringList qslBalance; for(int irow=0;irow<ui->tableView_labels->model()->rowCount();++irow){ QString qsOption; qsOption+=" --class "; @@ -163,7 +178,21 @@ void MainWindow::on_pushButton_run_clicked() qsOption+=" --prior "; qsOption+=ui->tableView_labels->model()->data(ui->tableView_labels->model()->index(irow,2)).toString(); program+=qsOption; + QString qsbalance=ui->tableView_labels->model()->data(ui->tableView_labels->model()->index(irow,3)).toString(); + if(!qsbalance.isEmpty()) + qslBalance << qsbalance; } + for(int irow=0;irow<ui->tableView_labels->model()->rowCount();++irow){ + QString qsOption; + qsOption+=" --balance "; + if(qslBalance.size()==ui->tableView_labels->model()->rowCount()) + qsOption+=qslBalance[irow]; + else + qsOption+=qslBalance[0]; + program+=qsOption; + } + + QList<QComboBox*> qcomboBoxList = this->findChildren<QComboBox *>(); for(QList<QComboBox*>::ConstIterator qcbit=qcomboBoxList.begin();qcbit!=qcomboBoxList.end();++qcbit){ diff --git a/qt/pksvm_gui/mainwindow.h b/qt/pksvm_gui/mainwindow.h index 4e3d960..3c5fdd9 100644 --- a/qt/pksvm_gui/mainwindow.h +++ b/qt/pksvm_gui/mainwindow.h @@ -61,6 +61,10 @@ private slots: void on_commandLinkButtonPrepareTable_clicked(); + void on_actionColor_table_triggered(); + + void on_toolButton_ct_clicked(); + private: void setClassTable(const QStringList &labels); void setDefaults(); diff --git a/qt/pksvm_gui/mainwindow.ui b/qt/pksvm_gui/mainwindow.ui index 6c79e2f..f65656f 100644 --- a/qt/pksvm_gui/mainwindow.ui +++ b/qt/pksvm_gui/mainwindow.ui @@ -18,7 +18,7 @@ <item> <widget class="QTabWidget" name="tabWidget"> <property name="currentIndex"> - <number>3</number> + <number>1</number> </property> <widget class="QWidget" name="tab"> <attribute name="title"> @@ -145,16 +145,13 @@ <layout class="QVBoxLayout" name="verticalLayout_4"> <item> <layout class="QGridLayout" name="gridLayout_2"> - <item row="1" column="5"> - <widget class="QLineEdit" name="msknodata"/> - </item> - <item row="0" column="1"> - <widget class="QLineEdit" name="input"/> + <item row="2" column="5"> + <widget class="QLineEdit" name="nodata"/> </item> - <item row="0" column="0"> - <widget class="QLabel" name="label_3"> + <item row="1" column="4"> + <widget class="QLabel" name="label_14"> <property name="text"> - <string>Input data</string> + <string>msknodata</string> </property> </widget> </item> @@ -172,10 +169,10 @@ </property> </widget> </item> - <item row="2" column="0"> - <widget class="QLabel" name="label_15"> + <item row="1" column="0"> + <widget class="QLabel" name="label_13"> <property name="text"> - <string>Output data</string> + <string>Mask image</string> </property> </widget> </item> @@ -186,25 +183,31 @@ </property> </widget> </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_13"> + <item row="2" column="0"> + <widget class="QLabel" name="label_15"> <property name="text"> - <string>Mask image</string> + <string>Output data</string> </property> </widget> </item> <item row="1" column="1"> <widget class="QLineEdit" name="mask"/> </item> - <item row="2" column="5"> - <widget class="QLineEdit" name="nodata"/> + <item row="1" column="5"> + <widget class="QLineEdit" name="msknodata"/> </item> - <item row="1" column="4"> - <widget class="QLabel" name="label_14"> - <property name="text"> - <string>msknodata</string> + <item row="1" column="3"> + <spacer name="horizontalSpacer_15"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> </property> - </widget> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> </item> <item row="2" column="1"> <widget class="QLineEdit" name="output"/> @@ -216,18 +219,32 @@ </property> </widget> </item> - <item row="1" column="3"> - <spacer name="horizontalSpacer_15"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> + <item row="0" column="1"> + <widget class="QLineEdit" name="input"/> + </item> + <item row="0" column="0"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Input data</string> </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> + </widget> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_22"> + <property name="text"> + <string>color table</string> </property> - </spacer> + </widget> + </item> + <item row="3" column="1"> + <widget class="QLineEdit" name="ct"/> + </item> + <item row="3" column="2"> + <widget class="QToolButton" name="toolButton_ct"> + <property name="text"> + <string>...</string> + </property> + </widget> </item> </layout> </item> @@ -455,6 +472,7 @@ <addaction name="actionTraining"/> <addaction name="actionMask"/> <addaction name="actionOutput"/> + <addaction name="actionColor_table"/> </widget> <addaction name="menuFile"/> </widget> @@ -471,21 +489,41 @@ <property name="text"> <string>Input</string> </property> + <property name="shortcut"> + <string>Alt+I</string> + </property> </action> <action name="actionTraining"> <property name="text"> <string>Training</string> </property> + <property name="shortcut"> + <string>Alt+T</string> + </property> </action> <action name="actionMask"> <property name="text"> <string>Mask</string> </property> + <property name="shortcut"> + <string>Alt+M</string> + </property> </action> <action name="actionOutput"> <property name="text"> <string>Output</string> </property> + <property name="shortcut"> + <string>Alt+O</string> + </property> + </action> + <action name="actionColor_table"> + <property name="text"> + <string>Color table</string> + </property> + <property name="shortcut"> + <string>Alt+C</string> + </property> </action> </widget> <layoutdefault spacing="6" margin="11"/> diff --git a/src/apps/pkextract.cc b/src/apps/pkextract.cc index b79cc2c..46bf4ae 100644 --- a/src/apps/pkextract.cc +++ b/src/apps/pkextract.cc @@ -42,7 +42,7 @@ using namespace std; int main(int argc, char *argv[]) { - Optionpk<string> image_opt("i", "image", "Input image file"); + Optionpk<string> image_opt("i", "input", "Input image file"); Optionpk<string> sample_opt("s", "sample", "Input sample vector file or class file (e.g. Corine CLC) if class option is set"); Optionpk<string> layer_opt("ln", "ln", "layer name(s) in sample (leave empty to select all)"); Optionpk<string> mask_opt("m", "mask", "Mask image file"); -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/pktools.git _______________________________________________ Pkg-grass-devel mailing list Pkg-grass-devel@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel