OpenMesh
|
/class QuadricT Geometry/QuadricT.hh More...
#include <OpenMesh/Core/Geometry/QuadricT.hh>
Public Types | |
typedef Scalar | value_type |
typedef QuadricT< Scalar > | type |
typedef QuadricT< Scalar > | Self |
Public Member Functions | |
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 | |
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 | |
template<class _Point > | |
QuadricT (const _Point &_pt) | |
template<class _Normal , class _Point > | |
QuadricT (const _Normal &_n, const _Point &_p) | |
void | set (Scalar _a, Scalar _b, Scalar _c, Scalar _d, Scalar _e, Scalar _f, Scalar _g, Scalar _h, Scalar _i, Scalar _j) |
template<class _Point > | |
void | set_distance_to_point (const _Point &_pt) |
void | set_distance_to_plane (Scalar _a, Scalar _b, Scalar _c, Scalar _d) |
template<class _Normal , class _Point > | |
void | set_distance_to_plane (const _Normal &_n, const _Point &_p) |
void | clear () |
set all entries to zero | |
QuadricT< Scalar > & | operator+= (const QuadricT< Scalar > &_q) |
add quadrics | |
QuadricT< Scalar > & | operator*= (Scalar _s) |
multiply by scalar | |
template<class _Vec4 > | |
_Vec4 | operator* (const _Vec4 &_v) const |
multiply 4D vector from right: Q*v | |
template<class _Vec > | |
Scalar | operator() (const _Vec &_v) const |
evaluate quadric Q at (3D or 4D) vector v: v*Q*v | |
Scalar | a () const |
Scalar | b () const |
Scalar | c () const |
Scalar | d () const |
Scalar | e () const |
Scalar | f () const |
Scalar | g () const |
Scalar | h () const |
Scalar | i () const |
Scalar | j () const |
Scalar | xx () const |
Scalar | xy () const |
Scalar | xz () const |
Scalar | xw () const |
Scalar | yy () const |
Scalar | yz () const |
Scalar | yw () const |
Scalar | zz () const |
Scalar | zw () const |
Scalar | ww () const |
Protected Member Functions | |
template<class _Vec3 > | |
Scalar | evaluate (const _Vec3 &_v, GenProg::Int2Type< 3 >) const |
evaluate quadric Q at 3D vector v: v*Q*v | |
template<class _Vec4 > | |
Scalar | evaluate (const _Vec4 &_v, GenProg::Int2Type< 4 >) const |
evaluate quadric Q at 4D vector v: v*Q*v | |
/class QuadricT Geometry/QuadricT.hh
Stores a quadric as a 4x4 symmetrix matrix. Used by the error quadric based mesh decimation algorithms.