145#ifndef vtkSurfaceNets3D_h 
  146#define vtkSurfaceNets3D_h 
  150#include "vtkFiltersCoreModule.h"           
  156VTK_ABI_NAMESPACE_BEGIN
 
  193  void SetValue(
int i, 
double value) { this->Labels->SetValue(i, value); }
 
  194  void SetLabel(
int i, 
double value) { this->Labels->SetValue(i, value); }
 
  201  double GetValue(
int i) { 
return this->Labels->GetValue(i); }
 
  202  double GetLabel(
int i) { 
return this->Labels->GetValue(i); }
 
  210  double* 
GetValues() { 
return this->Labels->GetValues(); }
 
  211  double* 
GetLabels() { 
return this->Labels->GetValues(); }
 
  220  void GetValues(
double* contourValues) { this->Labels->GetValues(contourValues); }
 
  221  void GetLabels(
double* contourValues) { this->Labels->GetValues(contourValues); }
 
  251    this->Labels->GenerateValues(numLabels, range);
 
  255    this->Labels->GenerateValues(numContours, range);
 
  259    this->Labels->GenerateValues(numLabels, rangeStart, rangeEnd);
 
  263    this->Labels->GenerateValues(numContours, rangeStart, rangeEnd);
 
  278  vtkSetMacro(BackgroundLabel, 
double);
 
  279  vtkGetMacro(BackgroundLabel, 
double);
 
  287  vtkSetMacro(ArrayComponent, 
int);
 
  288  vtkGetMacro(ArrayComponent, 
int);
 
  296    MESH_TYPE_DEFAULT = 0,
 
  312  vtkSetClampMacro(OutputMeshType, 
int, MESH_TYPE_DEFAULT, MESH_TYPE_QUADS);
 
  313  vtkGetMacro(OutputMeshType, 
int);
 
  330  vtkSetMacro(Smoothing, 
bool);
 
  331  vtkGetMacro(Smoothing, 
bool);
 
  332  vtkBooleanMacro(Smoothing, 
bool);
 
  349    this->Smoother->SetConstraintBox(sx, sy, sz);
 
  356    this->Smoother->SetConstraintStrategyToConstraintDistance();
 
  360    this->Smoother->SetConstraintStrategyToConstraintBox();
 
  378  vtkSetMacro(AutomaticSmoothingConstraints, 
bool);
 
  379  vtkGetMacro(AutomaticSmoothingConstraints, 
bool);
 
  380  vtkBooleanMacro(AutomaticSmoothingConstraints, 
bool);
 
  381  vtkSetClampMacro(ConstraintScale, 
double, 0, 100);
 
  382  vtkGetMacro(ConstraintScale, 
double);
 
  392  vtkSetMacro(OptimizedSmoothingStencils, 
bool);
 
  393  vtkGetMacro(OptimizedSmoothingStencils, 
bool);
 
  394  vtkBooleanMacro(OptimizedSmoothingStencils, 
bool);
 
  426    OUTPUT_STYLE_DEFAULT = 0,
 
  428    OUTPUT_STYLE_SELECTED
 
  444  vtkSetClampMacro(OutputStyle, 
int, OUTPUT_STYLE_DEFAULT, OUTPUT_STYLE_SELECTED);
 
  445  vtkGetMacro(OutputStyle, 
int);
 
  468    TRIANGULATION_GREEDY = 0,
 
  470    TRIANGULATION_MIN_AREA
 
  484  vtkSetClampMacro(TriangulationStrategy, 
int, TRIANGULATION_GREEDY, TRIANGULATION_MIN_AREA);
 
  485  vtkGetMacro(TriangulationStrategy, 
int);
 
  489    this->SetTriangulationStrategy(TRIANGULATION_MIN_EDGE);
 
  493    this->SetTriangulationStrategy(TRIANGULATION_MIN_AREA);
 
  508  vtkSetMacro(DataCaching, 
bool);
 
  509  vtkGetMacro(DataCaching, 
bool);
 
  510  vtkBooleanMacro(DataCaching, 
bool);
 
object to represent cell connectivity
 
adjust point positions using constrained smoothing
 
topologically and geometrically regular array of data
 
a simple class to control print indentation
 
Superclass for algorithms that produce only polydata as output.
 
concrete dataset represents vertices, lines, polygons, and triangle strips
 
Hold a reference to a vtkObjectBase instance.
 
generate smoothed isocontours from segmented 3D image data (i.e., "label maps")
 
double * GetConstraintBox()
Convenience methods that delegate to the internal smoothing filter follow below.
 
void GetConstraintBox(double s[3])
Convenience methods that delegate to the internal smoothing filter follow below.
 
