LVRScanDataItem.hpp
Go to the documentation of this file.
1 #ifndef LVR2_TOOLS_VIEWER_WIDGETS_LVRSCANDATAITEM_HPP
2 #define LVR2_TOOLS_VIEWER_WIDGETS_LVRSCANDATAITEM_HPP
3 
4 #include <QString>
5 #include <QTreeWidgetItem>
6 
7 #include <vtkMatrix4x4.h>
8 
11 
12 #include "../vtkBridge/LVRModelBridge.hpp"
13 #include "../vtkBridge/LVRBoundingBoxBridge.hpp"
14 
15 #include "LVRBoundingBoxItem.hpp"
16 #include "LVRPointCloudItem.hpp"
17 #include "LVRPoseItem.hpp"
18 #include "LVRCamDataItem.hpp"
19 
20 #include <Eigen/Dense>
21 
22 namespace lvr2
23 {
24 
25 class LVRScanDataItem : public QTreeWidgetItem, public Transformable
26 {
27  public:
28 
30  std::shared_ptr<ScanDataManager> sdm,
31  size_t idx,
32  vtkSmartPointer<vtkRenderer> renderer,
33  QString name = "",
34  QTreeWidgetItem *parent = NULL);
35 
37 
38  void loadPointCloudData(vtkSmartPointer<vtkRenderer> renderer);
39 
40  void unloadPointCloudData(vtkSmartPointer<vtkRenderer> renderer);
41 
42  size_t getScanId() { return m_idx; }
43 
44  QString getName() { return m_name; }
45 
46  Pose getPose() { return getModelBridgePtr()->getPose(); }
47 
49 
51 
52  void setVisibility(bool visible, bool pc_visible);
53 
54  bool isPointCloudLoaded();
55 
56  void reload();
57 
58  private:
59 
60  void reload(vtkSmartPointer<vtkRenderer> renderer);
61 
62  QString m_name;
63  std::shared_ptr<ScanDataManager> m_sdm;
64  size_t m_idx;
72  QTreeWidgetItem *m_showSpectralsItem;
74  vtkSmartPointer<vtkRenderer> m_renderer;
75 
76 };
77 
78 } // namespace lvr2
79 
80 #endif
LVRPoseItem.hpp
lvr2::LVRScanDataItem::getBoundingBoxBridge
BoundingBoxBridgePtr getBoundingBoxBridge()
Definition: LVRScanDataItem.hpp:50
lvr2::LVRScanDataItem::m_name
QString m_name
Definition: LVRScanDataItem.hpp:62
ScanDataManager.hpp
lvr2::LVRScanDataItem::getModelBridgePtr
ModelBridgePtr getModelBridgePtr()
Definition: LVRScanDataItem.cpp:127
lvr2::LVRScanDataItem::m_idx
size_t m_idx
Definition: LVRScanDataItem.hpp:64
lvr2::LVRScanDataItem::m_renderer
vtkSmartPointer< vtkRenderer > m_renderer
Definition: LVRScanDataItem.hpp:74
lvr2::Transformd
Transform< double > Transformd
4x4 double precision transformation matrix
Definition: MatrixTypes.hpp:71
lvr2::LVRScanDataItem::getScanId
size_t getScanId()
Definition: LVRScanDataItem.hpp:42
lvr2::TransformableBase
Interface for transformable objects.
Definition: Transformable.hpp:13
lvr2::LVRScanDataItem::~LVRScanDataItem
~LVRScanDataItem()
Definition: LVRScanDataItem.cpp:178
lvr2::LVRPointCloudItem
Definition: LVRPointCloudItem.hpp:45
NULL
#define NULL
Definition: mydefs.hpp:141
lvr2::LVRScanDataItem::loadPointCloudData
void loadPointCloudData(vtkSmartPointer< vtkRenderer > renderer)
Definition: LVRScanDataItem.cpp:108
lvr2::LVRScanDataItem::getPose
Pose getPose()
Definition: LVRScanDataItem.hpp:46
lvr2::LVRScanDataItem::m_pItem
LVRPoseItem * m_pItem
Definition: LVRScanDataItem.hpp:71
lvr2::LVRScanDataItem::m_bbItem
LVRBoundingBoxItem * m_bbItem
Definition: LVRScanDataItem.hpp:69
lvr2::LVRScanDataItem::m_sdm
std::shared_ptr< ScanDataManager > m_sdm
Definition: LVRScanDataItem.hpp:63
lvr2::ModelBridgePtr
boost::shared_ptr< LVRModelBridge > ModelBridgePtr
Definition: LVRModelBridge.hpp:120
lvr2::LVRScanDataItem::setVisibility
void setVisibility(bool visible, bool pc_visible)
Definition: LVRScanDataItem.cpp:132
lvr2::LVRScanDataItem
Definition: LVRScanDataItem.hpp:25
lvr2::LVRBoundingBoxItem
Definition: LVRBoundingBoxItem.hpp:12
lvr2::LVRScanDataItem::m_data
ScanPtr m_data
Definition: LVRScanDataItem.hpp:65
LVRBoundingBoxItem.hpp
lvr2::LVRScanDataItem::getName
QString getName()
Definition: LVRScanDataItem.hpp:44
lvr2::LVRScanDataItem::m_pose
Pose m_pose
Definition: LVRScanDataItem.hpp:68
lvr2::LVRScanDataItem::m_pcItem
LVRPointCloudItem * m_pcItem
Definition: LVRScanDataItem.hpp:70
lvr2
Definition: BaseBufferManipulators.hpp:39
lvr2::BoundingBoxBridgePtr
boost::shared_ptr< LVRBoundingBoxBridge > BoundingBoxBridgePtr
Definition: LVRBoundingBoxBridge.hpp:35
LVRPointCloudItem.hpp
lvr2::LVRScanDataItem::m_matrix
Transformd m_matrix
Definition: LVRScanDataItem.hpp:73
lvr2::LVRScanDataItem::reload
void reload()
Definition: LVRScanDataItem.cpp:58
lvr2::LVRPoseItem
Definition: LVRPoseItem.hpp:44
lvr2::LVRScanDataItem::m_model
ModelBridgePtr m_model
Definition: LVRScanDataItem.hpp:66
lvr2::LVRScanDataItem::m_bb
BoundingBoxBridgePtr m_bb
Definition: LVRScanDataItem.hpp:67
Transformable.hpp
lvr2::LVRScanDataItem::m_showSpectralsItem
QTreeWidgetItem * m_showSpectralsItem
Definition: LVRScanDataItem.hpp:72
lvr2::Pose
Definition: LVRModelBridge.hpp:51
LVRCamDataItem.hpp
lvr2::LVRScanDataItem::unloadPointCloudData
void unloadPointCloudData(vtkSmartPointer< vtkRenderer > renderer)
Definition: LVRScanDataItem.cpp:120
lvr2::LVRScanDataItem::LVRScanDataItem
LVRScanDataItem(ScanPtr data, std::shared_ptr< ScanDataManager > sdm, size_t idx, vtkSmartPointer< vtkRenderer > renderer, QString name="", QTreeWidgetItem *parent=NULL)
Definition: LVRScanDataItem.cpp:10
lvr2::LVRScanDataItem::isPointCloudLoaded
bool isPointCloudLoaded()
Definition: LVRScanDataItem.cpp:103
lvr2::ScanPtr
std::shared_ptr< Scan > ScanPtr
Shared pointer to scans.
Definition: ScanTypes.hpp:98


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:24