walberla::mesh::distance_octree::LeafNode< MeshType > Class Template Reference

#include <LeafNode.h>

+ Inheritance diagram for walberla::mesh::distance_octree::LeafNode< MeshType >:

Public Types

typedef Node< MeshType >::Point Point
 
typedef Node< MeshType >::Normal Normal
 
typedef Node< MeshType >::Scalar Scalar
 
typedef Node< MeshType >::FaceHandle FaceHandle
 
typedef Node< MeshType >::AABB AABB
 
- Public Types inherited from walberla::mesh::distance_octree::Node< MeshType >
typedef MeshType::Point Point
 
typedef MeshType::Normal Normal
 
typedef MeshType::Scalar Scalar
 
typedef MeshType::FaceHandle FaceHandle
 
typedef math::GenericAABB< ScalarAABB
 

Public Member Functions

 LeafNode (const shared_ptr< TriangleDistance< MeshType > > &triDistance, const std::vector< FaceHandle > &triangles)
 
virtual Scalar sqSignedDistance (const Point &p) const
 
virtual Scalar sqSignedDistance (const Point &p, FaceHandle &closestTriangle) const
 
virtual Scalar sqSignedDistance (const Point &p, Point &closestPoint) const
 
virtual Scalar sqSignedDistance (const Point &p, Point &closestPoint, Normal &normal) const
 
virtual Scalar sqDistance (const Point &p) const
 
virtual Scalar sqDistance (const Point &p, FaceHandle &closestTriangle) const
 
virtual Scalar sqDistance (const Point &p, Point &closestPoint) const
 
virtual Scalar sqDistance (const Point &p, Point &closestPoint, Normal &normal) const
 
uint_t numTriangles () const
 
void numTrianglesToStream (std::ostream &os, const uint_t level) const
 
virtual uint_t height () const
 
virtual uint_t numChildren () const
 
virtual const Node< MeshType > * getChild (const uint_t) const
 
- Public Member Functions inherited from walberla::mesh::distance_octree::Node< MeshType >
template<typename InputIterator >
 Node (const MeshType &mesh, InputIterator beginFh, InputIterator endFh)
 
virtual ~Node ()
 
const AABBgetAABB () const
 
virtual Scalar sqSignedDistance (const Point &p, Point &closestPoint, Point &normal) const =0
 
virtual Scalar sqDistance (const Point &p, Point &closestPoint, Point &normal) const =0
 

Protected Attributes

std::vector< FaceHandletriangles_
 
shared_ptr< TriangleDistance< MeshType > > triDistance_
 
- Protected Attributes inherited from walberla::mesh::distance_octree::Node< MeshType >
AABB aabb_
 

Member Typedef Documentation

◆ AABB

template<typename MeshType >
typedef Node<MeshType>::AABB walberla::mesh::distance_octree::LeafNode< MeshType >::AABB

◆ FaceHandle

◆ Normal

template<typename MeshType >
typedef Node<MeshType>::Normal walberla::mesh::distance_octree::LeafNode< MeshType >::Normal

◆ Point

template<typename MeshType >
typedef Node<MeshType>::Point walberla::mesh::distance_octree::LeafNode< MeshType >::Point

◆ Scalar

template<typename MeshType >
typedef Node<MeshType>::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::Scalar

Constructor & Destructor Documentation

◆ LeafNode()

template<typename MeshType >
walberla::mesh::distance_octree::LeafNode< MeshType >::LeafNode ( const shared_ptr< TriangleDistance< MeshType > > &  triDistance,
const std::vector< FaceHandle > &  triangles 
)
inline

Member Function Documentation

◆ getChild()

template<typename MeshType >
virtual const Node<MeshType>* walberla::mesh::distance_octree::LeafNode< MeshType >::getChild ( const  uint_t) const
inlinevirtual

◆ height()

template<typename MeshType >
virtual uint_t walberla::mesh::distance_octree::LeafNode< MeshType >::height ( ) const
inlinevirtual

◆ numChildren()

template<typename MeshType >
virtual uint_t walberla::mesh::distance_octree::LeafNode< MeshType >::numChildren ( ) const
inlinevirtual

◆ numTriangles()

template<typename MeshType >
uint_t walberla::mesh::distance_octree::LeafNode< MeshType >::numTriangles ( ) const
inlinevirtual

◆ numTrianglesToStream()

template<typename MeshType >
void walberla::mesh::distance_octree::LeafNode< MeshType >::numTrianglesToStream ( std::ostream &  os,
const uint_t  level 
) const
virtual

◆ sqDistance() [1/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqDistance ( const Point p) const
virtual

◆ sqDistance() [2/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqDistance ( const Point p,
FaceHandle closestTriangle 
) const
virtual

◆ sqDistance() [3/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqDistance ( const Point p,
Point closestPoint 
) const
virtual

◆ sqDistance() [4/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqDistance ( const Point p,
Point closestPoint,
Normal normal 
) const
virtual

◆ sqSignedDistance() [1/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqSignedDistance ( const Point p) const
virtual

◆ sqSignedDistance() [2/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqSignedDistance ( const Point p,
FaceHandle closestTriangle 
) const
virtual

◆ sqSignedDistance() [3/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqSignedDistance ( const Point p,
Point closestPoint 
) const
virtual

◆ sqSignedDistance() [4/4]

template<typename MeshType >
LeafNode< MeshType >::Scalar walberla::mesh::distance_octree::LeafNode< MeshType >::sqSignedDistance ( const Point p,
Point closestPoint,
Normal normal 
) const
virtual

Member Data Documentation

◆ triangles_

template<typename MeshType >
std::vector<FaceHandle> walberla::mesh::distance_octree::LeafNode< MeshType >::triangles_
protected

◆ triDistance_

template<typename MeshType >
shared_ptr< TriangleDistance<MeshType> > walberla::mesh::distance_octree::LeafNode< MeshType >::triDistance_
protected

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