#include <QuadricT.hh>
Public Types | |
| typedef QuadricT< Scalar > | Self |
| typedef QuadricT< Scalar > | type |
| typedef Scalar | value_type |
Public Member Functions | |
| Scalar | a () const |
| Scalar | b () const |
| Scalar | c () const |
| void | clear () |
| set all entries to zero | |
| Scalar | d () const |
| Scalar | e () const |
| Scalar | f () const |
| Scalar | g () const |
| Scalar | h () const |
| Scalar | i () const |
| Scalar | j () const |
| template<class _Vec > | |
| Scalar | operator() (const _Vec &_v) const |
| evaluate quadric Q at (3D or 4D) vector v: v*Q*v | |
| template<class _Vec4 > | |
| _Vec4 | operator* (const _Vec4 &_v) const |
| multiply 4D vector from right: Q*v | |
| QuadricT< Scalar > & | operator*= (Scalar _s) |
| multiply by scalar | |
| QuadricT< Scalar > & | operator+= (const QuadricT< Scalar > &_q) |
| add quadrics | |
| template<class _Normal , class _Point > | |
| QuadricT (const _Normal &_n, const _Point &_p) | |
| template<class _Point > | |
| QuadricT (const _Point &_pt) | |
| QuadricT (Scalar _a=0.0, Scalar _b=0.0, Scalar _c=0.0, Scalar _d=0.0) | |
| constructor from given plane equation: ax+by+cz+d_=0 | |
| QuadricT (Scalar _a, Scalar _b, Scalar _c, Scalar _d, Scalar _e, Scalar _f, Scalar _g, Scalar _h, Scalar _i, Scalar _j) | |
| construct with upper triangle of symmetrix 4x4 matrix | |
| void | set (Scalar _a, Scalar _b, Scalar _c, Scalar _d, Scalar _e, Scalar _f, Scalar _g, Scalar _h, Scalar _i, Scalar _j) |
| template<class _Normal , class _Point > | |
| void | set_distance_to_plane (const _Normal &_n, const _Point &_p) |
| void | set_distance_to_plane (Scalar _a, Scalar _b, Scalar _c, Scalar _d) |
| template<class _Point > | |
| void | set_distance_to_point (const _Point &_pt) |
| Scalar | ww () const |
| Scalar | xw () const |
| Scalar | xx () const |
| Scalar | xy () const |
| Scalar | xz () const |
| Scalar | yw () const |
| Scalar | yy () const |
| Scalar | yz () const |
| Scalar | zw () const |
| Scalar | zz () const |
Protected Member Functions | |
| template<class _Vec4 > | |
| Scalar | evaluate (const _Vec4 &_v, GenProg::Int2Type< 4 >) const |
| evaluate quadric Q at 4D vector v: v*Q*v | |
| template<class _Vec3 > | |
| Scalar | evaluate (const _Vec3 &_v, GenProg::Int2Type< 3 >) const |
| evaluate quadric Q at 3D vector v: v*Q*v | |
Private Attributes | |
| Scalar | a_ |
| Scalar | b_ |
| Scalar | c_ |
| Scalar | d_ |
| Scalar | e_ |
| Scalar | f_ |
| Scalar | g_ |
| Scalar | h_ |
| Scalar | i_ |
| Scalar | j_ |
/class QuadricT QuadricT.hh <OSG/Geometry/Types/QuadricT.hh>
Stores a quadric as a 4x4 symmetrix matrix. Used by the error quadric based mesh decimation algorithms.
Definition at line 74 of file QuadricT.hh.
| typedef QuadricT<Scalar> OpenMesh::Geometry::QuadricT< Scalar >::Self |
Definition at line 65 of file QuadricT.hh.
| typedef QuadricT<Scalar> OpenMesh::Geometry::QuadricT< Scalar >::type |
Definition at line 64 of file QuadricT.hh.
| typedef Scalar OpenMesh::Geometry::QuadricT< Scalar >::value_type |
Definition at line 63 of file QuadricT.hh.
| OpenMesh::Geometry::QuadricT< Scalar >::QuadricT | ( | Scalar | _a, | |
| Scalar | _b, | |||
| Scalar | _c, | |||
| Scalar | _d, | |||
| Scalar | _e, | |||
| Scalar | _f, | |||
| Scalar | _g, | |||
| Scalar | _h, | |||
| Scalar | _i, | |||
| Scalar | _j | |||
| ) | [inline] |
construct with upper triangle of symmetrix 4x4 matrix
Definition at line 72 of file QuadricT.hh.
| OpenMesh::Geometry::QuadricT< Scalar >::QuadricT | ( | Scalar | _a = 0.0, |
|
| Scalar | _b = 0.0, |
|||
| Scalar | _c = 0.0, |
|||
| Scalar | _d = 0.0 | |||
| ) | [inline] |
constructor from given plane equation: ax+by+cz+d_=0
Definition at line 85 of file QuadricT.hh.
| OpenMesh::Geometry::QuadricT< Scalar >::QuadricT | ( | const _Point & | _pt | ) | [inline] |
Definition at line 93 of file QuadricT.hh.
| OpenMesh::Geometry::QuadricT< Scalar >::QuadricT | ( | const _Normal & | _n, | |
| const _Point & | _p | |||
| ) | [inline] |
Definition at line 99 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::a | ( | ) | const [inline] |
Definition at line 186 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::b | ( | ) | const [inline] |
Definition at line 187 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::c | ( | ) | const [inline] |
Definition at line 188 of file QuadricT.hh.
| void OpenMesh::Geometry::QuadricT< Scalar >::clear | ( | ) | [inline] |
set all entries to zero
Definition at line 144 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::d | ( | ) | const [inline] |
Definition at line 189 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::e | ( | ) | const [inline] |
Definition at line 190 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::evaluate | ( | const _Vec4 & | _v, | |
| GenProg::Int2Type< 4 > | ||||
| ) | const [inline, protected] |
evaluate quadric Q at 4D vector v: v*Q*v
Definition at line 223 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::evaluate | ( | const _Vec3 & | _v, | |
| GenProg::Int2Type< 3 > | ||||
| ) | const [inline, protected] |
evaluate quadric Q at 3D vector v: v*Q*v
Definition at line 212 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::f | ( | ) | const [inline] |
Definition at line 191 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::g | ( | ) | const [inline] |
Definition at line 192 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::h | ( | ) | const [inline] |
Definition at line 193 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::i | ( | ) | const [inline] |
Definition at line 194 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::j | ( | ) | const [inline] |
Definition at line 195 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::operator() | ( | const _Vec & | _v | ) | const [inline] |
evaluate quadric Q at (3D or 4D) vector v: v*Q*v
Definition at line 181 of file QuadricT.hh.
| _Vec4 OpenMesh::Geometry::QuadricT< Scalar >::operator* | ( | const _Vec4 & | _v | ) | const [inline] |
multiply 4D vector from right: Q*v
Definition at line 170 of file QuadricT.hh.
| QuadricT<Scalar>& OpenMesh::Geometry::QuadricT< Scalar >::operator*= | ( | Scalar | _s | ) | [inline] |
multiply by scalar
Definition at line 158 of file QuadricT.hh.
| QuadricT<Scalar>& OpenMesh::Geometry::QuadricT< Scalar >::operator+= | ( | const QuadricT< Scalar > & | _q | ) | [inline] |
add quadrics
Definition at line 147 of file QuadricT.hh.
| void OpenMesh::Geometry::QuadricT< Scalar >::set | ( | Scalar | _a, | |
| Scalar | _b, | |||
| Scalar | _c, | |||
| Scalar | _d, | |||
| Scalar | _e, | |||
| Scalar | _f, | |||
| Scalar | _g, | |||
| Scalar | _h, | |||
| Scalar | _i, | |||
| Scalar | _j | |||
| ) | [inline] |
Definition at line 105 of file QuadricT.hh.
| void OpenMesh::Geometry::QuadricT< Scalar >::set_distance_to_plane | ( | const _Normal & | _n, | |
| const _Point & | _p | |||
| ) | [inline] |
Definition at line 138 of file QuadricT.hh.
| void OpenMesh::Geometry::QuadricT< Scalar >::set_distance_to_plane | ( | Scalar | _a, | |
| Scalar | _b, | |||
| Scalar | _c, | |||
| Scalar | _d | |||
| ) | [inline] |
Definition at line 127 of file QuadricT.hh.
| void OpenMesh::Geometry::QuadricT< Scalar >::set_distance_to_point | ( | const _Point & | _pt | ) | [inline] |
Definition at line 118 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::ww | ( | ) | const [inline] |
Definition at line 206 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::xw | ( | ) | const [inline] |
Definition at line 200 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::xx | ( | ) | const [inline] |
Definition at line 197 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::xy | ( | ) | const [inline] |
Definition at line 198 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::xz | ( | ) | const [inline] |
Definition at line 199 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::yw | ( | ) | const [inline] |
Definition at line 203 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::yy | ( | ) | const [inline] |
Definition at line 201 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::yz | ( | ) | const [inline] |
Definition at line 202 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::zw | ( | ) | const [inline] |
Definition at line 205 of file QuadricT.hh.
| Scalar OpenMesh::Geometry::QuadricT< Scalar >::zz | ( | ) | const [inline] |
Definition at line 204 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::a_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::b_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::c_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::d_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::e_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::f_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::g_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::h_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::i_ [private] |
Definition at line 234 of file QuadricT.hh.
Scalar OpenMesh::Geometry::QuadricT< Scalar >::j_ [private] |
Definition at line 234 of file QuadricT.hh.