From d9b3eafc392f2c81dccb8b7de45d8c629b943a16 Mon Sep 17 00:00:00 2001 From: matlabbe Date: Fri, 5 Aug 2016 15:30:38 -0400 Subject: [PATCH] DatabaseViewer: cloud in 3D view is now in base frame instead of camera frame --- guilib/src/DatabaseViewer.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/guilib/src/DatabaseViewer.cpp b/guilib/src/DatabaseViewer.cpp index 1db6af93..b45a8d13 100644 --- a/guilib/src/DatabaseViewer.cpp +++ b/guilib/src/DatabaseViewer.cpp @@ -2334,6 +2334,7 @@ void DatabaseViewer::update(int value, (!data.depthOrRightRaw().empty() || !data.laserScanRaw().empty())) { + view3D->removeAllFrustums(); if(!data.depthOrRightRaw().empty()) { if(!data.imageRaw().empty()) @@ -2350,6 +2351,11 @@ void DatabaseViewer::update(int value, data.imageRaw(), depth, data.cameraModels()[0]); + if(cloud->size()) + { + cloud = util3d::transformPointCloud(cloud, data.cameraModels()[0].localTransform()); + } + } else { @@ -2386,6 +2392,7 @@ void DatabaseViewer::update(int value, view3D->addCloud("0", cloud); } } + view3D->updateCameraFrustums(Transform::getIdentity(), data.cameraModels()); } else { @@ -2394,6 +2401,7 @@ void DatabaseViewer::update(int value, if(cloud->size()) { view3D->addCloud("0", cloud); + view3D->updateCameraFrustum(Transform::getIdentity(), data.stereoCameraModel()); } } }