156#ifndef vtkImplicitModeller_h
157#define vtkImplicitModeller_h
159#include "vtkFiltersHybridModule.h"
161#include "vtkThreads.h"
163#define VTK_VOXEL_MODE 0
164#define VTK_CELL_MODE 1
193 vtkGetVectorMacro(SampleDimensions,
int, 3);
205 vtkSetClampMacro(MaximumDistance,
double, 0.0, 1.0);
206 vtkGetMacro(MaximumDistance,
double);
214 vtkSetVector6Macro(ModelBounds,
double);
215 vtkGetVectorMacro(ModelBounds,
double, 6);
236 vtkSetClampMacro(AdjustDistance,
double, -1.0, 1.0);
237 vtkGetMacro(AdjustDistance,
double);
256 vtkGetMacro(CapValue,
double);
283 vtkSetClampMacro(ProcessMode,
int, 0, 1);
284 vtkGetMacro(ProcessMode,
int);
295 vtkSetMacro(LocatorMaxLevel,
int);
296 vtkGetMacro(LocatorMaxLevel,
int);
303 vtkSetClampMacro(NumberOfThreads,
int, 1, VTK_MAX_THREADS);
304 vtkGetMacro(NumberOfThreads,
int);
312 vtkGetMacro(OutputScalarType,
int);
366 int SampleDimensions[3];
368 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