VTK  9.7.1
vtkCityGMLReader.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
12 #ifndef vtkCityGMLReader_h
13 #define vtkCityGMLReader_h
14 
15 #include "vtkIOCityGMLModule.h" // For export macro
17 
53 VTK_ABI_NAMESPACE_BEGIN
54 class vtkResourceStream;
55 class VTKIOCITYGML_EXPORT vtkCityGMLReader : public vtkMultiBlockDataSetAlgorithm
56 {
57 public:
58  static vtkCityGMLReader* New();
60  void PrintSelf(ostream& os, vtkIndent indent) override;
61 
63 
66  vtkSetFilePathMacro(FileName);
67  vtkGetFilePathMacro(FileName);
69 
71 
76  static bool CanReadFile(VTK_FILEPATH const char* name);
77  static bool CanReadFile(vtkResourceStream* stream);
79 
81 
85  void SetStream(vtkResourceStream* stream);
86  vtkResourceStream* GetStream();
88 
90 
94  vtkSetClampMacro(LOD, int, 0, 4);
95  vtkGetMacro(LOD, int);
97 
99 
103  vtkSetMacro(UseTransparencyAsOpacity, int);
104  vtkGetMacro(UseTransparencyAsOpacity, int);
105  vtkBooleanMacro(UseTransparencyAsOpacity, int);
107 
109 
117  vtkSetMacro(NumberOfBuildings, int);
118  vtkGetMacro(NumberOfBuildings, int);
120 
122 
127  vtkSetMacro(BeginBuildingIndex, int);
128  vtkGetMacro(BeginBuildingIndex, int);
129  vtkSetMacro(EndBuildingIndex, int);
130  vtkGetMacro(EndBuildingIndex, int);
132 
134 
139  VTK_DEPRECATED_IN_9_6_0("Use vtkPolyDataMaterial::SetField() instead.")
140  static void SetField(vtkDataObject* obj, const char* name, const char* value);
141  VTK_DEPRECATED_IN_9_6_0("Use vtkPolyDataMaterial::SetField() instead.")
142  static void SetField(
143  vtkDataObject* obj, const char* name, double* value, vtkIdType numberOfComponents);
145 
149  vtkMTimeType GetMTime() override;
150 
151 protected:
153  ~vtkCityGMLReader() override;
154 
155  int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
156 
157  char* FileName;
158  int LOD;
159  int UseTransparencyAsOpacity;
160  int NumberOfBuildings;
161  int BeginBuildingIndex;
162  int EndBuildingIndex;
163 
164 private:
165  vtkCityGMLReader(const vtkCityGMLReader&) = delete;
166  void operator=(const vtkCityGMLReader&) = delete;
167 
172 
173  class Implementation;
174  Implementation* Impl;
175 };
176 
177 VTK_ABI_NAMESPACE_END
178 #endif
Abstract class used for custom streams.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:318
Hold a reference to a vtkObjectBase instance.
Definition: vtkMeta.h:23
int vtkIdType
Definition: vtkType.h:363
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
static vtkMultiBlockDataSetAlgorithm * New()
#define VTK_DEPRECATED_IN_9_6_0(reason)
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.
read CityGML data file
#define VTK_FILEPATH
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:55
If the polydata has a texture, it should contain a TCOORDS point array of type float/double (with two...