VTK  9.3.0
vtkMCubesWriter.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
25 #ifndef vtkMCubesWriter_h
26 #define vtkMCubesWriter_h
27 
28 #include "vtkIOGeometryModule.h" // For export macro
29 #include "vtkWriter.h"
30 
31 VTK_ABI_NAMESPACE_BEGIN
32 class vtkCellArray;
33 class vtkDataArray;
34 class vtkPoints;
35 class vtkPolyData;
36 
37 class VTKIOGEOMETRY_EXPORT vtkMCubesWriter : public vtkWriter
38 {
39 public:
40  static vtkMCubesWriter* New();
41  vtkTypeMacro(vtkMCubesWriter, vtkWriter);
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
45 
48  vtkSetFilePathMacro(LimitsFileName);
49  vtkGetFilePathMacro(LimitsFileName);
51 
53 
59 
61 
67 
68 protected:
70  ~vtkMCubesWriter() override;
71 
72  void WriteData() override;
73 
74  void WriteMCubes(FILE* fp, vtkPoints* pts, vtkDataArray* normals, vtkCellArray* polys);
75  void WriteLimits(FILE* fp, double* bounds);
76 
78 
79  char* FileName;
80 
82 
83 private:
84  vtkMCubesWriter(const vtkMCubesWriter&) = delete;
85  void operator=(const vtkMCubesWriter&) = delete;
86 };
87 
88 VTK_ABI_NAMESPACE_END
89 #endif
object to represent cell connectivity
Definition: vtkCellArray.h:185
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
a simple class to control print indentation
Definition: vtkIndent.h:38
Store vtkAlgorithm input/output information.
write binary marching cubes file
vtkGetFilePathMacro(LimitsFileName)
Set/get file name of marching cubes limits file.
void WriteMCubes(FILE *fp, vtkPoints *pts, vtkDataArray *normals, vtkCellArray *polys)
void WriteData() override
void WriteLimits(FILE *fp, double *bounds)
vtkGetFilePathMacro(FileName)
Specify file name of vtk polygon data file to write.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkSetFilePathMacro(LimitsFileName)
Set/get file name of marching cubes limits file.
static vtkMCubesWriter * New()
vtkPolyData * GetInput()
Get the input to this writer.
~vtkMCubesWriter() override
vtkPolyData * GetInput(int port)
Get the input to this writer.
vtkSetFilePathMacro(FileName)
Specify file name of vtk polygon data file to write.
represent and manipulate 3D points
Definition: vtkPoints.h:38
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:89
abstract class to write data to file(s)
Definition: vtkWriter.h:35
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447