0.6.0
Loading...
Searching...
No Matches
mod_ray_tracing Module Reference

Data Types

type  t_intersection
 Definition of an intersection. More...
 
type  t_intersection_list
 Sorted list of intersections. More...
 
type  t_ray
 Definition of a ray. More...
 

Functions/Subroutines

pure type(t_ray) function rt_ray_partial_initialization (origin, direction)
 Initialize a ray from origin and direction only.
 
pure subroutine rt_get_transformed_ray (ray, transformation, transformed_ray)
 Get a transformed ray in the object frame.
 
pure subroutine rt_intersection_apply_transformation (intersection, transformation, ray, has_normal)
 Apply transformation to the intersection and compute the distance.
 
pure type(t_intersection) function rt_intersection_partial_initialization (point, distance)
 Initialize an interface from point and distance only.
 
pure type(t_intersection) function rt_intersection_partial_initialization_no_tag (point, distance, normal)
 Initialize an interface from point and distance only.
 
pure subroutine rt_intersection_list_clear (intersection_list)
 Clear the intersection list.
 
pure subroutine rt_intersection_list_push (intersection_list, intersection)
 Add an intersection to the list.
 
logical pure function, public rt_does_ray_hit_aligned_axis_bounding_box (ray, corner)
 Test the intersection of a ray and an aligned-axis bounding-box (AABB).
 
pure subroutine, public rt_transform_aligned_axis_bounding_box (corner, transformation)
 Transform an aligned-axis bounding-box (AABB).
 
pure subroutine, public rt_intersection_list_union (list1, list2, is_inside1, is_inside2, union)
 Generate the union of two lists of ray intersections.
 
pure subroutine, public rt_intersection_list_difference (list1, list2, is_inside1, is_inside2, difference)
 Generate the difference of two lists of ray intersections.
 

Variables

double precision, parameter, public rt_epsilon = epsilon(RT_EPSILON)
 Shortest distance between two successive intersections.
 

Variable Documentation

◆ rt_epsilon

double precision, parameter, public mod_ray_tracing::rt_epsilon = epsilon(RT_EPSILON)

Shortest distance between two successive intersections.