Program Listing for File SurfaceTension_Akinci2013.h
↰ Return to documentation for file (SPlisHSPlasH/SurfaceTension/SurfaceTension_Akinci2013.h)
#ifndef __SurfaceTension_Akinci2013_h__
#define __SurfaceTension_Akinci2013_h__
#include "SPlisHSPlasH/Common.h"
#include "SPlisHSPlasH/FluidModel.h"
#include "SurfaceTensionBase.h"
namespace SPH
{
class SurfaceTension_Akinci2013 : public SurfaceTensionBase
{
protected:
std::vector<Vector3r> m_normals;
public:
SurfaceTension_Akinci2013(FluidModel *model);
virtual ~SurfaceTension_Akinci2013(void);
static NonPressureForceBase* creator(FluidModel* model) { return new SurfaceTension_Akinci2013(model); }
virtual void step();
virtual void reset();
void computeNormals();
virtual void performNeighborhoodSearchSort();
FORCE_INLINE Vector3r &getNormal(const unsigned int i)
{
return m_normals[i];
}
FORCE_INLINE const Vector3r &getNormal(const unsigned int i) const
{
return m_normals[i];
}
FORCE_INLINE void setNormal(const unsigned int i, const Vector3r &val)
{
m_normals[i] = val;
}
};
}
#endif