ElementSizeMetric.h
/**
* \file
* \author Karsten Rink
* \date 2011-03-17
* \brief Implementation of the AreaMetric class.
*
* \copyright
* Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
* Distributed under a Modified BSD License.
* See accompanying file LICENSE.txt or
* http://www.opengeosys.org/project/license
*
*/
#pragma once
#include "ElementQualityMetric.h"
namespace MeshLib
{
/**
* Calculates the quality of mesh elements based on length/area/volume
*/
class ElementSizeMetric : public ElementQualityMetric
{
public:
explicit ElementSizeMetric(Mesh const& mesh);
~ElementSizeMetric() override = default;
void calculateQuality() override;
private:
std::size_t calc1dQuality();
std::size_t calc2dQuality();
std::size_t calc3dQuality();
};
} // namespace MeshLib