VTK  9.5.20251118
vtkPTSReader.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 vtkPTSReader_h
18#define vtkPTSReader_h
19
20#include "vtkBoundingBox.h" // For Bounding Box Data Member
21#include "vtkIOGeometryModule.h" // For export macro
23#include "vtkSmartPointer.h" // for vtkSmartPointer
24
25VTK_ABI_NAMESPACE_BEGIN
27class VTKIOGEOMETRY_EXPORT vtkPTSReader : public vtkPolyDataAlgorithm
28{
29public:
30 static vtkPTSReader* New();
32 void PrintSelf(ostream& os, vtkIndent indent) override;
33
35
38 void SetFileName(VTK_FILEPATH const char* filename);
41
43
50
52
56 vtkBooleanMacro(LimitReadToBounds, bool);
57 vtkSetMacro(LimitReadToBounds, bool);
58 vtkGetMacro(LimitReadToBounds, bool);
60
62
65 vtkSetVector6Macro(ReadBounds, double);
66 vtkGetVector6Macro(ReadBounds, double);
68
70
73 vtkBooleanMacro(OutputDataTypeIsDouble, bool);
74 vtkSetMacro(OutputDataTypeIsDouble, bool);
75 vtkGetMacro(OutputDataTypeIsDouble, bool);
77
79
83 vtkBooleanMacro(LimitToMaxNumberOfPoints, bool);
84 vtkSetMacro(LimitToMaxNumberOfPoints, bool);
85 vtkGetMacro(LimitToMaxNumberOfPoints, bool);
87
89
93 vtkSetClampMacro(MaxNumberOfPoints, vtkIdType, 1, VTK_INT_MAX);
94 vtkGetMacro(MaxNumberOfPoints, vtkIdType);
96
98
103 vtkBooleanMacro(CreateCells, bool);
104 vtkSetMacro(CreateCells, bool);
105 vtkGetMacro(CreateCells, bool);
107
109
114 vtkBooleanMacro(IncludeColorAndLuminance, bool);
115 vtkSetMacro(IncludeColorAndLuminance, bool);
116 vtkGetMacro(IncludeColorAndLuminance, bool);
118
123
124protected:
126 ~vtkPTSReader() override;
127
130
131 char* FileName = nullptr;
132 bool OutputDataTypeIsDouble = false;
133 bool LimitReadToBounds = false;
134 double ReadBounds[6];
135 bool LimitToMaxNumberOfPoints = false;
136 vtkIdType MaxNumberOfPoints = 1000000;
137 bool CreateCells = true;
138 bool IncludeColorAndLuminance = true;
139
141
142private:
143 vtkPTSReader(const vtkPTSReader&) = delete;
144 void operator=(const vtkPTSReader&) = delete;
145
147};
148
149VTK_ABI_NAMESPACE_END
150#endif
Fast, simple class for representing and operating on 3D bounds.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Read ASCII PTS Files.
vtkBoundingBox ReadBBox
void SetFileName(const char *filename)
Specify file name.
vtkResourceStream * GetStream()
Specify stream to read from When both Stream and Filename are set, stream is used.
static vtkPTSReader * New()
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkMTimeType GetMTime() override
Overridden to take into account mtime from the internal vtkResourceStream.
~vtkPTSReader() override
void SetStream(vtkResourceStream *stream)
Specify stream to read from When both Stream and Filename are set, stream is used.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGetFilePathMacro(FileName)
Specify file name.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Superclass for algorithms that produce only polydata as output.
Abstract class used for custom streams.
Hold a reference to a vtkObjectBase instance.
int vtkIdType
Definition vtkType.h:367
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:322
#define VTK_INT_MAX
Definition vtkType.h:196
#define VTK_FILEPATH