VTK  9.3.1
vtkIVExporter.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
17 #ifndef vtkIVExporter_h
18 #define vtkIVExporter_h
19 
20 #include "vtkExporter.h"
21 #include "vtkIOExportModule.h" // For export macro
22 
23 VTK_ABI_NAMESPACE_BEGIN
24 class vtkLight;
25 class vtkActor;
26 class vtkPoints;
27 class vtkDataArray;
29 
30 class VTKIOEXPORT_EXPORT vtkIVExporter : public vtkExporter
31 {
32 public:
33  static vtkIVExporter* New();
34  vtkTypeMacro(vtkIVExporter, vtkExporter);
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
38 
41  vtkSetFilePathMacro(FileName);
42  vtkGetFilePathMacro(FileName);
44 
45 protected:
46  vtkIVExporter();
47  ~vtkIVExporter() override;
48 
49  void WriteData() override;
50  void WriteALight(vtkLight* aLight, FILE* fp);
51  void WriteAnActor(vtkActor* anActor, FILE* fp);
52  void WritePointData(vtkPoints* points, vtkDataArray* normals, vtkDataArray* tcoords,
53  vtkUnsignedCharArray* colors, FILE* fp);
54  char* FileName;
55 
56 private:
57  vtkIVExporter(const vtkIVExporter&) = delete;
58  void operator=(const vtkIVExporter&) = delete;
59 };
60 
61 VTK_ABI_NAMESPACE_END
62 #endif
abstract class to write a scene to a file
Definition: vtkExporter.h:36
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:40
virtual void WriteData()=0
a simple class to control print indentation
Definition: vtkIndent.h:28
export a scene into OpenInventor 2.0 format.
Definition: vtkIVExporter.h:30
a virtual light for 3D rendering
Definition: vtkLight.h:48
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:44
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
dynamic, self-adjusting array of unsigned char
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points
Definition: vtkPoints.h:28