VTK  9.3.0
vtkOCCTReader.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-FileCopyrightText: Copyright 2019-2021 Kitware SAS
3// SPDX-FileCopyrightText: Copyright 2021-2022 Michael Migliore, Mathieu Westphal
4// SPDX-License-Identifier: BSD-3-Clause
21#ifndef vtkOCCTReader_h
22#define vtkOCCTReader_h
23
25
26#include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_3_0
27#include "vtkIOOCCTModule.h" // For export macro
28
29#include <memory> // For std::unique_ptr
30
31VTK_ABI_NAMESPACE_BEGIN
32
34
35class VTKIOOCCT_EXPORT vtkOCCTReader : public vtkMultiBlockDataSetAlgorithm
36{
37public:
38 static vtkOCCTReader* New();
40 void PrintSelf(ostream& os, vtkIndent indent) override;
41
42 enum Format : unsigned int
43 {
45 IGES
46 };
47
49
54 VTK_DEPRECATED_IN_9_3_0("Use SetFormat with unsigned int instead.")
55 vtkSetEnumMacro(FileFormat, Format);
56 vtkSetClampMacro(FileFormat, unsigned int, Format::STEP, Format::IGES);
58
60
65 vtkGetMacro(LinearDeflection, double);
66 vtkSetMacro(LinearDeflection, double);
68
70
75 vtkGetMacro(AngularDeflection, double);
76 vtkSetMacro(AngularDeflection, double);
78
80
85 vtkGetMacro(RelativeDeflection, bool);
86 vtkSetMacro(RelativeDeflection, bool);
87 vtkBooleanMacro(RelativeDeflection, bool);
89
91
95 vtkGetMacro(ReadWire, bool);
96 vtkSetMacro(ReadWire, bool);
97 vtkBooleanMacro(ReadWire, bool);
99
101
104 vtkSetFilePathMacro(FileName);
105 vtkGetFilePathMacro(FileName);
107
108protected:
110 ~vtkOCCTReader() override;
111
113
114private:
115 vtkOCCTReader(const vtkOCCTReader&) = delete;
116 void operator=(const vtkOCCTReader&) = delete;
117
118 class vtkInternals;
119 std::unique_ptr<vtkInternals> Internals;
120
121 double LinearDeflection = 0.1;
122 double AngularDeflection = 0.5;
123 bool RelativeDeflection = false;
124 bool ReadWire = false;
125 unsigned int FileFormat = Format::STEP;
126 char* FileName = nullptr;
127};
128
129VTK_ABI_NAMESPACE_END
130#endif
a simple class to control print indentation
Definition vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
VTK Reader for STEP and IGES files using OpenCASCADE.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkOCCTReader * New()
#define VTK_DEPRECATED_IN_9_3_0(reason)