libigl v2.5.0
|
Class for building an AABB tree to implement the divide and conquer algorithm described in [Jacobson et al. More...
#include <WindingNumberAABB.h>
Public Types | |
enum | SplitMethod { CENTER_ON_LONGEST_AXIS = 0 , MEDIAN_ON_LONGEST_AXIS = 1 , NUM_SPLIT_METHODS = 2 } |
Public Member Functions | |
WindingNumberAABB () | |
WindingNumberAABB (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F) | |
Constructor. | |
WindingNumberAABB (const WindingNumberTree< Point, DerivedV, DerivedF > &parent, const Eigen::MatrixBase< DerivedF > &F) | |
void | set_mesh (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F) |
Initialize the hierarchy to a given mesh. | |
void | init () |
bool | inside (const Point &p) const |
virtual void | grow () |
void | compute_min_max_corners () |
DerivedV::Scalar | max_abs_winding_number (const Point &p) const |
DerivedV::Scalar | max_simple_abs_winding_number (const Point &p) const |
WindingNumberAABB (const Eigen::MatrixBase< Eigen::Matrix< double, -1, 2, 0, -1, 2 > > &, const Eigen::MatrixBase< Eigen::Matrix< int, -1, 2, 0, -1, 2 > > &) | |
void | grow () |
void | init () |
Public Member Functions inherited from igl::WindingNumberTree< Point, DerivedV, DerivedF > | |
WindingNumberTree () | |
WindingNumberTree (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F) | |
WindingNumberTree (const WindingNumberTree< Point, DerivedV, DerivedF > &parent, const Eigen::MatrixBase< DerivedF > &F) | |
virtual | ~WindingNumberTree () |
void | delete_children () |
void | set_method (const WindingNumberMethod &m) |
const DerivedV & | getV () const |
const MatrixXF & | getF () const |
const MatrixXF & | getcap () const |
DerivedV::Scalar | winding_number (const Point &p) const |
DerivedV::Scalar | winding_number_all (const Point &p) const |
DerivedV::Scalar | winding_number_boundary (const Point &p) const |
void | print (const char *tab="") |
virtual DerivedV::Scalar | cached_winding_number (const WindingNumberTree &that, const Point &p) const |
Public Attributes | |
enum igl::WindingNumberAABB::SplitMethod | split_method |
Protected Attributes | |
Point | min_corner |
Point | max_corner |
DerivedV::Scalar | total_positive_area |
Protected Attributes inherited from igl::WindingNumberTree< Point, DerivedV, DerivedF > | |
WindingNumberMethod | method |
const WindingNumberTree * | parent |
std::list< WindingNumberTree * > | children |
DerivedV & | V |
MatrixXS | SV |
MatrixXF | F |
MatrixXF | cap |
DerivedV::Scalar | radius |
Point | center |
Additional Inherited Members | |
Static Public Attributes inherited from igl::WindingNumberTree< Point, DerivedV, DerivedF > | |
static std::map< std::pair< const WindingNumberTree *, const WindingNumberTree * >, typename DerivedV::Scalar > | cached |
static DerivedV | dummyV |
Protected Types inherited from igl::WindingNumberTree< Point, DerivedV, DerivedF > | |
typedef Eigen::Matrix< typename DerivedV::Scalar, Eigen::Dynamic, Eigen::Dynamic > | MatrixXS |
typedef Eigen::Matrix< typename DerivedF::Scalar, Eigen::Dynamic, Eigen::Dynamic > | MatrixXF |
Class for building an AABB tree to implement the divide and conquer algorithm described in [Jacobson et al.
2013].
enum igl::WindingNumberAABB::SplitMethod |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Initialize the hierarchy to a given mesh.
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inline |
|
inlinevirtual |
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inlinevirtual |
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inline |
|
inlinevirtual |
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inlinevirtual |
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inlinevirtual |
Reimplemented from igl::WindingNumberTree< Point, DerivedV, DerivedF >.
|
inline |
|
protected |
|
protected |
|
protected |
enum igl::WindingNumberAABB::SplitMethod igl::WindingNumberAABB< Point, DerivedV, DerivedF >::split_method |