![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include "qM3C2Process.h"#include "qM3C2Dialog.h"#include "qM3C2DisclaimerDialog.h"#include "qM3C2Tools.h"#include <CloudSamplingTools.h>#include <ecvGenericPointCloud.h>#include <ecvHObjectCaster.h>#include <ecvNormalVectors.h>#include <ecvOctree.h>#include <ecvOctreeProxy.h>#include <ecvPointCloud.h>#include <ecvProgressDialog.h>#include <ecvScalarField.h>#include <ecvMainAppInterface.h>#include <QApplication>#include <QElapsedTimer>#include <QMessageBox>#include <QtConcurrentMap>#include <QtCore>#include <QtGui>
Go to the source code of this file.
Classes | |
| struct | PrecisionMaps |
| struct | M3C2Params |
Functions | |
| static void | RemoveScalarField (ccPointCloud *cloud, const char sfName[]) |
| static double | ComputePMUncertainty (cloudViewer::DgmOctree::NeighboursSet &set, const CCVector3 &N, const PrecisionMaps &PM) |
| void | ComputeM3C2DistForPoint (unsigned index) |
Variables | |
| static const char | M3C2_DIST_SF_NAME [] = "M3C2 distance" |
| Default name for M3C2 scalar fields. More... | |
| static const char | DIST_UNCERTAINTY_SF_NAME [] = "distance uncertainty" |
| static const char | SIG_CHANGE_SF_NAME [] = "significant change" |
| static const char | STD_DEV_CLOUD1_SF_NAME [] = "%1_cloud1" |
| static const char | STD_DEV_CLOUD2_SF_NAME [] = "%1_cloud2" |
| static const char | DENSITY_CLOUD1_SF_NAME [] = "Npoints_cloud1" |
| static const char | DENSITY_CLOUD2_SF_NAME [] = "Npoints_cloud2" |
| static const char | NORMAL_SCALE_SF_NAME [] = "normal scale" |
| static ScalarType | SCALAR_ZERO = 0 |
| static ScalarType | SCALAR_ONE = 1 |
| static M3C2Params | s_M3C2Params |
| void ComputeM3C2DistForPoint | ( | unsigned | index | ) |
Definition at line 175 of file qM3C2Process.cpp.
References cloudViewer::DgmOctree::CylindricalNeighbourhood::center, M3C2Params::cloud1Octree, M3C2Params::cloud1PM, M3C2Params::cloud2Octree, M3C2Params::cloud2PM, M3C2Params::computeConfidence, ComputePMUncertainty(), qM3C2Tools::ComputeStatistics(), M3C2Params::coreNormals, M3C2Params::corePoints, cloudViewer::DgmOctree::ProgressiveCylindricalNeighbourhood::currentHalfLength, M3C2Params::densityCloud1SF, M3C2Params::densityCloud2SF, cloudViewer::DgmOctree::CylindricalNeighbourhood::dir, dist(), M3C2Params::distUncertaintySF, M3C2Params::exportNormal, M3C2Params::exportOption, fabs(), ccNormalVectors::GetNormal(), cloudViewer::PointCloudTpl< T >::getPoint(), ccArray< Type, N, ComponentType >::getValue(), cloudViewer::DgmOctree::CylindricalNeighbourhood::level, M3C2Params::level1, M3C2Params::level2, M3C2Params::m3c2DistSF, cloudViewer::DgmOctree::CylindricalNeighbourhood::maxHalfLength, M3C2Params::minPoints4Stats, NAN_VALUE, cloudViewer::DgmOctree::CylindricalNeighbourhood::neighbours, M3C2Params::nProgress, cloudViewer::NormalizedProgress::oneStep(), cloudViewer::DgmOctree::CylindricalNeighbourhood::onlyPositiveDir, M3C2Params::onlyPositiveSearch, M3C2Params::outputCloud, M3C2Params::processCanceled, M3C2Params::progressiveSearch, qM3C2Dialog::PROJECT_ON_CLOUD1, qM3C2Dialog::PROJECT_ON_CLOUD2, M3C2Params::projectionDepth, M3C2Params::projectionRadius, cloudViewer::DgmOctree::CylindricalNeighbourhood::radius, M3C2Params::registrationRms, s_M3C2Params, SCALAR_ONE, ccPointCloud::setPointNormal(), cloudViewer::ScalarField::setValue(), M3C2Params::sigChangeSF, M3C2Params::stdDevCloud1SF, M3C2Params::stdDevCloud2SF, M3C2Params::updateNormal, M3C2Params::useMedian, and M3C2Params::usePrecisionMaps.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 73 of file qM3C2Process.cpp.
References count, cloudViewer::ScalarField::getValue(), Vector3Tpl< Type >::norm(), Vector3Tpl< Type >::norm2(), PrecisionMaps::scale, PrecisionMaps::sX, PrecisionMaps::sY, PrecisionMaps::sZ, Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
Referenced by ComputeM3C2DistForPoint().
|
static |
Definition at line 49 of file qM3C2Process.cpp.
References ccPointCloud::deleteScalarField(), and cloudViewer::PointCloudTpl< T >::getScalarFieldIndexByName().
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 45 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 46 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 41 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Default name for M3C2 scalar fields.
Definition at line 40 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 47 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 173 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute(), and ComputeM3C2DistForPoint().
|
static |
Definition at line 57 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute(), and ComputeM3C2DistForPoint().
|
static |
Definition at line 56 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 42 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 43 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().
|
static |
Definition at line 44 of file qM3C2Process.cpp.
Referenced by qM3C2Process::Compute().