Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
gte::ExtremalQuery3BSP< Real > Class Template Reference

#include <GteExtremalQuery3BSP.h>

Inheritance diagram for gte::ExtremalQuery3BSP< Real >:
Inheritance graph
[legend]

Classes

class  SphericalArc
 

Public Member Functions

 ExtremalQuery3BSP (Polyhedron3< Real > const &polytope)
 
 ExtremalQuery3BSP (ExtremalQuery3BSP const &)=delete
 
virtual void GetExtremeVertices (Vector3< Real > const &direction, int &positiveDirection, int &negativeDirection) override
 
int GetNumNodes () const
 
int GetTreeDepth () const
 
ExtremalQuery3BSPoperator= (ExtremalQuery3BSP const &)=delete
 
- Public Member Functions inherited from gte::ExtremalQuery3< Real >
 ExtremalQuery3 (ExtremalQuery3 const &)=delete
 
std::vector< Vector3< Real > > const & GetFaceNormals () const
 
Polyhedron3< Real > const & GetPolytope () const
 
ExtremalQuery3operator= (ExtremalQuery3 const &)=delete
 
virtual ~ExtremalQuery3 ()
 

Private Types

typedef VETManifoldMesh::Triangle Triangle
 

Private Member Functions

void CreateBSPTree (std::multiset< SphericalArc > &arcs)
 
void CreateSphericalArcs (VETManifoldMesh &mesh, std::multiset< SphericalArc > &arcs)
 
void CreateSphericalBisectors (VETManifoldMesh &mesh, std::multiset< SphericalArc > &arcs)
 
void InsertArc (SphericalArc const &arcs)
 
void SortAdjacentTriangles (int vIndex, std::set< std::shared_ptr< Triangle >> const &tAdj, std::vector< std::shared_ptr< Triangle >> &tAdjSorted)
 

Private Attributes

std::vector< SphericalArcmNodes
 
int mTreeDepth
 
std::map< std::shared_ptr< Triangle >, intmTriToNormal
 

Additional Inherited Members

- Protected Member Functions inherited from gte::ExtremalQuery3< Real >
 ExtremalQuery3 (Polyhedron3< Real > const &polytope)
 
- Protected Attributes inherited from gte::ExtremalQuery3< Real >
std::vector< Vector3< Real > > mFaceNormals
 
Polyhedron3< Real > const & mPolytope
 

Detailed Description

template<typename Real>
class gte::ExtremalQuery3BSP< Real >

Definition at line 23 of file GteExtremalQuery3BSP.h.

Member Typedef Documentation

template<typename Real >
typedef VETManifoldMesh::Triangle gte::ExtremalQuery3BSP< Real >::Triangle
private

Definition at line 77 of file GteExtremalQuery3BSP.h.

Constructor & Destructor Documentation

template<typename Real >
gte::ExtremalQuery3BSP< Real >::ExtremalQuery3BSP ( Polyhedron3< Real > const &  polytope)

Definition at line 97 of file GteExtremalQuery3BSP.h.

template<typename Real >
gte::ExtremalQuery3BSP< Real >::ExtremalQuery3BSP ( ExtremalQuery3BSP< Real > const &  )
delete

Member Function Documentation

template<typename Real >
void gte::ExtremalQuery3BSP< Real >::CreateBSPTree ( std::multiset< SphericalArc > &  arcs)
private

Definition at line 307 of file GteExtremalQuery3BSP.h.

template<typename Real >
void gte::ExtremalQuery3BSP< Real >::CreateSphericalArcs ( VETManifoldMesh mesh,
std::multiset< SphericalArc > &  arcs 
)
private

Definition at line 223 of file GteExtremalQuery3BSP.h.

template<typename Real >
void gte::ExtremalQuery3BSP< Real >::CreateSphericalBisectors ( VETManifoldMesh mesh,
std::multiset< SphericalArc > &  arcs 
)
private

Definition at line 259 of file GteExtremalQuery3BSP.h.

template<typename Real >
void gte::ExtremalQuery3BSP< Real >::GetExtremeVertices ( Vector3< Real > const &  direction,
int positiveDirection,
int negativeDirection 
)
overridevirtual

Implements gte::ExtremalQuery3< Real >.

Definition at line 125 of file GteExtremalQuery3BSP.h.

template<typename Real >
int gte::ExtremalQuery3BSP< Real >::GetNumNodes ( ) const
inline

Definition at line 185 of file GteExtremalQuery3BSP.h.

template<typename Real >
int gte::ExtremalQuery3BSP< Real >::GetTreeDepth ( ) const
inline

Definition at line 191 of file GteExtremalQuery3BSP.h.

template<typename Real >
void gte::ExtremalQuery3BSP< Real >::InsertArc ( SphericalArc const &  arcs)
private

Definition at line 323 of file GteExtremalQuery3BSP.h.

template<typename Real >
ExtremalQuery3BSP& gte::ExtremalQuery3BSP< Real >::operator= ( ExtremalQuery3BSP< Real > const &  )
delete
template<typename Real >
void gte::ExtremalQuery3BSP< Real >::SortAdjacentTriangles ( int  vIndex,
std::set< std::shared_ptr< Triangle >> const &  tAdj,
std::vector< std::shared_ptr< Triangle >> &  tAdjSorted 
)
private

Definition at line 197 of file GteExtremalQuery3BSP.h.

Member Data Documentation

template<typename Real >
std::vector<SphericalArc> gte::ExtremalQuery3BSP< Real >::mNodes
private

Definition at line 92 of file GteExtremalQuery3BSP.h.

template<typename Real >
int gte::ExtremalQuery3BSP< Real >::mTreeDepth
private

Definition at line 93 of file GteExtremalQuery3BSP.h.

template<typename Real >
std::map<std::shared_ptr<Triangle>, int> gte::ExtremalQuery3BSP< Real >::mTriToNormal
private

Definition at line 89 of file GteExtremalQuery3BSP.h.


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


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:00:06