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
44 #ifndef vtkMCubesReader_h
45 #define vtkMCubesReader_h
46 
47 #include "vtkIOGeometryModule.h" // For export macro
48 #include "vtkPolyDataAlgorithm.h"
49 
50 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0
51 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1
52 
53 VTK_ABI_NAMESPACE_BEGIN
55 
56 class VTKIOGEOMETRY_EXPORT vtkMCubesReader : public vtkPolyDataAlgorithm
57 {
58 public:
60  void PrintSelf(ostream& os, vtkIndent indent) override;
61 
65  static vtkMCubesReader* New();
66 
68 
74 
76 
79  vtkSetFilePathMacro(LimitsFileName);
80  vtkGetFilePathMacro(LimitsFileName);
82 
84 
87  vtkSetClampMacro(HeaderSize, int, 0, VTK_INT_MAX);
88  vtkGetMacro(HeaderSize, int);
90 
92 
98  vtkSetMacro(FlipNormals, vtkTypeBool);
99  vtkGetMacro(FlipNormals, vtkTypeBool);
100  vtkBooleanMacro(FlipNormals, vtkTypeBool);
102 
104 
107  vtkSetMacro(Normals, vtkTypeBool);
108  vtkGetMacro(Normals, vtkTypeBool);
109  vtkBooleanMacro(Normals, vtkTypeBool);
111 
113 
129  void SetDataByteOrder(int);
132 
134 
137  vtkSetMacro(SwapBytes, vtkTypeBool);
138  vtkGetMacro(SwapBytes, vtkTypeBool);
139  vtkBooleanMacro(SwapBytes, vtkTypeBool);
141 
143 
148  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
150 
155 
159  vtkMTimeType GetMTime() override;
160 
161 protected:
163  ~vtkMCubesReader() override;
164 
166 
167  char* FileName;
174 
175 private:
176  vtkMCubesReader(const vtkMCubesReader&) = delete;
177  void operator=(const vtkMCubesReader&) = delete;
178 };
179 
180 VTK_ABI_NAMESPACE_END
181 #endif
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition: vtkIndent.h:29
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