VTK  9.3.20240329
vtkMCubesReader.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
73 #ifndef vtkMCubesReader_h
74 #define vtkMCubesReader_h
75 
76 #include "vtkIOGeometryModule.h" // For export macro
77 #include "vtkPolyDataAlgorithm.h"
78 
79 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0
80 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1
81 
82 VTK_ABI_NAMESPACE_BEGIN
84 
85 class VTKIOGEOMETRY_EXPORT vtkMCubesReader : public vtkPolyDataAlgorithm
86 {
87 public:
89  void PrintSelf(ostream& os, vtkIndent indent) override;
90 
94  static vtkMCubesReader* New();
95 
97 
103 
105 
108  vtkSetFilePathMacro(LimitsFileName);
109  vtkGetFilePathMacro(LimitsFileName);
111 
113 
116  vtkSetClampMacro(HeaderSize, int, 0, VTK_INT_MAX);
117  vtkGetMacro(HeaderSize, int);
119 
121 
127  vtkSetMacro(FlipNormals, vtkTypeBool);
128  vtkGetMacro(FlipNormals, vtkTypeBool);
129  vtkBooleanMacro(FlipNormals, vtkTypeBool);
131 
133 
136  vtkSetMacro(Normals, vtkTypeBool);
137  vtkGetMacro(Normals, vtkTypeBool);
138  vtkBooleanMacro(Normals, vtkTypeBool);
140 
142 
158  void SetDataByteOrder(int);
161 
163 
166  vtkSetMacro(SwapBytes, vtkTypeBool);
167  vtkGetMacro(SwapBytes, vtkTypeBool);
168  vtkBooleanMacro(SwapBytes, vtkTypeBool);
170 
172 
177  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
179 
184 
188  vtkMTimeType GetMTime() override;
189 
190 protected:
192  ~vtkMCubesReader() override;
193 
195 
196  char* FileName;
203 
204 private:
205  vtkMCubesReader(const vtkMCubesReader&) = delete;
206  void operator=(const vtkMCubesReader&) = delete;
207 };
208 
209 VTK_ABI_NAMESPACE_END
210 #endif
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition: vtkIndent.h:108
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:64
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
#define VTK_INT_MAX
Definition: vtkType.h:144