Convert binary labelmap representation (vtkOrientedImageData type) to closed surface representation (vtkPolyData type). The conversion algorithm performs a marching cubes operation on the image data followed by an optional decimation step.
More...
#include <Libs/vtkSegmentationCore/vtkBinaryLabelmapToClosedSurfaceConversionRule.h>
Convert binary labelmap representation (vtkOrientedImageData type) to closed surface representation (vtkPolyData type). The conversion algorithm performs a marching cubes operation on the image data followed by an optional decimation step.
Definition at line 37 of file vtkBinaryLabelmapToClosedSurfaceConversionRule.h.
◆ Superclass
◆ vtkBinaryLabelmapToClosedSurfaceConversionRule()
vtkBinaryLabelmapToClosedSurfaceConversionRule::vtkBinaryLabelmapToClosedSurfaceConversionRule |
( |
| ) |
|
|
protected |
◆ ~vtkBinaryLabelmapToClosedSurfaceConversionRule()
vtkBinaryLabelmapToClosedSurfaceConversionRule::~vtkBinaryLabelmapToClosedSurfaceConversionRule |
( |
| ) |
|
|
overrideprotected |
◆ ConstructRepresentationObjectByClass()
vtkDataObject * vtkBinaryLabelmapToClosedSurfaceConversionRule::ConstructRepresentationObjectByClass |
( |
std::string | className | ) |
|
|
overridevirtual |
Constructs representation object from class name for the supported representation classes (typically source and target representation VTK classes, subclasses of vtkDataObject) Note: Need to take ownership of the created object! For example using vtkSmartPointer<vtkDataObject>::Take
Implements vtkSegmentationConverterRule.
Reimplemented in vtkFractionalLabelmapToClosedSurfaceConversionRule.
◆ ConstructRepresentationObjectByRepresentation()
vtkDataObject * vtkBinaryLabelmapToClosedSurfaceConversionRule::ConstructRepresentationObjectByRepresentation |
( |
std::string | representationName | ) |
|
|
overridevirtual |
Constructs representation object from representation name for the supported representation classes (typically source and target representation VTK classes, subclasses of vtkDataObject) Note: Need to take ownership of the created object! For example using vtkSmartPointer<vtkDataObject>::Take
Implements vtkSegmentationConverterRule.
Reimplemented in vtkFractionalLabelmapToClosedSurfaceConversionRule.
◆ Convert()
bool vtkBinaryLabelmapToClosedSurfaceConversionRule::Convert |
( |
vtkSegment * | segment | ) |
|
|
overridevirtual |
◆ CreateClosedSurface()
bool vtkBinaryLabelmapToClosedSurfaceConversionRule::CreateClosedSurface |
( |
vtkOrientedImageData * | inputImage, |
|
|
vtkPolyData * | outputPolydata, |
|
|
std::vector< int > | values ) |
Perform the actual binary labelmap to closed surface conversion.
◆ CreateRuleInstance()
◆ GetClassName()
virtual const char * vtkBinaryLabelmapToClosedSurfaceConversionRule::GetClassName |
( |
| ) |
|
|
virtual |
◆ GetComputeSurfaceNormalsParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetComputeSurfaceNormalsParameterName |
( |
| ) |
|
|
inlinestatic |
◆ GetConversionCost()
unsigned int vtkBinaryLabelmapToClosedSurfaceConversionRule::GetConversionCost |
( |
vtkDataObject * | sourceRepresentation = nullptr, |
|
|
vtkDataObject * | targetRepresentation = nullptr ) |
|
overridevirtual |
◆ GetConversionMethodParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetConversionMethodParameterName |
( |
| ) |
|
|
inlinestatic |
◆ GetDecimationFactorParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetDecimationFactorParameterName |
( |
| ) |
|
|
inlinestatic |
◆ GetJointSmoothingParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetJointSmoothingParameterName |
( |
| ) |
|
|
inlinestatic |
Conversion parameter: joint smoothing If joint smoothing is enabled, surfaces will be created and smoothed as one vtkPolyData. Joint smoothing converts all segments in shared labelmap together, reducing smoothing artifacts.
Definition at line 56 of file vtkBinaryLabelmapToClosedSurfaceConversionRule.h.
◆ GetName()
const char * vtkBinaryLabelmapToClosedSurfaceConversionRule::GetName |
( |
| ) |
|
|
inlineoverridevirtual |
◆ GetSmoothingFactorParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetSmoothingFactorParameterName |
( |
| ) |
|
|
inlinestatic |
◆ GetSourceRepresentationName()
const char * vtkBinaryLabelmapToClosedSurfaceConversionRule::GetSourceRepresentationName |
( |
| ) |
|
|
inlineoverridevirtual |
◆ GetSurfaceNetInternalSmoothingParameterName()
static const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::GetSurfaceNetInternalSmoothingParameterName |
( |
| ) |
|
|
inlinestatic |
Conversion parameter: SurfaceNets smoothing If SurfaceNets smoothing is enabled, the smoothing available within the SurfaceNets filter and based of vtkConstrainedSmoothingFilter is used.
Definition at line 50 of file vtkBinaryLabelmapToClosedSurfaceConversionRule.h.
◆ GetTargetRepresentationName()
const char * vtkBinaryLabelmapToClosedSurfaceConversionRule::GetTargetRepresentationName |
( |
| ) |
|
|
inlineoverridevirtual |
◆ IsA()
virtual int vtkBinaryLabelmapToClosedSurfaceConversionRule::IsA |
( |
const char * | type | ) |
|
|
virtual |
◆ IsLabelmapPaddingNecessary()
bool vtkBinaryLabelmapToClosedSurfaceConversionRule::IsLabelmapPaddingNecessary |
( |
vtkImageData * | binaryLabelMap | ) |
|
|
protected |
If input labelmap has non-background border voxels, then those regions remain open in the output closed surface. This function checks whether this is the case.
◆ IsTypeOf()
static int vtkBinaryLabelmapToClosedSurfaceConversionRule::IsTypeOf |
( |
const char * | type | ) |
|
|
static |
◆ New()
◆ PostConvert()
bool vtkBinaryLabelmapToClosedSurfaceConversionRule::PostConvert |
( |
vtkSegmentation * | segmentation | ) |
|
|
override |
Perform postprocessing steps on the output Clears the joint smoothing cache
◆ SafeDownCast()
◆ CONVERSION_METHOD_FLYING_EDGES
const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::CONVERSION_METHOD_FLYING_EDGES |
|
static |
◆ CONVERSION_METHOD_SURFACE_NETS
const std::string vtkBinaryLabelmapToClosedSurfaceConversionRule::CONVERSION_METHOD_SURFACE_NETS |
|
static |
◆ JointSmoothCache
std::map<vtkOrientedImageData*, vtkSmartPointer<vtkPolyData> > vtkBinaryLabelmapToClosedSurfaceConversionRule::JointSmoothCache |
|
protected |
Cache for storing merged closed surfaces that have been joint smoothed The key used is the binary labelmap representation, which maps to the combined vtkPolyData containing surfaces for all segments in the segmentation
Definition at line 111 of file vtkBinaryLabelmapToClosedSurfaceConversionRule.h.
The documentation for this class was generated from the following file: