ug4
ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ > Struct Template Reference

#include <lg_ntree.h>

Public Types

typedef AABox< vector_tbox_t
 
typedef common_data_t_ common_data_t
 
typedef elem_t_ elem_t
 
typedef number real_t
 
typedef MathVector< world_dim > vector_t
 

Static Public Member Functions

static bool box_box_intersection (const box_t &box1, const box_t &box2)
 returns true if the given boxes intersect More...
 
static bool box_contains_point (const box_t &box, const vector_t &point)
 
static vector_t box_diagonal (const box_t &box)
 
static void calculate_bounding_box (box_t &boxOut, const elem_t &e, const common_data_t &commonData)
 
static void calculate_center (vector_t &centerOut, const elem_t &e, const common_data_t &commonData)
 
static bool contains_point (const elem_t &e, const vector_t &point, const common_data_t &commonData)
 
static void grow_box (box_t &boxOut, const box_t &box, const vector_t &offset)
 
static bool intersects_ray (Edge *e, const vector_t &rayFrom, const vector_t &rayDir, const common_data_t &cd, number &s0out, number &s1out, number sml=SMALL)
 
static bool intersects_ray (Face *e, const vector_t &rayFrom, const vector_t &rayDir, const common_data_t &cd, number &s0out, number &s1out, number sml=SMALL)
 
static bool intersects_ray (Vertex *e, const vector_t &rayFrom, const vector_t &rayDir, const common_data_t &cd, number &s0out, number &s1out)
 
static bool intersects_ray (Volume *e, const vector_t &rayFrom, const vector_t &rayDir, const common_data_t &cd, number &s0out, number &s1out, number sml=SMALL)
 
static void merge_boxes (box_t &boxOut, const box_t &box1, const box_t &box2)
 returns the smallest box that contains both box1 and box2 More...
 
static bool ray_box_intersection (const vector_t &from, const vector_t &dir, const box_t &box)
 

Member Typedef Documentation

◆ box_t

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
typedef AABox<vector_t> ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::box_t

◆ common_data_t

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
typedef common_data_t_ ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::common_data_t

◆ elem_t

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
typedef elem_t_ ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::elem_t

◆ real_t

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
typedef number ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::real_t

◆ vector_t

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
typedef MathVector<world_dim> ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::vector_t

Member Function Documentation

◆ box_box_intersection()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::box_box_intersection ( const box_t box1,
const box_t box2 
)
inlinestatic

returns true if the given boxes intersect

References ug::AABox< vector_t >::max, and ug::AABox< vector_t >::min.

◆ box_contains_point()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::box_contains_point ( const box_t box,
const vector_t point 
)
inlinestatic

◆ box_diagonal()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static vector_t ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::box_diagonal ( const box_t box)
inlinestatic

◆ calculate_bounding_box()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static void ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::calculate_bounding_box ( box_t boxOut,
const elem_t e,
const common_data_t commonData 
)
inlinestatic

◆ calculate_center()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static void ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::calculate_center ( vector_t centerOut,
const elem_t e,
const common_data_t commonData 
)
inlinestatic

◆ contains_point()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::contains_point ( const elem_t e,
const vector_t point,
const common_data_t commonData 
)
inlinestatic

References ug::ContainsPoint().

◆ grow_box()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static void ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::grow_box ( box_t boxOut,
const box_t box,
const vector_t offset 
)
inlinestatic

◆ intersects_ray() [1/4]

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::intersects_ray ( Edge e,
const vector_t rayFrom,
const vector_t rayDir,
const common_data_t cd,
number s0out,
number s1out,
number  sml = SMALL 
)
inlinestatic

◆ intersects_ray() [2/4]

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::intersects_ray ( Face e,
const vector_t rayFrom,
const vector_t rayDir,
const common_data_t cd,
number s0out,
number s1out,
number  sml = SMALL 
)
inlinestatic

◆ intersects_ray() [3/4]

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::intersects_ray ( Vertex e,
const vector_t rayFrom,
const vector_t rayDir,
const common_data_t cd,
number s0out,
number s1out 
)
inlinestatic

References UG_THROW.

◆ intersects_ray() [4/4]

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::intersects_ray ( Volume e,
const vector_t rayFrom,
const vector_t rayDir,
const common_data_t cd,
number s0out,
number s1out,
number  sml = SMALL 
)
inlinestatic

◆ merge_boxes()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static void ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::merge_boxes ( box_t boxOut,
const box_t box1,
const box_t box2 
)
inlinestatic

returns the smallest box that contains both box1 and box2

◆ ray_box_intersection()

template<int tree_dim, int world_dim, class elem_t_ , class common_data_t_ >
static bool ug::lg_ntree_traits_base< tree_dim, world_dim, elem_t_, common_data_t_ >::ray_box_intersection ( const vector_t from,
const vector_t dir,
const box_t box 
)
inlinestatic

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