Skip to content

shapeworks::Constraint

Inherited by shapeworks::FreeFormConstraint, shapeworks::PlaneConstraint, shapeworks::SphereConstraint

Public Functions

Name
bool isViolated(const vnl_vector< double > & pt) const
virtual bool isViolated(const Eigen::Vector3d & pt) const =0
virtual void print() const =0
void setZ(double inz)
double getZ()
void setMu(double inmu)
double getMu()
void setLambda(double inLambda)
double getLambda()
virtual Eigen::Vector3d constraintGradient(const Eigen::Vector3d & pt) const =0
virtual double constraintEval(const Eigen::Vector3d & pt) const =0
void updateZ(const Eigen::Vector3d & pt, double C)
void updateMu(const Eigen::Vector3d & pt, double C)
Eigen::Vector3d lagragianGradient(const Eigen::Vector3d & pt, double C) const

Protected Functions

Name
int sgn(double val)

Protected Attributes

Name
double mu_
double z_
double lambda_

Public Functions Documentation

function isViolated

inline bool isViolated(
    const vnl_vector< double > & pt
) const

function isViolated

virtual bool isViolated(
    const Eigen::Vector3d & pt
) const =0

Reimplemented by: shapeworks::FreeFormConstraint::isViolated, shapeworks::PlaneConstraint::isViolated, shapeworks::SphereConstraint::isViolated

function print

virtual void print() const =0

Reimplemented by: shapeworks::FreeFormConstraint::print, shapeworks::PlaneConstraint::print, shapeworks::SphereConstraint::print

function setZ

inline void setZ(
    double inz
)

function getZ

inline double getZ()

function setMu

inline void setMu(
    double inmu
)

function getMu

inline double getMu()

function setLambda

inline void setLambda(
    double inLambda
)

function getLambda

inline double getLambda()

function constraintGradient

virtual Eigen::Vector3d constraintGradient(
    const Eigen::Vector3d & pt
) const =0

Reimplemented by: shapeworks::FreeFormConstraint::constraintGradient, shapeworks::PlaneConstraint::constraintGradient, shapeworks::SphereConstraint::constraintGradient

function constraintEval

virtual double constraintEval(
    const Eigen::Vector3d & pt
) const =0

Reimplemented by: shapeworks::FreeFormConstraint::constraintEval, shapeworks::PlaneConstraint::constraintEval, shapeworks::SphereConstraint::constraintEval

function updateZ

void updateZ(
    const Eigen::Vector3d & pt,
    double C
)

function updateMu

void updateMu(
    const Eigen::Vector3d & pt,
    double C
)

function lagragianGradient

Eigen::Vector3d lagragianGradient(
    const Eigen::Vector3d & pt,
    double C
) const

Protected Functions Documentation

function sgn

inline int sgn(
    double val
)

Protected Attributes Documentation

variable mu_

double mu_;

variable z_

double z_;

variable lambda_

double lambda_;

Updated on 2022-07-23 at 16:40:06 -0600