Definition of an intersection. More...
| Public Member Functions | |
| procedure | apply_transformation (intersection, transformation, ray, has_normal) | 
| Apply transformation 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. | |
Definition of an intersection.
| procedure mod_ray_tracing::t_intersection::apply_transformation | ( | class(t_intersection), intent(inout) | intersection, | 
| type(t_cg_transformation), intent(in) | transformation, | ||
| type(t_ray), intent(in) | ray, | ||
| logical, intent(in) | has_normal ) | 
Apply transformation and compute the distance.
| [in,out] | intersection | Intersection. | 
| [in] | transformation | transformation. | 
| [in] | ray | ray in the original frame. | 
| [in] | has_normal | Apply transformation to the normal. | 
| pure type(t_intersection) function mod_ray_tracing::t_intersection::rt_intersection_partial_initialization | ( | double precision, dimension(3), intent(in) | point, | 
| double precision, intent(in) | distance ) | 
Initialize an interface from point and distance only.
The normal vector is set to null vector.
| [in] | point | Intersection point | 
| [in] | distance | Intersection distance | 
| pure type(t_intersection) function mod_ray_tracing::t_intersection::rt_intersection_partial_initialization_no_tag | ( | double precision, dimension(3), intent(in) | point, | 
| double precision, intent(in) | distance, | ||
| double precision, dimension(3), intent(in) | normal ) | 
Initialize an interface from point and distance only.
The normal vector is set to null vector.
| [in] | point | Intersection point | 
| [in] | distance | Intersection distance | 
| [in] | normal | Normal vector at the intersection point |