![]() |
Prusa Slicer 2.6.0
|
#include <src/libigl/igl/AABB.h>
Collaboration diagram for igl::AABB< DerivedV, DIM >:Public Types | |
| typedef DerivedV::Scalar | Scalar |
| typedef Eigen::Matrix< Scalar, 1, DIM > | RowVectorDIMS |
| typedef Eigen::Matrix< Scalar, DIM, 1 > | VectorDIMS |
| typedef Eigen::Matrix< Scalar, Eigen::Dynamic, DIM > | MatrixXDIMS |
Public Member Functions | |
| AABB () | |
| AABB (const AABB &other) | |
| AABB & | operator= (const AABB &other) |
| AABB (AABB &&other) | |
| IGL_INLINE void | deinit () |
| ~AABB () | |
| template<typename DerivedEle , typename Derivedbb_mins , typename Derivedbb_maxs , typename Derivedelements > | |
| IGL_INLINE void | init (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const Eigen::MatrixBase< Derivedbb_mins > &bb_mins, const Eigen::MatrixBase< Derivedbb_maxs > &bb_maxs, const Eigen::MatrixBase< Derivedelements > &elements, const int i=0) |
| template<typename DerivedEle > | |
| IGL_INLINE void | init (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele) |
| template<typename DerivedEle , typename DerivedSI , typename DerivedI > | |
| IGL_INLINE void | init (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const Eigen::MatrixBase< DerivedSI > &SI, const Eigen::MatrixBase< DerivedI > &I) |
| IGL_INLINE bool | is_leaf () const |
| template<typename DerivedEle , typename Derivedq > | |
| IGL_INLINE std::vector< int > | find (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const Eigen::MatrixBase< Derivedq > &q, const bool first=false) const |
| IGL_INLINE int | subtree_size () const |
| template<typename Derivedbb_mins , typename Derivedbb_maxs , typename Derivedelements > | |
| IGL_INLINE void | serialize (Eigen::PlainObjectBase< Derivedbb_mins > &bb_mins, Eigen::PlainObjectBase< Derivedbb_maxs > &bb_maxs, Eigen::PlainObjectBase< Derivedelements > &elements, const int i=0) const |
| template<typename DerivedEle > | |
| IGL_INLINE Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, const Scalar low_sqr_d, const Scalar up_sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, const Scalar up_sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE bool | intersect_ray (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &origin, const RowVectorDIMS &dir, std::vector< igl::Hit > &hits) const |
| template<typename DerivedEle > | |
| IGL_INLINE bool | intersect_ray (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &origin, const RowVectorDIMS &dir, igl::Hit &hit) const |
| template<typename DerivedEle > | |
| IGL_INLINE bool | intersect_ray (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &origin, const RowVectorDIMS &dir, const Scalar min_t, igl::Hit &hit) const |
| template<typename DerivedEle , typename DerivedP , typename DerivedsqrD , typename DerivedI , typename DerivedC > | |
| IGL_INLINE void | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const Eigen::MatrixBase< DerivedP > &P, Eigen::PlainObjectBase< DerivedsqrD > &sqrD, Eigen::PlainObjectBase< DerivedI > &I, Eigen::PlainObjectBase< DerivedC > &C) const |
| template<typename DerivedEle , typename Derivedother_V , typename Derivedother_Ele , typename DerivedsqrD , typename DerivedI , typename DerivedC > | |
| IGL_INLINE void | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const AABB< Derivedother_V, DIM > &other, const Eigen::MatrixBase< Derivedother_V > &other_V, const Eigen::MatrixBase< Derivedother_Ele > &other_Ele, Eigen::PlainObjectBase< DerivedsqrD > &sqrD, Eigen::PlainObjectBase< DerivedI > &I, Eigen::PlainObjectBase< DerivedC > &C) const |
| template<typename DerivedEle > | |
| void | init (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele) |
| template<typename DerivedEle > | |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, Scalar low_sqr_d, Scalar up_sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar | squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, Scalar up_sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle , typename Derivedother_V , typename Derivedother_Ele , typename DerivedsqrD , typename DerivedI , typename DerivedC > | |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar | squared_distance_helper (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const AABB< Derivedother_V, DIM > *other, const Eigen::MatrixBase< Derivedother_V > &other_V, const Eigen::MatrixBase< Derivedother_Ele > &other_Ele, const Scalar, Eigen::PlainObjectBase< DerivedsqrD > &sqrD, Eigen::PlainObjectBase< DerivedI > &I, Eigen::PlainObjectBase< DerivedC > &C) const |
| IGL_INLINE float | squared_distance (Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &, Eigen::Matrix< float, 1, 2, 1, 1, 2 > const &, int &, Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > &) const |
| IGL_INLINE float | squared_distance (Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &, Eigen::Matrix< float, 1, 2, 1, 1, 2 > const &, float, float, int &, Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > &) const |
| IGL_INLINE void | init (Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &) |
| IGL_INLINE double | squared_distance (Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &, Eigen::Matrix< double, 1, 2, 1, 1, 2 > const &, int &, Eigen::PlainObjectBase< Eigen::Matrix< double, 1, 2, 1, 1, 2 > > &) const |
| IGL_INLINE double | squared_distance (Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &, Eigen::Matrix< double, 1, 2, 1, 1, 2 > const &, double, double, int &, Eigen::PlainObjectBase< Eigen::Matrix< double, 1, 2, 1, 1, 2 > > &) const |
| IGL_INLINE void | init (Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const &) |
| IGL_INLINE void | init (Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 0, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 0, -1, 3 > > const &) |
| IGL_INLINE float | squared_distance (Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 0, -1, 3 > > const &, Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 0, -1, 3 > > const &, Eigen::Matrix< float, 1, 2, 1, 1, 2 > const &, float, float, int &, Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > &) const |
Public Attributes | |
| AABB * | m_left |
| AABB * | m_right |
| Eigen::AlignedBox< Scalar, DIM > | m_box |
| int | m_primitive |
Private Member Functions | |
| template<typename DerivedEle , typename Derivedother_V , typename Derivedother_Ele , typename DerivedsqrD , typename DerivedI , typename DerivedC > | |
| IGL_INLINE Scalar | squared_distance_helper (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const AABB< Derivedother_V, DIM > *other, const Eigen::MatrixBase< Derivedother_V > &other_V, const Eigen::MatrixBase< Derivedother_Ele > &other_Ele, const Scalar up_sqr_d, Eigen::PlainObjectBase< DerivedsqrD > &sqrD, Eigen::PlainObjectBase< DerivedI > &I, Eigen::PlainObjectBase< DerivedC > &C) const |
| template<typename DerivedEle > | |
| IGL_INLINE void | leaf_squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, const Scalar low_sqr_d, Scalar &sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| template<typename DerivedEle > | |
| IGL_INLINE void | leaf_squared_distance (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedEle > &Ele, const RowVectorDIMS &p, Scalar &sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
| IGL_INLINE void | set_min (const RowVectorDIMS &p, const Scalar sqr_d_candidate, const int i_candidate, const RowVectorDIMS &c_candidate, Scalar &sqr_d, int &i, Eigen::PlainObjectBase< RowVectorDIMS > &c) const |
Friends | |
| void | swap (AABB &first, AABB &second) |
| typedef Eigen::Matrix<Scalar,Eigen::Dynamic,DIM> igl::AABB< DerivedV, DIM >::MatrixXDIMS |
| typedef Eigen::Matrix<Scalar,1,DIM> igl::AABB< DerivedV, DIM >::RowVectorDIMS |
| typedef DerivedV::Scalar igl::AABB< DerivedV, DIM >::Scalar |
| typedef Eigen::Matrix<Scalar,DIM,1> igl::AABB< DerivedV, DIM >::VectorDIMS |
|
inline |
Referenced by igl::AABB< DerivedV, DIM >::operator=().
Here is the caller graph for this function:
|
inline |
|
inline |
References igl::AABB< DerivedV, DIM >::swap.
|
inline |
References igl::AABB< DerivedV, DIM >::m_box, igl::AABB< DerivedV, DIM >::m_left, igl::AABB< DerivedV, DIM >::m_primitive, and igl::AABB< DerivedV, DIM >::m_right.
Referenced by igl::AABB< DerivedV, DIM >::~AABB(), and igl::AABB< DerivedV, DIM >::operator=().
Here is the caller graph for this function:| IGL_INLINE std::vector< int > igl::AABB< DerivedV, DIM >::find | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const Eigen::MatrixBase< Derivedq > & | q, | ||
| const bool | first = false |
||
| ) | const |
References igl::doublearea_single(), igl::sum(), Eigen::DenseBase< Derived >::transpose(), and igl::volume_single().
Referenced by igl::in_element(), and igl::in_element().
Here is the call graph for this function:
Here is the caller graph for this function:| void igl::AABB< DerivedV, DIM >::init | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele | ||
| ) |
| IGL_INLINE void igl::AABB< DerivedV, DIM >::init | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele | ||
| ) |
| IGL_INLINE void igl::AABB< DerivedV, DIM >::init | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const Eigen::MatrixBase< Derivedbb_mins > & | bb_mins, | ||
| const Eigen::MatrixBase< Derivedbb_maxs > & | bb_maxs, | ||
| const Eigen::MatrixBase< Derivedelements > & | elements, | ||
| const int | i = 0 |
||
| ) |
References _, igl::barycenter(), Eigen::PlainObjectBase< Derived >::cols(), Eigen::PlainObjectBase< Derived >::rows(), igl::sort(), and Eigen::DenseBase< Derived >::transpose().
Referenced by igl::ambient_occlusion(), igl::point_mesh_squared_distance(), igl::shape_diameter_function(), igl::signed_distance(), igl::copyleft::cgal::signed_distance_isosurface(), and igl::swept_volume_signed_distance().
Here is the call graph for this function:
Here is the caller graph for this function:| IGL_INLINE void igl::AABB< DerivedV, DIM >::init | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const Eigen::MatrixBase< DerivedSI > & | SI, | ||
| const Eigen::MatrixBase< DerivedI > & | I | ||
| ) |
References igl::median().
Here is the call graph for this function:| IGL_INLINE void igl::AABB< Eigen::Matrix< double,-1, 3, 1,-1, 3 >, 2 >::init | ( | Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | |||
| ) |
| IGL_INLINE void igl::AABB< Eigen::Matrix< float,-1, 3, 0,-1, 3 >, 2 >::init | ( | Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 0, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 0, -1, 3 > > const & | |||
| ) |
| IGL_INLINE void igl::AABB< Eigen::Matrix< float,-1, 3, 1,-1, 3 >, 2 >::init | ( | Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | |||
| ) |
| IGL_INLINE bool igl::AABB< DerivedV, DIM >::intersect_ray | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | origin, | ||
| const RowVectorDIMS & | dir, | ||
| const Scalar | min_t, | ||
| igl::Hit & | hit | ||
| ) | const |
References igl::Hit::id, igl::ray_box_intersect(), igl::ray_mesh_intersect(), and igl::Hit::t.
Here is the call graph for this function:| IGL_INLINE bool igl::AABB< DerivedV, DIM >::intersect_ray | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | origin, | ||
| const RowVectorDIMS & | dir, | ||
| igl::Hit & | hit | ||
| ) | const |
References igl::Hit::id, igl::AABB< DerivedV, DIM >::is_leaf(), igl::AABB< DerivedV, DIM >::m_box, igl::AABB< DerivedV, DIM >::m_left, igl::AABB< DerivedV, DIM >::m_primitive, igl::AABB< DerivedV, DIM >::m_right, igl::ray_box_intersect(), igl::ray_mesh_intersect(), and igl::Hit::t.
Here is the call graph for this function:| IGL_INLINE bool igl::AABB< DerivedV, DIM >::intersect_ray | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | origin, | ||
| const RowVectorDIMS & | dir, | ||
| std::vector< igl::Hit > & | hits | ||
| ) | const |
References igl::ray_box_intersect(), and igl::ray_mesh_intersect().
Referenced by igl::ambient_occlusion(), and igl::shape_diameter_function().
Here is the call graph for this function:
Here is the caller graph for this function:| IGL_INLINE bool igl::AABB< DerivedV, DIM >::is_leaf |
Referenced by igl::AABB< DerivedV, DIM >::intersect_ray(), and igl::AABB< DerivedV, DIM >::squared_distance_helper().
Here is the caller graph for this function:
|
private |
|
private |
|
inline |
References igl::AABB< DerivedV, DIM >::AABB(), igl::AABB< DerivedV, DIM >::deinit(), igl::AABB< DerivedV, DIM >::m_box, igl::AABB< DerivedV, DIM >::m_left, igl::AABB< DerivedV, DIM >::m_primitive, and igl::AABB< DerivedV, DIM >::m_right.
Here is the call graph for this function:| IGL_INLINE void igl::AABB< DerivedV, DIM >::serialize | ( | Eigen::PlainObjectBase< Derivedbb_mins > & | bb_mins, |
| Eigen::PlainObjectBase< Derivedbb_maxs > & | bb_maxs, | ||
| Eigen::PlainObjectBase< Derivedelements > & | elements, | ||
| const int | i = 0 |
||
| ) | const |
References Eigen::PlainObjectBase< Derived >::resize().
Here is the call graph for this function:
|
private |
| IGL_INLINE void igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const AABB< Derivedother_V, DIM > & | other, | ||
| const Eigen::MatrixBase< Derivedother_V > & | other_V, | ||
| const Eigen::MatrixBase< Derivedother_Ele > & | other_Ele, | ||
| Eigen::PlainObjectBase< DerivedsqrD > & | sqrD, | ||
| Eigen::PlainObjectBase< DerivedI > & | I, | ||
| Eigen::PlainObjectBase< DerivedC > & | C | ||
| ) | const |
References Eigen::PlainObjectBase< Derived >::resize(), and Eigen::PlainObjectBase< Derived >::setConstant().
Here is the call graph for this function:| IGL_INLINE void igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const Eigen::MatrixBase< DerivedP > & | P, | ||
| Eigen::PlainObjectBase< DerivedsqrD > & | sqrD, | ||
| Eigen::PlainObjectBase< DerivedI > & | I, | ||
| Eigen::PlainObjectBase< DerivedC > & | C | ||
| ) | const |
References igl::parallel_for(), Eigen::PlainObjectBase< Derived >::resize(), and Eigen::PlainObjectBase< Derived >::resizeLike().
Here is the call graph for this function:| IGL_INLINE Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| const Scalar | low_sqr_d, | ||
| const Scalar | up_sqr_d, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
| IGL_INLINE Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| const Scalar | up_sqr_d, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
| IGL_INLINE Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
Referenced by igl::point_mesh_squared_distance(), igl::signed_distance(), igl::copyleft::cgal::signed_distance_isosurface(), igl::signed_distance_pseudonormal(), igl::signed_distance_pseudonormal(), igl::signed_distance_winding_number(), igl::signed_distance_winding_number(), and igl::swept_volume_signed_distance().
Here is the caller graph for this function:| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| Scalar | low_sqr_d, | ||
| Scalar | up_sqr_d, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar igl::AABB< DerivedV, DIM >::squared_distance | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const RowVectorDIMS & | p, | ||
| Scalar | up_sqr_d, | ||
| int & | i, | ||
| Eigen::PlainObjectBase< RowVectorDIMS > & | c | ||
| ) | const |
| IGL_INLINE double igl::AABB< Eigen::Matrix< double,-1, 3, 1,-1, 3 >, 2 >::squared_distance | ( | Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | , | ||
| Eigen::Matrix< double, 1, 2, 1, 1, 2 > const & | , | ||
| double | , | ||
| double | , | ||
| int & | , | ||
| Eigen::PlainObjectBase< Eigen::Matrix< double, 1, 2, 1, 1, 2 > > & | |||
| ) | const |
| IGL_INLINE double igl::AABB< Eigen::Matrix< double,-1, 3, 1,-1, 3 >, 2 >::squared_distance | ( | Eigen::MatrixBase< Eigen::Matrix< double, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | , | ||
| Eigen::Matrix< double, 1, 2, 1, 1, 2 > const & | , | ||
| int & | , | ||
| Eigen::PlainObjectBase< Eigen::Matrix< double, 1, 2, 1, 1, 2 > > & | |||
| ) | const |
| IGL_INLINE float igl::AABB< Eigen::Matrix< float,-1, 3, 0,-1, 3 >, 2 >::squared_distance | ( | Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 0, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 0, -1, 3 > > const & | , | ||
| Eigen::Matrix< float, 1, 2, 1, 1, 2 > const & | , | ||
| float | , | ||
| float | , | ||
| int & | , | ||
| Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > & | |||
| ) | const |
| IGL_INLINE float igl::AABB< Eigen::Matrix< float,-1, 3, 1,-1, 3 >, 2 >::squared_distance | ( | Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | , | ||
| Eigen::Matrix< float, 1, 2, 1, 1, 2 > const & | , | ||
| float | , | ||
| float | , | ||
| int & | , | ||
| Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > & | |||
| ) | const |
| IGL_INLINE float igl::AABB< Eigen::Matrix< float,-1, 3, 1,-1, 3 >, 2 >::squared_distance | ( | Eigen::MatrixBase< Eigen::Matrix< float, -1, 3, 1, -1, 3 > > const & | , |
| Eigen::MatrixBase< Eigen::Matrix< int, -1, 3, 1, -1, 3 > > const & | , | ||
| Eigen::Matrix< float, 1, 2, 1, 1, 2 > const & | , | ||
| int & | , | ||
| Eigen::PlainObjectBase< Eigen::Matrix< float, 1, 2, 1, 1, 2 > > & | |||
| ) | const |
|
private |
| IGL_INLINE igl::AABB< DerivedV, DIM >::Scalar igl::AABB< DerivedV, DIM >::squared_distance_helper | ( | const Eigen::MatrixBase< DerivedV > & | V, |
| const Eigen::MatrixBase< DerivedEle > & | Ele, | ||
| const AABB< Derivedother_V, DIM > * | other, | ||
| const Eigen::MatrixBase< Derivedother_V > & | other_V, | ||
| const Eigen::MatrixBase< Derivedother_Ele > & | other_Ele, | ||
| const Scalar | , | ||
| Eigen::PlainObjectBase< DerivedsqrD > & | sqrD, | ||
| Eigen::PlainObjectBase< DerivedI > & | I, | ||
| Eigen::PlainObjectBase< DerivedC > & | C | ||
| ) | const |
References Eigen::AlignedBox< _Scalar, _AmbientDim >::diagonal(), Eigen::AlignedBox< _Scalar, _AmbientDim >::extend(), igl::AABB< DerivedV, DIM >::is_leaf(), igl::AABB< DerivedV, DIM >::m_box, igl::AABB< DerivedV, DIM >::m_left, igl::AABB< DerivedV, DIM >::m_primitive, and igl::AABB< DerivedV, DIM >::m_right.
Here is the call graph for this function:| IGL_INLINE int igl::AABB< DerivedV, DIM >::subtree_size |
|
friend |
Referenced by igl::AABB< DerivedV, DIM >::AABB().
| Eigen::AlignedBox<Scalar,DIM> igl::AABB< DerivedV, DIM >::m_box |
| int igl::AABB< DerivedV, DIM >::m_primitive |