walberla::pe::raytracing Namespace Reference

Classes

struct  BodyIntersectionInfo
 Contains information about a ray-body intersection. More...
 
class  Color
 
struct  IntersectsFunctor
 
struct  Lighting
 The Lighting struct defines the properties of a point light in the scene. More...
 
class  Ray
 
class  Raytracer
 
struct  ShadingParameters
 

Functions

bool intersects (const mesh::pe::ConvexPolyhedronID poly, const Ray &ray, real_t &t_near, Vec3 &n)
 
bool intersects (const SphereID sphere, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const PlaneID plane, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const BoxID box, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const CapsuleID capsule, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const EllipsoidID ellipsoid, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const BodyID body, const Ray &ray, real_t &t, Vec3 &n)
 
bool intersects (const AABB &aabb, const Ray &ray, real_t &t, real_t padding=real_t(0.0), Vec3 *n=nullptr)
 
bool intersectsSphere (const Vec3 &gpos, real_t radius, const Ray &ray, real_t &t0, real_t &t1)
 
std::ostream & operator<< (std::ostream &os, const Ray &ray)
 Global output operator for rays. More...
 
void BodyIntersectionInfo_Comparator_MPI_OP (BodyIntersectionInfo *in, BodyIntersectionInfo *inout, const int *len, MPI_Datatype *dptr)
 
bool defaultIsBodyVisible (const BodyID body)
 
ShadingParameters defaultBodyTypeDependentShadingParams (const BodyID body)
 
ShadingParameters processRankDependentShadingParams (const BodyID body)
 
ShadingParameters defaultShadingParams (const BodyID body)
 
ShadingParameters blackShadingParams (const BodyID body)
 
ShadingParameters whiteShadingParams (const BodyID body)
 
ShadingParameters lightGreyShadingParams (const BodyID body)
 
ShadingParameters greyShadingParams (const BodyID body)
 
ShadingParameters darkGreyShadingParams (const BodyID body)
 
ShadingParameters redShadingParams (const BodyID body)
 
ShadingParameters greenShadingParams (const BodyID body)
 
ShadingParameters blueShadingParams (const BodyID body)
 
ShadingParameters violetShadingParams (const BodyID body)
 
ShadingParameters yellowShadingParams (const BodyID body)
 

Variables

const real_t discriminantEps = real_t(1e-4)
 

Function Documentation

◆ blackShadingParams()

ShadingParameters walberla::pe::raytracing::blackShadingParams ( const BodyID  body)
inline

◆ blueShadingParams()

ShadingParameters walberla::pe::raytracing::blueShadingParams ( const BodyID  body)
inline

◆ BodyIntersectionInfo_Comparator_MPI_OP()

void walberla::pe::raytracing::BodyIntersectionInfo_Comparator_MPI_OP ( BodyIntersectionInfo in,
BodyIntersectionInfo inout,
const int *  len,
MPI_Datatype *  dptr 
)

◆ darkGreyShadingParams()

ShadingParameters walberla::pe::raytracing::darkGreyShadingParams ( const BodyID  body)
inline

◆ defaultBodyTypeDependentShadingParams()

ShadingParameters walberla::pe::raytracing::defaultBodyTypeDependentShadingParams ( const BodyID  body)
inline

◆ defaultIsBodyVisible()

bool walberla::pe::raytracing::defaultIsBodyVisible ( const BodyID  body)
inline

◆ defaultShadingParams()

ShadingParameters walberla::pe::raytracing::defaultShadingParams ( const BodyID  body)
inline

◆ greenShadingParams()

ShadingParameters walberla::pe::raytracing::greenShadingParams ( const BodyID  body)
inline

◆ greyShadingParams()

ShadingParameters walberla::pe::raytracing::greyShadingParams ( const BodyID  body)
inline

◆ intersects() [1/8]

bool walberla::pe::raytracing::intersects ( const AABB &  aabb,
const Ray ray,
real_t t,
real_t  padding = real_t(0.0),
Vec3 n = nullptr 
)
inline

◆ intersects() [2/8]

bool walberla::pe::raytracing::intersects ( const BodyID  body,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersects() [3/8]

bool walberla::pe::raytracing::intersects ( const BoxID  box,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersects() [4/8]

bool walberla::pe::raytracing::intersects ( const CapsuleID  capsule,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersects() [5/8]

bool walberla::pe::raytracing::intersects ( const EllipsoidID  ellipsoid,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersects() [6/8]

bool walberla::pe::raytracing::intersects ( const mesh::pe::ConvexPolyhedronID  poly,
const Ray ray,
real_t t_near,
Vec3 n 
)
inline

◆ intersects() [7/8]

bool walberla::pe::raytracing::intersects ( const PlaneID  plane,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersects() [8/8]

bool walberla::pe::raytracing::intersects ( const SphereID  sphere,
const Ray ray,
real_t t,
Vec3 n 
)
inline

◆ intersectsSphere()

bool walberla::pe::raytracing::intersectsSphere ( const Vec3 gpos,
real_t  radius,
const Ray ray,
real_t t0,
real_t t1 
)
inline

◆ lightGreyShadingParams()

ShadingParameters walberla::pe::raytracing::lightGreyShadingParams ( const BodyID  body)
inline

◆ operator<<()

std::ostream& walberla::pe::raytracing::operator<< ( std::ostream &  os,
const Ray ray 
)

Global output operator for rays.

Parameters
osReference to the output stream.
rayReference to a constant ray object.
Returns
Reference to the output stream.

◆ processRankDependentShadingParams()

ShadingParameters walberla::pe::raytracing::processRankDependentShadingParams ( const BodyID  body)
inline

◆ redShadingParams()

ShadingParameters walberla::pe::raytracing::redShadingParams ( const BodyID  body)
inline

◆ violetShadingParams()

ShadingParameters walberla::pe::raytracing::violetShadingParams ( const BodyID  body)
inline

◆ whiteShadingParams()

ShadingParameters walberla::pe::raytracing::whiteShadingParams ( const BodyID  body)
inline

◆ yellowShadingParams()

ShadingParameters walberla::pe::raytracing::yellowShadingParams ( const BodyID  body)
inline

Variable Documentation

◆ discriminantEps

const real_t walberla::pe::raytracing::discriminantEps = real_t(1e-4)