25#ifndef vtkOTDensityMap_h
26#define vtkOTDensityMap_h
29#include "vtkFiltersOpenTURNSModule.h"
106 vtkGetMacro(GridSubdivisions,
int);
117 vtkGetMacro(ContourApproximationNumberOfPoints,
int);
151 bool& invertedPoints,
bool up =
true,
vtkIdList* currentPointIndices =
nullptr);
155 const double* densityPDFContourValues,
const char* xArrayName,
const char* yArrayName,
159 class OTDensityCache;
160 class OTDistributionCache;
helper object to manage setting and generating contour values
list of point or cell ids
a simple class to control print indentation
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
A VTK Filter to compute density map on any pair of numeric data arrays with the same number of tuples...
double * GetValues()
Get a pointer to an array of contour values.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
OTDistributionCache * DistributionCache
vtkTimeStamp DensityLogPDFSampleMTime
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
OTDensityCache * DensityLogPDFSampleCache
virtual void SetContourApproximationNumberOfPoints(int val)
Methods to set / get number of points to compute the contour values approximations using a LogPDF.
static vtkInformationDoubleKey * DENSITY()
Key to recover density in output metadata.
OTDensityCache * DensityPDFCache
int GetNumberOfContours()
Get the number of contours in the list of contour values.
void SetGridSubdivisions(int gridSubdivisions)
Methods to set / get grid subdivisions, aka the number of point in each dimensions of the grid for co...
void SetValue(int i, double value)
Methods to set / get density lines values.
~vtkOTDensityMap() override
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
void BuildContours(vtkPolyData *contourPd, int numContours, const double *contourValues, const double *densityPDFContourValues, const char *xArrayName, const char *yArrayName, std::multimap< double, vtkSmartPointer< vtkTable > > &contoursMap)
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
double GetValue(int i)
Get the ith contour value.
virtual vtkIdType FindNextCellId(vtkPolyData *pd, vtkIdType cellId, vtkIdType previousCellId, bool &invertedPoints, bool up=true, vtkIdList *currentPointIndices=nullptr)
Protected method to find the next cellid in specified direction on a polydata containing only lines o...
static vtkOTDensityMap * New()
int ContourApproximationNumberOfPoints
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkContourValues * ContourValues
vtkTimeStamp DensityPDFMTime
vtkMTimeType GetMTime() override
Check contour values to return actual mtime.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
concrete dataset represents vertices, lines, polygons, and triangle strips
Hold a reference to a vtkObjectBase instance.
A table, which contains similar-typed columns of data.
record modification and/or execution time
vtkTypeUInt32 vtkMTimeType