39 #ifndef vtkImageMarchingCubes_h 40 #define vtkImageMarchingCubes_h 42 #include "vtkFiltersGeneralModule.h" 63 void SetValue(
int i,
double value);
64 double GetValue(
int i);
66 void GetValues(
double *contourValues);
67 void SetNumberOfContours(
int number);
68 int GetNumberOfContours();
69 void GenerateValues(
int numContours,
double range[2]);
70 void GenerateValues(
int numContours,
double rangeStart,
double rangeEnd);
123 vtkIdType GetLocatorPoint(
int cellX,
int cellY,
int edge);
124 void AddLocatorPoint(
int cellX,
int cellY,
int edge,
vtkIdType ptId);
125 void IncrementLocatorZ();
133 vtkSetMacro(InputMemoryLimit,
vtkIdType);
134 vtkGetMacro(InputMemoryLimit,
vtkIdType);
155 void March(
vtkImageData *inData,
int chunkMin,
int chunkMax,
156 int numContours,
double *values);
157 void InitializeLocator(
int min0,
int max0,
int min1,
int max1);
158 void DeleteLocator();
159 vtkIdType *GetLocatorPointer(
int cellX,
int cellY,
int edge);
171 {this->ContourValues->SetValue(i,value);}
177 {
return this->ContourValues->GetValue(i);}
184 {
return this->ContourValues->GetValues();}
192 {this->ContourValues->GetValues(contourValues);}
200 {this->ContourValues->SetNumberOfContours(number);}
206 {
return this->ContourValues->GetNumberOfContours();}
213 {this->ContourValues->GenerateValues(numContours, range);}
220 rangeStart,
double rangeEnd)
221 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
vtkIdType * LocatorPointIds
double * GetValues()
Get a pointer to an array of contour values.
helper object to manage setting and generating contour values
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
vtkTypeUInt32 vtkMTimeType
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkIdType InputMemoryLimit
dynamic, self-adjusting array of float
generate isosurface(s) from volume/images
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
topologically and geometrically regular array of data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
int GetNumberOfContours()
Get the number of contours in the list of contour values.
vtkTypeBool ComputeGradients
vtkFloatArray * Gradients
vtkTypeBool ComputeNormals
void SetValue(int i, double value)
Methods to set contour values.
vtkContourValues * ContourValues
object to represent cell connectivity
vtkTypeBool ComputeScalars
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
int NumberOfSlicesPerChunk
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
double GetValue(int i)
Get the ith contour value.
represent and manipulate 3D points
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.