waLBerla 7.2
Loading...
Searching...
No Matches
walberla::mesh::distance_octree::Node< MeshType > Class Template Referenceabstract

#include <Node.h>

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

Public Types

using Point = typename MeshType::Point
 
using Normal = typename MeshType::Normal
 
using Scalar = typename MeshType::Scalar
 
using FaceHandle = typename MeshType::FaceHandle
 
using AABB = typename math::GenericAABB<Scalar>
 

Public Member Functions

template<typename InputIterator >
 Node (const MeshType &mesh, InputIterator beginFh, InputIterator endFh)
 
virtual ~Node ()=default
 
const AABBgetAABB () const
 
virtual Scalar sqSignedDistance (const Point &p) const =0
 
virtual Scalar sqSignedDistance (const Point &p, FaceHandle &closestTriangle) const =0
 
virtual Scalar sqSignedDistance (const Point &p, Point &closestPoint) const =0
 
virtual Scalar sqSignedDistance (const Point &p, Point &closestPoint, Point &normal) const =0
 
virtual Scalar sqDistance (const Point &p) const =0
 
virtual Scalar sqDistance (const Point &p, FaceHandle &closestTriangle) const =0
 
virtual Scalar sqDistance (const Point &p, Point &closestPoint) const =0
 
virtual Scalar sqDistance (const Point &p, Point &closestPoint, Point &normal) const =0
 
virtual Scalar getRayDistanceToMeshObject (const Point &ray_origin, const Point &normalised_ray_direction) const =0
 
virtual uint_t numTriangles () const =0
 
virtual void numTrianglesToStream (std::ostream &os, const uint_t level) const =0
 
virtual uint_t height () const =0
 
virtual uint_t numChildren () const =0
 
virtual const NodegetChild (const uint_t idx) const =0
 

Protected Attributes

AABB aabb_
 

Member Typedef Documentation

◆ AABB

template<typename MeshType >
using walberla::mesh::distance_octree::Node< MeshType >::AABB = typename math::GenericAABB<Scalar>

◆ FaceHandle

template<typename MeshType >
using walberla::mesh::distance_octree::Node< MeshType >::FaceHandle = typename MeshType::FaceHandle

◆ Normal

template<typename MeshType >
using walberla::mesh::distance_octree::Node< MeshType >::Normal = typename MeshType::Normal

◆ Point

template<typename MeshType >
using walberla::mesh::distance_octree::Node< MeshType >::Point = typename MeshType::Point

◆ Scalar

template<typename MeshType >
using walberla::mesh::distance_octree::Node< MeshType >::Scalar = typename MeshType::Scalar

Constructor & Destructor Documentation

◆ Node()

template<typename MeshType >
template<typename InputIterator >
walberla::mesh::distance_octree::Node< MeshType >::Node ( const MeshType & mesh,
InputIterator beginFh,
InputIterator endFh )
inline

◆ ~Node()

template<typename MeshType >
virtual walberla::mesh::distance_octree::Node< MeshType >::~Node ( )
virtualdefault

Member Function Documentation

◆ getAABB()

template<typename MeshType >
const AABB & walberla::mesh::distance_octree::Node< MeshType >::getAABB ( ) const
inline

◆ getChild()

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

◆ getRayDistanceToMeshObject()

template<typename MeshType >
virtual Scalar walberla::mesh::distance_octree::Node< MeshType >::getRayDistanceToMeshObject ( const Point & ray_origin,
const Point & normalised_ray_direction ) const
pure virtual

◆ height()

template<typename MeshType >
virtual uint_t walberla::mesh::distance_octree::Node< MeshType >::height ( ) const
pure virtual

◆ numChildren()

template<typename MeshType >
virtual uint_t walberla::mesh::distance_octree::Node< MeshType >::numChildren ( ) const
pure virtual

◆ numTriangles()

template<typename MeshType >
virtual uint_t walberla::mesh::distance_octree::Node< MeshType >::numTriangles ( ) const
pure virtual

◆ numTrianglesToStream()

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

◆ sqDistance() [1/4]

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

◆ sqDistance() [2/4]

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

◆ sqDistance() [3/4]

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

◆ sqDistance() [4/4]

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

◆ sqSignedDistance() [1/4]

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

◆ sqSignedDistance() [2/4]

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

◆ sqSignedDistance() [3/4]

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

◆ sqSignedDistance() [4/4]

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

Member Data Documentation

◆ aabb_

template<typename MeshType >
AABB walberla::mesh::distance_octree::Node< MeshType >::aabb_
protected

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