![]() |
Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
Public Member Functions | |
FindVolumeIntRegCtxt () | |
ErrorCode | register_intersection (EntityHandle set, EntityHandle tri, double dist, OrientedBoxTreeTool::IntersectSearchWindow &search_win, GeomUtil::intersection_type) |
Public Attributes | |
double | pos |
double | neg |
Definition at line 46 of file GeomQueryTool.cpp.
moab::FindVolumeIntRegCtxt::FindVolumeIntRegCtxt | ( | ) | [inline] |
Definition at line 51 of file GeomQueryTool.cpp.
References moab::OrientedBoxTreeTool::IntRegCtxt::facets, moab::OrientedBoxTreeTool::IntRegCtxt::intersections, and moab::OrientedBoxTreeTool::IntRegCtxt::sets.
{
// initialize return vectors
// only one hit is returned in this context
intersections.push_back( std::numeric_limits< double >::max() );
sets.push_back( 0 );
facets.push_back( 0 );
}
ErrorCode moab::FindVolumeIntRegCtxt::register_intersection | ( | EntityHandle | set, |
EntityHandle | tri, | ||
double | dist, | ||
OrientedBoxTreeTool::IntersectSearchWindow & | search_win, | ||
GeomUtil::intersection_type | |||
) | [inline, virtual] |
Reimplemented from moab::OrientedBoxTreeTool::IntRegCtxt.
Definition at line 60 of file GeomQueryTool.cpp.
References moab::OrientedBoxTreeTool::IntRegCtxt::facets, moab::OrientedBoxTreeTool::IntRegCtxt::intersections, MB_SUCCESS, neg, pos, and moab::OrientedBoxTreeTool::IntRegCtxt::sets.
{
// update dist, set, and triangle hit if
// we found a new minimum distance
double abs_dist = fabs( dist );
if( abs_dist < fabs( intersections[0] ) )
{
intersections[0] = dist;
sets[0] = set;
facets[0] = tri;
// narrow search window based on the hit distance
pos = abs_dist;
neg = -abs_dist;
search_win.first = &pos;
search_win.second = &neg;
}
return MB_SUCCESS;
}
Definition at line 87 of file GeomQueryTool.cpp.
Referenced by register_intersection().
Definition at line 86 of file GeomQueryTool.cpp.
Referenced by register_intersection().