00001 /**************************************************************** 00002 * 00003 * Copyright (c) 2010 00004 * 00005 * Fraunhofer Institute for Manufacturing Engineering 00006 * and Automation (IPA) 00007 * 00008 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00009 * 00010 * Project name: care-o-bot 00011 * ROS stack name: cob_3d_environment_perception_intern 00012 * ROS package name: cob_3d_mapping_demonstrator 00013 * Description: Feature Map for storing and handling geometric features 00014 * 00015 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00016 * 00017 * Author: Georg Arbeiter, email:georg.arbeiter@ipa.fhg.de 00018 * Supervised by: Georg Arbeiter, email:georg.arbeiter@ipa.fhg.de 00019 * 00020 * Date of creation: 04/2012 00021 * ToDo: 00022 * 00023 * 00024 * 00025 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00026 * 00027 * Redistribution and use in source and binary forms, with or without 00028 * modification, are permitted provided that the following conditions are met: 00029 * 00030 * * Redistributions of source code must retain the above copyright 00031 * notice, this list of conditions and the following disclaimer. 00032 * * Redistributions in binary form must reproduce the above copyright 00033 * notice, this list of conditions and the following disclaimer in the 00034 * documentation and/or other materials provided with the distribution. 00035 * * Neither the name of the Fraunhofer Institute for Manufacturing 00036 * Engineering and Automation (IPA) nor the names of its 00037 * contributors may be used to endorse or promote products derived from 00038 * this software without specific prior written permission. 00039 * 00040 * This program is free software: you can redistribute it and/or modify 00041 * it under the terms of the GNU Lesser General Public License LGPL as 00042 * published by the Free Software Foundation, either version 3 of the 00043 * License, or (at your option) any later version. 00044 * 00045 * This program is distributed in the hope that it will be useful, 00046 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00047 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00048 * GNU Lesser General Public License LGPL for more details. 00049 * 00050 * You should have received a copy of the GNU Lesser General Public 00051 * License LGPL along with this program. 00052 * If not, see <http://www.gnu.org/licenses/>. 00053 * 00054 ****************************************************************/ 00055 00056 #include <QLabel> 00057 #include <QPixmap> 00058 #include <QHBoxLayout> 00059 #include <QDesktopWidget> 00060 #include <QRect> 00061 #include <QSize> 00062 #include <QApplication> 00063 00064 #include <ros/package.h> 00065 00066 #include "cob_3d_mapping_demonstrator/rviz_title.h" 00067 00068 using namespace std; 00069 00070 00071 namespace cob_environment_perception 00072 { 00073 00077 RvizTitle::RvizTitle( QWidget* parent ) 00078 : rviz::Panel( parent ) 00079 { 00080 string path = ros::package::getPath("cob_3d_mapping_demonstrator") + "/ros/files/logo_title.jpg"; 00081 00082 QPixmap pixmap(path.c_str()); 00083 //resize image if it is larger than screen size. 00084 //QDesktopWidget* desktopWidget = QApplication::desktop(); 00085 QRect rect(0,0,1500,100);// = desktopWidget->availableGeometry(); 00086 00087 QSize size(rect.width() , rect.height()); 00088 //resize as per your requirement.. 00089 00090 image_ = new QPixmap(pixmap.scaledToWidth(1500)); 00091 image_label_ = new QLabel(); 00092 00093 image_label_->setScaledContents ( true ); 00094 image_label_->setPixmap(*image_); 00095 00096 QHBoxLayout* main_layout = new QHBoxLayout; 00097 main_layout->addWidget(image_label_); 00098 setLayout(main_layout); 00099 } 00100 00101 } 00102 00103 #include <pluginlib/class_list_macros.h> 00104 PLUGINLIB_DECLARE_CLASS( cob_3d_mapping_demonstrator, Title, cob_environment_perception::RvizTitle, rviz::Panel ) 00105