VTK  9.3.0
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
53 #ifndef vtkMCubesReader_h
54 #define vtkMCubesReader_h
55 
56 #include "vtkIOGeometryModule.h" // For export macro
57 #include "vtkPolyDataAlgorithm.h"
58 
59 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0
60 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1
61 
62 VTK_ABI_NAMESPACE_BEGIN
64 
65 class VTKIOGEOMETRY_EXPORT vtkMCubesReader : public vtkPolyDataAlgorithm
66 {
67 public:
69  void PrintSelf(ostream& os, vtkIndent indent) override;
70 
74  static vtkMCubesReader* New();
75 
77 
83 
85 
88  vtkSetFilePathMacro(LimitsFileName);
89  vtkGetFilePathMacro(LimitsFileName);
91 
93 
96  vtkSetClampMacro(HeaderSize, int, 0, VTK_INT_MAX);
97  vtkGetMacro(HeaderSize, int);
99 
101 
107  vtkSetMacro(FlipNormals, vtkTypeBool);
108  vtkGetMacro(FlipNormals, vtkTypeBool);
109  vtkBooleanMacro(FlipNormals, vtkTypeBool);
111 
113 
116  vtkSetMacro(Normals, vtkTypeBool);
117  vtkGetMacro(Normals, vtkTypeBool);
118  vtkBooleanMacro(Normals, vtkTypeBool);
120 
122 
138  void SetDataByteOrder(int);
141 
143 
146  vtkSetMacro(SwapBytes, vtkTypeBool);
147  vtkGetMacro(SwapBytes, vtkTypeBool);
148  vtkBooleanMacro(SwapBytes, vtkTypeBool);
150 
152 
157  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
159 
164 
168  vtkMTimeType GetMTime() override;
169 
170 protected:
172  ~vtkMCubesReader() override;
173 
175 
176  char* FileName;
183 
184 private:
185  vtkMCubesReader(const vtkMCubesReader&) = delete;
186  void operator=(const vtkMCubesReader&) = delete;
187 };
188 
189 VTK_ABI_NAMESPACE_END
190 #endif
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition: vtkIndent.h:38
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