50 unsigned char gridLevel);
56 std::vector<unsigned char>& resolved,
104 return instantiateGridTpl<DirectionCell*>(
size);
Array of compressed 3D normals (single index)
A Fast Marching grid cell for normals direction resolution.
DirectionCell()
Default constructor.
~DirectionCell() override=default
! Destructor
cloudViewer::DgmOctree::CellCode cellCode
the code of the equivalent cell in the octree
CCVector3 N
The local cell normal.
float signConfidence
Confidence value.
CCVector3 C
The local cell center.
Fast Marching algorithm for normals direction resolution.
float computePropagationConfidence(DirectionCell *originCell, DirectionCell *destCell) const
Computes relative 'confidence' between two cells (orientations)
int step() override
Propagates the front (one step)
ccFastMarchingForNormsDirection()
Default constructor.
void resolveCellOrientation(unsigned index)
Resolves the direction of a given cell (once and for all)
float computeTCoefApprox(cloudViewer::FastMarching::Cell *currentCell, cloudViewer::FastMarching::Cell *neighbourCell) const override
Computes the front acceleration between two cells.
static int OrientNormals(ccPointCloud *theCloud, unsigned char octreeLevel, ecvProgressDialog *progressCb=nullptr)
Static entry point (helper)
int propagate() override
Propagates the front.
void initTrialCells() override
Initializes the TRIAL cells list.
unsigned updateResolvedTable(ccGenericPointCloud *theCloud, std::vector< unsigned char > &resolved, NormsIndexesTableType *theNorms)
Updates a list of point flags, indicating the points already processed.
bool instantiateGrid(unsigned size) override
Instantiates grid in memory.
int init(ccGenericPointCloud *cloud, NormsIndexesTableType *theNorms, ccOctree *theOctree, unsigned char gridLevel)
Initializes the grid with a point cloud (and ist corresponding octree)
A 3D cloud interface with associated features (color, normals, octree, etc.)
A 3D cloud and its associated features (color, normals, scalar fields, etc.)
unsigned CellCode
Type of the code of an octree cell.
A generic Fast Marching grid cell.
Fast Marching algorithm (front propagation)
Graphical progress indicator (thread-safe)