HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE > Struct Template Reference

#include <GEO_BVH.h>

Public Types

using InfoType = HitInfoAndNormal
 NOTE: Intentionally not the array type. See use in GU_BVH::intersectPrim. More...
 

Public Member Functions

SYS_FORCE_INLINE AllHitsAndNormalsFunctor (UT_Array< HitInfoAndNormal > &hit_info, UT_Array< exint > *nesting_temp_array) noexcept
 
SYS_FORCE_INLINE void noHit () noexcept
 
SYS_FORCE_INLINE void insertHit (const UT_Vector3 &hit_uvw, const float t, const uint index, float &limit_t) noexcept
 
SYS_FORCE_INLINE void setNestingArrayInto (HitInfoAndNormal &hit_info) noexcept
 
SYS_FORCE_INLINE UT_Array
< exint > * 
nestingArray () noexcept
 
SYS_FORCE_INLINE VectorType getNormal (const HitInfoAndNormal &hit_info) const noexcept
 
SYS_FORCE_INLINE void setNormal (const VectorType &nml) noexcept
 
SYS_FORCE_INLINE void setNormal (HitInfoAndNormal &hit_info, const VectorType &nml) const noexcept
 
SYS_FORCE_INLINE UT_Array
< HitInfoAndNormal > * 
getHitArray () noexcept
 
SYS_FORCE_INLINE exint nestingArrayBase () const noexcept
 
SYS_FORCE_INLINE UT_Vector3lastUVW () noexcept
 

Public Attributes

UT_Array< HitInfoAndNormal > & myHitInfo
 
UT_Array< exint > *const myNestingTempArray
 
float myTolerance
 

Static Public Attributes

static constexpr bool theAllHits = true
 
static constexpr bool theNeedsNormal = true
 
static constexpr bool theUseTolerance = USE_TOLERANCE
 

Detailed Description

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
struct GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >

Definition at line 136 of file GEO_BVH.h.

Member Typedef Documentation

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
using GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::InfoType = HitInfoAndNormal

NOTE: Intentionally not the array type. See use in GU_BVH::intersectPrim.

Definition at line 337 of file GEO_BVHImpl.h.

Constructor & Destructor Documentation

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::AllHitsAndNormalsFunctor ( UT_Array< HitInfoAndNormal > &  hit_info,
UT_Array< exint > *  nesting_temp_array 
)
inlinenoexcept

Definition at line 273 of file GEO_BVHImpl.h.

Member Function Documentation

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE UT_Array<HitInfoAndNormal>* GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::getHitArray ( )
inlinenoexcept

Definition at line 328 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE VectorType GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::getNormal ( const HitInfoAndNormal hit_info) const
inlinenoexcept

Definition at line 318 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE void GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::insertHit ( const UT_Vector3 hit_uvw,
const float  t,
const uint  index,
float &  limit_t 
)
inlinenoexcept

Definition at line 283 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE UT_Vector3& GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::lastUVW ( )
inlinenoexcept

Definition at line 330 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE UT_Array<exint>* GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::nestingArray ( )
inlinenoexcept

Definition at line 314 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE exint GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::nestingArrayBase ( ) const
inlinenoexcept

Definition at line 329 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE void GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::noHit ( )
inlinenoexcept

Definition at line 279 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE void GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::setNestingArrayInto ( HitInfoAndNormal hit_info)
inlinenoexcept

Definition at line 313 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE void GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::setNormal ( const VectorType nml)
inlinenoexcept

Definition at line 320 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
SYS_FORCE_INLINE void GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::setNormal ( HitInfoAndNormal hit_info,
const VectorType nml 
) const
inlinenoexcept

Definition at line 324 of file GEO_BVHImpl.h.

Member Data Documentation

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
UT_Array<HitInfoAndNormal>& GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::myHitInfo

Definition at line 339 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
UT_Array<exint>* const GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::myNestingTempArray

Definition at line 340 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
float GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::myTolerance

Definition at line 341 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
constexpr bool GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::theAllHits = true
static

Definition at line 332 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
constexpr bool GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::theNeedsNormal = true
static

Definition at line 333 of file GEO_BVHImpl.h.

template<uint NAXES, typename SUBCLASS>
template<bool USE_TOLERANCE>
constexpr bool GEO::BVHBase< NAXES, SUBCLASS >::AllHitsAndNormalsFunctor< USE_TOLERANCE >::theUseTolerance = USE_TOLERANCE
static

Definition at line 334 of file GEO_BVHImpl.h.


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