VTK  9.2.20230201
vtkMCubesReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkMCubesReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
85 #ifndef vtkMCubesReader_h
86 #define vtkMCubesReader_h
87 
88 #include "vtkIOGeometryModule.h" // For export macro
89 #include "vtkPolyDataAlgorithm.h"
90 
91 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0
92 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1
93 
94 VTK_ABI_NAMESPACE_BEGIN
96 
97 class VTKIOGEOMETRY_EXPORT vtkMCubesReader : public vtkPolyDataAlgorithm
98 {
99 public:
101  void PrintSelf(ostream& os, vtkIndent indent) override;
102 
106  static vtkMCubesReader* New();
107 
109 
115 
117 
120  vtkSetFilePathMacro(LimitsFileName);
121  vtkGetFilePathMacro(LimitsFileName);
123 
125 
128  vtkSetClampMacro(HeaderSize, int, 0, VTK_INT_MAX);
129  vtkGetMacro(HeaderSize, int);
131 
133 
139  vtkSetMacro(FlipNormals, vtkTypeBool);
140  vtkGetMacro(FlipNormals, vtkTypeBool);
141  vtkBooleanMacro(FlipNormals, vtkTypeBool);
143 
145 
148  vtkSetMacro(Normals, vtkTypeBool);
149  vtkGetMacro(Normals, vtkTypeBool);
150  vtkBooleanMacro(Normals, vtkTypeBool);
152 
154 
170  void SetDataByteOrder(int);
173 
175 
178  vtkSetMacro(SwapBytes, vtkTypeBool);
179  vtkGetMacro(SwapBytes, vtkTypeBool);
180  vtkBooleanMacro(SwapBytes, vtkTypeBool);
182 
184 
189  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
191 
196 
200  vtkMTimeType GetMTime() override;
201 
202 protected:
204  ~vtkMCubesReader() override;
205 
207 
208  char* FileName;
215 
216 private:
217  vtkMCubesReader(const vtkMCubesReader&) = delete;
218  void operator=(const vtkMCubesReader&) = delete;
219 };
220 
221 VTK_ABI_NAMESPACE_END
222 #endif
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition: vtkIndent.h:120
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
read binary marching cubes file
vtkMTimeType GetMTime() override
Return the mtime also considering the locator.
vtkGetFilePathMacro(FileName)
Specify file name of marching cubes file.
void CreateDefaultLocator()
Create default locator.
vtkIncrementalPointLocator * Locator
const char * GetDataByteOrderAsString()
These methods should be used instead of the SwapBytes methods.
int GetDataByteOrder()
These methods should be used instead of the SwapBytes methods.
void SetDataByteOrder(int)
These methods should be used instead of the SwapBytes methods.
void SetDataByteOrderToLittleEndian()
These methods should be used instead of the SwapBytes methods.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkTypeBool SwapBytes
vtkGetFilePathMacro(LimitsFileName)
Set / get the file name of the marching cubes limits file.
vtkTypeBool FlipNormals
~vtkMCubesReader() override
vtkTypeBool Normals
vtkSetFilePathMacro(LimitsFileName)
Set / get the file name of the marching cubes limits file.
void SetLocator(vtkIncrementalPointLocator *locator)
Set / get a spatial locator for merging points.
void SetDataByteOrderToBigEndian()
These methods should be used instead of the SwapBytes methods.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSetFilePathMacro(FileName)
Specify file name of marching cubes file.
static vtkMCubesReader * New()
Construct object with FlipNormals turned off and Normals set to true.
Superclass for algorithms that produce only polydata as output.
int vtkTypeBool
Definition: vtkABI.h:71
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:282
#define VTK_INT_MAX
Definition: vtkType.h:156