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.

73 lines
2.4 KiB
C++

/*=========================================================================
Program: Visualization Toolkit
Module: vtkQuadraturePointsGenerator.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 vtkQuadraturePointsGenerator
*
*
* Create a vtkPolyData on its output containing the vertices
* for the quadrature points for one of the vtkDataArrays present
* on its input vtkUnstructuredGrid. If the input data set has
* has FieldData generated by vtkQuadraturePointInterpolator then
* this will be set as point data. Note: Point sets are generated
* per field array. This is because each field array may contain
* its own dictionary.
*
* @sa
* vtkQuadraturePointInterpolator, vtkQuadratureSchemeDefinition,
* vtkInformationQuadratureSchemeDefinitionVectorKey
*/
#ifndef vtkQuadraturePointsGenerator_h
#define vtkQuadraturePointsGenerator_h
#include "vtkFiltersGeneralModule.h" // For export macro
#include "vtkPolyDataAlgorithm.h"
class vtkPolyData;
class vtkUnstructuredGrid;
class vtkInformation;
class vtkInformationVector;
class VTKFILTERSGENERAL_EXPORT vtkQuadraturePointsGenerator : public vtkPolyDataAlgorithm
{
public:
vtkTypeMacro(vtkQuadraturePointsGenerator, vtkPolyDataAlgorithm);
void PrintSelf(ostream& os, vtkIndent indent) override;
static vtkQuadraturePointsGenerator* New();
protected:
int FillInputPortInformation(int port, vtkInformation* info) override;
int RequestData(
vtkInformation* req, vtkInformationVector** input, vtkInformationVector* output) override;
/**
* Generate the point set .
*/
int Generate(vtkUnstructuredGrid* usgIn, vtkDataArray* offsets, vtkPolyData* pdOut);
int GenerateField(
vtkUnstructuredGrid* usgIn, vtkDataArray* data, vtkDataArray* offsets, vtkPolyData* pdOut);
vtkQuadraturePointsGenerator();
~vtkQuadraturePointsGenerator() override;
private:
vtkQuadraturePointsGenerator(const vtkQuadraturePointsGenerator&) = delete;
void operator=(const vtkQuadraturePointsGenerator&) = delete;
};
#endif