You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
3.4 KiB
95 lines
3.4 KiB
2 years ago
|
/*=========================================================================
|
||
|
|
||
|
Program: Visualization Toolkit
|
||
|
Module: $RCSfile: vtkPointSetToPointSetFilter.h,v $
|
||
|
|
||
|
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
|
||
|
All rights reserved.
|
||
|
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
|
||
|
|
||
|
This software is distributed WITHOUT ANY WARRANTY; without even
|
||
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||
|
PURPOSE. See the above copyright notice for more information.
|
||
|
|
||
|
=========================================================================*/
|
||
|
// .NAME vtkPointSetToPointSetFilter - abstract filter class
|
||
|
// .SECTION Description
|
||
|
// vtkPointSetToPointSetFilter is an abstract filter class whose subclasses
|
||
|
// take as input a point set and generates a point set on output. At a
|
||
|
// minimum, the concrete subclasses of vtkPointSetToPointSetFilter modify
|
||
|
// their point coordinates. They never modify their topological form,
|
||
|
// however.
|
||
|
//
|
||
|
// This is an abstract filter type. What that means is that the output of the
|
||
|
// filter is an abstract type (i.e., vtkPointSet), no matter what the input
|
||
|
// of the filter is. This can cause problems connecting together filters due
|
||
|
// to the change in dataset type. (For example, in a series of filters
|
||
|
// processing vtkPolyData, when a vtkPointSetToPointSetFilter or subclass is
|
||
|
// introduced into the pipeline, if the filter downstream of it takes
|
||
|
// vtkPolyData as input, the pipeline connection cannot be made.) To get
|
||
|
// around this problem, use one of the convenience methods to return a
|
||
|
// concrete type (e.g., vtkGetPolyDataOutput(), GetStructuredGridOutput(),
|
||
|
// etc.).
|
||
|
|
||
|
// .SECTION See Also
|
||
|
// vtkTransformFilter vtkWarpScalar vtkWarpTo vtkWarpVector
|
||
|
|
||
|
#ifndef __vtkPointSetToPointSetFilter_h
|
||
|
#define __vtkPointSetToPointSetFilter_h
|
||
|
|
||
|
#include "vtkPointSetSource.h"
|
||
|
|
||
|
class vtkPolyData;
|
||
|
class vtkStructuredGrid;
|
||
|
class vtkUnstructuredGrid;
|
||
|
|
||
|
class VTK_FILTERING_EXPORT vtkPointSetToPointSetFilter : public vtkPointSetSource
|
||
|
{
|
||
|
public:
|
||
|
vtkTypeRevisionMacro(vtkPointSetToPointSetFilter,vtkPointSetSource);
|
||
|
void PrintSelf(ostream& os, vtkIndent indent);
|
||
|
|
||
|
// Description:
|
||
|
// Specify the input data or filter.
|
||
|
void SetInput(vtkPointSet *input);
|
||
|
|
||
|
// Description:
|
||
|
// Get the input data or filter.
|
||
|
vtkPointSet *GetInput();
|
||
|
|
||
|
// Description:
|
||
|
// Get the output of this filter. If output is NULL, then input hasn't been
|
||
|
// set, which is necessary for abstract filter objects.
|
||
|
vtkPointSet *GetOutput();
|
||
|
vtkPointSet *GetOutput(int idx)
|
||
|
{return (vtkPointSet *) this->vtkPointSetSource::GetOutput(idx); };
|
||
|
|
||
|
// Description:
|
||
|
// Get the output as vtkPolyData. Performs run-time checking.
|
||
|
vtkPolyData *GetPolyDataOutput();
|
||
|
|
||
|
// Description:
|
||
|
// Get the output as vtkStructuredGrid. Performs run-time checking.
|
||
|
vtkStructuredGrid *GetStructuredGridOutput();
|
||
|
|
||
|
// Description:
|
||
|
// Get the output as vtkUnstructuredGrid. Performs run-time checking.
|
||
|
vtkUnstructuredGrid *GetUnstructuredGridOutput();
|
||
|
|
||
|
// Description:
|
||
|
// By default copy the output update extent to the input
|
||
|
virtual void ComputeInputUpdateExtents( vtkDataObject *output );
|
||
|
|
||
|
protected:
|
||
|
vtkPointSetToPointSetFilter();
|
||
|
~vtkPointSetToPointSetFilter();
|
||
|
|
||
|
private:
|
||
|
vtkPointSetToPointSetFilter(const vtkPointSetToPointSetFilter&); // Not implemented.
|
||
|
void operator=(const vtkPointSetToPointSetFilter&); // Not implemented.
|
||
|
};
|
||
|
|
||
|
#endif
|
||
|
|
||
|
|