![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include <ModelViewerWidget.h>


Public Member Functions | |
| ModelViewerWidget (QWidget *parent, OptionManager *options, MainWindow *app) | |
| void | Release () |
| QWidget * | getMainWindow () |
| void | ReloadReconstruction () |
| void | ClearReconstruction () |
| int | GetProjectionType () const |
| void | SetPointColormap (PointColormapBase *colormap) |
| void | SetImageColormap (ImageColormapBase *colormap) |
| void | UpdateMovieGrabber () |
| float | ZoomScale () |
| float | AspectRatio () const |
| void | ChangeFocusDistance (const float delta) |
| void | ChangePointSize (const float delta) |
| void | ChangeCameraSize (const float delta) |
| void | ResetView () |
| ccGLMatrixd | ModelViewMatrix () const |
| void | SelectObject (ccHObject *entity, unsigned subEntityID, int x, int y, const CCVector3 &P) |
| void | SelectMoviewGrabberView (const size_t view_idx) |
| QImage | GrabImage () |
| void | GrabMovie () |
| void | update () |
| void | StartRender () |
| void | EndRender (bool autoZoom=true) |
| void | ShowPointInfo (const colmap::point3D_t point3D_id) |
| void | ShowImageInfo (const colmap::image_t image_id) |
| void | SetPerspectiveProjection () |
| void | SetOrthogonalProjection () |
| float | PointSize () const |
| float | ImageSize () const |
| void | SetPointSize (const float point_size, bool autoUpdate=true) |
| void | SetImageSize (const float image_size, bool autoUpdate=true) |
| void | SetBackgroundColor (const float r, const float g, const float b) |
Public Attributes | |
| const float | kInitNearPlane = 1.0f |
| const float | kMinNearPlane = 1e-3f |
| const float | kMaxNearPlane = 1e5f |
| const float | kNearPlaneScaleSpeed = 0.02f |
| const float | kFarPlane = 1e5f |
| const float | kInitFocusDistance = 100.0f |
| const float | kMinFocusDistance = 1e-5f |
| const float | kMaxFocusDistance = 1e8f |
| const float | kFieldOfView = 25.0f |
| const float | kFocusSpeed = 2.0f |
| const float | kInitPointSize = 1.0f |
| const float | kMinPointSize = 0.5f |
| const float | kMaxPointSize = 100.0f |
| const float | kPointScaleSpeed = 1.0f |
| const float | kInitImageSize = 0.2f |
| const float | kMinImageSize = 1e-6f |
| const float | kMaxImageSize = 1e3f |
| const float | kImageScaleSpeed = 0.1f |
| const int | kDoubleClickInterval = 250 |
| colmap::Reconstruction * | reconstruction = nullptr |
| std::unordered_map< colmap::camera_t, colmap::Camera > | cameras |
| std::unordered_map< colmap::image_t, colmap::Image > | images |
| std::unordered_map< colmap::point3D_t, colmap::Point3D > | points3D |
| std::vector< colmap::image_t > | reg_image_ids |
| QLabel * | statusbar_status_label |
Definition at line 37 of file ModelViewerWidget.h.
| cloudViewer::ModelViewerWidget::ModelViewerWidget | ( | QWidget * | parent, |
| OptionManager * | options, | ||
| MainWindow * | app | ||
| ) |
Definition at line 112 of file ModelViewerWidget.cpp.
| float cloudViewer::ModelViewerWidget::AspectRatio | ( | void | ) | const |
Definition at line 236 of file ModelViewerWidget.cpp.
References ecvDisplayTools::GlHeight(), and ecvDisplayTools::GlWidth().
| void cloudViewer::ModelViewerWidget::ChangeCameraSize | ( | const float | delta | ) |
Definition at line 278 of file ModelViewerWidget.cpp.
References EndRender(), kImageScaleSpeed, kMaxImageSize, kMinImageSize, max(), min(), StartRender(), and update().
| void cloudViewer::ModelViewerWidget::ChangeFocusDistance | ( | const float | delta | ) |
Definition at line 241 of file ModelViewerWidget.cpp.
References ecvDisplayTools::GetCameraFocalDistance(), kFocusSpeed, kMaxFocusDistance, kMinFocusDistance, ecvDisplayTools::SetCameraFocalDistance(), ecvDisplayTools::Update(), and ZoomScale().
| void cloudViewer::ModelViewerWidget::ChangePointSize | ( | const float | delta | ) |
Definition at line 263 of file ModelViewerWidget.cpp.
References EndRender(), kMaxPointSize, kMinPointSize, kPointScaleSpeed, max(), min(), ccGenericPointCloud::setPointSize(), StartRender(), and update().
| void cloudViewer::ModelViewerWidget::ClearReconstruction | ( | ) |
Definition at line 189 of file ModelViewerWidget.cpp.
References cameras, images, points3D, reconstruction, and reg_image_ids.
Referenced by Release().
| void cloudViewer::ModelViewerWidget::EndRender | ( | bool | autoZoom = true | ) |
Definition at line 542 of file ModelViewerWidget.cpp.
References cloudViewer::BoundingBoxTpl< T >::isValid(), ecvDisplayTools::RedrawDisplay(), and ecvDisplayTools::UpdateConstellationCenterAndZoom().
Referenced by ChangeCameraSize(), ChangePointSize(), SelectMoviewGrabberView(), SelectObject(), SetImageSize(), SetPointSize(), and UpdateMovieGrabber().
| QWidget * cloudViewer::ModelViewerWidget::getMainWindow | ( | ) |
Definition at line 164 of file ModelViewerWidget.cpp.
| int cloudViewer::ModelViewerWidget::GetProjectionType | ( | ) | const |
Definition at line 200 of file ModelViewerWidget.cpp.
References ecvGenericDisplayTools::GetPerspectiveState().
Referenced by GrabMovie().
| QImage cloudViewer::ModelViewerWidget::GrabImage | ( | ) |
Definition at line 422 of file ModelViewerWidget.cpp.
References ecvDisplayTools::RenderToImage().
| void cloudViewer::ModelViewerWidget::GrabMovie | ( | ) |
Definition at line 427 of file ModelViewerWidget.cpp.
References MainWindow::doActionPerspectiveProjection(), and GetProjectionType().
| float cloudViewer::ModelViewerWidget::ImageSize | ( | ) | const |
Definition at line 469 of file ModelViewerWidget.cpp.
| ccGLMatrixd cloudViewer::ModelViewerWidget::ModelViewMatrix | ( | ) | const |
Definition at line 296 of file ModelViewerWidget.cpp.
References ccGLMatrixTpl< T >::data(), and ecvDisplayTools::GetViewMatrix().
| float cloudViewer::ModelViewerWidget::PointSize | ( | ) | const |
Definition at line 467 of file ModelViewerWidget.cpp.
| void cloudViewer::ModelViewerWidget::Release | ( | ) |
Definition at line 146 of file ModelViewerWidget.cpp.
References ClearReconstruction(), and cloudViewer::MovieGrabberWidget::views.
Referenced by cloudViewer::ReconstructionWidget::release().
| void cloudViewer::ModelViewerWidget::ReloadReconstruction | ( | ) |
Definition at line 166 of file ModelViewerWidget.cpp.
References cameras, images, points3D, reconstruction, reg_image_ids, and statusbar_status_label.
| void cloudViewer::ModelViewerWidget::ResetView | ( | ) |
Definition at line 291 of file ModelViewerWidget.cpp.
| void cloudViewer::ModelViewerWidget::SelectMoviewGrabberView | ( | const size_t | view_idx | ) |
Definition at line 414 of file ModelViewerWidget.cpp.
References EndRender(), StartRender(), and update().
| void cloudViewer::ModelViewerWidget::SelectObject | ( | ccHObject * | entity, |
| unsigned | subEntityID, | ||
| int | x, | ||
| int | y, | ||
| const CCVector3 & | P | ||
| ) |
Definition at line 302 of file ModelViewerWidget.cpp.
References ecvColor::RgbTpl< Type >::b, CV_TYPES::CAMERA_SENSOR, MainWindow::db(), EndRender(), ccDBRoot::expandElement(), ccHObject::find(), ecvColor::RgbTpl< Type >::g, ccCameraSensor::getPlaneColor(), ccPointCloud::getPointColorPtr(), cloudViewer::PointCloudTpl< T >::getPointPtr(), ccObject::getUniqueID(), cloudViewer::GreaterThanEpsilon(), ccObject::isKindOf(), CV_TYPES::POINT_CLOUD, points3D, ecvColor::RgbTpl< Type >::r, reg_image_ids, ccDBRoot::selectEntity(), SELECTION_BUFFER_IMAGE_IDX, SELECTION_BUFFER_POINT_IDX, ShowImageInfo(), ShowPointInfo(), cloudViewer::PointCloudTpl< T >::size(), StartRender(), ccHObjectCaster::ToCameraSensor(), ccDBRoot::unselectEntity(), update(), and CVLog::Warning().
| void cloudViewer::ModelViewerWidget::SetBackgroundColor | ( | const float | r, |
| const float | g, | ||
| const float | b | ||
| ) |
Definition at line 505 of file ModelViewerWidget.cpp.
References ecvColor::RgbTpl< Type >::FromEigen(), ecvGui::Parameters(), params, ecvDisplayTools::RedrawDisplay(), and ecvDisplayTools::SetDisplayParameters().
| void cloudViewer::ModelViewerWidget::SetImageColormap | ( | ImageColormapBase * | colormap | ) |
Definition at line 215 of file ModelViewerWidget.cpp.
| void cloudViewer::ModelViewerWidget::SetImageSize | ( | const float | image_size, |
| bool | autoUpdate = true |
||
| ) |
Definition at line 489 of file ModelViewerWidget.cpp.
References EndRender(), StartRender(), and update().
| void cloudViewer::ModelViewerWidget::SetOrthogonalProjection | ( | ) |
Definition at line 461 of file ModelViewerWidget.cpp.
References MainWindow::doActionOrthogonalProjection().
| void cloudViewer::ModelViewerWidget::SetPerspectiveProjection | ( | ) |
Definition at line 455 of file ModelViewerWidget.cpp.
References MainWindow::doActionPerspectiveProjection().
| void cloudViewer::ModelViewerWidget::SetPointColormap | ( | PointColormapBase * | colormap | ) |
Definition at line 211 of file ModelViewerWidget.cpp.
| void cloudViewer::ModelViewerWidget::SetPointSize | ( | const float | point_size, |
| bool | autoUpdate = true |
||
| ) |
Definition at line 471 of file ModelViewerWidget.cpp.
References EndRender(), ccGenericPointCloud::setPointSize(), StartRender(), and update().
| void cloudViewer::ModelViewerWidget::ShowImageInfo | ( | const colmap::image_t | image_id | ) |
Definition at line 451 of file ModelViewerWidget.cpp.
References cloudViewer::DatabaseImageViewerWidget::ShowImageWithId().
Referenced by SelectObject().
| void cloudViewer::ModelViewerWidget::ShowPointInfo | ( | const colmap::point3D_t | point3D_id | ) |
Definition at line 447 of file ModelViewerWidget.cpp.
References cloudViewer::PointViewerWidget::Show().
Referenced by SelectObject().
| void cloudViewer::ModelViewerWidget::StartRender | ( | ) |
Definition at line 536 of file ModelViewerWidget.cpp.
References cloudViewer::BoundingBoxTpl< T >::clear(), and ecvDisplayTools::SetRedrawRecursive().
Referenced by ChangeCameraSize(), ChangePointSize(), SelectMoviewGrabberView(), SelectObject(), SetImageSize(), SetPointSize(), and UpdateMovieGrabber().
| void cloudViewer::ModelViewerWidget::update | ( | ) |
Definition at line 900 of file ModelViewerWidget.cpp.
References ecvDisplayTools::UpdateScreen().
Referenced by ChangeCameraSize(), ChangePointSize(), SelectMoviewGrabberView(), SelectObject(), SetImageSize(), SetPointSize(), and UpdateMovieGrabber().
| void cloudViewer::ModelViewerWidget::UpdateMovieGrabber | ( | ) |
Definition at line 219 of file ModelViewerWidget.cpp.
References EndRender(), StartRender(), and update().
| float cloudViewer::ModelViewerWidget::ZoomScale | ( | ) |
Definition at line 226 of file ModelViewerWidget.cpp.
References abs(), ecvDisplayTools::GetCameraFocalDistance(), ecvDisplayTools::GetFov(), and ecvDisplayTools::GlHeight().
Referenced by ChangeFocusDistance().
| std::unordered_map<colmap::camera_t, colmap::Camera> cloudViewer::ModelViewerWidget::cameras |
Definition at line 116 of file ModelViewerWidget.h.
Referenced by ClearReconstruction(), ReloadReconstruction(), cloudViewer::PointViewerWidget::Show(), and cloudViewer::DatabaseImageViewerWidget::ShowImageWithId().
| std::unordered_map<colmap::image_t, colmap::Image> cloudViewer::ModelViewerWidget::images |
Definition at line 117 of file ModelViewerWidget.h.
Referenced by ClearReconstruction(), ReloadReconstruction(), cloudViewer::PointViewerWidget::Show(), and cloudViewer::DatabaseImageViewerWidget::ShowImageWithId().
| const int cloudViewer::ModelViewerWidget::kDoubleClickInterval = 250 |
Definition at line 57 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kFarPlane = 1e5f |
Definition at line 43 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kFieldOfView = 25.0f |
Definition at line 47 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kFocusSpeed = 2.0f |
Definition at line 48 of file ModelViewerWidget.h.
Referenced by ChangeFocusDistance().
| const float cloudViewer::ModelViewerWidget::kImageScaleSpeed = 0.1f |
Definition at line 56 of file ModelViewerWidget.h.
Referenced by ChangeCameraSize().
| const float cloudViewer::ModelViewerWidget::kInitFocusDistance = 100.0f |
Definition at line 44 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kInitImageSize = 0.2f |
Definition at line 53 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kInitNearPlane = 1.0f |
Definition at line 39 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kInitPointSize = 1.0f |
Definition at line 49 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kMaxFocusDistance = 1e8f |
Definition at line 46 of file ModelViewerWidget.h.
Referenced by ChangeFocusDistance().
| const float cloudViewer::ModelViewerWidget::kMaxImageSize = 1e3f |
Definition at line 55 of file ModelViewerWidget.h.
Referenced by ChangeCameraSize().
| const float cloudViewer::ModelViewerWidget::kMaxNearPlane = 1e5f |
Definition at line 41 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kMaxPointSize = 100.0f |
Definition at line 51 of file ModelViewerWidget.h.
Referenced by ChangePointSize().
| const float cloudViewer::ModelViewerWidget::kMinFocusDistance = 1e-5f |
Definition at line 45 of file ModelViewerWidget.h.
Referenced by ChangeFocusDistance().
| const float cloudViewer::ModelViewerWidget::kMinImageSize = 1e-6f |
Definition at line 54 of file ModelViewerWidget.h.
Referenced by ChangeCameraSize().
| const float cloudViewer::ModelViewerWidget::kMinNearPlane = 1e-3f |
Definition at line 40 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kMinPointSize = 0.5f |
Definition at line 50 of file ModelViewerWidget.h.
Referenced by ChangePointSize().
| const float cloudViewer::ModelViewerWidget::kNearPlaneScaleSpeed = 0.02f |
Definition at line 42 of file ModelViewerWidget.h.
| const float cloudViewer::ModelViewerWidget::kPointScaleSpeed = 1.0f |
Definition at line 52 of file ModelViewerWidget.h.
Referenced by ChangePointSize().
| std::unordered_map<colmap::point3D_t, colmap::Point3D> cloudViewer::ModelViewerWidget::points3D |
Definition at line 118 of file ModelViewerWidget.h.
Referenced by ClearReconstruction(), ReloadReconstruction(), SelectObject(), and cloudViewer::PointViewerWidget::Show().
| colmap::Reconstruction* cloudViewer::ModelViewerWidget::reconstruction = nullptr |
Definition at line 115 of file ModelViewerWidget.h.
Referenced by ClearReconstruction(), and ReloadReconstruction().
| std::vector<colmap::image_t> cloudViewer::ModelViewerWidget::reg_image_ids |
Definition at line 119 of file ModelViewerWidget.h.
Referenced by ClearReconstruction(), ReloadReconstruction(), and SelectObject().
| QLabel* cloudViewer::ModelViewerWidget::statusbar_status_label |
Definition at line 121 of file ModelViewerWidget.h.
Referenced by cloudViewer::ReconstructionWidget::getImageStatusBar(), and ReloadReconstruction().