VTK  9.1.0
vtkPOutlineFilterInternals.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkPOutlineFilterInternals.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
27#ifndef vtkPOutlineFilterInternals_h
28#define vtkPOutlineFilterInternals_h
29
30#include "vtkBoundingBox.h" // needed for vtkBoundingBox.
31#include "vtkFiltersParallelModule.h" // For export macro
32#include <vector> // needed for std::vector
33
34class vtkBoundingBox;
35class vtkDataObject;
37class vtkDataSet;
38class vtkGraph;
39class vtkInformation;
43class vtkPolyData;
45
46class VTKFILTERSPARALLEL_EXPORT vtkPOutlineFilterInternals
47{
48public:
50 virtual ~vtkPOutlineFilterInternals() = default;
51
59
65
71
76 void SetCornerFactor(double cornerFactor);
77
78private:
81
82 int RequestData(vtkOverlappingAMR* amr, vtkPolyData* output);
83 int RequestData(vtkUniformGridAMR* amr, vtkPolyData* output);
84 int RequestData(vtkDataObjectTree* cd, vtkPolyData* output);
85 int RequestData(vtkDataSet* ds, vtkPolyData* output);
86 int RequestData(vtkGraph* graph, vtkPolyData* output);
87
88 void CollectCompositeBounds(vtkDataObject* input);
89 vtkSmartPointer<vtkPolyData> GenerateOutlineGeometry(double bounds[6]);
90
91 std::vector<vtkBoundingBox> BoundsList;
92 vtkMultiProcessController* Controller = nullptr;
93
94 bool IsCornerSource = false;
95 double CornerFactor = 0.2;
96};
97
98#endif
99// VTK-HeaderTest-Exclude: vtkPOutlineFilterInternals.h
Fast, simple class for representing and operating on 3D bounds.
provides implementation for most abstract methods in the superclass vtkCompositeDataSet
general representation of visualization data
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
Base class for graph data types.
Definition: vtkGraph.h:339
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Multiprocessing communication superclass.
hierarchical dataset of vtkUniformGrids
create wireframe outline (or corners) for arbitrary data set
void SetCornerFactor(double cornerFactor)
Set the corner factor to use when creating corner outline.
vtkPOutlineFilterInternals()=default
virtual ~vtkPOutlineFilterInternals()=default
void SetIsCornerSource(bool value)
Set whether or not to generate a corner outline.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Behave like a vtkAlgorithm::RequestData and compute the outline geometry based on the parameters and ...
void SetController(vtkMultiProcessController *)
Set the controller to be used.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:195
@ value
Definition: vtkX3D.h:226