Wildmeshing Toolkit
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
wmtk::components::topological_offset::SimplicialComplexBVH Class Reference

Public Member Functions

void init (const MatrixXd &V, const MatrixXi &T, const MatrixXi &F, const MatrixXi &E, const MatrixXi &P)
 initialize BVH from "closed" simplicial complex
 
bool inside_any_tet (const Vector3d &p) const
 check if a point is inside any tet.
 
double squared_dist (const VectorXd &p) const
 compute distance to complex
 
double dist (const VectorXd &p) const
 
void clear ()
 

Private Attributes

igl::AABB< MatrixXd, 3 > m_tet_aabb_tree
 
bool m_has_tets = false
 
SimpleBVH::BVH m_tri_bvh
 
bool m_has_tris = false
 
SimpleBVH::BVH m_edge_bvh
 
bool m_has_edges = false
 
bool m_is_3d
 
MatrixXd m_V_T = MatrixXd(0, 3)
 
MatrixXi m_T_T = MatrixXi(0, 4)
 

Member Function Documentation

◆ init()

void wmtk::components::topological_offset::SimplicialComplexBVH::init ( const MatrixXd &  V,
const MatrixXi &  T,
const MatrixXi &  F,
const MatrixXi &  E,
const MatrixXi &  P 
)
inline

initialize BVH from "closed" simplicial complex

Parameters
VNx2 or Nx3, all vertices contained anywhere in complex
TMx4, tets contained in complex
FLx3, isolated faces contained in complex (ie, faces not in any tet)
EKx2, isolated edges contained in complex (ie, edges not in any faces or tets)
PJx1, isolated vertices contained in complex (ie, verts not in any edges, faces, or tets)

The documentation for this class was generated from the following file: