VTK  9.3.20240416
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
55 #ifndef vtkGLTFExporter_h
56 #define vtkGLTFExporter_h
57 
58 #include "vtkExporter.h"
59 #include "vtkIOExportModule.h" // For export macro
60 
61 #include <string> // for std::string
62 
63 VTK_ABI_NAMESPACE_BEGIN
64 class VTKIOEXPORT_EXPORT vtkGLTFExporter : public vtkExporter
65 {
66 public:
67  static vtkGLTFExporter* New();
68  vtkTypeMacro(vtkGLTFExporter, vtkExporter);
69  void PrintSelf(ostream& os, vtkIndent indent) override;
70 
72 
78 
80 
84  vtkGetMacro(InlineData, bool);
85  vtkSetMacro(InlineData, bool);
86  vtkBooleanMacro(InlineData, bool);
88 
90 
97  vtkGetMacro(SaveNormal, bool);
98  vtkSetMacro(SaveNormal, bool);
99  vtkBooleanMacro(SaveNormal, bool);
101 
103 
113  vtkGetMacro(SaveBatchId, bool);
114  vtkSetMacro(SaveBatchId, bool);
115  vtkBooleanMacro(SaveBatchId, bool);
117 
119 
125  vtkGetMacro(SaveNaNValues, bool);
126  vtkSetMacro(SaveNaNValues, bool);
127  vtkBooleanMacro(SaveNaNValues, bool);
129 
134 
138  void WriteToStream(ostream& out);
139 
140 protected:
142  ~vtkGLTFExporter() override;
143 
144  void WriteData() override;
145 
146  char* FileName;
150 
151 private:
152  vtkGLTFExporter(const vtkGLTFExporter&) = delete;
153  void operator=(const vtkGLTFExporter&) = delete;
154 
155  bool SaveNaNValues = true;
156 };
157 
158 VTK_ABI_NAMESPACE_END
159 #endif
abstract class to write a scene to a file
Definition: vtkExporter.h:37
export a scene into GLTF 2.0 format.
std::string WriteToString()
Write the result to a string instead of a file.
~vtkGLTFExporter() override
vtkGetFilePathMacro(FileName)
Specify the name of the GLTF file to write.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void WriteToStream(ostream &out)
Write the result to a provided ostream.
vtkSetFilePathMacro(FileName)
Specify the name of the GLTF file to write.
static vtkGLTFExporter * New()
void WriteData() override
a simple class to control print indentation
Definition: vtkIndent.h:108
@ string
Definition: vtkX3D.h:490