37#ifndef vtkProbeLineFilter_h
38#define vtkProbeLineFilter_h
41#include "vtkFiltersParallelDIY2Module.h"
46VTK_ABI_NAMESPACE_BEGIN
82 vtkSetMacro(PassCellArrays,
bool);
83 vtkBooleanMacro(PassCellArrays,
bool);
84 vtkGetMacro(PassCellArrays,
bool);
91 vtkSetMacro(PassPointArrays,
bool);
92 vtkBooleanMacro(PassPointArrays,
bool);
93 vtkGetMacro(PassPointArrays,
bool);
101 vtkSetMacro(PassFieldArrays,
bool);
102 vtkBooleanMacro(PassFieldArrays,
bool);
103 vtkGetMacro(PassFieldArrays,
bool);
112 vtkSetMacro(Tolerance,
double);
113 vtkGetMacro(Tolerance,
double);
122 vtkSetMacro(ComputeTolerance,
bool);
123 vtkBooleanMacro(ComputeTolerance,
bool);
124 vtkGetMacro(ComputeTolerance,
bool);
140 vtkSetMacro(PassPartialArrays,
bool);
141 vtkGetMacro(PassPartialArrays,
bool);
142 vtkBooleanMacro(PassPartialArrays,
bool);
150 SAMPLE_LINE_AT_CELL_BOUNDARIES = 0,
151 SAMPLE_LINE_AT_SEGMENT_CENTERS = 1,
152 SAMPLE_LINE_UNIFORMLY = 2
160 vtkGetMacro(SamplingPattern,
int);
161 vtkSetClampMacro(SamplingPattern,
int, 0, 2);
170 vtkGetMacro(LineResolution,
int);
171 vtkSetMacro(LineResolution,
int);
182 vtkGetMacro(AggregateAsPolyData,
bool);
183 vtkSetMacro(AggregateAsPolyData,
bool);
184 vtkBooleanMacro(AggregateAsPolyData,
bool);
233 int SamplingPattern = SAMPLE_LINE_AT_CELL_BOUNDARIES;
234 int LineResolution = 1000;
236 bool AggregateAsPolyData =
true;
237 bool PassPartialArrays =
false;
238 bool PassCellArrays =
false;
239 bool PassPointArrays =
false;
240 bool PassFieldArrays =
false;
241 bool ComputeTolerance =
true;
242 double Tolerance = 1.0;
249 std::unique_ptr<vtkInternals> Internal;
Proxy object to connect input/output ports.
Superclass for algorithms that produce only data object as output.
general representation of visualization data
abstract class to specify dataset behavior
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
list of point or cell ids
a simple class to control print indentation
Multiprocessing communication superclass.
represent and manipulate 3D points
concrete dataset represents vertices, lines, polygons, and triangle strips
probe dataset along a line in parallel
vtkSmartPointer< vtkPolyData > SampleLineAtEachCell(const vtkVector3d &p1, const vtkVector3d &p2, vtkDataObject *input, double tolerance) const
Generate sampling points and their probed data between p1 and p2 according to SamplingPattern.
vtkSmartPointer< vtkPolyData > IntersectCells(const vtkVector3d &p1, const vtkVector3d &p2, vtkHyperTreeGrid *dataset, double tolerance) const
Compute all intersections between a segment and a given dataset / htg.
virtual void SetSourceConnection(vtkAlgorithmOutput *input)
Set the source for creating the lines to probe from.
SamplingPatternEnum
Sampling pattern enumeration.
virtual void SetController(vtkMultiProcessController *)
Set and get the controller.
int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
~vtkProbeLineFilter() override
vtkSmartPointer< vtkPolyData > CreateSamplingPolyLine(vtkPoints *points, vtkIdList *pointIds, vtkDataObject *input, double tol) const
Given a line / polyline cell defined by points and pointIds, return the probing of the input dataset ...
vtkSmartPointer< vtkPolyData > IntersectCells(const vtkVector3d &p1, const vtkVector3d &p2, vtkDataSet *dataset, double tolerance) const
Compute all intersections between a segment and a given dataset / htg.
static vtkProbeLineFilter * New()
vtkSmartPointer< vtkPolyData > SampleLineUniformly(const vtkVector3d &p1, const vtkVector3d &p2, vtkDataObject *input, double tolerance) const
Generate sampling points and their probed data between p1 and p2 according to SamplingPattern.
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.
Hold a reference to a vtkObjectBase instance.