ESyS-Particle  2.3.2
esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec > Class Template Reference

#include <IntersectionVolCalculator.h>

Inheritance diagram for esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >:

Public Types

typedef TmplVec Vec
typedef DimPlane< tmplDim, VecPlane

Public Member Functions

 DimBasicSphere ()
 DimBasicSphere (const Vec &centrePt, double radius)
 DimBasicSphere (const DimBasicSphere &sphere)
DimBasicSphereoperator= (const DimBasicSphere &sphere)
double getRadius () const
const VecgetCentre () const
double getVolume () const
double getVolume (const Vec &minPt, const Vec &maxPt, const int dimX=0, const int dimY=1) const
bool intersectsWith (const Vec &pt) const
double getSegmentVolume (const Plane &plane) const

Static Public Attributes

static const double FOUR_THIRDS_PI = (4.0/3.0)*M_PI
static const double ONE_THIRD_PI = M_PI/3.0

Private Attributes

Vec m_centre
double m_radius

Member Typedef Documentation

template<int tmplDim, typename TmplVec>
typedef DimPlane<tmplDim, Vec> esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::Plane
template<int tmplDim, typename TmplVec>
typedef TmplVec esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::Vec

Constructor & Destructor Documentation

template<int tmplDim, typename TmplVec >
esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::DimBasicSphere ( )
template<int tmplDim, typename TmplVec >
esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::DimBasicSphere ( const Vec centrePt,
double  radius 
)
template<int tmplDim, typename TmplVec >
esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::DimBasicSphere ( const DimBasicSphere< tmplDim, TmplVec > &  sphere)

Member Function Documentation

template<int tmplDim, typename TmplVec >
const DimBasicSphere< tmplDim, TmplVec >::Vec & esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getCentre ( ) const
template<int tmplDim, typename TmplVec >
double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getRadius ( ) const
template<int tmplDim, typename TmplVec >
double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getSegmentVolume ( const Plane plane) const

References esys::lsm::impl::DimPlane< tmplDim, TmplVec >::getSignedDistanceTo().

Here is the call graph for this function:

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getVolume ( ) const

Referenced by esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getVolume().

Here is the caller graph for this function:

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getVolume ( const Vec minPt,
const Vec maxPt,
const int  dimX = 0,
const int  dimY = 1 
) const

References esys::lsm::impl::checkDomain().

Here is the call graph for this function:

template<int tmplDim, typename TmplVec >
bool esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::intersectsWith ( const Vec pt) const

References esys::lsm::impl::square().

Referenced by esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::sphereContainsBox().

Here is the call graph for this function:

Here is the caller graph for this function:

template<int tmplDim, typename TmplVec >
DimBasicSphere< tmplDim, TmplVec > & esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::operator= ( const DimBasicSphere< tmplDim, TmplVec > &  sphere)

Member Data Documentation

template<int tmplDim, typename TmplVec>
const double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::FOUR_THIRDS_PI = (4.0/3.0)*M_PI
static
template<int tmplDim, typename TmplVec>
Vec esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::m_centre
private
template<int tmplDim, typename TmplVec>
double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::m_radius
private
template<int tmplDim, typename TmplVec>
const double esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::ONE_THIRD_PI = M_PI/3.0
static

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