MOAB: Mesh Oriented datABase
(version 5.4.1)
|
Public Member Functions | |
Face (Face *next) | |
Face () | |
~Face () | |
double | signed_volume () const |
Public Attributes | |
BSPTreePoly::EdgeUse * | usePtr |
BSPTreePoly::Face * | nextPtr |
Definition at line 156 of file BSPTreePoly.cpp.
moab::BSPTreePoly::Face::Face | ( | Face * | next | ) | [inline] |
Definition at line 158 of file BSPTreePoly.cpp.
moab::BSPTreePoly::Face::Face | ( | ) | [inline] |
Definition at line 166 of file BSPTreePoly.cpp.
Definition at line 374 of file BSPTreePoly.cpp.
double moab::BSPTreePoly::Face::signed_volume | ( | ) | const |
Definition at line 486 of file BSPTreePoly.cpp.
References moab::BSPTreePoly::EdgeUse::nextPtr, and moab::sum().
{ CartVect sum( 0.0 ); const CartVect* base = usePtr->start(); CartVect d1 = ( *usePtr->end() - *base ); for( EdgeUse* coedge = usePtr->nextPtr; coedge != usePtr; coedge = coedge->nextPtr ) { CartVect d2 = ( *coedge->end() - *base ); sum += d1 * d2; d1 = d2; } return ( 1.0 / 6.0 ) * ( sum % *base ); }
Definition at line 176 of file BSPTreePoly.cpp.
Referenced by moab::BSPTreePoly::clear(), moab::BSPTreePoly::cut_polyhedron(), moab::BSPTreePoly::is_valid(), and moab::BSPTreePoly::volume().
Definition at line 175 of file BSPTreePoly.cpp.
Referenced by moab::BSPTreePoly::EdgeUse::EdgeUse(), moab::BSPTreePoly::get_vertices(), and moab::split_face().