ImageView.cpp
Go to the documentation of this file.
1 /*
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @author Rainer Kartmann ( rainer dot kartmann at kit dot edu)
17 * @date 2021
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21 
22 #include "ImageView.h"
23 
24 #include <QImage>
25 #include <QPainter>
26 
28 
29 
31 {
32 
33  ImageView::ImageView(QWidget* parent) : QWidget(parent)
34  {
35  setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
36 
37  connect(this, &This::sourceImageChanged, this, &This::updateImage);
38  }
39 
40  void ImageView::setImage(const QImage& image)
41  {
42  sourceImage = image.copy();
43  emit sourceImageChanged();
44  }
45 
46  void ImageView::paintEvent(QPaintEvent* event)
47  {
48  (void) event;
49 
50  QPainter painter(this);
51  //scaledImage = image.scaled (width(), height(), Qt::KeepAspectRatio, Qt::FastTransformation);
52  scaledImage = sourceImage.scaled(width(), height(), Qt::KeepAspectRatio, Qt::SmoothTransformation);
53  painter.drawImage(0, 0, scaledImage);
54  }
55 
57  {
58  update(0, 0, width(), height());
59  }
60 
61 }
62 
armarx::armem::gui::instance::ImageView::updateImage
void updateImage()
Definition: ImageView.cpp:56
ImageView.h
armarx::armem::gui::instance::ImageView::sourceImageChanged
void sourceImageChanged()
armarx::armem::gui::instance
Definition: AronDataView.cpp:2
armarx::armem::gui::instance::ImageView::paintEvent
void paintEvent(QPaintEvent *pPaintEvent) override
Definition: ImageView.cpp:46
armarx::armem::server::ltm::util::mongodb::detail::update
bool update(mongocxx::collection &coll, const nlohmann::json &query, const nlohmann::json &update)
Definition: mongodb.cpp:67
ExpressionException.h
armarx::armem::gui::instance::ImageView::setImage
void setImage(const QImage &image)
Definition: ImageView.cpp:40
armarx::armem::gui::instance::ImageView::ImageView
ImageView(QWidget *parent=nullptr)
Definition: ImageView.cpp:33