|
OpenABF 2.1.0
|
ABF and ABF++ implementation details More...
Typedefs | |
| template<typename T > | |
| using | Mesh = HalfEdgeMesh< T, 3, traits::ABFVertexTraits< T >, traits::ABFEdgeTraits< T >, traits::ABFFaceTraits< T > > |
| A HalfEdgeMesh with the ABF traits. | |
Functions | |
| template<typename T , class MeshPtr > | |
| void | InitializeAnglesAndWeights (MeshPtr &m) |
| Initialize the ABF angles and weights from the edge alpha values. | |
| template<typename T , class FacePtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | TriGrad (const FacePtr &f) -> T |
| Compute ∇CTri w.r.t LambdaTri == CTri. | |
| template<typename T , class VertPtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | PlanGrad (const VertPtr &v) -> T |
| Compute ∇CPlan w.r.t LambdaPlan == CPlan. | |
| template<typename T , class VertPtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | LenGrad (const VertPtr &vertex) -> T |
| Compute ∇CLen w.r.t LambdaLen == CLen. | |
| template<typename T , class VertPtr , class EdgePtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | LenGrad (const VertPtr &vertex, const EdgePtr &edge) -> T |
| Compute ∇CLen w.r.t edge->alpha. | |
| template<typename T , class EdgePtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | AlphaGrad (const EdgePtr &edge) -> T |
| Compute ∇F w.r.t an edge's alpha. | |
| template<typename T , class MeshPtr , std::enable_if_t< std::is_floating_point_v< T >, bool > = true> | |
| auto | Gradient (const MeshPtr &mesh) -> T |
| Compute ∇F w.r.t all parameters. | |
ABF and ABF++ implementation details