VTK  9.3.0
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
21 #ifndef vtkCesium3DTilesWriter_h
22 #define vtkCesium3DTilesWriter_h
23 
24 #include "vtkIOCesium3DTilesModule.h" // For export macro
25 #include "vtkWriter.h"
26 
27 VTK_ABI_NAMESPACE_BEGIN
28 class VTKIOCESIUM3DTILES_EXPORT vtkCesium3DTilesWriter : public vtkWriter
29 {
30 public:
32  void PrintSelf(ostream& os, vtkIndent indent) override;
34 
35  enum InputType
36  {
39  Mesh
40  };
41 
43 
46  vtkSetFilePathMacro(DirectoryName);
47  vtkGetFilePathMacro(DirectoryName);
49 
51 
55  vtkSetFilePathMacro(TextureBaseDirectory);
56  vtkGetFilePathMacro(TextureBaseDirectory);
58 
60 
68  vtkSetFilePathMacro(PropertyTextureFile);
69  vtkGetFilePathMacro(PropertyTextureFile);
71 
73 
77  vtkSetVector3Macro(Offset, double);
78  vtkGetVector3Macro(Offset, double);
80 
82 
86  vtkSetMacro(SaveTextures, bool);
87  vtkGetMacro(SaveTextures, bool);
88  vtkBooleanMacro(SaveTextures, bool);
90 
92 
97  vtkSetMacro(SaveTiles, bool);
98  vtkGetMacro(SaveTiles, bool);
99  vtkBooleanMacro(SaveTiles, bool);
101 
103 
115  vtkSetMacro(MergeTilePolyData, bool);
116  vtkGetMacro(MergeTilePolyData, bool);
117  vtkBooleanMacro(MergeTilePolyData, bool);
118  vtkSetMacro(MergedTextureWidth, int);
119  vtkGetMacro(MergedTextureWidth, int);
121 
123 
132  vtkSetMacro(ContentGLTF, bool);
133  vtkGetMacro(ContentGLTF, bool);
134  vtkBooleanMacro(ContentGLTF, bool);
135  vtkSetMacro(ContentGLTFSaveGLB, bool);
136  vtkGetMacro(ContentGLTFSaveGLB, bool);
137  vtkBooleanMacro(ContentGLTFSaveGLB, bool);
139 
141 
144  vtkSetMacro(InputType, int);
145  vtkGetMacro(InputType, int);
147 
149 
153  vtkSetMacro(NumberOfFeaturesPerTile, int);
154  vtkGetMacro(NumberOfFeaturesPerTile, int);
156 
158 
163  vtkSetStringMacro(CRS);
164  vtkGetStringMacro(CRS);
166 
167 protected:
170 
171  // Only accepts vtkMultiBlockData
173 
174  // Implementation of Write()
175  void WriteData() override;
176 
180  double Offset[3];
185  bool SaveTiles;
189  char* CRS;
190 
191 private:
193  void operator=(const vtkCesium3DTilesWriter&) = delete;
194 };
195 
196 VTK_ABI_NAMESPACE_END
197 #endif // vtkCesium3DTilesWriter_h
Writes a dataset into 3D Tiles format.
vtkSetFilePathMacro(DirectoryName)
Accessor for name of the directory where Cesium3DTiles data is written.
static vtkCesium3DTilesWriter * New()
vtkGetFilePathMacro(TextureBaseDirectory)
Path used to prefix all texture paths stored as fields in the input data.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkGetFilePathMacro(DirectoryName)
Accessor for name of the directory where Cesium3DTiles data is written.
void WriteData() override
vtkSetFilePathMacro(PropertyTextureFile)
Optional property texture mapping for the whole dataset.
vtkGetFilePathMacro(PropertyTextureFile)
Optional property texture mapping for the whole dataset.
vtkSetFilePathMacro(TextureBaseDirectory)
Path used to prefix all texture paths stored as fields in the input data.
~vtkCesium3DTilesWriter() override
a simple class to control print indentation
Definition: vtkIndent.h:29
Store vtkAlgorithm input/output information.
abstract class to write data to file(s)
Definition: vtkWriter.h:35
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447