25 #ifndef WCENTERLINEPARAMETERIZATION_H
26 #define WCENTERLINEPARAMETERIZATION_H
31 #include "WRasterParameterization.h"
32 #include "core/common/datastructures/WFiber.h"
72 virtual std::shared_ptr< WDataSetScalar >
getDataSet();
Stores the direction if a line in a separate dataset for each voxel.
std::vector< bool > m_paramSetValues
Stores whether the voxel has been set in the past or not.
virtual void newSegment(const WPosition &start, const WPosition &end)
Gets called for each new line segment getting rasterized, as one segment can have multiple voxels.
double m_currentStartParameter
The current start parameter for the current segment.
virtual ~WCenterlineParameterization()
Destructor.
std::vector< double > m_paramFinalValues
The values with applied selective dilatation.
virtual std::shared_ptr< WDataSetScalar > getDataSet()
Gets the dataset representing the parameterization.
double m_currentEndParameter
The current end parameter for the current segment.
WCenterlineParameterization(std::shared_ptr< WGridRegular3D > grid, std::shared_ptr< WFiber > centerline)
Default constructor.
std::shared_ptr< WFiber > m_centerline
The centerline of the cluster.
virtual void newLine(const WLine &line)
Gets called for each new line getting rasterized.
std::vector< double > m_paramValues
Stores the current length of the centerline fiber at each voxel.
virtual void parameterizeVoxel(const WVector3i &voxel, size_t voxelIdx, const int axis, const double value, const WPosition &start, const WPosition &end)
This method allows this parameterization to update.
virtual void finished()
Gets called whenever all lines have been rasterized.
A line is an ordered sequence of WPositions.
A fixed size matrix class.
This only is a 3d double vector.
This class is the base for all specific parameterization algorithms.