90#ifndef vtkImplicitModeller_h
91#define vtkImplicitModeller_h
93#include "vtkFiltersHybridModule.h"
95#include "vtkThreads.h"
97#define VTK_VOXEL_MODE 0
98#define VTK_CELL_MODE 1
127 vtkGetVectorMacro(SampleDimensions,
int, 3);
139 vtkSetClampMacro(MaximumDistance,
double, 0.0, 1.0);
140 vtkGetMacro(MaximumDistance,
double);
148 vtkSetVector6Macro(ModelBounds,
double);
149 vtkGetVectorMacro(ModelBounds,
double, 6);
170 vtkSetClampMacro(AdjustDistance,
double, -1.0, 1.0);
171 vtkGetMacro(AdjustDistance,
double);
190 vtkGetMacro(CapValue,
double);
217 vtkSetClampMacro(ProcessMode,
int, 0, 1);
218 vtkGetMacro(ProcessMode,
int);
229 vtkSetMacro(LocatorMaxLevel,
int);
230 vtkGetMacro(LocatorMaxLevel,
int);
237 vtkSetClampMacro(NumberOfThreads,
int, 1, VTK_MAX_THREADS);
238 vtkGetMacro(NumberOfThreads,
int);
246 vtkGetMacro(OutputScalarType,
int);
300 int SampleDimensions[3];
302 double ModelBounds[6];
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
Generic algorithm superclass for image algs.
compute distance from input geometry on structured point dataset
void SetOutputScalarTypeToDouble()
Set the desired output scalar type.
void StartAppend()
Initialize the filter for appending data.
double InternalMaxDistance
double GetScalarTypeMax(int type)
void SetOutputScalarTypeToChar()
Set the desired output scalar type.
double ComputeModelBounds(vtkDataSet *input=nullptr)
Compute ModelBounds from input geometry.
vtkMultiThreader * Threader
void Cap(vtkDataArray *s)
int FillInputPortInformation(int, vtkInformation *) override
These method should be reimplemented by subclasses that have more than a single input or single outpu...
void StartAppend(int internal)
void SetOutputScalarTypeToUnsignedShort()
Set the desired output scalar type.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
vtkTypeBool ScaleToMaximumDistance
void SetOutputScalarTypeToUnsignedInt()
Set the desired output scalar type.
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Process a request from the executive.
void EndAppend()
Method completes the append process.
void SetSampleDimensions(int i, int j, int k)
Set/Get the i-j-k dimensions on which to sample distance function.
void SetSampleDimensions(int dim[3])
Set/Get the i-j-k dimensions on which to sample distance function.
~vtkImplicitModeller() override
void SetOutputScalarTypeToUnsignedChar()
Set the desired output scalar type.
void SetOutputScalarTypeToUnsignedLong()
Set the desired output scalar type.
void SetOutputScalarTypeToLong()
Set the desired output scalar type.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called in response to a REQUEST_DATA request from the executive.
void SetOutputScalarTypeToInt()
Set the desired output scalar type.
const char * GetProcessModeAsString(void)
Specify whether to visit each cell once per append or each voxel once per append.
void SetCapValue(double value)
Specify the capping value to use.
void SetOutputScalarTypeToShort()
Set the desired output scalar type.
void SetOutputScalarTypeToFloat()
Set the desired output scalar type.
void Append(vtkDataSet *input)
Append a data set to the existing output.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetProcessModeToPerCell()
Specify whether to visit each cell once per append or each voxel once per append.
void SetOutputScalarType(int type)
Set the desired output scalar type.
static vtkImplicitModeller * New()
Construct with sample dimensions=(50,50,50), and so that model bounds are automatically computed from...
void SetProcessModeToPerVoxel()
Specify whether to visit each cell once per append or each voxel once per append.
a simple class to control print indentation
A class for performing multithreaded execution.
#define VTK_UNSIGNED_CHAR
#define VTK_UNSIGNED_SHORT
#define VTK_UNSIGNED_LONG