VTK  9.3.1
vtkGLTFExporter.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
26 #ifndef vtkGLTFExporter_h
27 #define vtkGLTFExporter_h
28 
29 #include "vtkExporter.h"
30 #include "vtkIOExportModule.h" // For export macro
31 
32 #include <string> // for std::string
33 
34 VTK_ABI_NAMESPACE_BEGIN
35 class VTKIOEXPORT_EXPORT vtkGLTFExporter : public vtkExporter
36 {
37 public:
38  static vtkGLTFExporter* New();
39  vtkTypeMacro(vtkGLTFExporter, vtkExporter);
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
43 
46  vtkSetFilePathMacro(FileName);
47  vtkGetFilePathMacro(FileName);
49 
51 
55  vtkGetMacro(InlineData, bool);
56  vtkSetMacro(InlineData, bool);
57  vtkBooleanMacro(InlineData, bool);
59 
61 
68  vtkGetMacro(SaveNormal, bool);
69  vtkSetMacro(SaveNormal, bool);
70  vtkBooleanMacro(SaveNormal, bool);
72 
74 
84  vtkGetMacro(SaveBatchId, bool);
85  vtkSetMacro(SaveBatchId, bool);
86  vtkBooleanMacro(SaveBatchId, bool);
88 
92  std::string WriteToString();
93 
97  void WriteToStream(ostream& out);
98 
99 protected:
100  vtkGLTFExporter();
101  ~vtkGLTFExporter() override;
102 
103  void WriteData() override;
104 
105  char* FileName;
109 
110 private:
111  vtkGLTFExporter(const vtkGLTFExporter&) = delete;
112  void operator=(const vtkGLTFExporter&) = delete;
113 };
114 
115 VTK_ABI_NAMESPACE_END
116 #endif
abstract class to write a scene to a file
Definition: vtkExporter.h:36
virtual void WriteData()=0
a simple class to control print indentation
Definition: vtkIndent.h:28
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
export a scene into GLTF 2.0 format.