void SetTriangulationStrategyToMinArea()
Specify the strategy to triangulate the quads (not applicable if the output mesh type is set to MESH_...
 
double GetRelaxationFactor()
Convenience methods that delegate to the internal smoothing filter follow below.
 
void SetLabel(int i, double value)
Set a particular label value at label number i.
 
double GetSelectedLabel(vtkIdType ithLabel)
When the OutputStyle is set to OUTPUT_STYLE_SELECTED, these methods are used to specify the labeled r...
 
void SetOutputMeshTypeToTriangles()
Control the type of output mesh.
 
double GetLabel(int i)
Get the ith label value.
 
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
double * GetLabels()
Get a pointer to an array of labels.
 
void InitializeSelectedLabelsList()
When the OutputStyle is set to OUTPUT_STYLE_SELECTED, these methods are used to specify the labeled r...
 
void GetValues(double *contourValues)
Fill a supplied list with label values.
 
void SetTriangulationStrategyToMinEdge()
Specify the strategy to triangulate the quads (not applicable if the output mesh type is set to MESH_...
 
vtkGetSmartPointerMacro(Smoother, vtkConstrainedSmoothingFilter)
Get the instance of vtkConstrainedSmoothingFilter used to smooth the extracted surface net.
 
void SetConstraintDistance(double d)
Convenience methods that delegate to the internal smoothing filter follow below.
 
int GetNumberOfIterations()
Convenience methods that delegate to the internal smoothing filter follow below.
 
MeshType
This enum is used to control the type of the output polygonal mesh.
 
void SetOutputMeshTypeToQuads()
Control the type of output mesh.
 
vtkSmartPointer< vtkContourValues > Labels
 
void GenerateLabels(int numLabels, double range[2])
Generate numLabels equally spaced labels between the specified range.
 
void SetConstraintStrategyToConstraintDistance()
Convenience methods that delegate to the internal smoothing filter follow below.
 
vtkSmartPointer< vtkConstrainedSmoothingFilter > Smoother
 
std::vector< double > SelectedLabels
 
vtkIdType GetNumberOfSelectedLabels()
When the OutputStyle is set to OUTPUT_STYLE_SELECTED, these methods are used to specify the labeled r...
 
~vtkSurfaceNets3D() override=default
 
void SetConstraintBox(double sx, double sy, double sz)
Convenience methods that delegate to the internal smoothing filter follow below.
 
void SetNumberOfIterations(int n)
Convenience methods that delegate to the internal smoothing filter follow below.
 
bool OptimizedSmoothingStencils
 
static vtkSurfaceNets3D * New()
Standard methods for instantiation, printing, and obtaining type information.
 
vtkTimeStamp SelectedLabelsTime
 
void SetOutputStyleToDefault()
Specify the form (i.e., the style) of the output.
 
void SetConstraintBox(double s[3])
Convenience methods that delegate to the internal smoothing filter follow below.
 
TriangulationType
This enum is used to control how quadrilaterals are triangulated.
 
void SetRelaxationFactor(double f)
Convenience methods that delegate to the internal smoothing filter follow below.
 
void GetLabels(double *contourValues)
Fill a supplied list with label values.
 
void GenerateValues(int numContours, double range[2])
Generate numLabels equally spaced labels between the specified range.
 
void GenerateValues(int numContours, double rangeStart, double rangeEnd)
Generate numLabels equally spaced labels between the specified range.
 
void SetOutputStyleToBoundary()
Specify the form (i.e., the style) of the output.
 
void CacheData(vtkPolyData *pd, vtkCellArray *ca)
 
void SetOutputMeshTypeToDefault()
Control the type of output mesh.
 
int TriangulationStrategy
 
vtkIdType GetNumberOfLabels()
Get the number of labels in the list of label values.
 
int GetConstraintStrategy()
Convenience methods that delegate to the internal smoothing filter follow below.
 
double GetConstraintDistance()
Convenience methods that delegate to the internal smoothing filter follow below.
 
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
 
vtkTimeStamp SmoothingTime
 
vtkIdType GetNumberOfContours()
Get the number of labels in the list of label values.
 
vtkMTimeType GetMTime() override
The modified time is also a function of the label values and the smoothing filter.
 
void AddSelectedLabel(double label)
When the OutputStyle is set to OUTPUT_STYLE_SELECTED, these methods are used to specify the labeled r...
 
void SetNumberOfLabels(int number)
Set the number of labels to place into the list.
 
void SetOutputStyleToSelected()
Specify the form (i.e., the style) of the output.
 
void GenerateLabels(int numLabels, double rangeStart, double rangeEnd)
Generate numLabels equally spaced labels between the specified range.
 
void SetTriangulationStrategyToGreedy()
Specify the strategy to triangulate the quads (not applicable if the output mesh type is set to MESH_...
 
void SetValue(int i, double value)
Set a particular label value at label number i.
 
void SetConstraintStrategyToConstraintBox()
Convenience methods that delegate to the internal smoothing filter follow below.
 
vtkSmartPointer< vtkPolyData > GeometryCache
 
bool AutomaticSmoothingConstraints
 
OutputType
This enum is used to control the production of the filter output.
 
void DeleteSelectedLabel(double label)
When the OutputStyle is set to OUTPUT_STYLE_SELECTED, these methods are used to specify the labeled r...
 
double * GetValues()
Get a pointer to an array of labels.
 
void SetNumberOfContours(int number)
Set the number of labels to place into the list.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiation, printing, and obtaining type information.
 
double GetValue(int i)
Get the ith label value.
 
vtkSmartPointer< vtkCellArray > StencilsCache
 
record modification and/or execution time
 
vtkTypeUInt32 vtkMTimeType
 
#define VTK_SIZEHINT(...)