You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/3rd/VTK7.1/include/vtkCellDataToPointData.h

88 lines
2.9 KiB
C

/*=========================================================================
Program: Visualization Toolkit
Module: vtkCellDataToPointData.h
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.
=========================================================================*/
/**
* @class vtkCellDataToPointData
* @brief map cell data to point data
*
* vtkCellDataToPointData is a filter that transforms cell data (i.e., data
* specified per cell) into point data (i.e., data specified at cell
* points). The method of transformation is based on averaging the data
* values of all cells using a particular point. Optionally, the input cell
* data can be passed through to the output as well.
*
* @warning
* This filter is an abstract filter, that is, the output is an abstract type
* (i.e., vtkDataSet). Use the convenience methods (e.g.,
* GetPolyDataOutput(), GetStructuredPointsOutput(), etc.) to get the type
* of output you want.
*
* @sa
* vtkPointData vtkCellData vtkPointDataToCellData
*/
#ifndef vtkCellDataToPointData_h
#define vtkCellDataToPointData_h
#include "vtkFiltersCoreModule.h" // For export macro
#include "vtkDataSetAlgorithm.h"
class vtkDataSet;
class VTKFILTERSCORE_EXPORT vtkCellDataToPointData : public vtkDataSetAlgorithm
{
public:
static vtkCellDataToPointData *New();
vtkTypeMacro(vtkCellDataToPointData,vtkDataSetAlgorithm);
void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
//@{
/**
* Control whether the input cell data is to be passed to the output. If
* on, then the input cell data is passed through to the output; otherwise,
* only generated point data is placed into the output.
*/
vtkSetMacro(PassCellData,int);
vtkGetMacro(PassCellData,int);
vtkBooleanMacro(PassCellData,int);
//@}
protected:
vtkCellDataToPointData();
~vtkCellDataToPointData() VTK_OVERRIDE {}
int RequestData(vtkInformation* request,
vtkInformationVector** inputVector,
vtkInformationVector* outputVector) VTK_OVERRIDE;
// Special traversal algorithm for unstructured grid
int RequestDataForUnstructuredGrid
(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
void interpolatePointData(vtkDataSet *input, vtkDataSet *output);
// Same as above, but with special handling for masked cells in input.
void interpolatePointDataWithMask(vtkStructuredGrid *input,
vtkDataSet *output);
int PassCellData;
private:
vtkCellDataToPointData(const vtkCellDataToPointData&) VTK_DELETE_FUNCTION;
void operator=(const vtkCellDataToPointData&) VTK_DELETE_FUNCTION;
};
#endif