diff --git a/Classes/Help.cpp b/Classes/Help.cpp index 961a10d..30c9ea5 100644 --- a/Classes/Help.cpp +++ b/Classes/Help.cpp @@ -4,10 +4,10 @@ Help::Help(QWidget *parent) : QWidget(parent) { ui.setupUi(this); - - // QTextCodec *codec = QTextCodec::codecForName("utf-8"); //不起作用 - // QTextCodec::setCodecForLocale(codec); - ui.textBrowser->setText(QString::fromUtf8("help")); // 暂时不能写显示中文 + QPixmap *pixmap = new QPixmap(":/Reconstruction/image/reconstruction/help.png"); + pixmap->scaled(ui.label->size(), Qt::KeepAspectRatio); + ui.label->setScaledContents(true); + ui.label->setPixmap(*pixmap); } Help::~Help() diff --git a/Classes/Loading.cpp b/Classes/Loading.cpp index e693595..7eb327b 100644 --- a/Classes/Loading.cpp +++ b/Classes/Loading.cpp @@ -5,7 +5,7 @@ Loading::Loading(QWidget *parent) { setStyle(); - + setWindowFlags(Qt::FramelessWindowHint); ui.label_2->hide(); // ui.progressBar->setValue(0); // QGraphicsOpacityEffect *opacityEffect = new QGraphicsOpacityEffect; diff --git a/Classes/Reconstruction.cpp b/Classes/Reconstruction.cpp index 45add62..2c69735 100644 --- a/Classes/Reconstruction.cpp +++ b/Classes/Reconstruction.cpp @@ -89,7 +89,7 @@ void Reconstruction::on_pushButton_2_clicked() void Reconstruction::on_pushButton_3_clicked() { ui.stackedWidget->setCurrentIndex(2); - updateQVTK(cloud); + updateQVTK(cloud, color); if(loadingStatus) { ui.label_9->setVisible(true); @@ -106,9 +106,9 @@ void Reconstruction::setCloud() ui.label_9->setVisible(false); loadingStatus = false; cloud = t->getCloud(); - updateQVTK(cloud); + updateQVTK(cloud, color); } -void Reconstruction::updateQVTK(PointCloud cloud) +void Reconstruction::updateQVTK(PointCloud cloud, QColor color) { boost::shared_ptr viewer(new visualization::PCLVisualizer("3D Viewer")); viewer->setBackgroundColor(0.458, 0.529, 0.844); @@ -117,7 +117,12 @@ void Reconstruction::updateQVTK(PointCloud cloud) { PointCloud::Ptr cloudPtr(new PointCloud); cloudPtr = cloud.makeShared(); - viewer->addPointCloud(cloudPtr, "cloud"); + + int x = int(color.redF() * 255); + int y = int(color.greenF() * 255); + int z = int(color.blueF() * 255); + visualization::PointCloudColorHandlerCustom cloud_color(cloudPtr, x, y, z);// 统一处理点云颜色 + viewer->addPointCloud(cloudPtr, cloud_color, "cloud"); viewer->setPointCloudRenderingProperties(visualization::PCL_VISUALIZER_POINT_SIZE, 1, "cloud"); } ui.qvtkWidget->SetRenderWindow(viewer->getRenderWindow()); @@ -353,10 +358,10 @@ void Reconstruction::on_pushButton_15_clicked() // 颜色选取 void Reconstruction::on_pushButton_16_clicked() { - color = QColorDialog::getColor(Qt::black); - if (color.isValid()){ - // qDebug("x:%f, %f, %f",color.redF(), color.greenF(), color.blueF()); - // todo 颜色选取框已选择颜色color,接下来对color进行处理 + QColor colortmp = QColorDialog::getColor(Qt::black); + if (colortmp.isValid()){ + color = colortmp; + updateQVTK(cloud, color); } } diff --git a/Classes/Reconstruction.h b/Classes/Reconstruction.h index a2f998f..c299dd2 100644 --- a/Classes/Reconstruction.h +++ b/Classes/Reconstruction.h @@ -41,7 +41,7 @@ private: void setStyle(); void setPicStyle(); void setButtonStyle(); - void updateQVTK(PointCloud cloud); + void updateQVTK(PointCloud cloud, QColor color); private slots: void on_pushButton_clicked(); diff --git a/Resources/Reconstruction.qrc b/Resources/Reconstruction.qrc index 024f9b8..c430bef 100644 --- a/Resources/Reconstruction.qrc +++ b/Resources/Reconstruction.qrc @@ -1,6 +1,7 @@ image/loading/loading.png + image/reconstruction/help.png image/common/3D.png diff --git a/Resources/image/reconstruction/help.png b/Resources/image/reconstruction/help.png new file mode 100644 index 0000000..1205914 Binary files /dev/null and b/Resources/image/reconstruction/help.png differ diff --git a/UI/Help.ui b/UI/Help.ui index 8689442..05b1278 100644 --- a/UI/Help.ui +++ b/UI/Help.ui @@ -6,22 +6,43 @@ 0 0 - 601 - 411 + 1000 + 500 + + + 0 + 0 + + + + + 1000 + 500 + + + + + 1000 + 500 + + Help - + - 10 - 10 - 581 - 391 + 0 + 0 + 1001 + 501 + + TextLabel + diff --git a/UI/Loading.ui b/UI/Loading.ui index 61d80d3..635cca8 100644 --- a/UI/Loading.ui +++ b/UI/Loading.ui @@ -6,10 +6,28 @@ 0 0 - 858 - 485 + 860 + 480 + + + 0 + 0 + + + + + 860 + 480 + + + + + 860 + 480 + + Loading