#include <smooth_field.h>
Classes | |
| struct | SmoothParam |
Static Public Member Functions | |
| static void | GloballyOrient (MeshType &mesh) |
| static void | InitByCurvature (MeshType &mesh, int Nring, bool UpdateFaces=true) |
| static void | SelectConstraints (MeshType &mesh, SmoothParam &SParam) |
| static void | SmoothDirections (MeshType &mesh, int Ndir, SmoothMethod SMethod=SMNPoly, bool HardAsS=true, ScalarType alphaSoft=0) |
| static void | SmoothDirections (MeshType &mesh, SmoothParam SParam) |
Private Types | |
| typedef MeshType::CoordType | CoordType |
| typedef MeshType::FaceType | FaceType |
| typedef MeshType::ScalarType | ScalarType |
| typedef MeshType::VertexType | VertexType |
Static Private Member Functions | |
| static void | AddBorderConstraints (MeshType &mesh) |
| static void | AddCurvatureConstraints (MeshType &mesh, const ScalarType &thr=0.5) |
| static void | AddSharpEdgesConstraints (MeshType &mesh, const ScalarType &thr=0.2) |
| static void | CollectHardConstraints (MeshType &mesh, Eigen::VectorXi &HardI, Eigen::MatrixXd &HardD, SmoothMethod SMethod, int Ndir) |
| static void | CollectSoftConstraints (MeshType &mesh, Eigen::VectorXi &SoftI, Eigen::MatrixXd &SoftD, Eigen::VectorXd &SoftW) |
| static void | InitQualityByAnisotropyDir (MeshType &mesh) |
| static void | PickRandomDir (MeshType &mesh, int &indexF, CoordType &Dir) |
| static void | SetEdgeDirection (FaceType *f, int edge) |
| static void | SmoothMIQ (MeshType &mesh, Eigen::VectorXi &HardI, Eigen::MatrixXd &HardD, Eigen::VectorXi &SoftI, Eigen::MatrixXd &SoftD, Eigen::VectorXd &SoftW, ScalarType alpha_soft, int Ndir) |
| static void | SmoothNPoly (MeshType &mesh, Eigen::VectorXi &HardI, Eigen::MatrixXd &HardD, int Ndir) |
Definition at line 48 of file smooth_field.h.
typedef MeshType::CoordType vcg::tri::FieldSmoother< MeshType >::CoordType [private] |
Definition at line 53 of file smooth_field.h.
typedef MeshType::FaceType vcg::tri::FieldSmoother< MeshType >::FaceType [private] |
Definition at line 50 of file smooth_field.h.
typedef MeshType::ScalarType vcg::tri::FieldSmoother< MeshType >::ScalarType [private] |
Definition at line 52 of file smooth_field.h.
typedef MeshType::VertexType vcg::tri::FieldSmoother< MeshType >::VertexType [private] |
Definition at line 51 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::AddBorderConstraints | ( | MeshType & | mesh | ) | [inline, static, private] |
Definition at line 125 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::AddCurvatureConstraints | ( | MeshType & | mesh, |
| const ScalarType & | thr = 0.5 |
||
| ) | [inline, static, private] |
Definition at line 139 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::AddSharpEdgesConstraints | ( | MeshType & | mesh, |
| const ScalarType & | thr = 0.2 |
||
| ) | [inline, static, private] |
Definition at line 108 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::CollectHardConstraints | ( | MeshType & | mesh, |
| Eigen::VectorXi & | HardI, | ||
| Eigen::MatrixXd & | HardD, | ||
| SmoothMethod | SMethod, | ||
| int | Ndir | ||
| ) | [inline, static, private] |
Definition at line 146 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::CollectSoftConstraints | ( | MeshType & | mesh, |
| Eigen::VectorXi & | SoftI, | ||
| Eigen::MatrixXd & | SoftD, | ||
| Eigen::VectorXd & | SoftW | ||
| ) | [inline, static, private] |
Definition at line 187 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::GloballyOrient | ( | MeshType & | mesh | ) | [inline, static] |
Definition at line 387 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::InitByCurvature | ( | MeshType & | mesh, |
| int | Nring, | ||
| bool | UpdateFaces = true |
||
| ) | [inline, static] |
Definition at line 393 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::InitQualityByAnisotropyDir | ( | MeshType & | mesh | ) | [inline, static, private] |
Definition at line 56 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::PickRandomDir | ( | MeshType & | mesh, |
| int & | indexF, | ||
| CoordType & | Dir | ||
| ) | [inline, static, private] |
Definition at line 300 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SelectConstraints | ( | MeshType & | mesh, |
| SmoothParam & | SParam | ||
| ) | [inline, static] |
Ratio);
Definition at line 355 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SetEdgeDirection | ( | FaceType * | f, |
| int | edge | ||
| ) | [inline, static, private] |
Definition at line 91 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SmoothDirections | ( | MeshType & | mesh, |
| int | Ndir, | ||
| SmoothMethod | SMethod = SMNPoly, |
||
| bool | HardAsS = true, |
||
| ScalarType | alphaSoft = 0 |
||
| ) | [inline, static] |
Definition at line 420 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SmoothDirections | ( | MeshType & | mesh, |
| SmoothParam | SParam | ||
| ) | [inline, static] |
Definition at line 486 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SmoothMIQ | ( | MeshType & | mesh, |
| Eigen::VectorXi & | HardI, | ||
| Eigen::MatrixXd & | HardD, | ||
| Eigen::VectorXi & | SoftI, | ||
| Eigen::MatrixXd & | SoftD, | ||
| Eigen::VectorXd & | SoftW, | ||
| ScalarType | alpha_soft, | ||
| int | Ndir | ||
| ) | [inline, static, private] |
Definition at line 222 of file smooth_field.h.
| static void vcg::tri::FieldSmoother< MeshType >::SmoothNPoly | ( | MeshType & | mesh, |
| Eigen::VectorXi & | HardI, | ||
| Eigen::MatrixXd & | HardD, | ||
| int | Ndir | ||
| ) | [inline, static, private] |
Definition at line 263 of file smooth_field.h.