VTK  9.3.1
vtkOBJWriter.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
21 #ifndef vtkOBJWriter_h
22 #define vtkOBJWriter_h
23 
24 #include "vtkIOGeometryModule.h" // For export macro
25 #include "vtkWriter.h"
26 
27 VTK_ABI_NAMESPACE_BEGIN
28 class vtkDataSet;
29 class vtkImageData;
30 class vtkPolyData;
31 
32 class VTKIOGEOMETRY_EXPORT vtkOBJWriter : public vtkWriter
33 {
34 public:
35  static vtkOBJWriter* New();
36  vtkTypeMacro(vtkOBJWriter, vtkWriter);
37  void PrintSelf(ostream& os, vtkIndent indent) override;
38 
40 
43  vtkPolyData* GetInputGeometry();
44  vtkImageData* GetInputTexture();
45  vtkDataSet* GetInput(int port);
47 
49 
54  vtkSetFilePathMacro(TextureFileName);
55  vtkGetFilePathMacro(TextureFileName);
57 
59 
62  vtkSetFilePathMacro(FileName);
63  vtkGetFilePathMacro(FileName);
65 
66 protected:
67  vtkOBJWriter();
68  ~vtkOBJWriter() override;
69 
70  void WriteData() override;
72 
73  char* FileName;
75 
76 private:
77  vtkOBJWriter(const vtkOBJWriter&) = delete;
78  void operator=(const vtkOBJWriter&) = delete;
79 };
80 
81 VTK_ABI_NAMESPACE_END
82 #endif
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
char * FileName
Definition: vtkOBJWriter.h:73
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:79
abstract class to write data to file(s)
Definition: vtkWriter.h:34
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkDataObject * GetInput()
topologically and geometrically regular array of data
Definition: vtkImageData.h:42
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
static vtkAlgorithm * New()
virtual void WriteData()=0
char * TextureFileName
Definition: vtkOBJWriter.h:74
write wavefront obj file
Definition: vtkOBJWriter.h:32