![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include "qVoxFallProcess.h"#include <atomic>#include <unordered_set>#include "qVoxFallDialog.h"#include "qVoxFallTools.h"#include <CloudSamplingTools.h>#include "Grid3D.h"#include <ecvMainAppInterface.h>#include <ecvQtHelpers.h>#include <ecvGenericPointCloud.h>#include <ecvHObjectCaster.h>#include <ecvMesh.h>#include <ecvOctree.h>#include <ecvOctreeProxy.h>#include <ecvPointCloud.h>#include <ecvProgressDialog.h>#include <ecvScalarField.h>#include <QApplication>#include <QElapsedTimer>#include <QMessageBox>#include <QtConcurrentMap>#include <QtCore>#include <QtGui>
Go to the source code of this file.
Classes | |
| struct | VoxFallParams |
Functions | |
| bool | InitializeOutputCloud (int voxelCount, GenericProgressCallback *progressCb=nullptr) |
| void | GetVoxelOccupancy (const Tuple3i &cellPos, unsigned n) |
| void | GetVoxelOccupancyBefore (const Tuple3i &cellPos, unsigned n) |
| bool | ClusterEmptySpace (int maxThreads, int voxelCount, GenericProgressCallback *progressCb=nullptr) |
| bool | ComputeClusterVolume (int maxThreads, int clusterCount, ccHObject *clusterGroup=nullptr) |
Variables | |
| static const char | OCCUPANCY_SF_NAME [] = "Occupancy" |
| Default name for VoxFall scalar fields. More... | |
| static const char | CLUSTER_SF_NAME [] = "Cluster ID" |
| static const char | CHANGE_TYPE_SF_NAME [] = "Loss/gain" |
| static const char | VOLUME_SF_NAME [] = "Volume (m3)" |
| static const char | UNCERTAINTY_SF_NAME [] = "Uncertainty (%)" |
| static VoxFallParams | s_VoxFallParams |
| bool ClusterEmptySpace | ( | int | maxThreads, |
| int | voxelCount, | ||
| GenericProgressCallback * | progressCb = nullptr |
||
| ) |
Definition at line 141 of file qVoxFallProcess.cpp.
References VoxFallParams::clusterLabel, VoxFallParams::clusterSF, VoxFallParams::emptyVoxelCount, qVoxFallTools::FindAdjacents(), cloudViewer::ScalarField::getValue(), qVoxFallTools::Grid2Index(), qVoxFallTools::Index2Grid(), VoxFallParams::isEmpty, VoxFallParams::nbs, NN, nProgress, cloudViewer::NormalizedProgress::oneStep(), s_VoxFallParams, cloudViewer::ScalarField::setValue(), and VoxFallParams::steps.
Referenced by qVoxFallProcess::Compute().
| bool ComputeClusterVolume | ( | int | maxThreads, |
| int | clusterCount, | ||
| ccHObject * | clusterGroup = nullptr |
||
| ) |
Definition at line 256 of file qVoxFallProcess.cpp.
References VoxFallParams::bbDims, VoxFallParams::centroid, VoxFallParams::clusterIndices, VoxFallParams::clusterOutterVoxelCount, VoxFallParams::clusters, count, VoxFallParams::currentLabel, error(), VoxFallParams::exportBlocksAsMeshes, VoxFallParams::exportLossGain, qVoxFallTools::Index2Grid(), VoxFallParams::isEmpty, VoxFallParams::maxBound, VoxFallParams::minBound, VoxFallParams::nbs, VoxFallParams::nonEmptyVoxelsVisited, VoxFallParams::nProgress, cloudViewer::NormalizedProgress::oneStep(), VoxFallParams::processCanceled, s_VoxFallParams, VoxFallParams::steps, VoxFallParams::voxelSize, Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
Referenced by qVoxFallProcess::Compute().
| void GetVoxelOccupancy | ( | const Tuple3i & | cellPos, |
| unsigned | n | ||
| ) |
Definition at line 131 of file qVoxFallProcess.cpp.
References qVoxFallTools::Grid2Index(), VoxFallParams::isEmpty, s_VoxFallParams, and VoxFallParams::steps.
Referenced by qVoxFallProcess::Compute().
| void GetVoxelOccupancyBefore | ( | const Tuple3i & | cellPos, |
| unsigned | n | ||
| ) |
Definition at line 136 of file qVoxFallProcess.cpp.
References qVoxFallTools::Grid2Index(), VoxFallParams::isEmptyBefore, s_VoxFallParams, and VoxFallParams::steps.
Referenced by qVoxFallProcess::Compute().
| bool InitializeOutputCloud | ( | int | voxelCount, |
| GenericProgressCallback * | progressCb = nullptr |
||
| ) |
Definition at line 98 of file qVoxFallProcess.cpp.
References cloudViewer::PointCloudTpl< T >::addPoint(), qVoxFallTools::Index2Grid(), VoxFallParams::minBound, nProgress, cloudViewer::NormalizedProgress::oneStep(), s_VoxFallParams, VoxFallParams::steps, VoxFallParams::voxelSize, VoxFallParams::voxfall, Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
Referenced by qVoxFallProcess::Compute().
|
static |
Definition at line 54 of file qVoxFallProcess.cpp.
Referenced by qVoxFallProcess::Compute().
|
static |
Definition at line 53 of file qVoxFallProcess.cpp.
Referenced by qVoxFallProcess::Compute().
|
static |
Default name for VoxFall scalar fields.
Definition at line 52 of file qVoxFallProcess.cpp.
|
static |
Definition at line 96 of file qVoxFallProcess.cpp.
Referenced by ClusterEmptySpace(), qVoxFallProcess::Compute(), ComputeClusterVolume(), GetVoxelOccupancy(), GetVoxelOccupancyBefore(), and InitializeOutputCloud().
|
static |
Definition at line 56 of file qVoxFallProcess.cpp.
Referenced by qVoxFallProcess::Compute().
|
static |
Definition at line 55 of file qVoxFallProcess.cpp.
Referenced by qVoxFallProcess::Compute().