VTK  9.7.1
vtkCesium3DTilesWriter.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
23 #ifndef vtkCesium3DTilesWriter_h
24 #define vtkCesium3DTilesWriter_h
25 
26 #include "vtkIOCesium3DTilesModule.h" // For export macro
27 #include "vtkWriter.h"
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class VTKIOCESIUM3DTILES_EXPORT vtkCesium3DTilesWriter : public vtkWriter
31 {
32 public:
33  static vtkCesium3DTilesWriter* New();
34  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
37  enum InputType
38  {
41  Mesh
42  };
43 
45 
48  vtkSetFilePathMacro(DirectoryName);
49  vtkGetFilePathMacro(DirectoryName);
51 
53 
57  vtkSetFilePathMacro(TextureBaseDirectory);
58  vtkGetFilePathMacro(TextureBaseDirectory);
60 
62 
70  vtkSetFilePathMacro(PropertyTextureFile);
71  vtkGetFilePathMacro(PropertyTextureFile);
73 
75 
79  vtkSetVector3Macro(Offset, double);
80  vtkGetVector3Macro(Offset, double);
82 
84 
88  vtkSetMacro(SaveTextures, bool);
89  vtkGetMacro(SaveTextures, bool);
90  vtkBooleanMacro(SaveTextures, bool);
92 
94 
99  vtkSetMacro(SaveTiles, bool);
100  vtkGetMacro(SaveTiles, bool);
101  vtkBooleanMacro(SaveTiles, bool);
103 
105 
117  vtkSetMacro(MergeTilePolyData, bool);
118  vtkGetMacro(MergeTilePolyData, bool);
119  vtkBooleanMacro(MergeTilePolyData, bool);
120  vtkSetMacro(MergedTextureWidth, int);
121  vtkGetMacro(MergedTextureWidth, int);
123 
125 
134  vtkSetMacro(ContentGLTF, bool);
135  vtkGetMacro(ContentGLTF, bool);
136  vtkBooleanMacro(ContentGLTF, bool);
137  vtkSetMacro(ContentGLTFSaveGLB, bool);
138  vtkGetMacro(ContentGLTFSaveGLB, bool);
139  vtkBooleanMacro(ContentGLTFSaveGLB, bool);
141 
143 
146  vtkSetMacro(InputType, int);
147  vtkGetMacro(InputType, int);
149 
151 
155  vtkSetMacro(NumberOfFeaturesPerTile, int);
156  vtkGetMacro(NumberOfFeaturesPerTile, int);
158 
160 
165  vtkSetStringMacro(CRS);
166  vtkGetStringMacro(CRS);
168 
169 protected:
171  ~vtkCesium3DTilesWriter() override;
172 
173  // Only accepts vtkMultiBlockData
174  int FillInputPortInformation(int port, vtkInformation* info) override;
175 
176  // Implementation of Write()
177  bool WriteDataAndReturn() override;
178 
182  double Offset[3];
187  bool SaveTiles;
191  char* CRS;
192 
193 private:
195  void operator=(const vtkCesium3DTilesWriter&) = delete;
196 };
197 
198 VTK_ABI_NAMESPACE_END
199 #endif // vtkCesium3DTilesWriter_h
Store vtkAlgorithm input/output information.
abstract class to write data to file(s)
Definition: vtkWriter.h:35
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
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
static vtkAlgorithm * New()
virtual bool WriteDataAndReturn()
Writes a dataset into 3D Tiles format.