20 #ifndef MIRTK_GaussCurvatureConstraint_H 21 #define MIRTK_GaussCurvatureConstraint_H 23 #include "mirtk/SurfaceConstraint.h" 25 #include "vtkSmartPointer.h" 26 #include "vtkDataArray.h" 59 mirtkPublicAttributeMacro(
double, MinGaussCurvature);
62 mirtkPublicAttributeMacro(
double, MaxGaussCurvature);
65 mirtkPublicAttributeMacro(
Action, NegativeGaussCurvatureAction);
68 mirtkPublicAttributeMacro(
Action, PositiveGaussCurvatureAction);
71 mirtkPublicAttributeMacro(
bool, UseMeanCurvature);
100 virtual void Update(
bool);
122 #endif // MIRTK_GaussCurvatureConstraint_H GaussCurvatureConstraint(const char *="", double=1.0)
Constructor.
GaussCurvatureConstraint & operator=(const GaussCurvatureConstraint &)
Assignment operator.
Gauss curvature constraint.
virtual void Initialize()
Initialize force term once input and parameters have been set.
Action
Enumeration of possible actions for reducing negative Gauss curvature.
virtual void Update(bool)
Update internal force data structures.
string ToString(const EnergyMeasure &value, int w, char c, bool left)
Convert energy measure enumeration value to string.
bool FromString(const char *str, EnergyMeasure &value)
Convert energy measure string to enumeration value.
virtual double Evaluate()
Evaluate energy of internal force term.
virtual ~GaussCurvatureConstraint()
Destructor.
virtual void EvaluateGradient(double *, double, double)
Evaluate internal force w.r.t. transformation parameters or surface nodes.