#ifndef ASPECT_RATIO_FILTER_H
#define ASPECT_RATIO_FILTER_H


#include <vtkUnstructuredGridAlgorithm.h>
#include <vtkIdList.h>


/*
  Computes the worst triangle aspect ratio for each cell and stores it
  in a "aspect_ratio", 1 float cell data array. Requires the input to
  have an "angles", 12 float cell data array containing the angles of
  every triangle for each cell, grouped by triangle.
*/
class AspectRatioFilter : public vtkUnstructuredGridAlgorithm {
public:
	static AspectRatioFilter *New();
	vtkTypeMacro(AspectRatioFilter, vtkUnstructuredGridAlgorithm);
	int FillInputPortInformation(int, vtkInformation *info) override;
	vtkTypeBool RequestData(vtkInformation *request,
							vtkInformationVector **inputVector,
							vtkInformationVector *outputVector) override;

protected:
	~AspectRatioFilter() override = default;
};


#endif
